23 Commits

Author SHA1 Message Date
1ea0effb0b feat(config): 添加写入G4和G5数据库的开关控制
新增环境变量和配置项用于控制是否写入G4和G5的action和status数据
2026-04-03 18:47:16 +08:00
04099e49e2 feat: 实现 G5 room_status 状态更新时跳过空 IP,增加 IP 归一化逻辑,更新相关测试 2026-03-24 08:34:23 +08:00
c5acfbf47b feat: 添加 G5 房间状态数据库配置,更新环境变量,优化数据库连接逻辑,增强日志记录 2026-03-14 17:32:59 +08:00
7fab70ec2b feat: 实现 G5 数据库同步与房间状态聚合逻辑,支持多环境异步双写,优化数据插入与去重逻辑,移除冗余字段 2026-03-10 19:51:52 +08:00
f61a63d8c1 feat: 外置数据库初始化与分区管理功能
- 删除主服务中的数据库初始化与分区管理逻辑,降低复杂度。
- 新增 SQL 脚本用于数据库初始化和分区管理,集中在 SQL_Script 目录。
- 移除环境变量 ENABLE_DATABASE_INITIALIZATION,简化配置。
- 更新 package.json,新增数据库初始化和分区管理的 npm 脚本。
- 删除不再使用的初始化和分区管理相关文件。
- 提供统一的命令行接口,支持外部调用数据库初始化和分区创建。
2026-03-04 14:54:27 +08:00
677db35cdf feat: 实现数据库初始化配置化,新增环境变量 ENABLE_DATABASE_INITIALIZATION,修改初始化逻辑以支持启用/禁用数据库初始化和分区维护 2026-03-04 09:51:26 +08:00
a8e8913ea5 回退版本 2026-03-03 22:00:20 +08:00
21bc56fe6c revert 603055797b
revert 回退分支
2026-03-03 21:47:59 +08:00
9a5e5d8c0d Merge branch 'main' of http://blv-rd.tech:3001/Boonlive_RD_Web/Web_BLS_RCUAction_Server 2026-03-03 21:42:32 +08:00
603055797b 回退分支 2026-03-03 21:42:26 +08:00
9165ce0bd0 feat: 添加分区表空间管理功能,优化分区表和索引的表空间设置 2026-03-03 21:00:33 +08:00
21ffef760f feat: 添加分区表空间配置,确保创建分区时指定表空间 2026-03-03 20:21:55 +08:00
0bd10dbc1e feat: 实现父表索引策略,确保仅在父表创建索引,避免子表重复索引维护 2026-03-03 18:22:17 +08:00
cf61e8dac6 feat: 实现房间状态同步功能
- 新增 RoomStatusManager 类,负责管理房间状态快照表的数据库连接池及批量 Upsert 操作。
- 新增 StatusBatchProcessor 类,负责收集和合并房间状态更新,并定期将其写入数据库。
- 新增状态提取器 statusExtractor.js,从 Kafka 消息中提取并构建房间状态更新对象。
- 修改 index.js,初始化 RoomStatusManager 和 StatusBatchProcessor,并在 Kafka 消息处理流程中并行推送状态更新。
- 修改 processor/index.js,更新 processKafkaMessage 函数以支持状态提取和处理。
- 更新 kafkaPayload.js,修正 control_list 的提取逻辑,兼容 Kafka 实际传输中的 loop 字段。
- 添加状态批处理器和状态提取器的单元测试,确保功能的正确性。
- 更新文档 plan-room-status-sync.md,详细描述房间状态同步方案及字段映射。
2026-03-02 11:47:52 +08:00
e76d04f526 fix(processor): 检查并修正hotel_id超出int2范围的情况
当hotel_id超出int2范围(-32768到32767)时,将其设置为0,避免数据库插入错误
2026-02-27 08:56:31 +08:00
21cf140c68 feat: 删除无用的测试报告,添加房间状态快照表的数据库初始化脚本及集成方案 2026-02-10 09:06:37 +08:00
680bf6a957 feat: 增加批量处理和数据库离线恢复机制以提升可靠性
- 新增 BatchProcessor 类实现消息批量插入,提高数据库写入性能
- 在 consumer 中禁用 autoCommit 并实现手动提交,确保数据一致性
- 添加数据库健康检查机制,在数据库离线时暂停消费并自动恢复
- 支持 0x0E 命令字处理,扩展消息类型识别范围
- 增加数据库连接重试逻辑,解决 Windows 环境端口冲突问题
- 更新环境变量配置,优化 Kafka 消费者参数
- 添加相关单元测试验证批量处理和可靠性功能
2026-02-04 20:36:33 +08:00
339db6f95f feat(processor): 添加循环名称自动生成的配置开关
新增环境变量 ENABLE_LOOP_NAME_AUTO_GENERATION 用于控制当缓存未命中时是否自动生成循环名称。当设置为 false 时,系统将不再生成 [类型-地址-回路] 格式的备用名称,而是直接返回 null。更新了配置文件、处理器逻辑并添加了相应的单元测试。
2026-02-03 09:26:01 +08:00
4e0f5213db feat: 添加回路名称字段并实现元数据缓存查询
在 RCU 事件处理中新增回路名称(loop_name)字段,用于标识具体设备回路。
- 在 rcu_action_events 表中添加 loop_name 字段
- 新增项目元数据缓存模块,每日从 temporary_project 表刷新房间与回路信息
- 处理消息时,根据 device_id、dev_addr 等字段查询缓存获取回路名称
- 若缓存未命中,则根据设备类型规则生成兜底名称
- 更新环境变量、文档及测试用例以适配新功能
2026-02-02 19:43:49 +08:00
0e6c5c3cc3 feat: 增强Kafka消费者配置并完善action_type分类逻辑
- 支持多实例Kafka消费者,增加并发处理能力
- 新增Kafka配置参数:最大飞行中消息数、获取字节数、等待时间等
- 完善action_type分类逻辑,根据dev_type映射为"用户操作"或"设备回路状态"
- 临时支持hex格式udp_raw自动转换为base64存储
- 增加extra字段支持上游扩展数据传递
- 优化数据库初始化脚本查找路径
- 更新PM2配置,修改应用名称和端口
- 清理开发环境日志文件,将dist目录加入.gitignore
- 更新相关文档说明
2026-01-30 20:09:46 +08:00
e0c3728b42 chore: 移除不再需要的 .gitkeep 文件
该文件用于确保空目录被 Git 追踪。现在 `dist` 目录已包含实际构建产物,不再需要占位文件。
2026-01-30 20:03:57 +08:00
86a1e79153 feat: 初始化后端服务基础架构与核心组件
- 添加项目基础结构,包括 .gitignore、package.json、Docker 配置和环境变量示例
- 实现核心模块:Kafka 消费者、PostgreSQL 数据库管理器、Redis 客户端与错误队列
- 添加工具类:日志记录器、指标收集器、UUID 生成器
- 实现数据处理器,支持 0x36 上报和 0x0F 命令的解析与存储
- 添加数据库初始化脚本和分区管理,支持按时间范围分区
- 引入 Zod 数据验证和 Vitest 单元测试框架
- 提供完整的项目文档,包括数据库设计、Kafka 格式规范和 Redis 集成协议
2026-01-30 11:05:00 +08:00
ec2b44b165 build: 添加 Vite 配置文件用于后端构建
配置 Vite 以构建 Node.js 后端应用,指定入口文件、输出目录、Node 版本,并将关键依赖标记为外部模块以避免打包。
2026-01-30 11:04:30 +08:00