Developer
|
7523060927
|
docs(ui): 更新画布尺寸适配说明
- 将实际开发适配尺寸从 1920×1080 修改为 1024x600 横屏
- 同步更新 AGENTS.md、CLAUDE.md 和 README.md 中的画布尺寸说明
|
2026-06-05 10:08:54 +08:00 |
|
Developer
|
5f9cb06a1e
|
docs(readme): 更新项目文档为开发者指南
- 将 README.md 重命名为 AGENTS.md,提供项目开发指导
- 添加项目概述,说明污水毒品快检一体机控制软件功能
- 添加开发命令说明,包括获取依赖、运行、构建等常用命令
- 详细描述项目架构,包含 core、features、shared 三层结构
- 补充技术栈信息,明确状态管理、路由、数据持久化方案
- 添加核心数据模型说明,包含 Program 和 Step 实体定义
- 说明关键 Provider 和数据库表结构设计
- 补充国际化配置和代码规范要求
- 详细描述各功能模块,包括首页、程序管理、详情、设置模块
- 添加步骤参数说明表,明确各操作参数取值范围
- 更新当前实现状态,标注已完成和待完善功能
- 添加 UI 设计稿链接和页面截图参考
- 补充设计规范要求,包括配色、字体、适配等说明
|
2026-06-05 10:07:36 +08:00 |
|
Developer
|
8c2e26ec87
|
feat(home): 更新完成页面UI并优化串口连接状态管理
- 更新设备屏幕尺寸配置从1920*1080调整为1024x600
- 添加完成页面的AppBar导航和返回功能
- 重构CompletePage布局,使用SafeArea和ConstrainedBox适配不同屏幕
- 添加国际化支持的完成按钮文本
- 优化完成页面视觉元素,包括图标大小和间距调整
- 实现串口连接状态的响应式管理,解决UI状态同步问题
- 优化串口运行器的状态更新逻辑,实现乐观更新机制
- 调整完成页面按钮布局,提供完成和重新运行选项
|
2026-06-05 10:03:41 +08:00 |
|
Developer
|
87c4b669a0
|
refactor(home): 优化运行状态监控界面布局和参数显示
- 将程序名文本包装在Flexible组件中并添加省略号处理
- 为步骤信息添加Flexible组件以改善布局
- 使用ScrollableVIew包装内容以支持滚动
- 重构步骤参数显示为三列布局
- 移除硬编码的温度和磁力时间参数
- 更新速度、持续时间和样品体积的单位显示
- 从状态栏移除设备名称显示
- 从设置菜单移除USB导入功能选项
|
2026-06-04 17:47:12 +08:00 |
|
Developer
|
736c36a98e
|
refactor(home): 优化主页布局和运行控制面板
- 将主页左右布局改为弹性布局,左侧程序列表占2/5宽度,右侧控制区域占3/5宽度
- 移除程序列表组件的固定宽度设置,使其能够自适应布局
- 在运行控制面板中添加主轴最小尺寸限制以优化空间使用
- 移除暂停/继续按钮中的占位按钮,简化按钮逻辑
- 修改开始/继续按钮为暂停/继续按钮,支持运行中状态切换
- 更新按钮图标和文字根据当前运行状态动态显示
- 移除运行状态指示器,精简界面元素
|
2026-06-04 17:22:38 +08:00 |
|
Developer
|
37d2af70b7
|
feat(device): 启动自动连接 USB 串口 + 隐藏设置页配置项 + 标题栏连接状态
- 新增 AutoSerialConnect 服务:启动后自动连接第一个 USB 串口设备,
固定 115200/8/N/1,连接失败时每 3s 重试,断开后重新进入重试循环
- main.dart 通过 ProviderContainer 在 runApp 之前触发 autoSerialConnectProvider
- 移除设置页「串口配置」菜单项及对应面板分支
- StatusBar 在「设备运行状态」前增加串口连接状态指示(已连接/连接中/未连接)
|
2026-06-04 16:57:45 +08:00 |
|
Developer
|
3ab2232845
|
refactor(device): 替换消息ID生成器为UUID实现
- 移除自定义时间戳+随机数ID生成逻辑
- 集成uuid包依赖并配置版本
- 使用Uuid.v4()替换原有next()方法实现
- 更新MessageIdGenerator类文档注释
- 在JSON协议层添加设备日志警告输出
- 修改pubspec.yaml添加uuid依赖声明
|
2026-06-04 16:45:06 +08:00 |
|
Developer
|
55bdaa9211
|
feat(programs): Excel 导入改为全量覆盖模式
已存在 code 的程序不再跳过,而是:
- 用 Excel 中的字段更新 program(保留 id)
- 删除该 program 的全部旧步骤
- 按 Excel 中的步骤重新写入
返回值变量名 importedCount -> processedCount 更准确。
Toast 文案同步:成功处理 / Excel 无有效数据。
|
2026-06-04 15:51:03 +08:00 |
|
Developer
|
cbe1e6b470
|
feat(programs): Android 端通过 MediaStore 写入公共 Downloads
Android 10+ 受 scoped storage 限制,getDownloadsDirectory() 返回的是
app-specific 目录 (/storage/emulated/0/Android/data/.../files/Download/),
而非用户可见的 /storage/emulated/0/Download/。
新增 MainActivity 端 MethodChannel com.xiarui.kuaishai2/downloads:
- API 29+:MediaStore.Downloads 写入公共 Downloads,无需权限
- API <=28:直接写 /storage/emulated/0/Download/(需 WRITE_EXTERNAL_STORAGE)
Dart 端 ExcelTemplateService 改用 MethodChannel,Android 平台返回
Download/<filename> 显示路径;其它平台保留 getDownloadsDirectory 行为。
返回值由 File 改为 String,调用方已同步更新。
|
2026-06-04 15:45:23 +08:00 |
|
Developer
|
16fbb7d54b
|
refactor(programs): 模板保存目录改为下载目录
- getDownloadsDirectory() 优先,失败时回退到应用文档目录
- 更新 dartdoc 说明
|
2026-06-04 15:35:52 +08:00 |
|
Developer
|
d91791edaf
|
feat(programs): Excel 模板下载 + .xlsx 解析导入
- 新增 excel 4.0.6 / path_provider 2.1.5 依赖
- ExcelTemplateService:生成 Programs + Steps 双表模板(保存到应用文档目录)
- ExcelImportService:解析 .xlsx 并写入数据库,跳过已存在 code、按 program_code 关联步骤
- programs_page 顶部新增「下载模板」按钮,导入按钮改用 Excel 解析
- 移除被取代的 program_import_service.dart
- AppLocalizations 新增 downloadTemplate 键
- 验证:flutter analyze 无新增 issue;flutter build apk --debug 通过
|
2026-06-04 15:27:34 +08:00 |
|
Developer
|
d53c41c300
|
feat(device): 添加USB设备通信支持和程序参数优化
- 在AndroidManifest.xml中添加USB Host权限和设备过滤器配置
- 新增设备控制国际化词条包括速度档位、吹气时间等
- 重构数据库结构将速度相关字段统一为档位数值存储
- 添加通用KV存储方法用于settings表数据读写
- 优化首页导航实现tab间跳转和状态保持功能
- 更新程序详情页面布局和参数表单界面
- 移除模拟运行器相关测试代码
- 添加USB串口通信依赖包usb_serial
|
2026-06-04 15:13:36 +08:00 |
|
Developer
|
67e2c7c76c
|
refactor(settings): 语言/密码/U盘导入改用右侧内嵌面板
- 新增 LanguagePanel / PasswordPanel / UsbImportPanel 三个 widget
- settings_page 移除 AlertDialog 弹窗逻辑
- 5 个菜单项统一走 _buildContent() switch 切换右侧内容
- 验证:flutter analyze 无新增 issue
|
2026-06-04 15:10:03 +08:00 |
|
Developer
|
e311d09d31
|
feat(device): TX/RX 日志附加完整 JSON 字符串
|
2026-06-04 13:44:06 +08:00 |
|
Developer
|
819889684f
|
feat(device): 实现下位机 JSON 协议(data model 对齐)
按 docs/下位机交互数据模型.md 重构串口协议层:
协议层
- 新增 DeviceMessage 模型,对应 message_id/type/ack/need_ack/data
- 新增 JsonProtocolService,4 字节大端长度前缀 + UTF-8 JSON 帧
- 删除原二进制协议(serial_protocol.dart)
服务层
- 新增 DeviceMessageService,集中收发并按 type 分发
- 重写 SerialRunner 为 JsonSerialRunner,使用 create_task/control 消息
数据模型
- DeviceState 增加 doorStatus/lightStatus/taskStatus/lastInfoAt
- 新增 DeviceInfoNotifier 订阅 device_info 上行
- 灯光按钮接通 light_control 消息
测试
- 新增 device_protocol_test.dart(14 用例)
- 修复 models_test.dart 残留的 Step mixSpeed/blowSpeed 错误
|
2026-06-04 13:00:21 +08:00 |
|
Developer
|
5d28bf631b
|
chore(project): 初始化项目基础配置文件
- 添加 CodeGraph、Android 和通用 gitignore 配置
- 创建项目元数据文件跟踪 Flutter 项目属性
- 添加 Codex AI 指导文档 AGENTS.md 说明项目架构
- 配置代码分析选项 analysis_options.yaml
- 设置 Android 应用清单权限和 Kiosk 模式配置
- 实现中英文国际化支持 AppLocalizations
- 配置 GoRouter 应用路由导航
- 创建明亮工业控制风格的主题配置 AppTheme
|
2026-06-04 11:19:44 +08:00 |
|