Commit Graph
95 Commits
Author SHA1 Message Date
lvmeng 936bf206dc ```
refactor(env): 调整环境配置和切换逻辑

- 将本地环境配置从注释状态启用,并更新对应的IP地址和端口
- 修改环境切换对话框中的文本标签,重新排列环境选项顺序
- 更新全局数据类中的环境URL常量定义,调整测试和UAT环境地址
- 移除未使用的SPUtil导入,改用SpTool工具类
- 修改应用启动时的默认环境判断逻辑,将特定设备指向本地环境
- 调整环境切换对话框中的RadioButton选中状态和URL映射关系
```
2026-06-03 16:34:16 +08:00
lvmeng 8e4dcb9f61 fix(arcface): 禁用活体检测功能
- 将enableLive变量强制设置为false以禁用活体检测
- 移除注释掉的调试代码行
2026-06-03 16:32:39 +08:00
lvmeng 8ba4ba6db0 feat(order): 开餐下单新增cookOrderId支持用于溯源追踪
- 在FoodInfo数据模型中新增cookOrderId字段
- 在NewFoodInfo数据模型中新增cookOrderId字段并实现映射
- 在PlaceOrderRequest请求模型中新增cookOrderId参数
- 在订单提交流程中传递cookOrderId参数
- 实现菜品列表到就餐环节的ID回传机制
2026-06-02 09:07:21 +08:00
lvmeng 37f86e202f refactor(camera): 优化相机拍照功能实现
- 移除 PhotoCaptureHelper 中的测试模式和无用的 onSuccess 回调参数
- 将 CollectFragment 中的 UI 操作迁移到正确的协程调度器 (Main 和 IO)
- 使用 lifecycleScope 替代 runOnUiThread 确保生命周期安全
- 重构 ImageUtil.uriToBitmap 方法,添加图片尺寸压缩逻辑以减少内存占用
- 从 InitActivity 中移除已注释的人脸识别相关初始化代码
- 修复 cameraCallback 中的拼写错误 (rerurn@ -> return@)
2026-05-29 13:52:07 +08:00
lvmeng 737baf8486 feat(api): 更新API端点并集成人脸数据库导入功能
- 将所有API端点中的/booth路径替换为/serve
- 新增searchFood API用于菜品搜索功能
- 新增getCollectVectorPage API用于向量数据分页获取
- 添加FaceDbImporter工具类实现从assets导入人脸数据
- 在初始化活动中集成人脸数据导入功能
- 更新订单创建逻辑适配新的API参数结构
- 重构菜品搜索和订单处理相关API调用
- 添加V2数据模型到V1模型的转换扩展函数
- 更新绑定订单接口以使用新的API端点
- 添加测试模式支持以跳过实际拍照操作
2026-05-28 19:57:40 +08:00
lvmeng bf6b2547f3 refactor(network): 重构网络请求配置和API接口实现
- 将BASE_URL改为使用GlobalData.PROD_BASE_URL常量
- 更新ApiClient中的URL匹配规则以支持新的营养模块接口
- 将ApiServiceV2中的接口路径从/neglect/booth改为/nutrition/neglect/booth
- 使用@Url注解动态传入完整URL地址
- 在CollectedFoodActivity中切换到NetViewModelV2和新API模型
- 更新采集功能的数据模型和接口调用方式
- 调整人脸数据获取逻辑以支持增量和全量同步
- 优化文件上传和删除操作的参数传递方式
2026-05-28 15:14:44 +08:00
lvmeng 6abd2f9b0b feat(network): 添加新系统API V2支持及相关数据模型
- 引入 ApiServiceV2 接口定义新系统API端点
- 添加 RemoteRepositoryV2 实现新API的数据访问层
- 创建 NetViewModelV2 提供新API的业务逻辑处理
- 定义 v2 包下的数据模型类包括请求响应对象
- 在 ApiClient 中集成新旧两套API服务实例
- 配置API日志拦截器识别新API调用并打上ApiV2标签
- 实现新系统菜品、人脸、订单、会员等完整功能接口
2026-05-28 09:33:05 +08:00
lvmeng c19d84a7a6 refactor(init): 优化结算模式配置逻辑
- 移除未使用的变量声明
- 将结算模式设置改为不可变值
- 简化支付类型判断逻辑
- 保持结算模式存储功能不变
2026-05-26 11:49:23 +08:00
lvmeng 8f1f15dd74 feat(payment): 添加会员折扣功能并重构支付逻辑
- 新增 getMemberDiscount 接口用于查询会员折扣
- 在人脸识别支付中集成会员折扣计算逻辑
- 将支付金额计算从 vipPrice 切换到 specPrice 并应用会员折扣
- 在初始化活动中添加设备配置获取功能
- 使用 ConstraintLayout 重构主餐品列表布局
- 添加 Timber 日志框架替换原有 Log 工具
- 重构 MainScreenPresentation 中的食物价格计算逻辑
- 移除重复的设备配置获取代码,统一在 InitActivity 中处理
2026-04-27 17:52:45 +08:00
lvmeng 416a8366e1 feat(MainScreenPresentation): 添加布局隐藏功能以支持结算模式
- 导入 invisible 扩展函数
- 在特定结算模式下隐藏 eat detail 布局
- 实现相机恢复后的条件性视图控制
2026-04-24 15:41:21 +08:00
lvmeng 03c5aee785 refactor(ui): 重构主界面食物列表布局和支付模式切换功能
- 将原有的RecyclerView替换为FrameLayout容器,实现动态布局加载
- 新增layout_main_food_list.xml和layout_main_food_list2.xml两个布局文件
- 实现联合支付和独立支付两种模式下的不同UI展示
- 集成食物详情显示功能,通过include方式引入layout_eat_detail.xml
- 更新数据绑定逻辑,支持两种支付模式下的食物列表显示
- 迁移SharedPreferences操作至SpTool工具类统一管理
- 优化食物识别结果显示逻辑和搜索按钮状态控制
- 重构RecyclerView初始化和适配器设置代码结构
2026-04-24 15:37:57 +08:00
lvmeng 45562a9fc1 fix(order): 解决订单生成后餐品未拿走的检测逻辑
- 添加abs函数导入用于计算重量绝对值
- 在订单生成成功后增加重量检测逻辑
- 当称重绝对值大于10克时认为餐品未被拿走
- 添加详细的调试日志记录重量信息
- 集成FileUtil工具类用于保存操作日志
- 在人脸数据获取流程中添加日志记录时间戳变化
2026-04-14 15:19:09 +08:00
lvmeng 7f455f2d8f perf(FoodModule): 提高食物查询性能并优化排序逻辑
- 将默认查询数量从15增加到50
- 移除不必要的分数阈值过滤条件
- 移除复杂的按名称分组和计数逻辑
- 简化排序算法,直接按分数排序
- 添加调试日志输出结果数据
2026-04-13 17:20:51 +08:00
lvmeng d378cdcf97 fix(main): 修复菜品切换和重量计算相关问题
- 移除未使用的LinearLayoutManager和FoodOrderAdapter导入
- 添加isSwitchFood标志用于菜品切换时重置数据
- 优化resetSelectedFood方法,根据用户状态决定是否重新打开识别功能
- 将currentWeight修改为public访问权限
- 在重量变化时添加判断避免重复更新
- 注释掉不需要的重量更新调用
- 在菜品识别完成时添加重量更新
- 在清空选中项目时重置isSwitchFood标志
- 优化updateWeight方法中的逻辑判断
- 将倒计时重置任务提取为单独方法
- 添加switchFood逻辑控制,避免重复人脸识别
- 修复余量计量模式下的最后餐品处理逻辑
2026-04-10 16:03:27 +08:00
lvmeng e5b682f021 refactor(face): 优化人脸识别状态管理与菜品选择逻辑
- 移除 MainFoodListAdapter 中未使用的适配器和视图参数
- 提取菜品重选逻辑到独立的 resetSelectedFood 方法中
- 删除临时的独立支付模式测试代码
- 在余量计量场景中添加人脸状态检查避免重复数据读取
- 修复倒计时任务状态判断逻辑并清理任务引用
- 添加空值检查防止 CompareResult 为空时的异常
- 实现 resetFaceState 方法清空人脸识别状态
- 在订单提交前重置人脸状态确保下次识别正常进行
2026-04-09 16:02:24 +08:00
lvmeng 0498e124b3 fix(weight): 修复称重逻辑和支付模式相关问题
- 将 WEIGHT_CHANGE_VALUE 从 25 修改为 20
- 添加 currentWeight 变量用于准确记录当前称重值
- 临时修改 settlementMode 为独立支付模式用于测试
- 更新日志输出以更好地跟踪称重变化
- 修复即放即取和余量计量模式下的称重处理逻辑
- 添加食物识别状态控制变量 foodRecognizeState
- 在不同模式下正确设置 eatWeight 和 foodWeight 计算方式
- 优化余量计量模式下的状态重置逻辑
- 添加倒计时功能用于余量计量模式状态重置
- 修复营养计算相关的日志输出格式
2026-04-09 11:59:25 +08:00
lvmeng 30b2b178a9 refactor(SensorScaleUtils): 优化重量读取逻辑
- 移除状态字符串转换的日志代码
- 简化稳定状态判断逻辑,移除重复的lastWeight比较
- 将重量单位转换提取为独立变量,提高代码可读性
- 保持原有的回调机制和重量单位转换功能
2026-04-08 10:59:07 +08:00
lvmeng 2ba55ef027 feat(common): 添加View点击区域扩展功能并优化主界面重量检测逻辑
- 在CommonExt.kt中新增expandClickArea扩展函数,支持扩大View的点击响应区域
- 新增TouchDelegate导入用于实现点击区域扩展功能
- 调整MainActivity.kt中的重量检测逻辑顺序,先处理联合支付模式下的特殊情况
- 添加对当前用户ID的检查,优化即放即取模式下的重量数据处理流程
- 重构重量重置识别条件的位置,确保正确的执行顺序
2026-04-08 10:52:09 +08:00
lvmengandClaude Sonnet 4.6 a45690d3be refactor(utils): 重构 FoodVectorTool 并优化 zero() 提示控制
- 重构 FoodVectorTool:移除单例 pageNum 状态污染问题,分页逻辑下沉为私有 fetchPage,saveFoodVector 改为私有,PAGE_SIZE 移入内部定义,对外统一暴露 loadAndSaveFoodVector 接口
- 更新 InitActivity、MainActivity 调用方,移除重复的 onPageFinish 回调
- SensorScaleUtils.zero() 新增 isShowToastRemind 可选参数,支持按需显示标定成功提示

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 09:25:03 +08:00
lvmeng ab0d9b35f5 feat(data): 更新食物营养数据模型并优化向量数据处理
- 在DataBean中将肉蛋相关字段重命名为肉蛋豆,并添加总重量字段
- 新增FoodVectorTool工具类用于处理食物向量数据的分页获取和存储
- 重构InitActivity中的食物向量数据获取逻辑,使用新的工具类替代原有实现
- 在MainActivity中集成食物向量数据同步功能,在清除本地数据后重新获取
- 更新MainScreenPresentation中营养信息显示逻辑,适配新的数据模型结构
- 修改ApiClient中的日志标记逻辑,为不同接口添加特定的标签
- 调整食物订单列表的数据更新方式,优化适配器通知策略
2026-04-03 18:04:59 +08:00
lvmeng b16147b1b2 feat(face): 添加人脸识别距离过滤功能
- 在FaceHelper中添加人脸宽度小于200像素时的过滤逻辑
- 当检测到人脸过小时自动清除左侧人脸数据
- 防止远距离小人脸影响识别准确性
- 保留原有的活体检测流程不变
2026-04-02 19:13:15 +08:00
lvmeng d6528d33fc refactor(MainActivity): 将人脸数据清除操作移至后台线程执行
- 使用 lifecycleScope.launch 在协程中执行人脸数据清除
- 通过 withContext(Dispatchers.IO) 确保清除操作在 IO 线程运行
- 避免主线程阻塞提升界面响应性能
- 保持原有的用户提示和缓存更新逻辑不变
2026-04-02 17:45:41 +08:00
lvmeng 5479091959 refactor(main): 将Thread替换为lifecycleScope并优化协程处理
- 替换CollectFragment中的Thread为activity.lifecycleScope.launch
- 在MainActivity中添加FaceServer相关依赖和协程调度器
- 修改环境切换对话框以支持人脸数据重置功能
- 将照片拍摄和食物向量保存操作从Thread迁移到lifecycleScope
- 优化人脸识别数据更新逻辑,移除不必要的线程创建
- 修改onTakePhotoSuccess方法为suspend函数并调整UI更新方式
- 更新主线程操作使用withContext(Dispatchers.Main)替代runOnUiThread
- 在MainScreenPresentation中添加相机暂停功能
- 修复SensorScaleUtils中标定调用问题
- 扩展UserViewModel的人脸数据获取接口,支持回调处理
2026-04-02 17:35:37 +08:00
lvmeng 91800a6bb1 feat(app): 添加环境切换功能并优化基础URL管理
- 在主界面标题时间区域添加点击事件,支持弹出环境切换对话框
- 新增EnvSwitchDialog类实现TEST/UAT/PROD三套环境切换功能
- 新增dialog_env_switch.xml布局文件定义环境切换弹窗UI
- 重构GlobalData类,统一管理基础URL常量并添加持久化支持
- 修改MyApp初始化逻辑,优先读取用户手动设置的环境配置
- 添加SpTool.baseUrl属性用于环境配置的本地存储
- 修复MainActivity布局文件中的TextView垂直内边距问题
- 调整食物识别防抖时间从500ms到3000ms,优化计算营养逻辑执行时机
2026-03-31 09:48:32 +08:00
lvmeng 5c230e38c3 refactor(activity): 重构 BaseActivity 权限管理和页面跳转功能
- 在 BaseActivity 中新增权限请求和页面跳转的通用方法
- 移除 InitActivity 中原有的相机权限请求相关代码
- 使用 BaseActivity 的通用权限请求方法替代原有实现
- 添加网络连接检测工具类 NetworkUtils
- 在 WiFi 设置页面返回后重新检查网络连接状态
- 优化按钮可见性控制逻辑
2026-03-30 14:01:13 +08:00
lvmeng 10d1f966da 配置接口新增结算模式字段;优化页面刷新; 2026-03-27 17:21:45 +08:00
lvmeng 57f8920442 优化订单显示档口机标识;优化当前菜品信息的问题; 2026-03-26 18:57:20 +08:00
lvmeng fb4278d2b7 联合支付余量计量模式订单显示当前取餐信息 2026-03-25 15:42:22 +08:00
lvmeng fcea0d785d 联合支付功能测试 2026-03-24 18:34:38 +08:00
lvmeng c4a6101a7b 联合支付功能调试 2026-03-23 18:13:55 +08:00
lvmeng bf8444e5d5 联合支付功能调试 2026-03-20 18:06:22 +08:00
lvmeng 549e8d303f 联合支付功能 2026-03-19 17:44:13 +08:00
lvmeng b51be58c64 联合支付模式使用人脸识别生成就餐记录 2026-03-19 14:19:20 +08:00
lvmeng a6d2441704 优化:修复眼睛图标显示效果 2026-03-18 16:14:47 +08:00
lvmeng e7d11530a6 优化:修改消费码输入框为密码模式,添加显示/隐藏密码切换功能 2026-03-18 15:55:06 +08:00
lvmeng c56769769b 优化:修改消费码输入框为密��模式,添加显示/隐藏密码切换功能 2026-03-18 15:42:50 +08:00
lvmeng 8673cec545 优化:修改人脸识别任务延迟参数和添加相机权限检查 2026-03-18 14:06:42 +08:00
lvmeng 8ec7ea6a79 优化 2026-03-13 15:42:37 +08:00
lvmeng a80e3d1ba6 ObjectBox数据库操作增加线程资源清理 2026-03-12 17:25:36 +08:00
lvmeng 4f1860eb37 存在待支付订单时停止识别 2026-03-12 11:43:20 +08:00
lvmengandClaude Sonnet 4.6 f0b50ef82f 修复MainActivity中扫码枪按键事件触发页面按钮点击问题
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-11 14:54:52 +08:00
lvmeng 824dc5f867 优化扫码支付结果会员非会员显示 2026-03-11 13:55:29 +08:00
lvmengandClaude Sonnet 4.6 7232735073 修复MainActivity停止时CameraX NPE崩溃
1. 升级CameraX版本 1.3.0 → 1.4.1,从根本修复RequestWithCallback.abort() NPE
2. 跳转PayActivity前调用shutdownCamera(),防止in-flight拍照请求触发生命周期异常
3. onResume()顶部增加相机恢复逻辑,通过cameraProviderFuture==null判断是否需要重新初始化
4. shutdownCamera()中将cameraProviderFuture置null,作为相机已停止的可靠标志

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-10 19:05:28 +08:00
lvmeng 39c0ca7d72 优化人脸识别区域效果 2026-03-10 11:10:23 +08:00
lvmeng dfde8c0fad 人脸全量接口只首次请求 2026-03-10 10:53:18 +08:00
lvmeng aca84f1e94 Rename .java to .kt 2026-03-10 10:53:18 +08:00
lvmeng 7bcb74d9e0 增加支付成功语音提示;增加扫码支付; 2026-03-10 09:41:34 +08:00
lvmeng ec4a5801c2 支付页面统一副屏逻辑 2026-03-09 19:56:09 +08:00
lvmeng 59b3ad72fe 优化人脸识别显示形状 2026-02-11 17:00:08 +08:00
lvmeng 462755824d 优化 2026-02-11 15:00:27 +08:00
lvmeng 0c990ea7ee 打开增加检查网络情况 2026-02-11 14:48:30 +08:00
lvmeng ac30d95812 优化人脸识别区域 2026-02-10 09:48:26 +08:00
lvmeng 23546a967b 首页人脸识别区域改为圆形 2026-02-09 18:47:53 +08:00
lvmeng f227d15108 菜品信息查询接口增加deviceType字段 2026-02-06 11:20:58 +08:00
lvmeng e2c0ed35ec 优化识别及增加扫码枪逻辑 2026-02-04 18:00:46 +08:00
lvmeng 7596924d75 优化 2026-02-03 15:00:19 +08:00
lvmeng 6e7eb80715 优化 2026-01-26 15:53:43 +08:00
lvmeng 50d12de534 优化 2026-01-14 10:38:09 +08:00
lvmeng e86db688e1 优化 2026-01-13 14:26:18 +08:00
lvmeng c38bead8a3 优化 2026-01-13 09:30:12 +08:00
lvmeng ebc3d856d6 优化 2026-01-09 18:38:55 +08:00
lvmeng a6fa5f153a 优化 2026-01-09 16:10:57 +08:00
lvmeng a0452e985a 优化不足一份的识别问题 2026-01-09 11:59:24 +08:00
lvmeng a79f7db867 优化 2026-01-08 19:36:31 +08:00
lvmeng 2a55ddb617 采集向量优化调试 2026-01-08 15:02:44 +08:00
lvmeng 378e6088e7 采集向量数据接口调试 2026-01-06 18:49:33 +08:00
lvmeng fc04db9268 增量人脸查询优化 2025-12-31 11:54:17 +08:00
lvmeng 0d2a38391c 增量分页优化 2025-12-29 14:17:57 +08:00
lvmeng 7374f279b4 增量分页优化 2025-12-29 14:08:04 +08:00
lvmeng bb4230419a 增量接口时间戳来源于全量查询时间 2025-12-26 14:12:18 +08:00
lvmeng 5c7f222a0a 修改接口地址 2025-12-26 13:50:28 +08:00
lvmeng dfb734e25d 营养数据计算优化;人脸增加数据处理;其它优化; 2025-12-25 18:57:26 +08:00
lvmeng f080a8b73c 优化识别后未离开多次切换模式导致的不再识别问题 2025-12-22 14:18:46 +08:00
lvmeng 960b429e69 优化 2025-12-19 17:34:31 +08:00
lvmeng af56fb4aeb 优化 2025-12-19 11:10:56 +08:00
lvmeng ab3109f36a 支付完成倒计时3秒返回首页;秤默认置零取消,打开直接识别物品;人脸识别图片显示拉伸优化;设置页面切换是否收费模式首页逻辑处理; 2025-12-18 18:25:15 +08:00
lvmeng 1d0e1a62e2 增加消费码支付功能、支付逻辑优化、金额问题优化、订单绑定优化 2025-12-12 17:50:51 +08:00
lvmeng a0847d21b7 调试优化 2025-12-11 18:54:57 +08:00
lvmeng 6e318f8c82 支付调试优化 2025-12-10 17:56:24 +08:00
lvmeng 88d7530568 t调试 2025-12-09 18:38:26 +08:00
lvmeng 086845dd16 营养接口调试、支付接口联调 2025-12-08 18:06:48 +08:00
lvmeng 04e318f47b 增加支付接口相关逻辑 2025-12-05 18:03:31 +08:00
lvmeng 8899cae323 接口调试、增加人脸识别后主副屏支付金额逻辑、其它优化 2025-12-03 18:40:47 +08:00
lvmeng 29188c5944 接口联调 2025-11-28 18:46:41 +08:00
lvmeng 9bcd7c9983 人脸识别支付流程 2025-11-28 09:13:29 +08:00
lvmeng 88179e27b7 首页、支付功能 2025-11-26 18:57:53 +08:00
lvmeng 60b712f216 结算页面、设置页面 2025-11-19 18:35:53 +08:00
lvmeng 4abc855b36 功能优化 2025-11-07 14:23:53 +08:00
lvmeng a27cc5f7ee 识别图片处理、查询菜品数据 2025-10-17 14:47:28 +08:00
lvmeng dd51448aea 处理gradle冲突 2025-10-16 19:44:28 +08:00
lvmeng b62738aa15 Merge branch 'dev_lvmeng_1016'
# Conflicts:
#	app/build.gradle.kts
#	build.gradle.kts
#	settings.gradle.kts
2025-10-16 19:30:22 +08:00
lvmeng 7a60f4b34d Merge remote-tracking branch 'origin/master' 2025-10-16 19:23:58 +08:00
lvmeng c23aedf464 支持菜品识别 2025-10-16 19:20:59 +08:00
lvmeng d9b725cb63 Merge remote-tracking branch 'origin/master' 2025-10-16 13:35:06 +08:00
lvmeng caefbd0944 优化 2025-09-26 16:02:18 +08:00