邮件上线到系统配置

This commit is contained in:
2024-07-26 15:26:28 +08:00
parent abb3b02e74
commit 9f32b92af3
5 changed files with 289 additions and 345 deletions
@@ -611,48 +611,8 @@ namespace IRaCIS.Core.Application.Contracts
}
var builder = new BodyBuilder();
var trialInfo = await _repository.FirstOrDefaultAsync<Trial>(t => t.Id == trialSiteSubmitBackCommand.TrialId);
var siteInfo = await _trialSiteRepository.FirstOrDefaultAsync(t => t.TrialId == trialSiteSubmitBackCommand.TrialId && t.Id == survey.TrialSiteId, true);
//主题
// $"[来自展影IRC] [{trialInfo.ResearchProgramNo}] 关于中心调研审批的提醒";
messageToSend.Subject = _localizer["TrialSiteSurvey_IRCNotification", _userInfo.IsEn_Us ? _systemEmailConfig.CompanyShortName : _systemEmailConfig.CompanyShortNameCN, trialInfo.ResearchProgramNo];
var pathToFile = _hostEnvironment.WebRootPath
+ Path.DirectorySeparatorChar.ToString()
+ "EmailTemplate"
+ Path.DirectorySeparatorChar.ToString()
+ (_userInfo.IsEn_Us ? "TrialSiteSurveyReject_US.html" : "TrialSiteSurveyReject.html");
using (StreamReader SourceReader = System.IO.File.OpenText(pathToFile))
{
var templateInfo = SourceReader.ReadToEnd();
templateInfo = templateInfo.Replace("{company}", _userInfo.IsEn_Us ? _systemEmailConfig.CompanyName : _systemEmailConfig.CompanyNameCN)
.Replace("{company abbreviation}", _userInfo.IsEn_Us ? _systemEmailConfig.CompanyShortName : _systemEmailConfig.CompanyShortNameCN);
builder.HtmlBody = string.Format(templateInfo,
(user == null ? survey.UserName : user.LastName + "/ " + user.FirstName),
trialInfo.TrialCode,
trialInfo.ResearchProgramNo,
trialInfo.ExperimentName,
siteInfo.TrialSiteCode,
siteInfo.TrialSiteAliasName,
survey.LatestBackReason,
trialSiteSubmitBackCommand.RouteUrl,
(survey.State == TrialSiteSurveyEnum.ToSubmit ? "inline - block" : "none")
);
}
messageToSend.Body = builder.ToMessageBody();
await _IMailVerificationService.SiteSurveyRejectEmail(messageToSend);
await _IMailVerificationService.SiteSurveyRejectEmail(messageToSend, survey , trialSiteSubmitBackCommand.RouteUrl, user);
await _trialSiteSurveyRepository.SaveChangesAsync();