codecanyon-40488202-efood-tablewaiter-app

作者 : tideit 本文共1826个字,预计阅读时间需要5分钟 发布时间: 2026-03-11 共4人阅读
# eFood Table Waiter App - 餐厅桌台管理应用

## 项目概述
- **项目类型**:移动应用(Flutter跨平台应用)
- **主要功能**:餐厅桌台点餐管理系统,支持服务员通过移动设备管理桌台订单
- **技术栈**:
  - 前端框架:Flutter 3.38.5
  - 状态管理:GetX
  - 后端通信:REST API
  - 推送通知:Firebase Cloud Messaging
  - 本地存储:Shared Preferences
  - 图片缓存:Cached Network Image

## 模块结构

```
lib/
├── common/                    # 公共组件
│   ├── controllers/          # 通用控制器(主题、本地化)
│   ├── models/               # 数据模型
│   └── widgets/              # 通用UI组件
├── data/
│   └── api/                  # API客户端和检查器
├── features/                 # 功能模块
│   ├── cart/                 # 购物车模块
│   │   ├── controllers/
│   │   ├── domain/
│   │   ├── screens/
│   │   └── widgets/
│   ├── home/                 # 首页模块
│   │   ├── controllers/
│   │   ├── screens/
│   │   └── widgets/
│   ├── order/                # 订单模块
│   │   ├── controllers/
│   │   ├── domain/
│   │   ├── screens/
│   │   └── widgets/
│   ├── promotion/            # 促销模块
│   └── splash/               # 启动页
├── helper/                   # 辅助工具类
├── theme/                    # 主题配置
└── util/                     # 工具类
```

## 核心业务逻辑

### 1. 桌台订单管理
- **桌台选择**:服务员可以选择特定桌台进行点餐
- **菜品浏览**:按分类浏览菜品,支持搜索功能
- **购物车管理**:添加/删除菜品,修改数量
- **订单提交**:将购物车内容提交为正式订单

### 2. 订单状态跟踪
- **订单列表**:查看所有桌台的订单状态
- **实时更新**:通过Firebase推送获取订单状态变更
- **订单历史**:查看已完成订单记录

### 3. 产品管理
- **分类筛选**:按菜品分类筛选
- **产品搜索**:支持关键词搜索
- **产品详情**:查看菜品详细信息、价格、描述

### 4. 促销功能
- **优惠券应用**:支持输入优惠码
- **促销活动**:显示当前促销信息

## 核心代码分析

### 主入口 (main.dart)
```dart
// 应用入口,初始化GetX依赖注入
// 配置Firebase消息推送
// 设置URL策略(支持Web端)
// 初始化本地通知
```

### 状态管理
- 使用**GetX**进行状态管理
- 主要控制器:
  - `ThemeController`:主题切换(暗黑/亮色模式)
  - `LocalizationController`:多语言支持
  - `ProductController`:产品数据管理
  - `OrderController`:订单状态管理
  - `CartController`:购物车管理

### API架构
- **ApiClient**:处理HTTP请求
- **ApiChecker**:API响应检查
- 支持分页加载(offset机制)

### UI组件
- **响应式设计**:支持平板和手机不同尺寸
- **自定义组件**:
  - `CustomAppBar`:自定义导航栏
  - `BodyTemplateWidget`:页面模板
  - `ProductWidget`:产品卡片
  - `CategoryWidget`:分类展示
  - `FabCircularMenuWidget`:浮动圆形菜单

### 关键依赖
```yaml
dependencies:
  get: ^4.7.3                    # 状态管理
  firebase_messaging: ^16.0.4    # 推送通知
  shared_preferences: ^2.5.3     # 本地存储
  cached_network_image: ^3.4.1   # 图片缓存
  http: ^1.6.0                   # HTTP请求
  carousel_slider: ^5.1.1        # 轮播图
  shimmer: ^3.0.0                # 加载骨架屏
```

## 应用版本信息
- **Table App版本**:2.3
- **兼容的User App版本**:11.7
- **兼容的Deliveryman App版本**:11.7
- **兼容的Kitchen App版本**:2.3

## 部署说明
1. 配置Firebase项目(用于推送通知)
2. 修改API基础URL配置
3. 配置应用主题和语言
4. 构建发布版本(Android/iOS/Web)

资源在线 » codecanyon-40488202-efood-tablewaiter-app

常见问题FAQ

发表评论