diff --git a/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs b/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs index 9c5d17000..7e5e12452 100644 --- a/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs +++ b/IRaCIS.Core.Application/MassTransit/Consumer/ImageConsumer.cs @@ -185,7 +185,7 @@ public class ImageConsumer( var readModule = await _readModuleRepository.Where(x => x.Id == visitTask.SouceReadModuleId).Include(x => x.SubjectVisit).FirstOrDefaultAsync(); subjectVisit = readModule.SubjectVisit; } - + var trialId = subjectVisit.TrialId; // 根据状态确定邮件场景 @@ -230,43 +230,49 @@ public class ImageConsumer( switch (scenario) { - case EmailBusinessScenario.ImageQC_IQCApplyRe_Uploading: // 64 - IQC申请重传 - case EmailBusinessScenario.ImageUploadCRCApplyRe_Uploading: // 65 - CRC申请重传 - // PM/APM收件 + case EmailBusinessScenario.ImageQC_IQCApplyRe_Uploading: // 64 - IQC申请重传 - Code: 42 + // PM收件 + toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ProjectManager).ToList(); + break; + + case EmailBusinessScenario.ImageUploadCRCApplyRe_Uploading: // 65 - CRC申请重传 - Code: 43 + // PM、APM收件 toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.APM || x.UserTypeEnum == UserTypeEnum.ProjectManager).ToList(); break; - case EmailBusinessScenario.ImageReUpload_PMApprovalRe_Uploading: // 66 - PM审批重传 - case EmailBusinessScenario.DataReconciliation_PMApprovalRe_Uploading: // 63 - 一致性核查PM审批重传 - case EmailBusinessScenario.ImageQuery_IQCApprovalRe_Uploading: // 61 - 影像质疑IQC审批重传 + case EmailBusinessScenario.ImageReUpload_PMApprovalRe_Uploading: // 66 - PM审批重传 - Code: 44 + // CRC、IQC收件 + toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator || x.UserTypeEnum == UserTypeEnum.IQC).ToList(); + break; + + case EmailBusinessScenario.DataReconciliation_PMApprovalRe_Uploading: // 63 - 一致性核查PM审批重传 - Code: 41 // CRC收件 toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).ToList(); - // CRA抄送 - ccUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.CRA).ToList(); break; - case EmailBusinessScenario.DataReconciliation_CRCApplyRe_Uploading: // 62 - 一致性核查CRC申请重传 - // PM/APM收件 + case EmailBusinessScenario.ImageQuery_IQCApprovalRe_Uploading: // 61 - 影像质疑IQC审批重传 - Code: 39 + // CRC收件 + toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).ToList(); + break; + + case EmailBusinessScenario.DataReconciliation_CRCApplyRe_Uploading: // 62 - 一致性核查CRC申请重传 - Code: 40 + // PM、APM收件 toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.APM || x.UserTypeEnum == UserTypeEnum.ProjectManager).ToList(); break; - case EmailBusinessScenario.ImageQueryCRCApplyRe_Uploading: // 60 - 影像质疑CRC申请重传 + case EmailBusinessScenario.ImageQueryCRCApplyRe_Uploading: // 60 - 影像质疑CRC申请重传 - Code: 38 // IQC收件 toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.IQC).ToList(); - // PM/APM抄送 - ccUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.APM || x.UserTypeEnum == UserTypeEnum.ProjectManager).ToList(); break; - case EmailBusinessScenario.ReadTracking_PMApplyRe_Reading: // 67 - PM申请重阅 - // SPM/CPM收件 + case EmailBusinessScenario.ReadTracking_PMApplyRe_Reading: // 67 - PM申请重阅 - Code: 45 + // CPM、SPM收件 toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.SPM || x.UserTypeEnum == UserTypeEnum.CPM).ToList(); break; - case EmailBusinessScenario.Re_ReadApproval_SPMCPMApprovalRe_Reading: // 68 - SPM/CPM审批重阅 - // PM收件 - toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ProjectManager).ToList(); - // 阅片人抄送 - ccUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.IndependentReviewer).ToList(); + case EmailBusinessScenario.Re_ReadApproval_SPMCPMApprovalRe_Reading: // 68 - SPM/CPM审批重阅 - Code: 46 + // CRC收件 + toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).ToList(); break; } @@ -395,14 +401,14 @@ public class ImageConsumer( switch (scenario) { - case EmailBusinessScenario.ReviewerSelection_PMApplyApproving: // 69 - PM申请审批 - // SPM/CPM收件 + case EmailBusinessScenario.ReviewerSelection_PMApplyApproving: // 69 - PM申请审批 - Code: 47 + // CPM、SPM收件 toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.SPM || x.UserTypeEnum == UserTypeEnum.CPM).ToList(); break; - case EmailBusinessScenario.ReviewerSelection_SPMCPMApproval: // 70 - SPM审批 - // PM收件 - toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ProjectManager).ToList(); + case EmailBusinessScenario.ReviewerSelection_SPMCPMApproval: // 70 - SPM审批 - Code: 48 + // APM、PM收件 + toUserList = trialUser.Where(x => x.UserTypeEnum == UserTypeEnum.ProjectManager || x.UserTypeEnum == UserTypeEnum.APM).ToList(); break; }