8 Commits

Author SHA1 Message Date
eafonyang dd92845bc2 feat(task): 新增定时任务控制系统与分享码配置
- 增加设备持久化、阻抗数据持久化、分享码持久化定时任务
- 通过环境变量 ENABLE_PERSIST_TASK 和 ENABLE_IMPEDANCE_PERSIST_TASK 控制任务启用
- 分享码配置新增最大数量和TTL时间支持多种时间单位(m/h/d)
- 实现任务批量处理、锁机制及失败重试保障数据一致性
- 定时任务启动集成至服务主流程,增强系统可配置性和运维便利性

feat(ota): 新增根据设备型号和版本号查询版本名称接口

- 实现 GET /audio/getVerName 接口返回唯一 OTA 版本名称 verName
- 添加请求参数校验及错误处理逻辑
- 在仓库层新增按型号和版本号查询版本名称的方法
- 完善接口文档及Swagger定义,支持前端调用查询版本名称功能
2026-09-02 11:13:14 +08:00
eafonyang 5d2910e89e 耳机阻抗上报 2026-07-06 10:41:41 +08:00
eafonyang 7ed7183f1a 新增删除分享码功能 2026-06-17 16:50:39 +08:00
eafonyang 4b903f39e1 shareQuery 和 shareAccept 的响应中加入 model 字段 2026-06-17 14:05:32 +08:00
eafonyang 7687e6a0d9 分享码日志新增 model 字段,记录操作的设备的型号 X8/X9 2026-06-17 13:52:11 +08:00
eafonyang fc4ec2c030 增加分享码查询接口,不写入操作日志表 2026-06-15 17:58:14 +08:00
eafonyang b2aed2a6b5 feat(share): 新增 shareList 接口 + 分享码模块全链路优化
- 新增 GET /audio/shareList?mac=xx 查询未过期分享码(纯 Redis,ZSET 索引)
- share:mac:{mac} 从 SET 改为 ZSET(score=expire_at),支持 ZREMRANGEBYSCORE 精确过期清理
- 空 ZSET 自动 DEL,避免 key 累积
- share:import:pending 增加 12h 兜底 TTL,防止 DB 不可用时内存泄漏
- 导入日志 field 改为 mac:code(去掉 nanotime),同 MAC+code 多次导入幂等去重
- MarkPersisted 保存/恢复 PTTL,防御性编程
- shareCreate 改为 POST + JSON body
- 全量 handler 补充 Swagger 注释,集成 swag 文档生成
- Makefile 使用 $(go env GOPATH)/bin/swag 解决 PATH 问题
2026-06-12 17:07:59 +08:00
eafonyang 8010cbd32f 新增分享码功能 2026-06-12 15:50:01 +08:00