给数据中心添加事件

This commit is contained in:
2025-09-02 21:06:39 +08:00
parent 5e19bad149
commit afedf708de
9 changed files with 497 additions and 8 deletions

View File

@@ -0,0 +1,33 @@
namespace DMS.Application.DTOs.Events
{
/// <summary>
/// 数据变更类型枚举
/// </summary>
public enum DataChangeType
{
/// <summary>
/// 添加
/// </summary>
Added,
/// <summary>
/// 更新
/// </summary>
Updated,
/// <summary>
/// 删除
/// </summary>
Deleted,
/// <summary>
/// 加载
/// </summary>
Loaded,
/// <summary>
/// 批量操作
/// </summary>
BatchOperation
}
}

View File

@@ -0,0 +1,30 @@
using System;
namespace DMS.Application.DTOs.Events
{
/// <summary>
/// 数据变更事件参数基类
/// </summary>
public class DataChangedEventArgs : System.EventArgs
{
/// <summary>
/// 变更类型
/// </summary>
public DataChangeType ChangeType { get; }
/// <summary>
/// 变更时间
/// </summary>
public DateTime ChangeTime { get; }
/// <summary>
/// 构造函数
/// </summary>
/// <param name="changeType">变更类型</param>
public DataChangedEventArgs(DataChangeType changeType)
{
ChangeType = changeType;
ChangeTime = DateTime.Now;
}
}
}

View File

@@ -0,0 +1,59 @@
using System;
using System.Collections.Generic;
namespace DMS.Application.DTOs.Events
{
/// <summary>
/// 数据加载完成事件参数
/// </summary>
public class DataLoadCompletedEventArgs : System.EventArgs
{
/// <summary>
/// 加载的设备数量
/// </summary>
public int DeviceCount { get; }
/// <summary>
/// 加载的变量表数量
/// </summary>
public int VariableTableCount { get; }
/// <summary>
/// 加载的变量数量
/// </summary>
public int VariableCount { get; }
/// <summary>
/// 加载是否成功
/// </summary>
public bool IsSuccess { get; }
/// <summary>
/// 加载时间
/// </summary>
public DateTime LoadTime { get; }
/// <summary>
/// 错误信息(如果加载失败)
/// </summary>
public string ErrorMessage { get; }
/// <summary>
/// 构造函数
/// </summary>
/// <param name="deviceCount">设备数量</param>
/// <param name="variableTableCount">变量表数量</param>
/// <param name="variableCount">变量数量</param>
/// <param name="isSuccess">是否成功</param>
/// <param name="errorMessage">错误信息</param>
public DataLoadCompletedEventArgs(int deviceCount, int variableTableCount, int variableCount, bool isSuccess, string errorMessage = null)
{
DeviceCount = deviceCount;
VariableTableCount = variableTableCount;
VariableCount = variableCount;
IsSuccess = isSuccess;
ErrorMessage = errorMessage;
LoadTime = DateTime.Now;
}
}
}

View File

@@ -0,0 +1,44 @@
using System;
namespace DMS.Application.DTOs.Events
{
/// <summary>
/// 设备变更事件参数
/// </summary>
public class DeviceChangedEventArgs : System.EventArgs
{
/// <summary>
/// 变更类型
/// </summary>
public DataChangeType ChangeType { get; }
/// <summary>
/// 设备ID
/// </summary>
public int DeviceId { get; }
/// <summary>
/// 设备名称
/// </summary>
public string DeviceName { get; }
/// <summary>
/// 变更时间
/// </summary>
public DateTime ChangeTime { get; }
/// <summary>
/// 构造函数
/// </summary>
/// <param name="changeType">变更类型</param>
/// <param name="deviceId">设备ID</param>
/// <param name="deviceName">设备名称</param>
public DeviceChangedEventArgs(DataChangeType changeType, int deviceId, string deviceName)
{
ChangeType = changeType;
DeviceId = deviceId;
DeviceName = deviceName;
ChangeTime = DateTime.Now;
}
}
}

View File

@@ -0,0 +1,51 @@
using System;
namespace DMS.Application.DTOs.Events
{
/// <summary>
/// 变量变更事件参数
/// </summary>
public class VariableChangedEventArgs : System.EventArgs
{
/// <summary>
/// 变更类型
/// </summary>
public DataChangeType ChangeType { get; }
/// <summary>
/// 变量ID
/// </summary>
public int VariableId { get; }
/// <summary>
/// 变量名称
/// </summary>
public string VariableName { get; }
/// <summary>
/// 关联的变量表ID
/// </summary>
public int VariableTableId { get; }
/// <summary>
/// 变更时间
/// </summary>
public DateTime ChangeTime { get; }
/// <summary>
/// 构造函数
/// </summary>
/// <param name="changeType">变更类型</param>
/// <param name="variableId">变量ID</param>
/// <param name="variableName">变量名称</param>
/// <param name="variableTableId">关联的变量表ID</param>
public VariableChangedEventArgs(DataChangeType changeType, int variableId, string variableName, int variableTableId)
{
ChangeType = changeType;
VariableId = variableId;
VariableName = variableName;
VariableTableId = variableTableId;
ChangeTime = DateTime.Now;
}
}
}

View File

@@ -0,0 +1,51 @@
using System;
namespace DMS.Application.DTOs.Events
{
/// <summary>
/// 变量表变更事件参数
/// </summary>
public class VariableTableChangedEventArgs : System.EventArgs
{
/// <summary>
/// 变更类型
/// </summary>
public DataChangeType ChangeType { get; }
/// <summary>
/// 变量表ID
/// </summary>
public int VariableTableId { get; }
/// <summary>
/// 变量表名称
/// </summary>
public string VariableTableName { get; }
/// <summary>
/// 关联的设备ID
/// </summary>
public int DeviceId { get; }
/// <summary>
/// 变更时间
/// </summary>
public DateTime ChangeTime { get; }
/// <summary>
/// 构造函数
/// </summary>
/// <param name="changeType">变更类型</param>
/// <param name="variableTableId">变量表ID</param>
/// <param name="variableTableName">变量表名称</param>
/// <param name="deviceId">关联的设备ID</param>
public VariableTableChangedEventArgs(DataChangeType changeType, int variableTableId, string variableTableName, int deviceId)
{
ChangeType = changeType;
VariableTableId = variableTableId;
VariableTableName = variableTableName;
DeviceId = deviceId;
ChangeTime = DateTime.Now;
}
}
}