Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -53,7 +53,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
public interface IMailVerificationService
|
||||
{
|
||||
|
||||
Task AnolymousSendEmail(string researchProgramNo, string emailAddress, int verificationCode);
|
||||
Task AnolymousSendEmail(Guid trialId, string emailAddress, int verificationCode);
|
||||
|
||||
Task SendEmailVerification(string emailAddress, int verificationCode);
|
||||
|
||||
@@ -276,10 +276,13 @@ namespace IRaCIS.Core.Application.Service
|
||||
|
||||
|
||||
//中心调研 登陆 发送验证码
|
||||
public async Task AnolymousSendEmail(string researchProgramNo, string emailAddress, int verificationCode)
|
||||
public async Task AnolymousSendEmail(Guid trialId, string emailAddress, int verificationCode)
|
||||
{
|
||||
//throw new BusinessValidationFailedException("模拟邮件取数据或者发送异常!!!");
|
||||
|
||||
|
||||
var trialInfo = await _trialRepository.FirstOrDefaultAsync(t => t.Id == trialId);
|
||||
|
||||
var messageToSend = new MimeMessage();
|
||||
//发件地址
|
||||
messageToSend.From.Add(new MailboxAddress(_systemEmailConfig.FromName, _systemEmailConfig.FromEmail));
|
||||
@@ -292,7 +295,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
|
||||
Func<(string topicStr, string htmlBodyStr), (string topicStr, string htmlBodyStr)> emailConfigFunc = input =>
|
||||
{
|
||||
var topicStr = string.Format(input.topicStr, companyName, researchProgramNo);
|
||||
var topicStr = string.Format(input.topicStr, companyName, trialInfo.ResearchProgramNo);
|
||||
|
||||
var htmlBodyStr = string.Format(ReplaceCompanyName(input.htmlBodyStr),
|
||||
|
||||
|
||||
@@ -287,9 +287,8 @@ namespace IRaCIS.Core.Application.Contracts
|
||||
//验证码 6位
|
||||
int verificationCode = new Random().Next(100000, 1000000);
|
||||
|
||||
var trialInfo = await _trialRepository.FirstOrDefaultAsync(t => t.Id == userInfo.TrialId);
|
||||
|
||||
await SafeMailHelper.Run(async () => await _mailVerificationService.AnolymousSendEmail(trialInfo.ResearchProgramNo, userInfo.Email, verificationCode));
|
||||
await SafeMailHelper.Run(async () => await _mailVerificationService.AnolymousSendEmail(userInfo.TrialId, userInfo.Email, verificationCode));
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -198,13 +198,14 @@ public class TrialStatService(
|
||||
var exceptVisit = list.Where(t => t.ReadingCategory == ReadingCategory.Visit)
|
||||
.GroupBy(t => new { t.SubjectCode, t.TaskName }).Where(g => g.Count() == 1).Select(g => new { g.Key.SubjectCode, g.Key.TaskName }).ToList();
|
||||
|
||||
//将一个人做的访视任务过滤掉
|
||||
list = list.Where(t => !exceptVisit.Any(ev => ev.SubjectCode == t.SubjectCode && ev.TaskName == t.TaskName)).ToList();
|
||||
}
|
||||
|
||||
|
||||
list = list.OrderBy(t => t.SubjectCode).ThenBy(t => t.ArmEnum).ThenBy(t => t.VisitTaskNum).ToList();
|
||||
|
||||
//处理裁判标记
|
||||
//处理裁判标记 是否触发裁判,裁判选择标记
|
||||
list = DealJudgeMark(criterion.ArbitrationRule, criterion.IsGlobalReading, list);
|
||||
|
||||
//基线(最晚拍片日期)-首次PD(所有触发PD的病灶的检查的最早拍片日期)的中位数,单位是天
|
||||
@@ -216,8 +217,8 @@ public class TrialStatService(
|
||||
g => g.First().LatestScanDate // 如果同一个 SubjectCode 有多条记录,只取第一条
|
||||
);
|
||||
|
||||
//一定要两个人做完了,产生了裁判并且有结果的,否则就不算,并且排除基线
|
||||
list = list.Where(t => t.IsJudgeSelect == true && t.VisitTaskNum != 0 && t.ReadingCategory == ReadingCategory.Visit)//全局的答案已经放在对应访视上了
|
||||
//找到裁判选择了的,否则就不算,并且排除基线 按照每个subject分组,取最后一次访视
|
||||
list = list.Where(t => t.IsJudgeSelect == true && t.VisitTaskNum != 0 && t.ReadingCategory==ReadingCategory.Visit)//全局的答案已经放在对应访视上了
|
||||
.GroupBy(t => t.SubjectCode).Select(g => g.OrderByDescending(t => t.VisitTaskNum).First()).ToList();
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user