ManageDishTeminal 智能排菜系统

ManageDishTeminal 是面向食堂排菜终端的 Android Pad 应用。应用以横屏全屏方式运行,提供本地登录、终端配对、档口菜谱维护、称重台当前排菜、主题字号设置、行为日志和崩溃捕获等能力。

功能路径

  1. 启动进入 LoginActivity,使用本地账号登录。
  2. 登录成功进入 HomeActivity,展示排菜和设置菜谱两个业务入口。
  3. 首次进入业务页前需要在系统设置中补齐配置链接、配对码和设备编号。
  4. 进入 ArrangeActivity 后选择档口,加载称重台设备列表,对左称、右称进行当前排菜。
  5. 进入 RecipeActivity 后按日期、餐次、档口维护菜谱,支持新增、移除和复制菜谱。

核心功能

登录与首页

系统设置

系统设置入口需要管理员密码验证,默认管理员密码为 cpt123。设置项包括:

当配置链接、配对码或设备编号缺失时,首页进入业务页会强制弹出设置框,避免业务接口缺少终端定位信息。

排菜

ArrangeActivity 负责称重台当前排菜:

设置菜谱

RecipeActivity 负责维护档口菜谱:

网络与本地能力

主要接口

功能接口
配对码校验POST /p/api/matecode
设备开机初始化POST /p/api/equipmentStart
档口树POST /api/device/restaurant/tree
档口设备列表POST /api/device/restaurant/equipmentList
餐厅餐次信息POST /p/api/getRestaurantsInfo
菜品列表POST /p/api/CaterList
已配置菜谱POST /p/api/getMeal
添加菜谱菜品POST /api/device/recipe/addDishes
删除菜谱菜品POST /api/device/recipe/deleteDishes
下发称重台当前排菜POST /api/device/equipment/pushDishes
复制菜谱POST /api/device/recipe/copy

代码中仍保留 /todo/getScaleList/todo/saveScaleDish/todo/saveRecipeDishes 等占位接口,当前主流程未作为完成接口依赖。

技术栈

目录结构

app/src/main/java/com/cpt/managedishteminal/
├── activity/      页面入口:登录、首页、排菜、设置菜谱、崩溃页
├── application/   Application 初始化
├── network/       Retrofit 接口、客户端、请求封装、响应模型
├── utils/         配置、日志、主题、日期、Toast、崩溃处理等工具
└── view/          设置弹窗、输入弹窗、标题栏、loading、管理员密码弹窗

app/src/main/res/
├── layout/        页面和弹窗布局
├── drawable/      背景、按钮、图标资源
└── values/        字符串、颜色、尺寸、主题、数组

构建与验证

项目可使用 Android Studio 打开,也可在命令行执行:

./gradlew :app:assembleDebug
./gradlew :app:lintDebug

本机验证建议使用 Android Studio 自带 JDK 11。历史验证中,强制 Java 8 会与当前 AGP 7.3 构建链不匹配。

运行配置

安装后首次进入业务功能时完成以下配置:

  1. 输入服务地址。
  2. 输入配对码并等待接口校验成功。
  3. 确认设备编号已由接口返回并展示。
  4. 按需选择主题颜色和字号。

配置保存后,排菜页和设置菜谱页会使用已保存的设备编号、餐厅 ID、档口、餐次和日期参数请求接口。

提示词工程资料

本项目的提示词工程目录为:

/Users/liang/AndroidStudioProjects/zhct/zhctprompt/work_android/ManageDishTeminal/

该目录用于保存项目规则、接口参考、变更记录、聊天记录和 README 副本。新增 Markdown 文档时,需要在同目录同步生成 HTML 版本。