Commit Graph

161 Commits

Author SHA1 Message Date
cbf4f37b94 feat(device): 应用图标改存云存储并修复版本号唯一键冲突 2026-10-19 14:35:27 +08:00
72770b226a chore(docker): 移除 minio/mysql/redis 冗余配置文件 2026-10-19 12:12:55 +08:00
TongTongStudio
adb9b96cb7 feat(device): 设备签名升级为 ECDSA 并新增壁纸/图片/闹钟与策略扩展
签名与安全
- 设备验签由 HMAC 重构为 ECDSA P-256(SHA256withECDSA),抽出
  DeviceSignatureVerifier,canonical 串为 METHOD|path|bodyHash|ts|nonce
- 新增 CachedBodyRequestWrapper 支持请求体读取,multipart 不参与 bodyHash
- Redis 一次性 nonce 防重放,验签前校验设备存在且 status != 0(封禁即吊销)
- bind_phone 接口豁免过滤器,改由 Controller 用请求内公钥做 PoP 验签并自动注册
- 新增封禁/解封设备接口(sys:device:update),SQL 增加 sys_sn.public_key

家属端(client)
- 壁纸:上传单个 / 轮换(最多 7 张)/ 调整顺序,静态资源映射 /static/wallpaper/**
- 图片:发送到设备(contentType=24)、发送记录列表、收藏状态标记
- 闹钟:查询 / 新增 / 修改 / 删除,变更后推送设备同步(contentType=25)
- 新增请求绑定设备(contentType=20)、绑定成功通知(21)、反向拨号(22)

设备端(mobile)
- 新增 get_alarms / sync_alarms,按设备本地 id 整表覆盖重建
- 策略接口同步新增 20 项管控开关(安全模式、ADB、APN、飞行模式、定位等)

其他
- MQTT 首次连接失败不再阻塞启动,新增每分钟定时兜底重连
- 文件服务补充 md5/sha1/sha256 校验值,AppIcon 增加 iconSha1/iconSha256
- 新增 SQL:sn_device_key / sn_device_alarm / sn_device_picture / sn_device_wallpaper
2026-10-19 10:41:17 +08:00
Ray.Hao
1e089cfe08 chore: 移除 xxl-job 建表脚本 2026-09-30 18:43:43 +08:00
Ray.Hao
d63685efc8 chore: 新增 xxl-job 服务端初始化脚本
- 含 xxl-job 建表与默认账号,供 docker-compose 启动前初始化
2026-09-30 12:40:33 +08:00
Ray.Hao
ab8d9065fb feat(menu): 外链菜单改用 external_url 承载
- 数据大屏由目录改为站内外链,移除三个子菜单
- 外链透传前端的判断由内嵌改为外链
- 提示词同级菜单示例的路径去掉前导斜杠
2026-09-30 12:39:22 +08:00
Ray.Hao
1243a311e0 chore: 删除启动横幅并将英文注释改为中文
- 移除启动横幅文件与定时任务配置里的英文说明
- 密码认证与角色禁用会话失效处的注释改为中文
- 代码生成的列类型处理注释改为中文,去掉重复的类型列举
- 初始化脚本的表结构与表数据注释改为中文
2026-09-27 21:26:44 +08:00
Ray.Hao
607b6c7bb3 feat(codegen): 代码生成新增 AI 配置推断并迁移模板资源
- 模板与外部文件移至 resources/codegen、excel、ip2region
- 新增 AI 配置推断接口、表单与返回对象
- 字典项与菜单 SQL、IP 工具、日志配置调整
- docker-compose 与英文 README 更新
- 版本 4.11.0
2026-09-26 09:13:16 +08:00
Ray.Hao
9fc49583d9 feat: 新增动态表单模块并同步字典与菜单改动
- 表单: 新增定义、数据、快照三表与接口

- 字典: 字典项改为逻辑删除,同字典下值唯一

- 菜单: 移除 alwaysShow,下拉改 types,新增按钮生成与父级校验

- AI: 新增对话服务与提示词

- sql: 同步表结构与菜单权限数据

- 工作流: 新增流程模块与 BPMN 流程
2026-09-25 21:07:09 +08:00
Ray.Hao
baf2dbe509 feat: 新增动态表单与工作流模块
- module/form: 动态表单定义、数据、版本快照的增删改查与渲染校验
- module/workflow: Flowable 审批流,含流程设计、发起、审批中心与演示流程
- module/config: 工作流开关 flowable.enabled,关闭时不注册 Bean 并排除引擎自动配置
- auth: 按登录方式拆为 password/sms/qrcode/wxma/session 五个子包
- framework/security: 新增 config、handler,承载安全配置与认证授权失败处理
- application-*.yml: flowable 配置按 dev/prod/youlai 环境拆分
- sql/extensions: 新增 dynamic-form.sql、workflow.sql 增量脚本
- README: 补充目录结构、可选扩展与系统预览截图
2026-09-08 10:06:41 +08:00
Ray.Hao
fd3d7fc654 feat: 添加动态表单引擎模块 2026-08-30 11:23:30 +08:00
TongTongStudio
af2b9846f1 feat(device): 添加设备策略信息管理功能
新增设备策略信息表 sys_sn_device_policy 及对应实体、Mapper、Converter、VO、Req 模型,并在设备端、家属端、管理端分别提供策略查询、全量更新和单独开关设置接口。同时修正设备菜单按钮权限命名(add/edit → create/update),并调整删除设备与解绑接口的权限和返回值。
2026-08-27 11:48:45 +08:00
TongTongStudio
2eb14103a1 feat(device): 新增远程拍照摄像头类型及家属端设备控制指令
- 拍照接口支持指定前置/后置摄像头,截图记录增加摄像头类型字段
- 新增文件传输、短信同步、清理、屏幕镜像、屏幕锁定指令下发
2026-08-24 08:41:12 +08:00
TongTongStudio
9bc37286b7 feat(device): 新增远程拍照功能
- 新增设备端与家属端远程拍照接口
- 新增截图实体字段(原始文件名、MIME类型、扩展名)
- 补充截图上传信息记录
- 提取设备操作指令常量
2026-08-21 17:12:41 +08:00
7687ef4f37 feat(open): 重构C端认证并支持密码重置 2026-08-17 09:29:42 +08:00
TongTongStudio
035e21a432 feat: 新增 TDengine 多数据源与 MQTT v5 客户端支持
- 新增 DataSourceConfig 配置类,支持 MySQL(主)与 TDengine(时序)多数据源,使用 Druid 手动配置以兼容 Spring Boot 4.x
- 重构 MQTT 配置,从 spring-integration-mqtt 迁移至 Paho MQTT v5 原生客户端,实现消息发布/订阅与优雅关闭
- 重构 MqttMessageHandler 与 MqttProducer,适配 v5 客户端回调,优化设备状态消息处理逻辑(online/offline 字段调整)
- 新增设备修改昵称接口(PUT /api/v1/devices/{id})与 TDengine 心跳最后在线时间查询接口
- 设备列表查询填充在线状态(Redis),增强设备管理功能
- 配置缓存预热失败时仅记录日志,避免数据库不可用导致应用启动失败
- 更新开发与生产环境配置,添加 TDengine 数据源及 MQTT 认证信息
2026-08-12 08:26:30 +08:00
0634491a01 feat(device): 添加极光推送注册ID字段
在设备其他信息相关实体、请求和响应对象中新增pushId字段,用于存储极光推送注册ID。
2026-08-09 23:44:37 +08:00
TongTongStudio
33fcbcff3e feat(device): add app icon management with pagination and delete functionality
新增应用图标库分页查询和图标删除接口,并完成对应的菜单与按钮权限初始化。
2026-08-06 02:25:25 +08:00
TongTongStudio
9d6498872f feat(device): 新增设备定位查询接口并修复定位数据存储问题
- 新增 GET /{sn}/location 接口,支持网页端查询设备最新定位信息
- 新增 DeviceLocationVO 视图对象用于返回定位数据
- 在 LocationService 中实现 getLatestBySn 方法
- 修复 map_error 字段类型错误:从 INT 改为 VARCHAR(255)
- 修复移动端上报定位时 lastSuccessfulTime 缺失问题,由服务端统一写入
2026-08-05 23:15:34 +08:00
TongTongStudio
5cc08a73ff feat(device): 重构应用图标静态资源路径并新增停止应用功能
- 将图标访问路径从 /api/v1/device/app_icon 迁移至 /static/app_icon,避免与业务 Controller 命名空间冲突,并添加 immutable 长缓存策略
- 新增 STOP_APP(39) 操作类型及 DeviceOpsController.stopApp 接口,支持强制停止应用
- 图标上传接口增加 appName 参数,支持应用名称上报与刷新,并做长度截断保护
- 图标锁定场景改用 BusinessException(APP_ICON_LOCKED) 替代 RuntimeException,设备端可据此识别终态不再重试
- 新增 /static/** 路径到安全白名单,允许 img 标签无 token 访问图标资源
- 同步更新数据库表结构注释及实体/VO 字段
2026-08-05 21:52:37 +08:00
157e708a5b feat(device): 重构应用图标功能,新增停止应用操作
- 静态资源路径从 /api/v1/device/app_icon 迁移至 /static/app_icon,避免与 Controller 路径冲突,并添加 immutable 长缓存策略
- 数据库及实体新增 app_name 字段,支持图标上报时同步应用名称
- 图标锁定场景改用 BusinessException(APP_ICON_LOCKED) 明确业务拒绝码,设备端可识别为终态
- 新增 STOP_APP 操作类型及对应推送接口
- 安全配置放行 /static/** 静态资源路径
2026-08-05 21:49:27 +08:00
TongTongStudio
749cf44754 refactor(device): 重构设备基本信息表结构与请求实体
将 sys_sn_system_info 表的字段从旧的 sn_ 前缀命名统一重构为语义化命名,并扩充基本信息字段;同步更新 Java 请求实体 SnSystemInfoReq,字段与数据库表完全对齐,同时调整 display_version 列长度至 256。
2026-08-05 10:53:35 +08:00
TongTongStudio
3608c205b9 refactor(device): 重构设备信息模块,按面板拆分数据存储和接口
将原 SnDeviceSystemInfo 单一实体拆分为基本信息、硬件、网络、安全、其他信息五个独立子表和服务,重构 DeviceController 和 MobileController 接口以支持分面板查询和上传
2026-08-05 02:09:38 +08:00
TongTongStudio
ba216da55b Merge branch 'master' of gitee.com:youlaiorg/youlai-boot
# Conflicts:
#	src/main/java/com/youlai/boot/config/SecurityConfig.java
#	src/main/java/com/youlai/boot/config/property/TencentSmsProperties.java
#	src/main/java/com/youlai/boot/support/sms/impl/AliyunSmsServiceImpl.java
#	src/main/java/com/youlai/boot/support/sms/impl/TencentSmsService.java
#	src/main/resources/application-dev.yml
#	src/main/resources/application-prod.yml
2026-07-31 02:32:01 +08:00
TongTongStudio
924d4af5e6 feat(developer): 完善开发者选项CRUD与SN查询逻辑 2026-07-31 02:15:17 +08:00
Ray.Hao
07616d9118 refactor: 项目包结构优化 2026-07-31 00:21:49 +08:00
Ray.Hao
709ee71eba chore: 补充限流配置项与 SQL 2026-07-17 00:19:13 +08:00
Ray.Hao
6b6c06370f refactor: 统一实体/限流AOP化/精简日志/文件归位 2026-06-24 08:11:23 +08:00
Ray.Hao
0dce433849 chore: 用户默认绑定通知消息 2026-06-18 21:16:43 +08:00
Ray.Hao
7a43e9c38c fix: 已知问题修复 2026-04-25 16:29:32 +08:00
Ray.Hao
18e46cb5f2 refactor: 统一operator_id为可空字段及安全白名单配置 2026-04-03 09:34:07 +08:00
Ray.Hao
8188c82c3d feat: 重构项目结构并新增微信小程序认证模块 2026-03-24 07:52:05 +08:00
Ray.Hao
5a86f69ecf feat: 添加数据权限获取方法及更新配置 2026-03-13 20:39:57 +08:00
Ray.Hao
6b7cfee7b4 refactor: 路由参数从 varchar 调整到 json 适配调整 2026-03-10 20:41:17 +08:00
Ray.Hao
27a8f0e6a5 feat: 新增微信小程序登录功能及第三方账号绑定表 2026-03-05 07:45:01 +08:00
Ray.Hao
739311381c refactor: 移除用户表和配置表的冗余逻辑 2026-02-27 09:54:03 +08:00
Ray.Hao
f32996d9c2 refactor: 重构代码生成模块并迁移至infra目录 2026-02-26 18:53:16 +08:00
Ray.Hao
e794ffa03d refactor: 移除WebSocket功能并优化用户导入逻辑
移除WebSocket相关菜单和代码,优化用户导入时部门和角色的匹配逻辑,支持通过编码或名称匹配
2026-02-25 09:12:18 +08:00
Ray.Hao
3067a3672c fix: 更新自定义权限用户的部门ID为3 2026-02-15 08:30:35 +08:00
Ray.Hao
d379e30d3f fix: 数据权限调整后引发的问题修复 2026-02-14 10:56:24 +08:00
Ray.Hao
8df1252ff8 fix: 数据权限调整已知问题修复 2026-02-13 09:09:16 +08:00
Ray.Hao
4402571ab1 refactor: JWT 失效方式调整 2026-02-12 21:10:01 +08:00
Ray.Hao
faf6754bf4 refactor: 会话失效、数据权限和实时推送重构 2026-02-12 17:19:42 +08:00
Ray.Hao
e735f768b5 chore: 移除微信授权登录和AI 模块 2026-02-11 11:35:04 +08:00
theo
37ae4c102a fix(menu): 修复字典项菜单层级结构
- 将字典项菜单的父级ID从250修改为1,调整层级关系
- 更新字典项菜单的path路径从0,1,250,251改为0,1,251
- 修正字典项子菜单的path路径保持一致性
- 确保字典项菜单在系统中的正确层级显示
2026-01-12 15:03:03 +08:00
Ray.Hao
5a7314c482 Merge branch 'master' of https://gitee.com/youlaiorg/youlai-boot 2026-01-10 23:40:49 +08:00
Ray.Hao
449bde3c1c refactor: 更新 sys_menu 和 sys_role_menu 表,添加角色分配权限功能 2026-01-10 23:40:46 +08:00
Ray.Hao
beb872e4bb chore: 修正 SQL 文件中的注释格式,确保一致性 2026-01-10 18:58:13 +08:00
Ray.Hao
eca385a52b chore: 更新项目配置和依赖项 2025-12-26 18:26:22 +08:00
Ray.Hao
34171529ef refactor: 移除sys_log表中的逻辑删除标识,并在DictItem实体中添加创建人和更新人ID字段 2025-12-22 08:05:51 +08:00