diff --git a/IRaCIS.Core.Application/Service/Common/MailService.cs b/IRaCIS.Core.Application/Service/Common/MailService.cs index 186a04542..52b13271d 100644 --- a/IRaCIS.Core.Application/Service/Common/MailService.cs +++ b/IRaCIS.Core.Application/Service/Common/MailService.cs @@ -57,9 +57,9 @@ namespace IRaCIS.Application.Services private readonly SystemEmailSendConfig _systemEmailConfig; + private string _companyShortName { get; set; } - - public MailVerificationService(IRepository verificationCodeRepository, + public MailVerificationService(IRepository verificationCodeRepository, IRepository systemBasicDatarepository, IRepository userRepository, ITokenService tokenService, @@ -81,6 +81,8 @@ namespace IRaCIS.Application.Services _userTypeRepository = userTypeRepository; _doctorTypeRepository = doctorTypeRepository; _distributedLockProvider = distributedLockProvider; + + _companyShortName = _userInfo.IsEn_Us ? _systemEmailConfig.CompanyShortName : _systemEmailConfig.CompanyShortNameCN; } @@ -105,7 +107,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(userName, emailAddress)); //主题 //---[来自展影IRC] 关于重置邮箱的提醒 - messageToSend.Subject = _localizer["Mail_EmailResetReminder"]; + messageToSend.Subject = _localizer["Mail_EmailResetReminder", _companyShortName]; var builder = new BodyBuilder(); @@ -171,7 +173,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(String.Empty, emailAddress)); //主题 //---[来自展影IRC] 关于重置密码的提醒 - messageToSend.Subject = _localizer["Mail_IRCResettingPassword"]; + messageToSend.Subject = _localizer["Mail_IRCResettingPassword", _companyShortName]; @@ -239,7 +241,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(String.Empty, emailAddress)); //主题 //---[来自展影IRC]的提醒 - messageToSend.Subject = _localizer["Mail_ImagingIRCReminder"]; + messageToSend.Subject = _localizer["Mail_ImagingIRCReminder", _companyShortName]; @@ -305,7 +307,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(String.Empty, emailAddress)); //主题 //$"[来自展影IRC] [{researchProgramNo}] 关于中心调研的提醒"; - messageToSend.Subject = _localizer["Mail_ProjectParticipationReminder", researchProgramNo]; + messageToSend.Subject = _localizer["Mail_ProjectParticipationReminder", _companyShortName, researchProgramNo]; @@ -325,7 +327,7 @@ namespace IRaCIS.Application.Services builder.HtmlBody = string.Format(ReplaceCompanyName(templateInfo), - "", + "Sir or Madam", //---您正在参与展影医疗IRC项目中心调研工作 _localizer["Mail_CenterResearchReminder"], verificationCode @@ -385,7 +387,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(sysUserInfo.FullName, sysUserInfo.EMail)); //主题 //---[来自展影IRC] 关于创建账户的提醒 - messageToSend.Subject = _localizer["Mail_AccountCreationReminder"]; + messageToSend.Subject = _localizer["Mail_AccountCreationReminder", _companyShortName]; @@ -441,7 +443,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(sysUserInfo.FullName, sysUserInfo.EMail)); //主题 //---[来自展影IRC] 关于重置账户密码的提醒 - messageToSend.Subject = _localizer["Mail_AccountPasswordResetReminder"]; + messageToSend.Subject = _localizer["Mail_AccountPasswordResetReminder", _companyShortName]; @@ -491,7 +493,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(sysUserInfo.FullName, sysUserInfo.EMail)); //主题 // $"[来自展影IRC] [{trialInfo.ResearchProgramNo}]邀请信"; - messageToSend.Subject = _localizer["Mail_InvitationEmail", trialInfo.ResearchProgramNo]; + messageToSend.Subject = _localizer["Mail_InvitationEmail", _companyShortName, trialInfo.ResearchProgramNo]; @@ -555,7 +557,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(String.Empty, sysUserInfo.EMail)); //主题 // $"[来自展影IRC] [{trialInfo.ResearchProgramNo}]邀请信"; - messageToSend.Subject = _localizer["Mail_InvitationEmail", trialInfo.ResearchProgramNo]; + messageToSend.Subject = _localizer["Mail_InvitationEmail", _companyShortName,trialInfo.ResearchProgramNo]; var builder = new BodyBuilder(); @@ -670,7 +672,7 @@ namespace IRaCIS.Application.Services messageToSend.To.Add(new MailboxAddress(doctor.FullName, doctor.EMail)); //主题 // $"[来自展影IRC] [{trialInfo.ResearchProgramNo}]邀请信"; - messageToSend.Subject = _localizer["Mail_InvitationEmail", trialInfo.ResearchProgramNo]; + messageToSend.Subject = _localizer["Mail_InvitationEmail", _companyShortName, trialInfo.ResearchProgramNo]; var builder = new BodyBuilder(); diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs index 6403d929a..221d58fc7 100644 --- a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs +++ b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs @@ -21,6 +21,7 @@ using DocumentFormat.OpenXml.Spreadsheet; using IRaCIS.Core.Domain.Models; using IRaCIS.Core.Application.ViewModel; using Medallion.Threading; +using Microsoft.Extensions.Options; namespace IRaCIS.Core.Application.Contracts { @@ -40,10 +41,14 @@ namespace IRaCIS.Core.Application.Contracts private readonly ITokenService _tokenService; private readonly IMailVerificationService _mailVerificationService; + private readonly SystemEmailSendConfig _systemEmailConfig; + + private string _companyShortName { get; set; } + public TrialSiteSurveyService(IRepository trialSiteSurveyRepository, IRepository trialUserRepository, IRepository trialSiteUserSurveyRepository, IRepository userRepository, IRepository trialSiteRepository, ITokenService tokenService, - IMailVerificationService mailVerificationService, IRepository trialSiteUserRepository, IDistributedLockProvider distributedLockProvider) + IMailVerificationService mailVerificationService, IRepository trialSiteUserRepository, IDistributedLockProvider distributedLockProvider, IOptionsMonitor systemEmailConfig) { _trialSiteSurveyRepository = trialSiteSurveyRepository; _trialSiteUserSurveyRepository = trialSiteUserSurveyRepository; @@ -54,6 +59,8 @@ namespace IRaCIS.Core.Application.Contracts _mailVerificationService = mailVerificationService; _trialSiteUserRepository = trialSiteUserRepository; _distributedLockProvider = distributedLockProvider; + + _systemEmailConfig = systemEmailConfig.CurrentValue; } @@ -607,7 +614,7 @@ namespace IRaCIS.Core.Application.Contracts //主题 // $"[来自展影IRC] [{trialInfo.ResearchProgramNo}] 关于中心调研审批的提醒"; - messageToSend.Subject = _localizer["TrialSiteSurvey_IRCNotification", trialInfo.ResearchProgramNo]; + messageToSend.Subject = _localizer["TrialSiteSurvey_IRCNotification", _companyShortName, trialInfo.ResearchProgramNo]; var pathToFile = _hostEnvironment.WebRootPath + Path.DirectorySeparatorChar.ToString()