Commit Graph

14 Commits

Author SHA1 Message Date
b753e5ea73 refactor:删除了DeviceDto,VariableDto,VariableTableDto,改为使用DMS.Core中的实体 2025-10-07 17:51:24 +08:00
94ad940e03 refactor:删除MqttServerDto,将使用MqttServerDto的全部转为使用MqttServer 2025-10-06 19:32:45 +08:00
6b55211dbf feat: 菜单管理重构及MQTT服务器功能增强 2025-10-05 17:07:17 +08:00
a6fc543e4f 1 feat(mqtt): 实现MQTT服务器状态管理与事件系统
2
    3 1. 在MqttServer和MqttServerDto模型中添加IsConnect属性,用于跟踪连接状态
    4 2. 重构MqttManagementService服务,使用事件驱动方式管理服务器状态变化
    5 3. 实现MqttServerChangedEventArgs事件参数类,支持区分不同变更类型
    6 4. 在IEventService中添加OnMqttServerChanged事件,实现事件通知机制
    7 5. 优化数据存储结构,将MqttServers从ObservableCollection改为ObservableDictionary
    8 6. 更新MqttServiceManager以正确处理连接状态和事件触发
    9 7. 在WPF层更新UI以响应服务器状态变化
   10 8. 删除不再需要的Helper类(DataServicesHelper, MessageHelper, SiemensHelper)
   11 9. 在NLog配置中添加调试器输出目标以便调试
   12 10. 完善VariableHistoryViewModel防止空引用异常
2025-10-05 00:28:25 +08:00
5eae862d5f feat.修复新添加设备添加变量OpcServer报错问题,修改初始化菜单的内容 2025-10-04 00:42:59 +08:00
f3e7793293 1. VariableChangedEventArgs 重构:
- 创建了 ActionChangeType 枚举(与 DataChangeType 相同)
      - 创建了 VariablePropertyType 枚举标识变量属性类型
      - 重构 VariableChangedEventArgs 类,移除 ChangeTime 和 VariableTable 属性
      - 将 ChangeType 从 DataChangeType 改为 ActionChangeType
      - 添加了 PropertyType 属性用于标识哪个属性发生变化
2025-10-02 19:16:44 +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
078d7b3903 1. 创建了 BatchImportVariablesEventArgs 事件参数类
2. 在 IEventService 接口中添加了 OnBatchImportVariables 事件和 RaiseBatchImportVariables 方法
   3. 在 EventService 实现中添加了对新事件的支持
   4. 在 IVariableManagementService 接口中添加了 BatchImportVariablesAsync 方法
   5. 在 VariableManagementService 中实现了该方法,并在批量导入后触发事件
   6. 更新了 VariableTableViewModel 以使用 IVariableManagementService 而不是 IVariableAppService
2025-10-01 20:13:30 +08:00
e43c0df1cf 完成的变更:
1. 向 VariableTableManagementService 添加了 IEventService 依赖
   2. 将内存操作和事件触发逻辑合并到数据库操作方法中:
      - CreateVariableTableAsync 现在会在数据库创建后自动添加到内存并触发事件
      - UpdateVariableTableAsync 现在会在数据库更新后自动更新内存并触发事件
      - DeleteVariableTableAsync 现在会在数据库删除后自动从内存移除并触发事件
   3. 从类中删除了独立的内存操作方法
   4. 从接口中移除了内存操作方法
   5. 更新了所有调用这些服务的代码,使它们不再调用已删除的内存方法
   6. 扩展了 IEventService 以支持 VariableTableChanged 事件
2025-10-01 19:16:47 +08:00
74fde6bd8b 完成S7变量启用和停用更新 2025-09-16 14:42:23 +08:00
ffa24f861e 修改了目录架构 2025-09-16 12:29:09 +08:00
5ab18f95f0 修复S7服务轮询问题 2025-09-15 20:54:32 +08:00
c173ab08d3 完成设备的启用和停用并更新界面 2025-09-12 17:22:15 +08:00
6796a06325 添加了事件服务,并完成了设备状态改变后写入数据库 2025-09-12 14:59:32 +08:00