修改邮件发送
continuous-integration/drone/push Build is passing Details

Uat_IRC_Net8
hang 2024-12-31 11:18:44 +08:00
parent da570f8c5a
commit bfed24028a
3 changed files with 21 additions and 14 deletions

View File

@ -30,7 +30,7 @@ namespace IRaCIS.Core.Application.Service
Task AdminResetPwdSendEmailAsync(Guid userId, string pwdNotMd5 = "123456"); Task AdminResetPwdSendEmailAsync(Guid userId, string pwdNotMd5 = "123456");
Task SiteSurveyUserJoinEmail(Guid trialId, Guid userId, string baseUrl, string rootUrl); Task SiteSurveyUserJoinEmail(Guid trialId, Guid userId, string userTypes, string baseUrl, string rootUrl);
Task ExternalUserJoinEmail(Guid trialId, Guid userId, string userTypes, string baseUrl, string rootUrl); Task ExternalUserJoinEmail(Guid trialId, Guid userId, string userTypes, string baseUrl, string rootUrl);
@ -301,8 +301,8 @@ namespace IRaCIS.Core.Application.Service
var htmlBodyStr = string.Format(ReplaceCompanyName(input.htmlBodyStr), var htmlBodyStr = string.Format(ReplaceCompanyName(input.htmlBodyStr),
sysUserInfo.FullName, sysUserInfo.FullName,
sysUserInfo.UserName, sysUserInfo.EMail,
string.Join(',', sysUserInfo.UserRoleList.Select(t => t.UserTypeRole.UserTypeShortName)), //string.Join(',', sysUserInfo.UserRoleList.Select(t => t.UserTypeRole.UserTypeShortName)),
redirectUrl redirectUrl
); );
@ -339,7 +339,7 @@ namespace IRaCIS.Core.Application.Service
sysUserInfo.FullName, sysUserInfo.FullName,
sysUserInfo.UserName, sysUserInfo.UserName,
string.Join(',', sysUserInfo.UserRoleList.Select(t => t.UserTypeRole.UserTypeShortName)), //string.Join(',', sysUserInfo.UserRoleList.Select(t => t.UserTypeRole.UserTypeShortName)),
pwdNotMd5 pwdNotMd5
); );
@ -470,7 +470,7 @@ namespace IRaCIS.Core.Application.Service
trialInfo.ExperimentName, trialInfo.ExperimentName,
trialInfo.ResearchProgramNo, trialInfo.ResearchProgramNo,
trialInfo.TrialCode, trialInfo.TrialCode,
sysUserInfo.UserName, sysUserInfo.EMail,
userTypes, userTypes,
sysUserInfo.IsFirstAdd ? redirectUrl : baseUrl sysUserInfo.IsFirstAdd ? redirectUrl : baseUrl
); );
@ -487,12 +487,11 @@ namespace IRaCIS.Core.Application.Service
} }
//Site调研 用户加入项目 //Site调研 用户加入项目
public async Task SiteSurveyUserJoinEmail(Guid trialId, Guid userId, string baseUrl, string rootUrl) public async Task SiteSurveyUserJoinEmail(Guid trialId, Guid userId, string userTypes, string baseUrl, string rootUrl)
{ {
var sysUserInfo = (await _identityUserRepository.Where(t => t.Id == userId).FirstOrDefaultAsync()).IfNullThrowException(); var sysUserInfo = (await _identityUserRepository.Where(t => t.Id == userId).FirstOrDefaultAsync()).IfNullThrowException();
var userTypes = await _userRoleRepository.Where(t => t.IdentityUserId == sysUserInfo.Id).Select(t => t.UserTypeRole.UserTypeShortName).ToListAsync();
var trialInfo = await _trialRepository.FirstOrDefaultAsync(t => t.Id == trialId); var trialInfo = await _trialRepository.FirstOrDefaultAsync(t => t.Id == trialId);
@ -531,8 +530,8 @@ namespace IRaCIS.Core.Application.Service
trialInfo.ExperimentName, trialInfo.ExperimentName,
trialInfo.ResearchProgramNo, trialInfo.ResearchProgramNo,
trialInfo.TrialCode, trialInfo.TrialCode,
sysUserInfo.UserName, sysUserInfo.EMail,
string.Join(',', userTypes), userTypes,
sysUserInfo.IsFirstAdd ? redirectUrl : baseUrl sysUserInfo.IsFirstAdd ? redirectUrl : baseUrl
); );
@ -646,7 +645,7 @@ namespace IRaCIS.Core.Application.Service
trialInfo.ResearchProgramNo, trialInfo.ResearchProgramNo,
trialInfo.TrialCode, trialInfo.TrialCode,
sysUserInfo.UserName, sysUserInfo.UserName,
userType.UserTypeShortName, $"{userType.UserTypeShortName} ({userType.UserTypeName})",
sysUserInfo.IsFirstAdd ? redirectUrl : baseUrl sysUserInfo.IsFirstAdd ? redirectUrl : baseUrl
); );

View File

@ -30,6 +30,7 @@ using IdentityModel;
using Microsoft.AspNetCore.Components.Routing; using Microsoft.AspNetCore.Components.Routing;
using IRaCIS.Core.Application.ViewModel; using IRaCIS.Core.Application.ViewModel;
using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Identity;
using NPOI.SS.Formula.Functions;
namespace IRaCIS.Core.Application.Contracts namespace IRaCIS.Core.Application.Contracts
{ {
@ -991,7 +992,12 @@ namespace IRaCIS.Core.Application.Contracts
if (isNeedSendEmail) if (isNeedSendEmail)
{ {
await _mailVerificationService.SiteSurveyUserJoinEmail(trialId, identityUserId, baseUrl, routeUrl);
var dbUserType = _userTypeRepository.Where(t => userTypeIdList.Contains(t.Id)).ToList();
var usertyps = string.Join(',', dbUserType.Select(t => $"{t.UserTypeShortName} ({t.UserTypeName})"));
await _mailVerificationService.SiteSurveyUserJoinEmail(trialId, identityUserId, usertyps, baseUrl, routeUrl);
} }
var userJoinIdList = item.Select(t => t.Id).ToList(); var userJoinIdList = item.Select(t => t.Id).ToList();
@ -1179,7 +1185,9 @@ namespace IRaCIS.Core.Application.Contracts
if (isNeedSendEmail) if (isNeedSendEmail)
{ {
await _mailVerificationService.SiteSurveyUserJoinEmail(trialId, identityUserId, baseUrl, routeUrl); var dbUserType = _userTypeRepository.Where(t => userTypeIdList.Contains(t.Id)).ToList();
var usertyps = string.Join(',', dbUserType.Select(t => $"{t.UserTypeShortName} ({t.UserTypeName})"));
await _mailVerificationService.SiteSurveyUserJoinEmail(trialId, identityUserId, usertyps, baseUrl, routeUrl);
} }
await _trialSiteUserRoleRepository.SaveChangesAsync(); await _trialSiteUserRoleRepository.SaveChangesAsync();

View File

@ -314,7 +314,7 @@ namespace IRaCIS.Core.Application.Service
var identityUserId = existSysUser.Id; var identityUserId = existSysUser.Id;
var userTypeList = await _identityUserRepository.Where(t => t.Id == identityUserId).SelectMany(t => t.UserRoleList).Select(t => new { t.UserTypeId, t.UserTypeRole.UserTypeShortName }).ToListAsync(); var userTypeList = await _identityUserRepository.Where(t => t.Id == identityUserId).SelectMany(t => t.UserRoleList).Select(t => new { t.UserTypeId, t.UserTypeRole.UserTypeName, t.UserTypeRole.UserTypeShortName }).ToListAsync();
var userHaveUserTypeIdList = userTypeList.Select(t => t.UserTypeId).ToList(); var userHaveUserTypeIdList = userTypeList.Select(t => t.UserTypeId).ToList();
@ -374,7 +374,7 @@ namespace IRaCIS.Core.Application.Service
await _trialIdentityUserRepository.SaveChangesAsync(); await _trialIdentityUserRepository.SaveChangesAsync();
var usertyps = string.Join(',', userTypeList.Where(t => userTypeIdList.Contains(t.UserTypeId)).Select(t => t.UserTypeShortName)); var usertyps = string.Join(',', userTypeList.Where(t => userTypeIdList.Contains(t.UserTypeId)).Select(t => $"{t.UserTypeShortName} ({t.UserTypeName})"));
await _mailVerificationService.ExternalUserJoinEmail(trialId, identityUserId, usertyps, sendEmail.BaseUrl, sendEmail.RouteUrl); await _mailVerificationService.ExternalUserJoinEmail(trialId, identityUserId, usertyps, sendEmail.BaseUrl, sendEmail.RouteUrl);