diff --git a/IRaCIS.Core.Application/Service/Common/EmailNoticeConfigService.cs b/IRaCIS.Core.Application/Service/Common/EmailNoticeConfigService.cs index 95b276b35..9722e3ad5 100644 --- a/IRaCIS.Core.Application/Service/Common/EmailNoticeConfigService.cs +++ b/IRaCIS.Core.Application/Service/Common/EmailNoticeConfigService.cs @@ -111,6 +111,31 @@ namespace IRaCIS.Core.Application.Contracts return await emailNoticeConfigQueryable.ToPagedListAsync(inQuery); } + /// + /// 获取全部邮件列表 + /// + /// + /// + [HttpPost] + public async Task> GetAllEmailNoticeConfigList(EmailNoticeConfigQuery inQuery) + { + var emailNoticeConfigQueryable = _emailNoticeConfigrepository + .WhereIf(inQuery.SystemLevel != null, t => t.SystemLevel == inQuery.SystemLevel) + .WhereIf(inQuery.IsDistinguishCriteria != null, t => t.IsDistinguishCriteria == inQuery.IsDistinguishCriteria) + .WhereIf(inQuery.BusinessLevelEnum != null, t => t.BusinessLevelEnum == inQuery.BusinessLevelEnum) + .WhereIf(inQuery.CriterionTypeEnum != null, t => t.CriterionTypeList.Any(t => t == inQuery.CriterionTypeEnum)) + .WhereIf(inQuery.BusinessModuleEnum != null, t => t.BusinessModuleEnum == inQuery.BusinessModuleEnum) + .WhereIf(inQuery.BusinessScenarioEnum != null, t => t.BusinessScenarioEnum == inQuery.BusinessScenarioEnum) + .WhereIf(inQuery.IsReturnRequired != null, t => t.IsReturnRequired == inQuery.IsReturnRequired) + .WhereIf(inQuery.IsEnable != null, t => t.IsEnable == inQuery.IsEnable) + .WhereIf(inQuery.EmailUrgentEnum != null, t => t.EmailUrgentEnum == inQuery.EmailUrgentEnum) + .WhereIf(inQuery.ToUserType != null, t => t.EmailNoticeUserTypeList.Any(t => t.UserType == inQuery.ToUserType && t.EmailUserType == EmailUserType.To)) + .WhereIf(inQuery.CopyUserType != null, t => t.EmailNoticeUserTypeList.Any(t => t.UserType == inQuery.CopyUserType && t.EmailUserType == EmailUserType.Copy)) + .ProjectTo(_mapper.ConfigurationProvider); + + return await emailNoticeConfigQueryable.ToPagedListAsync(inQuery); + } + /// /// 批量更新邮件主题中英文 ///