1 feat: 触发器功能增强及菜单集成

2
    3 - 添加 CreateTriggerWithMenuDto 数据传输对象,用于同时创建触发器及关联菜单
    4 - 在 TriggerDataService 中新增 AddTriggerWithMenu 方法,实现触发器与菜单的同时创建
    5 - 更新 TriggersViewModel 以使用新的触发器和菜单创建流程
    6 - 在 MenuType 枚举中添加 TriggerMenu 类型
    7 - 调整 InitializeRepository 中触发器菜单的图标
    8 - 更新相关服务中的注释,将 Trigger 替换为 TriggerMenu 以保持一致
    9 - 修改时间记录方式,使用 DateTime.Now 替代 DateTime.UtcNow
   10 - 优化 TriggerManagementService 中的触发器创建与存储流程
   11 - 更新触发器评估和管理服务中的日志文本,统一使用 TriggerMenu 术语
This commit is contained in:
2025-10-19 17:53:23 +08:00
parent d7ea00e94d
commit 0007235171
10 changed files with 110 additions and 22 deletions

View File

@@ -177,7 +177,7 @@ namespace DMS.Application.Services.Database
// // 获取关联的触发器ID列表
// var triggerIds = await _repositoryManager.GetTriggerIdsByVariableIdAsync(variableId);
// var triggers = new List<Trigger>();
// var triggers = new List<TriggerMenu>();
// if (triggerIds.Any())
// {
// // 获取所有关联的触发器

View File

@@ -59,13 +59,10 @@ namespace DMS.Application.Services.Management
// 3. 调用仓储保存实体
var createdTrigger = await _repositoryManager.Triggers.AddAsync(triggerEntity);
// 4. 转换回 DTO 并返回
var result = _mapper.Map<Trigger>(createdTrigger);
// 5. 同步更新AppDataStorageService中的Triggers字典
_appStorageService.Triggers[result.Id] = result;
_appStorageService.Triggers[createdTrigger.Id] = createdTrigger;
return result;
return createdTrigger;
}
/// <summary>
@@ -122,7 +119,7 @@ namespace DMS.Application.Services.Management
public async Task<List<Trigger>> GetTriggersForVariableAsync(int variableId)
{
// var triggers = await _repositoryManager.Triggers.GetByVariableIdAsync(variableId);
// return _mapper.Map<List<Trigger>>(triggers);
// return _mapper.Map<List<TriggerMenu>>(triggers);
return null;
}
@@ -141,7 +138,7 @@ namespace DMS.Application.Services.Management
}
/// <summary>
/// 内部方法:验证 Trigger 的有效性
/// 内部方法:验证 TriggerMenu 的有效性
/// </summary>
private void ValidateTriggerDto(Trigger dto)
{

View File

@@ -110,7 +110,7 @@ namespace DMS.Application.Services.Triggers.Impl
}
// 由于移除了条件,所有激活的触发器都会被触发
_logger.LogInformation("Trigger activated for trigger ID: {TriggerId}", trigger.Id);
_logger.LogInformation("TriggerMenu activated for trigger ID: {TriggerId}", trigger.Id);
return true;
}
@@ -128,7 +128,7 @@ namespace DMS.Application.Services.Triggers.Impl
if(isSuppressed)
{
_logger.LogTrace("Trigger is suppressed (until {SuppressionEnd}) for trigger ID: {TriggerId}", suppressionEndTime, trigger.Id);
_logger.LogTrace("TriggerMenu is suppressed (until {SuppressionEnd}) for trigger ID: {TriggerId}", suppressionEndTime, trigger.Id);
}
return isSuppressed;