Grocery Store 是一款完整的杂货店电商解决方案,包含 Android 用户应用、Web 管理后台和配送系统。

作者 : tideit 本文共4463个字,预计阅读时间需要12分钟 发布时间: 2026-03-1 共11人阅读

项目分析报告:Grocery Store Android App

项目概述

项目名称: Grocery Store
包名: codecanyon.grocery
版本: 1.6
平台: Android + Web 管理后台
开发语言: Java (Android) / PHP (Web 后台)
数据库: MySQL
开发商: Codecanyon

Grocery Store 是一款完整的杂货店电商解决方案,包含 Android 用户应用、Web 管理后台和配送系统。


功能描述

用户端功能 (Android App)

  1. 用户认证: 注册、登录、忘记密码
  2. 商品浏览: 分类浏览、搜索商品
  3. 商品详情: 查看商品图片、描述、价格
  4. 购物车: 添加/删除商品、修改数量
  5. 地址管理: 添加/编辑配送地址
  6. 订单管理: 下单、查看订单状态、取消订单
  7. 支付方式: 货到付款
  8. 配送时间: 选择配送日期和时间
  9. 订单追踪: 查看订单配送状态

管理后台功能 (Web Panel)

  1. 仪表板: 销售统计、订单概览
  2. 商品管理: 添加/编辑/删除商品
  3. 分类管理: 商品分类管理(支持多级分类)
  4. 订单管理: 查看订单、更新订单状态
  5. 用户管理: 查看注册用户
  6. 配送管理: 配送区域、配送费用设置
  7. 营业时间: 设置配送时间
  8. 库存管理: 商品库存管理
  9. 促销管理: 设置折扣和促销

主要模块

Android 应用模块

模块 功能说明
SplashActivity 启动页面
MainActivity 主界面(商品列表)
LoginActivity 用户登录
RegisterActivity 用户注册
ForgotActivity 忘记密码
Fragment/Home 首页商品展示
Fragment/Cart 购物车管理
Fragment/Delivery 配送信息填写
Fragment/Order 订单管理
Adapter 列表适配器
Model 数据模型
Config 配置常量
FCM Firebase 推送通知

Web 后台模块

模块 功能说明
Dashboard 仪表板统计
Products 商品管理
Categories 分类管理
Orders 订单管理
Users 用户管理
Settings 系统设置

项目结构

/
├── Grocery/                          # Android 应用
│   ├── app/src/main/
│   │   ├── java/codecanyon/grocery/
│   │   │   ├── SplashActivity.java   # 启动页
│   │   │   ├── MainActivity.java     # 主界面
│   │   │   ├── LoginActivity.java    # 登录
│   │   │   ├── RegisterActivity.java # 注册
│   │   │   ├── ForgotActivity.java   # 忘记密码
│   │   │   ├── AppController.java    # 应用控制器
│   │   │   ├── Adapter/              # 适配器
│   │   │   │   ├── Cart_adapter.java
│   │   │   │   ├── Home_adapter.java
│   │   │   │   ├── Product_adapter.java
│   │   │   │   └── My_order_detail_adapter.java
│   │   │   ├── Fragment/             # 碎片页面
│   │   │   │   ├── Cart_fragment.java
│   │   │   │   ├── Delivery_fragment.java
│   │   │   │   ├── Delivery_payment_detail_fragment.java
│   │   │   │   └── ...
│   │   │   ├── Model/                # 数据模型
│   │   │   ├── Config/               # 配置
│   │   │   ├── util/                 # 工具类
│   │   │   └── fcm/                  # Firebase 通知
│   │   └── AndroidManifest.xml
│   └── build.gradle
├── grocery store admin panel/        # Web 管理后台 (PHP)
│   ├── admin/
│   │   ├── dashboard.php
│   │   ├── products/
│   │   ├── categories/
│   │   ├── orders/
│   │   └── users/
│   ├── application/
│   │   ├── controllers/
│   │   ├── models/
│   │   └── views/
│   ├── system/                       # CodeIgniter 框架
│   ├── index.php
│   └── ps_lang.php                   # 语言文件
├── assets/                           # 静态资源
├── grocery_store_database.sql        # 数据库脚本
├── sale_table_update_only.sql        # 数据库更新脚本
└── readme.txt                        # 更新说明

核心业务逻辑

购物流程

1. 用户浏览商品 → 添加到购物车
2. 查看购物车 → 修改数量
3. 填写配送地址 → 选择配送时间
4. 确认订单 → 提交订单
5. 后台处理订单 → 更新订单状态
6. 配送商品 → 用户收货付款

订单状态流程

待处理 → 已确认 → 配货中 → 配送中 → 已完成
                    ↓
                  已取消

库存管理

  • 下单时扣减库存
  • 取消订单时恢复库存
  • 库存不足时显示缺货

核心代码文件

Android 端

文件路径 说明
SplashActivity.java 启动页面,检查网络和登录状态
MainActivity.java 主界面,商品列表展示
LoginActivity.java 用户登录
RegisterActivity.java 用户注册
Fragment/Cart_fragment.java 购物车管理
Fragment/Delivery_fragment.java 配送信息填写
Adapter/Cart_adapter.java 购物车列表适配器
Adapter/Product_adapter.java 商品列表适配器
fcm/MyFirebaseMessagingService.java Firebase 消息服务

Web 后台

文件路径 说明
admin/dashboard.php 仪表板
admin/products/ 商品管理
admin/orders/orderdetails.php 订单详情
admin/orders/orderslist.php 订单列表
application/models/Product_model.php 商品数据模型
application/config/config.php 框架配置

技术栈

Android 端

技术 用途
Android SDK 应用开发
Firebase Cloud Messaging 推送通知
Volley/Picasso 网络请求和图片加载
Material Design UI 设计

Web 后台

技术 用途
PHP 7.0+ 后端开发
CodeIgniter PHP 框架
MySQL 数据库
jQuery/Bootstrap 前端 UI

数据库设计

主要数据表

表名 说明
users 用户表
registers 注册用户表
products 商品表
categories 分类表
sale 订单表
sale_items 订单商品项
addresses 用户地址表
delivery_details 配送详情表

订单表结构 (sale)

CREATE TABLE `sale` (
    `sale_id` INT PRIMARY KEY,
    `user_id` INT,
    `address_id` INT,
    `delivery_date` DATE,
    `delivery_time` VARCHAR(50),
    `total_amount` DECIMAL(10,2),
    `delivery_charge` DECIMAL(10,2),
    `status` VARCHAR(50),
    `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

版本更新历史

版本 日期 更新内容
1.6 新增订单日期字段,支持取消订单时恢复库存
1.5 2018-03-30 修复 PHP 7.0 兼容性问题
1.4 新增商品描述,修复管理员资料编辑,支持小数价格
1.3 2017-09-06 优化商品图片加载速度
1.2 2017-09-03 修复注册用户列表显示
1.1 2017-08-08 修复搜索、地址列表、分类显示等 bug

配置说明

Android 端配置

  1. API 地址: 修改为后台 API 地址
  2. Firebase 配置: 添加 google-services.json
  3. 应用名称: 修改 strings.xml 中的应用名称
  4. 主题颜色: 修改 colors.xml 中的颜色配置

Web 后台配置

  1. 数据库连接: 配置 database.php
  2. Base URL: 配置 config.php 中的 base_url
  3. Session 配置: 使用 database session driver
  4. 图片上传路径: 配置上传目录

演示信息

演示后台

  • 账号:admin@gmail.com [2]
  • 密码:terminal

演示应用

  • 账号:user@gmail.com [3]
  • 密码:terminal

部署步骤

Android 应用

  1. 修改 API 地址指向自己的服务器
  2. 配置 Firebase (google-services.json)
  3. 自定义应用名称和图标
  4. 生成签名 APK

Web 后台

  1. 上传代码到服务器
  2. 创建 MySQL 数据库
  3. 导入 grocery_store_database.sql
  4. 配置数据库连接
  5. 配置 base_url
  6. 设置目录权限

总结

Grocery Store 是一款完整的杂货店电商解决方案,包含 Android 用户应用和 Web 管理后台。应用采用 CodeIgniter PHP 框架开发后端,Android 端使用原生 Java 开发。功能涵盖商品管理、购物车、订单管理、配送管理等完整的电商流程。

优势特点:

  • 完整的电商功能实现
  • 多端支持(Android + Web)
  • 实时订单状态更新
  • Firebase 推送通知
  • 代码结构清晰,易于定制

注意事项:

  • 需要 PHP 7.0+ 环境
  • 需要配置 Firebase 服务
  • 数据库 session 需要额外配置
  • 建议根据业务需求调整配送逻辑

 


资源在线 » Grocery Store 是一款完整的杂货店电商解决方案,包含 Android 用户应用、Web 管理后台和配送系统。

常见问题FAQ

发表评论