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 认证信息
This commit is contained in:
TongTongStudio
2026-08-12 08:26:30 +08:00
parent bc68004c6e
commit 035e21a432
14 changed files with 463 additions and 141 deletions

View File

@@ -75,6 +75,14 @@ public interface DeviceService extends IService<SnDeviceInfo> {
*/
boolean addSn(SnDeviceInfo device);
/**
* 更新设备信息(仅允许修改设备昵称)
* @param id 设备ID
* @param snName 设备昵称
* @return 是否成功
*/
boolean updateSn(Long id, String snName);
/**
* 删除设备
* @param sn 设备序列号