From 2fcb2493d120bed09d541f0a5e4dae959caa5e64 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Tue, 11 Jul 2023 10:10:07 +0800
Subject: [PATCH] S-39
---
.../ReadingClinicalDataService.cs | 59 ++++++++++++-------
.../Reading/Dto/ReadingClinicalDataDto.cs | 9 ++-
.../ReadingImageTaskService.cs | 1 +
IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs | 22 +++++++
4 files changed, 68 insertions(+), 23 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs
index b0d80ad4d..900d57eff 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs
@@ -730,8 +730,8 @@ namespace IRaCIS.Application.Services
ClinicalFormId = x.ClinicalFormId
}).ToList();
-
- x.ReadingClinicalDataState = readModule.IsPMConfirm ? ReadingClinicalDataStatus.HaveSigned : ReadingClinicalDataStatus.HaveChecked;
+ x.IsSign = readModule.IsPMConfirm ? true : false;
+ x.ReadingClinicalDataState = readModule.IsPMConfirm ? ReadingClinicalDataStatus.HaveSigned : ReadingClinicalDataStatus.HaveChecked;
});
@@ -740,30 +740,47 @@ namespace IRaCIS.Application.Services
- // 根据标准
- if (inDto.VisitTaskId != null)
+ // 根据标准
+ if (inDto.VisitTaskId != null)
{
var visitTaskInfo = await _visitTaskRepository.FirstOrDefaultAsync(x => x.Id == inDto.VisitTaskId);
-
- result = result.Where(x => x.TrialClinicalDataSetCriteriaList.Any(z=>z.TrialReadingCriterionId==visitTaskInfo.TrialReadingCriterionId)).ToList();
+
+ result = result.Where(x => x.TrialClinicalDataSetCriteriaList.Any(z => z.TrialReadingCriterionId == visitTaskInfo.TrialReadingCriterionId)).ToList();
}
- result = result.Where(x => !(x.ClinicalUploadType == ClinicalUploadType.PDF && x.FileList.Count() == 0)).ToList();
- // 需要排除表格为空的数据
-
-
- var readingIds = result.Select(x => x.ReadingId).ToList();
-
- var tablecount = (await _previousHistoryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
- (await _previousOtherRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
- (await _previousSurgeryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync());
-
- if (tablecount == 0)
+ if (inDto.GetClinicalType != null)
{
- result = result.Where(x => x.ClinicalUploadType != ClinicalUploadType.Table).ToList();
+ switch (inDto.GetClinicalType)
+ {
+ case GetClinicalType.PMUpload:
+ result = result.Where(x => x.UploadRole == UploadRole.PM).ToList();
+ break;
+ case GetClinicalType.CRCConfirm:
+ result = result.Where(x => x.UploadRole == UploadRole.CRC).ToList();
+ break;
+ case GetClinicalType.HasSign:
+ result = result.Where(x => x.IsSign).ToList();
+ break;
+ }
}
+
+ //result = result.Where(x => !(x.ClinicalUploadType == ClinicalUploadType.PDF && x.FileList.Count() == 0)).ToList();
+ //// 需要排除表格为空的数据
+
+
+ //var readingIds = result.Select(x => x.ReadingId).ToList();
+
+ //var tablecount = (await _previousHistoryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
+ // (await _previousOtherRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
+ // (await _previousSurgeryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync());
+
+ //if (tablecount == 0)
+ //{
+ // result = result.Where(x => x.ClinicalUploadType != ClinicalUploadType.Table).ToList();
+ //}
+
return result;
}
@@ -878,13 +895,13 @@ namespace IRaCIS.Application.Services
{
switch (inDto.GetClinicalType)
{
- case 1:
+ case GetClinicalType.PMUpload:
result = result.Where(x => x.UploadRole == UploadRole.PM).ToList();
break;
- case 2:
+ case GetClinicalType.CRCConfirm:
result = result.Where(x => x.UploadRole == UploadRole.CRC).ToList();
break;
- case 3:
+ case GetClinicalType.HasSign:
result = result.Where(x => x.IsSign).ToList();
break;
}
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs
index 557a9af8c..6825d0851 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs
@@ -186,7 +186,12 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid? VisitTaskId { get; set; }
- public Guid? ReadingClinicalDataId { get; set; }
+ ///
+ /// 1 PM上传的所有的 2CRC上传的所有已确认的 3 所有已经签名的
+ ///
+ public GetClinicalType? GetClinicalType { get; set; }
+
+ public Guid? ReadingClinicalDataId { get; set; }
///
/// 只获取CRC上传的阅片模块结构化录入
@@ -212,7 +217,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
/// 1 PM上传的所有的 2CRC上传的所有已确认的 3 所有已经签名的
///
- public int? GetClinicalType { get; set; }
+ public GetClinicalType? GetClinicalType { get; set; }
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index 3eaac36bf..04ad7c842 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -2165,6 +2165,7 @@ namespace IRaCIS.Application.Services
SubjectId = taskInfo.SubjectId,
TrialId = taskInfo.TrialId,
VisitTaskId = taskInfo.Id,
+
});
var isBaseLine = false;
diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs
index 243e765b6..573971d63 100644
--- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs
+++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs
@@ -16,6 +16,28 @@ namespace IRaCIS.Core.Domain.Share
public static readonly string Group = "group";
}
+ ///
+ /// GetClinicalType
+ ///
+ public enum GetClinicalType
+ {
+
+ ///
+ /// PM上传
+ ///
+ PMUpload = 1,
+
+ ///
+ /// CRC 上传 过确认
+ ///
+ CRCConfirm = 2,
+
+ ///
+ /// 已审核
+ ///
+ HasSign = 3
+ }
+
///
/// 临床表格问题标识
///