diff --git a/IRaCIS.Core.Application/Helper/Email/SendEmailHelper.cs b/IRaCIS.Core.Application/Helper/Email/SendEmailHelper.cs
index 550b49ec9..b954cb4f3 100644
--- a/IRaCIS.Core.Application/Helper/Email/SendEmailHelper.cs
+++ b/IRaCIS.Core.Application/Helper/Email/SendEmailHelper.cs
@@ -55,6 +55,20 @@ public static class SendEmailHelper
}
+ ///
+ /// 设置发送邮箱
+ ///
+ ///
+ ///
+ public static void ChangeEmailSenderName(MimeMessage messageToSend, string senderName)
+ {
+ var fromAddress = messageToSend.From.Mailboxes.FirstOrDefault();
+ if (fromAddress != null)
+ {
+ messageToSend.From.Clear();
+ messageToSend.From.Add(new MailboxAddress(senderName, fromAddress.Address));
+ }
+ }
public static async Task TestEmailConfigAsync(SystemEmailSendConfig _systemEmailConfig)
{
using (var cts = new CancellationTokenSource(TimeSpan.FromSeconds(5)))
diff --git a/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs b/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs
index c3f98ed1a..49b5858ed 100644
--- a/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs
@@ -365,8 +365,11 @@ public class ImageConsumer(
return (topicStr, htmlBodyStr);
};
+
+
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(inDto.EmailNoticeConfig, messageToSend, emailConfigFunc);
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -500,6 +503,7 @@ public class ImageConsumer(
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(emailNoticeConfig, messageToSend, emailConfigFunc);
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
diff --git a/IRaCIS.Core.Application/MassTransit/Consumer/ReadingRelationEmailConsumer.cs b/IRaCIS.Core.Application/MassTransit/Consumer/ReadingRelationEmailConsumer.cs
index 54eac7243..6cb2eb004 100644
--- a/IRaCIS.Core.Application/MassTransit/Consumer/ReadingRelationEmailConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Consumer/ReadingRelationEmailConsumer.cs
@@ -127,7 +127,7 @@ public class UrgentMedicalReviewAddedEventConsumer(
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -235,7 +235,7 @@ public class UrgentIRRepliedMedicalReviewConsumer(
return (topicStr, htmlBodyStr);
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -353,7 +353,7 @@ public class UrgentMIMRepliedMedicalReviewConsumer(
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -462,7 +462,7 @@ public class UrgentIRApplyedReReadingConsumer(
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
diff --git a/IRaCIS.Core.Application/MassTransit/Consumer/SiteSurverEmailConsumer.cs b/IRaCIS.Core.Application/MassTransit/Consumer/SiteSurverEmailConsumer.cs
index e7072a3da..901dea4e5 100644
--- a/IRaCIS.Core.Application/MassTransit/Consumer/SiteSurverEmailConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Consumer/SiteSurverEmailConsumer.cs
@@ -121,7 +121,7 @@ public class UserSiteSurveySubmitedEventConsumer(
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(emailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -204,7 +204,7 @@ public class SiteSurveySPMSubmitedEventConsumer(
};
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(emailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -318,7 +318,7 @@ public class SiteSurverRejectedEventConsumer(
};
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(emailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
diff --git a/IRaCIS.Core.Application/MassTransit/Consumer/SubjectVisitQCAndCheckConsumer.cs b/IRaCIS.Core.Application/MassTransit/Consumer/SubjectVisitQCAndCheckConsumer.cs
index 8eacc9bdd..923dbfe44 100644
--- a/IRaCIS.Core.Application/MassTransit/Consumer/SubjectVisitQCAndCheckConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Consumer/SubjectVisitQCAndCheckConsumer.cs
@@ -121,7 +121,7 @@ public class CRCSubmitedAndQCToAuditEventConsumer(
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -220,7 +220,7 @@ public class CRCRepliedQCChallengeEventConsumer(
return (topicStr, htmlBodyStr);
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -338,7 +338,7 @@ public class QCRepliedQCChallengeEventConsumer(
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -438,7 +438,7 @@ public class CRCRepliedCheckChallengeEventConsumer(
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -548,7 +548,7 @@ public class PMRepliedCheckChallengeEventConsumer(
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -647,7 +647,7 @@ public class CheckStateChangedToAuditEventConsumer(
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
@@ -756,7 +756,7 @@ public class QCClaimTaskEventConsumer(
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
}
diff --git a/IRaCIS.Core.Application/MassTransit/Recurring/IRRecurringConsumer.cs b/IRaCIS.Core.Application/MassTransit/Recurring/IRRecurringConsumer.cs
index 6844e4f42..087524fcd 100644
--- a/IRaCIS.Core.Application/MassTransit/Recurring/IRRecurringConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Recurring/IRRecurringConsumer.cs
@@ -5,6 +5,7 @@ using IRaCIS.Core.Application.Contracts;
using IRaCIS.Core.Application.Helper;
using IRaCIS.Core.Application.MassTransit.Consumer;
using IRaCIS.Core.Application.Service.Reading.Dto;
+using IRaCIS.Core.Domain.Models;
using MassTransit;
using Microsoft.Extensions.Options;
using MimeKit;
@@ -26,6 +27,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
public class UrgentIRUnReadTaskRecurringEventConsumer(
IRepository _trialReadingCriterionRepository,
IRepository _visitTaskRepository,
+ IRepository _trialRepository,
IRepository _dictionaryRepository,
IRepository _trialUserRoleRepository,
IRepository _trialEmailNoticeConfigrepository,
@@ -38,6 +40,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
var isEn_US = CultureInfo.CurrentCulture.Name == StaticData.CultureInfo.en_US;
var trialId = context.Message.TrialId;
+ var trialInfo = await _trialRepository.FirstOrDefaultAsync(t => t.Id == trialId);
var scenario = EmailBusinessScenario.ExpeditedReading;
var trialEmailConfig = _trialEmailNoticeConfigrepository.Where(t => t.TrialId == trialId && t.BusinessScenarioEnum == scenario && t.IsAutoSend && t.IsEnable).FirstOrDefault();
@@ -160,7 +163,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
};
await CommonEmailHelper.GetTrialEmailSubejctAndHtmlInfoAndBuildAsync(trialEmailConfig, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
//处理标记已通知的任务
diff --git a/IRaCIS.Core.Application/MassTransit/Recurring/SystemDocumentConsumer.cs b/IRaCIS.Core.Application/MassTransit/Recurring/SystemDocumentConsumer.cs
index f3baef4b2..9c89fbdfb 100644
--- a/IRaCIS.Core.Application/MassTransit/Recurring/SystemDocumentConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Recurring/SystemDocumentConsumer.cs
@@ -114,7 +114,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
if (emailConfig != null)
{
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(emailConfig, messageToSend, emailConfigFunc);
-
+
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
diff --git a/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs b/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs
index 1002094bd..92680fd87 100644
--- a/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs
+++ b/IRaCIS.Core.Application/MassTransit/Recurring/TrialDocumentConsumer.cs
@@ -137,7 +137,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
if (emailConfig != null)
{
await CommonEmailHelper.GetEmailSubejctAndHtmlInfoAndBuildAsync(emailConfig, messageToSend, emailConfigFunc);
-
+
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
diff --git a/IRaCIS.Core.Application/Service/Common/MailService.cs b/IRaCIS.Core.Application/Service/Common/MailService.cs
index 9c00c1be9..89336371b 100644
--- a/IRaCIS.Core.Application/Service/Common/MailService.cs
+++ b/IRaCIS.Core.Application/Service/Common/MailService.cs
@@ -533,7 +533,7 @@ namespace IRaCIS.Core.Application.Service
await GetEmailSubejctAndHtmlInfoAndBuildAsync(sysUserInfo.IsFirstAdd ? EmailBusinessScenario.SiteUseOrExternalUserFirstrJoinTrial : EmailBusinessScenario.SiteUserOrExternalUserExistJoinTrial, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig, null);
}
@@ -593,7 +593,7 @@ namespace IRaCIS.Core.Application.Service
await GetEmailSubejctAndHtmlInfoAndBuildAsync(sysUserInfo.IsFirstAdd ? EmailBusinessScenario.SiteUseOrExternalUserFirstrJoinTrial : EmailBusinessScenario.SiteUserOrExternalUserExistJoinTrial, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -723,7 +723,7 @@ namespace IRaCIS.Core.Application.Service
await GetEmailSubejctAndHtmlInfoAndBuildAsync(sysUserInfo.IsFirstAdd ? EmailBusinessScenario.DoctorUserFirstJoinTrial : EmailBusinessScenario.DoctorUserExistJoinTrial, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig, null);
//创建账号 和创建角色 一条,更新的时候才记录更新角色
@@ -954,7 +954,7 @@ namespace IRaCIS.Core.Application.Service
await GetEmailSubejctAndHtmlInfoAndBuildAsync(EmailBusinessScenario.SiteSurvey_CheckUser, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}
@@ -990,7 +990,7 @@ namespace IRaCIS.Core.Application.Service
await GetEmailSubejctAndHtmlInfoAndBuildAsync(EmailBusinessScenario.SiteSurvey_UpdateUser, messageToSend, emailConfigFunc);
-
+ SendEmailHelper.ChangeEmailSenderName(messageToSend, trialInfo.EmailFromName);
await SendEmailHelper.SendEmailAsync(messageToSend, _systemEmailConfig);
}