修改
continuous-integration/drone/push Build is passing Details

Uat_IRC_Net8
he 2025-04-21 11:28:45 +08:00
parent eca9c36110
commit 89eb1032cf
1 changed files with 35 additions and 26 deletions

View File

@ -131,35 +131,37 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
public async Task Consume(ConsumeContext<SystemDocumentPublishEvent> context) public async Task Consume(ConsumeContext<SystemDocumentPublishEvent> context)
{ {
var isEn_US = CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US; var isEn_US = CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US;
var systemDocQuery = var systemDocQuery =
from sysDoc in _systemDocumentRepository.AsQueryable(false).Where(x=> context.Message.Ids.Contains(x.Id)) from sysDoc in _systemDocumentRepository.AsQueryable(false).Where(x => context.Message.Ids.Contains(x.Id))
from identityUser in _identityUserRepository.AsQueryable(false).Where(t => t.UserRoleList.Where(t => t.IsUserRoleDisabled == false).Any(t => sysDoc.NeedConfirmedUserTypeList.AsQueryable().Any(c => c.NeedConfirmUserTypeId == t.UserTypeId))) from identityUser in _identityUserRepository.AsQueryable(false).Where(t => t.UserRoleList.Where(t => t.IsUserRoleDisabled == false).Any(t => sysDoc.NeedConfirmedUserTypeList.AsQueryable().Any(c => c.NeedConfirmUserTypeId == t.UserTypeId)))
select new UnionDocumentWithConfirmInfoView() select new UnionDocumentWithConfirmInfoView()
{ {
IsSystemDoc = true, IsSystemDoc = true,
Id = sysDoc.Id, Id = sysDoc.Id,
CreateTime = sysDoc.CreateTime, CreateTime = sysDoc.CreateTime,
IsDeleted = sysDoc.IsDeleted, IsDeleted = sysDoc.IsDeleted,
SignViewMinimumMinutes = sysDoc.SignViewMinimumMinutes, SignViewMinimumMinutes = sysDoc.SignViewMinimumMinutes,
Name = sysDoc.Name, Name = sysDoc.Name,
Path = sysDoc.Path, Path = sysDoc.Path,
FileTypeId = sysDoc.FileTypeId, FileTypeId = sysDoc.FileTypeId,
UpdateTime = sysDoc.UpdateTime, UpdateTime = sysDoc.UpdateTime,
ConfirmUserId = identityUser.Id, ConfirmUserId = identityUser.Id,
RealName = identityUser.FullName, RealName = identityUser.FullName,
UserName = identityUser.UserName, UserName = identityUser.UserName,
FullFilePath = sysDoc.Path FullFilePath = sysDoc.Path
}; };
var datalist = await systemDocQuery.IgnoreQueryFilters().ToListAsync(); var datalist = await systemDocQuery.IgnoreQueryFilters().ToListAsync();
var confirmUserIdList = datalist.Select(t => t.ConfirmUserId).Distinct().ToList(); var confirmUserIdList = datalist.Select(t => t.ConfirmUserId).Distinct().ToList();
var userinfoList = await _identityUserRepository.Where(x => confirmUserIdList.Contains(x.Id)).ToListAsync(); var userinfoList = await _identityUserRepository.Where(x => confirmUserIdList.Contains(x.Id)).ToListAsync();
foreach (var userinfo in userinfoList) foreach (var userinfo in userinfoList)
{
try
{ {
var messageToSend = new MimeMessage(); var messageToSend = new MimeMessage();
//发件地址 //发件地址
@ -189,6 +191,13 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
messageToSend, emailConfigFunc); messageToSend, emailConfigFunc);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig); await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
catch (Exception)
{
}
} }