|
|
d6bb606b0e
|
本次提交包含了两个主要部分:一个关键的数据库并发问题修复,以及一个关于历史记录功能的增强。
1. 数据库并发修复 (Bug Fix):
2. 历史记录功能增强 (Feature):
`
fix(db): 修复数据库并发连接问题并增强历史记录功能
`
正文:
`
本次提交主要包含一个关键的 Bug 修复和一项功能增强。
1. 修复数据库并发问题:
* 重构 SqlSugarDbContext,使其作为 SqlSugarClient 的工厂。
* GetInstance() 方法现在每次调用都会返回一个新的客户端实例,解决了因单例客户端导致的多线程并发访问 MySqlConnection 的问题。
2. 增强历史记录功能:
* 为 VariableHistory 相关的模型、DTO 和实体添加了 NumericValue 属性,以便在历史记录中同时存储数值和字符串值。
* 更新了 HistoryProcessor 以保存 NumericValue。
* 对 ValueConvertProcessor 的逻辑进行了重构,以更好地支持值转换流程。
|
2025-10-03 00:05:17 +08:00 |
|
|
|
f330f67767
|
本次提交对变量管理和数据处理进行了多项重构和优化:
1. 重构变量管理服务:
* 统一了单个和批量变量的更新逻辑,并引入 AutoMapper 进行对象映射,提高了代码的可维护性。
* 增加了对 IsHistoryEnabled 属性变更的跟踪,允许系统对此类变更做出响应。
2. 改进历史记录:
* HistoryProcessor 现在记录变量的 DisplayValue,使得历史数据与用户界面显示的值保持一致。
3. 修正值转换逻辑:
* ValueConvertProcessor 在应用转换公式后,会同时更新变量的 NumericValue 和 DisplayValue,确保了数据在处理链中的一致性。
|
2025-10-02 23:14:40 +08:00 |
|
|
|
745cd43513
|
本次提交对系统进行了两项主要的重构和优化:
1. 重构数据处理链:
* 移除了 CheckValueChangedProcessor 和 LoggingProcessor,简化了数据处理流程。
* 调整了 App.xaml.cs 中的处理器注册顺序,使处理链更加清晰。
2. 优化OPC UA变量变更处理:
* 完全重构了 OpcUaServiceManager 中的 OnVariableChanged 事件处理方法。
* 新逻辑能够根据变量属性(IsActive, PollingInterval 等)的变化,进行精确的、针对单个节点的订阅和取消订阅操作,取代了之前重置整个设备订阅的低效方式。
* 实现了对已删除变量的订阅取消逻辑,确保了资源的正确释放。
这些变更显著提升了 OPC UA 订阅管理的效率和精确性。
|
2025-10-02 22:30:24 +08:00 |
|
|
|
3958275367
|
重构:修改 VariableValueChangedEventArgs 以包含 VariableDto 对象
- 修改 VariableValueChangedEventArgs 类:
- 移除了 VariableId、VariableName、NewValue 和 UpdateTime 属性
- 添加了 Variable(VariableDto 类型)和 OldValue 属性
- 更新了构造函数以接收 VariableDto 对象和旧值
- 更新事件触发代码:
- 修改了 UpdateViewProcessor.cs 中的事件触发代码,改为传递 VariableDto 对象和旧值
- 更新事件处理代码:
- 修改了 DataEventService.cs 中的事件处理逻辑,改为访问 e.Variable 属性
- 修改了 VariableHistoryViewModel.cs 中的事件处理逻辑,改为使用 e.Variable 属性
|
2025-10-02 18:47:45 +08:00 |
|
|
|
cdfb906112
|
feat(处理器): 增强变量处理链并实现批量更新
- 新增 UpdateDbVariableProcessor 处理器,通过队列和定时器实现数据库的批量更新,以降低负载。
- 重构 ValueConvertProcessor 处理器,使其能够解析 ConversionFormula 公式,计算出最终的 DisplayValue。
- 扩展 IVariableRepository 仓储接口,添加 UpdateBatchAsync 方法,并使用SqlSugar实现高效的批量更新。
- 优化 VariableContext 模型,将 NewValue 类型统一为 string,简化了数据流并提升了类型安全。
|
2025-10-02 17:35:35 +08:00 |
|
|
|
74fde6bd8b
|
完成S7变量启用和停用更新
|
2025-09-16 14:42:23 +08:00 |
|
|
|
5ab18f95f0
|
修复S7服务轮询问题
|
2025-09-15 20:54:32 +08:00 |
|
|
|
15e2caed22
|
初步添加报警功能
|
2025-09-13 12:30:12 +08:00 |
|
|
|
5ca4fe7124
|
初步完成历史记录(未完成)
|
2025-09-11 11:04:07 +08:00 |
|
|
|
3c47276406
|
初步完成历史记录存储功能
|
2025-09-11 09:42:44 +08:00 |
|
|
|
a43b978097
|
基本完成MQTT消息的发送
|
2025-09-10 18:15:31 +08:00 |
|
|
|
1f9c0a1111
|
1 实现 MQTT 变量数据发布功能
2
3 - 迁移 IMqttServiceManager 接口到 DMS.Core
4 - 在 DataCenterService 中添加 MQTT 服务器和变量别名的加载逻辑
5 - 实现 MqttPublishProcessor 的核心处理逻辑
6 - 为 DTO 和 ViewModel 的 MqttAliases 属性提供默认空列表初始化
7 - 更新 AutoMapper 映射配置以支持 VariableMqttAliasDto
|
2025-09-07 08:51:18 +08:00 |
|
|
|
e4cb38cd1d
|
初步完成Mqtt后台服务的改造
|
2025-09-06 15:19:04 +08:00 |
|
|
|
bb650e2682
|
将NlogHelper,和NotificationHelper,改为服务的方式注入使用
|
2025-09-04 17:29:24 +08:00 |
|
|
|
bc8bc58d9b
|
初步完成数据处理链条
|
2025-09-04 13:40:07 +08:00 |
|