Commit Graph

30 Commits

Author SHA1 Message Date
g82tt 6c76007249 V1.10+V1.10.1+V1.11: MC4 JSON反序列化大小写+IoT设备实时点值显示+空调控制
【V1.10 MC4 适配器 JSON 反序列化大小写修复】
- Mc4AuthHelper.cs: 新增 JsonOpts(PropertyNameCaseInsensitive+CamelCase) + EmptyJsonBody
- Mc4Adapter.cs: 新增统一 DeserializeData<T> 处理 {code,msg,data} 包装
- 所有 MC4 业务接口改用 DeserializeData<T> 解决 List 不能直接反序列化包装结构
- 解决 POST 无参 body=null 触发 400 的问题

【V1.10.1 GetObjectTreeAsync 修复】
- Mc4Adapter.cs: GetObjectTreeAsync 改用 EmptyJsonBody + DeserializeData<List<Mc4TreeNode>>
- 修复 A3 同步时报 400 和 List 反序列化错误

【V1.11 IoT 设备实时点值 + 空调控制】
- Mc4Adapter.cs: GetRealtimeValuesAsync 改用 DeserializeData(V1.10 漏改)
- web.vite/base_device.vue: fetchRealtime 增加 normalizePoint 字段映射(PascalCase→camelCase)
- web.vite/RealtimeDataPanel.vue: 组件层同样字段映射
- warehouse/DeviceInfo.vue: 改用 /api/base_device/getPageData 新接口
  + 按 DeviceCategory 分类展示(温度探头/湿度探头单卡片+空调控制器双卡片)
  + 30秒轮询实时点值(仅IoT设备)
  + 空调控制按钮 sourceDeviceId→deviceId 字段名修复
- tools/mc4_probe: 新增 MC4 设备探针工具(连接192.168.3.92抓取设备+点表+实时值)
- doc/整合方案/IoT设备实时点值显示与控制实施方案_v1.0.md: 详细方案文档
  + 设备三分类+点位映射表(温度探头/湿度探头index=2;空调index=5=湿度/6=温度/2-3-4=控制)
- 说明文档.md: 进度记录 V1.10/V1.10.1/V1.11 三条更新

【关键修复】
1. MC4 返回 JSON 字段全小写 → C# Model 大小写不匹配 (V1.10)
2. List 不能反序列化 {code,msg,data:[...]} 包装 (V1.10)
3. POST 无参 body=null 触发 400 (V1.10)
4. A3 同步 GetObjectTreeAsync 报 400+反序列化错误 (V1.10.1)
5. GetRealtimeValuesAsync 漏改 (V1.11)
6. 管理端实时数据弹窗 PascalCase 字段→camelCase 列名不匹配 (V1.11)
7. 仓库空调控制 sourceDeviceId 字段名与后端 ControlRequest.DeviceId 不匹配 (V1.11)
2026-07-24 05:08:37 +08:00
g82tt a38f891197 全量提交: base_device子查询修复+SyncDevices父设备ParentDeviceId=0+KmsAdapter+前端多项修复 2026-06-18 11:14:52 +08:00
g82tt 1fb746c548 修复: Owl取流JSON反序列化(JsonOpts+PascalCase属性)+前端字段兼容+规则引擎SqlSugar语法 2026-06-08 10:50:14 +08:00
g82tt 8a6776eac9 网关审核修复: ILogger统一注入+调试日志+日志等级控制+RateLimiter PeriodicTimer+Owl分页修复+MC4 MinValue修复+告警确认错误检查+命名规范化 2026-06-04 04:26:41 +08:00
g82tt 29e12a235a 全量提交: KMS适配器终检修复+warehouse P0修复+MC4认证修复+网关B路由+接口文档+代码审核报告 2026-06-04 04:07:32 +08:00
g82tt 0575c1f369 MC4审计修复: Program.cs Mc4Adapter构造传Username/Password 2026-06-04 00:08:17 +08:00
g82tt 85984d1e94 MC4整改M1-M4: 认证修复(login+MD5)+批量点位+历史告警+B4-batch优化+恢复Config/DTOS 2026-06-04 00:02:11 +08:00
g82tt 5467f0c0e2 G1-G2: A1-A3自注册+BaseUrl修复+心跳重试+语法规范化+废弃标记 2026-06-03 23:47:43 +08:00
g82tt 4eefb9ed67 Owl整改O1-O4: 设备通道展开+AI事件IHasAlarms+PTZ预设位+IAcceptsControl 2026-06-03 23:15:22 +08:00
g82tt 8413a52a28 Fix-F2-F4: B4-batch+批量离线+凭据安全+前端地址+异常日志+滞后窗+console清理+API统一+Swagger+文档同步 2026-06-03 17:39:26 +08:00
g82tt 6835ce86ce Fix-F1: RealtimePollJob实现+A1自注册+B组认证中间件 2026-06-03 17:35:36 +08:00
g82tt 7adf6407d5 修复起点: 统一问题清单修复前基线 2026-06-03 17:32:33 +08:00
g82tt d968cbf818 修复: B10路由使用正确的GatewayControlRequest DTO 2026-05-19 23:23:54 +08:00
g82tt 3de2d19b83 修复: Core.csproj恢复Microsoft.Extensions.Http包引用 2026-05-19 23:21:42 +08:00
g82tt 94313a3492 K7: 3个新Core接口+4条B路由+KmsAdapter多接口实现 2026-05-19 23:12:05 +08:00
g82tt 54a48f07c9 K5: KmsConfig+appsettings+Program.cs注册就绪 2026-05-19 22:45:41 +08:00
g82tt 641125b993 K4: 6个扩展方法全部就绪(记录/同步/授权/登录) 2026-05-19 22:44:43 +08:00
g82tt a869fa5dbf K3: KmsAdapter核心方法就绪(HealthCheck/GetDevices/GetAlarms/Confirm) 2026-05-19 22:43:32 +08:00
g82tt 5402e311a4 K2: KmsAuthHelper Bearer Token 认证就绪 2026-05-19 22:41:54 +08:00
g82tt 5da58939bd K1: KmsModels.cs 15个DTO覆盖全部38个KMS接口 2026-05-19 22:41:04 +08:00
g82tt 347b558c92 K0: Kms适配器项目骨架就绪 2026-05-19 22:39:14 +08:00
g82tt 21f1df4dac W0: 网关API封装+数据模型+CORS启用 2026-05-17 15:36:44 +08:00
g82tt 45fe1e452a 网关多实例改造: Owl/MC4配置数组化 遍历注册+动态AdapterTypes 2026-05-17 15:00:49 +08:00
g82tt 73d47cb470 全部网关代码添加详细中文注释 2026-05-17 04:53:03 +08:00
g82tt 36495b7cbb PhaseG3_register: 适配器注册到Host,全链路编译通过 2026-05-17 04:29:35 +08:00
g82tt 63e0c819f6 PhaseG3: MC4Adapter — Token认证+3接口实现 编译通过 2026-05-17 04:28:40 +08:00
g82tt 3f184581eb PhaseG2: OwlAdapter — RSA登录+4接口实现 编译通过 2026-05-17 04:26:15 +08:00
g82tt af469228d6 PhaseG1: Host宿主 — 14路由+配置+错误处理 编译通过 2026-05-17 04:23:47 +08:00
g82tt 10f4a6bfe9 PhaseG0: 网关核心 — 7接口+10模型+3基础设施 编译通过 2026-05-17 04:21:02 +08:00
g82tt 23ea4fe05f Initial_commit_SecMPS_v2 2026-05-15 23:22:48 +08:00