S-60 VisitHelper 任务临床状态维护
parent
b4bc39f0d9
commit
3a79251b91
|
@ -459,6 +459,13 @@ namespace IRaCIS.Core.Application.Service
|
|||
var haveSignedCount = _readingClinicalDataRepository
|
||||
.Where(t => t.TrialId == trialId && t.IsSign && t.ReadingClinicalDataState == ReadingClinicalDataStatus.HaveSigned && t.ReadingId == readingId && t.ClinicalDataTrialSet.UploadRole == UploadRole.PM).Count();
|
||||
|
||||
|
||||
var readModule = _readModuleRepository.Where(t => t.Id == readingId).FirstOrDefault();
|
||||
//CRC 阅片期自定义结构化录入是否签名
|
||||
bool crcReadModuleSign = true;
|
||||
|
||||
|
||||
|
||||
//访视
|
||||
if (readingCategory == ReadingCategory.Visit)
|
||||
{
|
||||
|
@ -478,16 +485,37 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
|
||||
}
|
||||
|
||||
//阅片期
|
||||
else if (readingCategory == ReadingCategory.Global)
|
||||
{
|
||||
needSignCount = trialClinicalDataSetList.Where(t => t.TrialClinicalDataSetCriteriaList.Any(c => c.TrialReadingCriterionId == trialReadingCriterionId) && t.ClinicalDataLevel == ClinicalLevel.ImageRead && t.UploadRole == UploadRole.PM).Count();
|
||||
|
||||
if (readModule != null)
|
||||
{
|
||||
// 不存在需要CRC上传的临床数据 或者 PM已确认
|
||||
crcReadModuleSign =
|
||||
!trialClinicalDataSetList.Any(x =>
|
||||
x.UploadRole == UploadRole.CRC
|
||||
&& x.ClinicalDataLevel == ClinicalLevel.ImageRead
|
||||
&& x.ClinicalUploadType == ClinicalUploadType.Structuring
|
||||
&& x.TrialClinicalDataSetCriteriaList.Any(c => c.TrialReadingCriterionId == trialReadingCriterionId)) || readModule.IsPMConfirm;
|
||||
}
|
||||
}
|
||||
// 肿瘤学
|
||||
else if (readingCategory == ReadingCategory.Oncology)
|
||||
{
|
||||
return trialClinicalDataSetList.Any(t => t.TrialClinicalDataSetCriteriaList.Any(c => c.TrialReadingCriterionId == trialReadingCriterionId) && t.ClinicalDataLevel == ClinicalLevel.OncologyRead);
|
||||
needSignCount= trialClinicalDataSetList.Where(t => t.TrialClinicalDataSetCriteriaList.Any(c => c.TrialReadingCriterionId == trialReadingCriterionId) && t.ClinicalDataLevel == ClinicalLevel.OncologyRead && t.UploadRole == UploadRole.PM).Count();
|
||||
if (readModule != null)
|
||||
{
|
||||
// 不存在需要CRC上传的临床数据 或者 PM已确认
|
||||
crcReadModuleSign =
|
||||
!trialClinicalDataSetList.Any(x =>
|
||||
x.UploadRole == UploadRole.CRC
|
||||
&& x.ClinicalDataLevel == ClinicalLevel.OncologyRead
|
||||
&& x.ClinicalUploadType == ClinicalUploadType.Structuring
|
||||
&& x.TrialClinicalDataSetCriteriaList.Any(c => c.TrialReadingCriterionId == trialReadingCriterionId)) || readModule.IsPMConfirm;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -495,7 +523,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
}
|
||||
|
||||
//可能仅仅CRC 基线 没有PM
|
||||
if (needSignCount == haveSignedCount /*&& needSignCount != 0*/)
|
||||
if (needSignCount == haveSignedCount && crcReadModuleSign )
|
||||
{
|
||||
isClinicalDataSign = true;
|
||||
|
||||
|
|
Loading…
Reference in New Issue