Commit Graph

1166 Commits

Author SHA1 Message Date
4500f92b15 feat(docs): 添加设备心跳表SQL文档
新增TDengine超级表device_heartbeat的建表语句及EMQX规则引擎配置示例。
2026-08-11 21:25:13 +08:00
TongTongStudio
bc68004c6e feat(device): 同步更新设备信息中的设备型号和推送ID
在上报系统信息时同步更新设备型号,在上报其他信息时同步更新推送ID,确保设备表信息保持最新。
2026-08-10 01:59:26 +08:00
0634491a01 feat(device): 添加极光推送注册ID字段
在设备其他信息相关实体、请求和响应对象中新增pushId字段,用于存储极光推送注册ID。
2026-08-09 23:44:37 +08:00
TongTongStudio
369a940344 feat(device): 新增设备在线状态和屏幕状态SSE广播,并修复Redis反序列化问题
- MqttMessageHandler 收到心跳后通过 SseService 广播设备在线状态(含屏幕状态)
- SseService/SseSessionManager 新增设备在线状态和屏幕状态的广播方法
- DeviceOnlineServiceImpl 修复 Redis 反序列化为 LinkedHashMap 时的类型转换问题
- DeviceOnlineServiceImpl 修复批量查询时空 SN 导致索引不对齐的问题
2026-08-09 20:06:03 +08:00
TongTongStudio
ba5b9eddc8 refactor(message): 将MQTT模块重命名为support并清理配置
将MQTT相关类从message.mqtt包迁移至support.mqtt包,移除application.yml中冗余的延迟初始化注释配置。
2026-08-09 15:55:38 +08:00
TongTongStudio
a0c1596d28 feat(device): 实现新增设备接口
完善设备新增接口,增加SN唯一性校验、参数非空验证和默认状态设置。
2026-08-09 13:43:43 +08:00
TongTongStudio
927332ad5d feat(device): 添加MQTT设备在线状态管理与Redis容错机制
- 集成Spring Integration MQTT与Eclipse Paho客户端
- 添加设备在线状态填充逻辑,支持批量查询心跳数据
- 优化Redis配置,使用Lazy初始化与通用序列化器
- 增加Redis异常处理与防重复提交Fail-Open机制
- 新增Redis设备模块常量与在线状态VO
- 完善MQTT与Redis集群连接配置
2026-08-08 20:31:29 +08:00
e5e3f2c741 feat(app): 实现安装包文件下载、优化AAB/APKS解析并完善异常处理
- 新增安装包文件流下载接口,支持通过ID下载原始文件并设置正确的文件名
- 重构AAB/APKS解析逻辑,直接使用bundletool依赖库替代命令行调用
- 为AAB/APKS添加图标提取功能,按密度优先策略选择最清晰图标
- 分离APKS与APKM/XAPK解析流程,前者使用bundletool解析,后者保留解包方案
- 添加NoResourceFoundException全局异常处理,返回404而非默认错误页
2026-08-08 01:52:03 +08:00
3422d546c5 feat(packages): 支持AAB/APKS/APKM/XAPK格式安装包解析
新增AndroidPackageTypeDetector用于识别安装包类型,扩展ApkMetaParser以支持AAB、APKS、APKM、XAPK等容器格式的元数据解析,并在上传服务中集成解析逻辑,完善应用包信息提取能力。
2026-08-07 19:54:16 +08:00
TongTongStudio
8ee05af6c7 feat(app): add app category management and package repository with apk parsing
新增应用分类管理(MongoDB CRUD + 图标上传)和应用安装包资源库(上传/分页/详情/删除),集成apk-parser自动解析APK元数据(包名、版本、权限、CPU架构、图标),并添加对应的SQL菜单初始化脚本与授权配置。
2026-08-07 12:20:04 +08:00
TongTongStudio
33fcbcff3e feat(device): add app icon management with pagination and delete functionality
新增应用图标库分页查询和图标删除接口,并完成对应的菜单与按钮权限初始化。
2026-08-06 02:25:25 +08:00
TongTongStudio
e9a1773d88 feat(device): 新增设备截图管理功能
- 新增截图列表查询、单张删除、一键清空接口
- 上传截图时清洗文件名防路径穿越,filePath 仅存相对路径
- 截图静态资源映射禁用缓存,避免浏览器复用旧图
- 新增 ScreenshotVO 视图对象及 ScreenshotService 实现
2026-08-06 01:42:46 +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
ecaad43014 feat(common): 新增停止应用操作类型枚举
在ActionTypeEnum中新增STOP_APP(39, "停止应用")枚举值。
2026-08-05 21:58:18 +08:00
TongTongStudio
7145bbbcda Merge branch 'master' of ssh://gitea.ttstd.com:2222/tongtong/youlai-boot
# Conflicts:
#	sql/app_icon.sql
#	src/main/java/com/youlai/boot/common/config/WebMvcConfig.java
#	src/main/java/com/youlai/boot/common/enums/ActionTypeEnum.java
#	src/main/java/com/youlai/boot/device/controller/AppIconController.java
#	src/main/java/com/youlai/boot/device/controller/DeviceOpsController.java
#	src/main/java/com/youlai/boot/device/controller/MobileController.java
#	src/main/java/com/youlai/boot/device/model/entity/AppIcon.java
#	src/main/java/com/youlai/boot/device/model/vo/AppIconVO.java
#	src/main/java/com/youlai/boot/device/service/AppIconService.java
#	src/main/java/com/youlai/boot/device/service/DeviceService.java
#	src/main/java/com/youlai/boot/device/service/impl/AppIconServiceImpl.java
#	src/main/java/com/youlai/boot/device/service/impl/DeviceServiceImpl.java
2026-08-05 21:55:59 +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
4f4c60ce72 feat(device): 新增应用管理功能
新增应用启动、清除数据、卸载等远程操作功能,并优化应用列表接口支持图标展示。
同时修正了移动端上报接口的日志操作类型,补充了应用相关的操作枚举。
2026-08-05 16:38:57 +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
537644ab2e refactor(device): 重命名硬件信息为系统信息
将 Hardware 相关类、接口、方法、API 端点统一重命名为 SystemInfo,包括实体、VO、Req、Mapper、Service 及 Controller,并更新数据库表名映射。
2026-08-04 22:12:50 +08:00
TongTongStudio
5915da6517 fix(log): 修复设备类接口无用户上下文时操作日志报错
- 新增兜底操作人ID常量(99L)和X-Device-SN头解析
- 无登录用户时使用兜底ID和设备SN标识操作来源
- 调整文件上传临时目录为/tmp/ttstd/uploads
2026-08-04 21:56:45 +08:00
6614601519 Merge branch 'master' of gitee.com:youlaiorg/youlai-boot 2026-08-03 09:51:06 +08:00
Ray.Hao
132f9caa57 docs: 衍生版本表格增加类型列,对齐前端 README 2026-08-02 19:56:57 +08:00
fb75cce427 Merge branch 'master' of https://gitee.com/youlaiorg/youlai-boot 2026-08-02 15:22:39 +08:00
Ray.Hao
155fc69a78 refactor: 移除 project.version 配置避免启动解析异常
- 删除 application.yml 的 project.version 段,banner 与 OpenApi 不再读取该属性
- 移除 banner.txt 的 YouLai Boot Version 行
- OpenApiConfig 不再显示接口文档版本号,删除无用的 Environment 依赖
- 为 config.import: classpath:codegen.yml 补充代码生成模块配置说明注释
2026-08-02 14:18:44 +08:00
Ray.Hao
afc1780705 fix: 角色分页缺少 updateTime,重构 mybatis 自动填充处理器
AutoFillMetaObjectHandler 重命名为 MetaFieldFillHandler,移除 handler 子包

添加 spring-boot-starter-webmvc-test 测试依赖
2026-08-02 09:16:29 +08:00
519f582f86 Merge branch 'master' of gitee.com:youlaiorg/youlai-boot 2026-07-31 11:52:06 +08:00
Ray.Hao
27ea1cf114 refactor(system): 重命名包名和类名
- system/security/port → adapter
- system/job → schedule
- system/handler/XxlJobSampleHandler → schedule/XxlJobSample
- system/listener/UserImportListener → service/UserImportReader
- framework/security/port: Javadoc @see 同步更新
2026-07-31 09:35:35 +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
TongTongStudio
0bda0caed4 Merge branch 'master' of gitee.com:youlaiorg/youlai-boot 2026-07-30 17:50:06 +08:00
TongTongStudio
c59fd91de5 Merge branch 'master' of gitee.com:youlaiorg/youlai-boot
# Conflicts:
#	src/main/java/com/youlai/boot/auth/security/config/SecurityConfig.java
#	src/main/resources/application-dev.yml
#	src/main/resources/application-prod.yml
2026-07-30 17:49:40 +08:00
theo
31ba21d0f9 fix(security): 解决SSE异步请求超时和权限验证问题
- 添加AsyncRequestTimeoutException异常处理器
- 配置ASYNC调度请求直接放行以支持SSE功能
- 允许SSE emitter.send()等异步请求无需Authorization头验证
2026-07-30 14:08:53 +08:00
Ray.Hao
a4b699a109 refactor(apidoc): 将 apidoc 包重命名为 openapi
- Knife4jOpenApiCustomizer.java: 包名 com.youlai.boot.framework.apidoc -> com.youlai.boot.framework.openapi
- OpenApiConfig.java: 包名 com.youlai.boot.framework.apidoc -> com.youlai.boot.framework.openapi
2026-07-28 17:33:01 +08:00
Ray.Hao
7b87543978 feat: v4.5.0 包结构迁移、MyBatis-Plus 自动填充、Jackson 3.x 适配
- common.annotation -> framework.annotation(DataPermission/Log/RateLimit/RepeatSubmit/ValidField)
- common.base.BaseEntity -> framework.base.BaseEntity(含 createTime/updateTime 自动填充注解)
- BaseQuery/IBaseEnum 保留在 common.base(无框架依赖)
- AutoFillMetaObjectHandler 实现 createTime/updateTime/createBy/updateBy 自动填充
- 实体类(Dept/Role/Config/DictItem/Notice/SysUser)添加 createBy/updateBy @TableField(fill=...)
- Jackson 注解使用 com.fasterxml.jackson.annotation(2.x 兼容层),databind/core 使用 tools.jackson(3.x)
- 代码生成模板 entity.java.vm/form.java.vm 包路径同步更新
- 删除冗余 UserService default 方法、DataPermissionException、DictChangeEvent event 包
- 版本号 4.4.0 -> 4.5.0
2026-07-28 17:24:44 +08:00
Ray.Hao
14c4728179 docs: 更新 README 与文档图片(rainbow/logo) 2026-07-24 23:14:32 +08:00
Ray.Hao
9217668816 docs: 移除 AtomGit G-Star 徽章并修正布局 2026-07-23 22:40:19 +08:00
Ray.Hao
d3a18916a6 docs: AtomGit G-Star 徽章内联标题并修正顶部组件层级 2026-07-23 22:37:05 +08:00
Ray.Hao
92516f6cd6 style: AtomGit G-Star 徽章尺寸约束为 20px 2026-07-23 18:43:14 +08:00
Ray.Hao
741e71a25b fix: AtomGit 徽章链接 org 改为 youlai 2026-07-23 18:41:34 +08:00
Ray.Hao
cf492d2f20 docs: 添加 AtomGit G-Star 徽章 2026-07-23 18:37:03 +08:00
Ray.Hao
460076162b docs: 补充 Git 提交规范与版本号规范 2026-07-22 18:07:07 +08:00
Ray.Hao
80b60743f8 docs: 调整快速开始排版并补充前端对接
- 快速开始改为分步代码块
- 新增前端对接段落
- 删除无引用的孤立图片 wechat-app.jpg
2026-07-19 18:20:54 +08:00
Ray.Hao
f348bb4fa4 docs: 精简末章开源声明文案 2026-07-19 11:33:48 +08:00
Ray.Hao
2036bbfe3d docs: 统一末章技术合作说明 2026-07-19 11:17:04 +08:00
Ray.Hao
88d615e16b docs: 交流合作段去掉支持指南引导,保留开源协议段
- 删除『提交 Pull Request 前请阅读支持指南』引导

- 保留并补回 Apache License 2.0 开源协议与商务合作段
2026-07-19 10:37:38 +08:00
Ray.Hao
46485ce22b docs: 清理技术栈版本号并精简交流合作段
- 矩阵:Spring Boot 4 / ThinkPHP 8 / Laravel 13 / Django 6 / NestJS 11 等去掉版本号

- 矩阵:youlai-think 补 ThinkORM、youlai-aspnet 补 EF Core、youlai-laravel 改 Eloquent

- 变种行去掉 (Spring Boot 4) 标注,保留 Spring Boot 3 分支名

- 交流合作段精简为一行
2026-07-19 10:24:38 +08:00
Ray.Hao
753bea5998 docs: 统一后端生态矩阵(补 FastAPI、修正坏链、统一 8 行顺序)
- 补齐 FastAPI、修正 youlai-thinkphp/youlai-rust 坏链

- 统一 8 行顺序:boot/nest/gin/django/fastapi/think/aspnet/axum

- 计数由七种改为八种后端
2026-07-19 09:38:43 +08:00