codecanyon-40488338-efood-kitchenchef-app

作者 : tideit 本文共3106个字,预计阅读时间需要8分钟 发布时间: 2026-03-11 共4人阅读
# eFood Kitchen Chef App - 餐厅厨房管理应用

## 项目概述
- **项目类型**:移动应用(Flutter跨平台应用)
- **主要功能**:餐厅厨房订单管理系统,支持厨师通过移动设备接收和处理订单
- **技术栈**:
  - 前端框架:Flutter 3.38.5
  - 状态管理:GetX
  - 后端通信:REST API
  - 推送通知:Firebase Cloud Messaging
  - 本地存储:Shared Preferences
  - 图片缓存:Cached Network Image
  - 音频播放:audioplayers
  - 振动反馈:vibration

## 模块结构

```
lib/
├── common/                    # 公共组件
│   ├── controllers/          # 通用控制器(主题、本地化)
│   ├── models/               # 数据模型
│   │   ├── config_model.dart
│   │   ├── error_response.dart
│   │   ├── language_model.dart
│   │   └── notification_payload_model.dart
│   └── widgets/              # 通用UI组件
│       ├── custom_app_bar_widget.dart
│       ├── custom_button_widget.dart
│       ├── custom_text_field_widget.dart
│       ├── notification_dialog_widget.dart
│       └── ...
├── data/
│   └── api/                  # API客户端和检查器
│       ├── api_checker.dart
│       └── api_client.dart
├── features/                 # 功能模块
│   ├── auth/                 # 认证模块
│   │   ├── controllers/
│   │   ├── domain/models/
│   │   ├── screens/login_screen.dart
│   │   └── widgets/
│   ├── home/                 # 首页模块
│   │   ├── screens/
│   │   │   ├── home_screen.dart
│   │   │   └── tab_home_screen.dart
│   │   └── widgets/
│   │       ├── order_card_widget.dart
│   │       ├── order_list_widget.dart
│   │       ├── order_status_tabs_item_widget.dart
│   │       ├── slider_button_widget.dart
│   │       └── status_change_custom_button.dart
│   ├── order/                # 订单模块
│   │   ├── controllers/order_controller.dart
│   │   ├── domain/models/
│   │   │   ├── order_details_model.dart
│   │   │   └── order_model.dart
│   │   ├── screens/order_details_screen.dart
│   │   └── widgets/
│   │       ├── calculate_amount_widget.dart
│   │       ├── ordered_product_list_widget.dart
│   │       └── tab_order_details_widget.dart
│   └── splash/               # 启动页
├── helper/                   # 辅助工具类
│   ├── animated_dialog_helper.dart
│   ├── notification_helper.dart
│   ├── price_converter.dart
│   └── route_helper.dart
├── theme/                    # 主题配置
│   ├── dark_theme.dart
│   └── light_theme.dart
└── util/                     # 工具类
    ├── app_constants.dart
    ├── dimensions.dart
    ├── images.dart
    └── styles.dart
```

## 核心业务逻辑

### 1. 订单接收与处理
- **订单推送**:通过Firebase Cloud Messaging接收新订单通知
- **订单列表**:按状态分类显示订单(待处理、进行中、已完成)
- **订单详情**:查看订单详细信息,包括菜品列表、数量、备注
- **状态更新**:滑动按钮快速更新订单状态(接单→制作中→待出餐→完成)
- **音频提醒**:新订单到达时播放提示音和振动

### 2. 厨房显示系统(KDS)
- **实时同步**:订单状态实时同步到所有设备
- **分类显示**:按订单状态分组显示
- **优先级管理**:支持订单优先级标记
- **时间追踪**:显示订单等待时间和制作时间

### 3. 用户认证
- **登录系统**:支持邮箱/密码登录
- **记住登录**:自动登录功能
- **多语言支持**:支持多种语言切换

### 4. 通知管理
- **推送通知**:Firebase消息推送
- **本地通知**:应用内通知显示
- **通知历史**:查看历史通知记录

## 核心代码分析

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

### 状态管理
- 使用**GetX**进行状态管理
- 主要控制器:
  - `ThemeController`:主题切换(暗黑/亮色模式)
  - `LocalizationController`:多语言支持
  - `OrderController`:订单状态管理
  - `AuthController`:用户认证管理
  - `SplashController`:启动页逻辑

### API架构
- **ApiClient**:处理HTTP请求
- **ApiChecker**:API响应检查
- 支持分页加载和错误处理

### UI组件
- **响应式设计**:支持平板和手机不同尺寸
- **自定义组件**:
  - `SliderButtonWidget`:滑动按钮(用于状态更新)
  - `OrderCardWidget`:订单卡片
  - `OrderStatusTabsItemWidget`:订单状态标签
  - `StatusChangeCustomButton`:状态变更按钮
  - `FabCircularMenuWidget`:浮动圆形菜单

### 关键依赖
```yaml
dependencies:
  get: ^4.7.3                    # 状态管理
  firebase_messaging: ^16.0.4    # 推送通知
  flutter_local_notifications: ^19.5.0  # 本地通知
  audioplayers: ^6.5.1           # 音频播放
  vibration: ^3.1.4              # 振动反馈
  shared_preferences: ^2.5.3     # 本地存储
  cached_network_image: ^3.4.1   # 图片缓存
  shimmer: ^3.0.0                # 加载骨架屏
  http: ^1.6.0                   # HTTP请求
```

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

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

## 与eFood生态系统的关系
此应用是eFood多应用生态系统的一部分:
- **User App**:顾客点餐应用
- **Table App**:服务员桌台管理应用
- **Kitchen App**:厨师订单处理应用(本应用)
- **Deliveryman App**:配送员配送管理应用

资源在线 » codecanyon-40488338-efood-kitchenchef-app

常见问题FAQ

发表评论