From b6f398bd2b71e66ebb73f96bfec846ec004aad10 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Tue, 4 Jul 2023 14:15:26 +0800
Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Service/Reading/ClinicalData/ClinicalAnswerService.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
index 5c26c0bf8..ca1f9af96 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
@@ -197,7 +197,7 @@ namespace IRaCIS.Core.Application.Service
}).ToListAsync();
- var clinicalData=await _readingClinicalDataRepository.Where(x=>x.TrialId == inDto.TrialId&&x.ClinicalDataTrialSet.UploadRole==UploadRole.CRC)
+ var clinicalData=await _readingClinicalDataRepository.Where(x=>x.TrialId == inDto.TrialId&&x.ClinicalDataTrialSet.UploadRole==UploadRole.CRC&&x.ClinicalDataTrialSet.ClinicalDataLevel!= ClinicalLevel.SubjectVisit)
.Where(x=>!x.IsSign)
.Include(x=>x.ClinicalDataTrialSet).Select(x=>new GetCRCSubjectClinicalOutDto() {
SubjectId=x.SubjectId,
From 7f966b0a247ce84cf657bda275c8ea156679a71a Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Tue, 4 Jul 2023 15:03:52 +0800
Subject: [PATCH 2/4] =?UTF-8?q?S-01=E4=B8=B4=E5=BA=8A=E6=95=B0=E6=8D=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ClinicalData/ClinicalAnswerService.cs | 24 +++++++------------
.../Service/Reading/Dto/ClinicalAnswerDto.cs | 2 +-
2 files changed, 9 insertions(+), 17 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
index ca1f9af96..67f17a800 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
@@ -178,18 +178,14 @@ namespace IRaCIS.Core.Application.Service
///
///
[HttpPost]
- public async Task> GetCRCSubjectClinicalList(GetCRCSubjectClinicalInDto inDto)
+ public async Task> GetCRCSubjectClinicalList(GetCRCSubjectClinicalInDto inDto)
{
//await AutoAddCRCClinical(new AutoAddClinicalInDto()
//{
-
// TrialId = inDto.TrialId
//}) ;
-
-
-
var subjects = await _subjectRepository.Where(x => x.TrialId == inDto.TrialId).Select(x => new GetCRCSubjectClinicalResultDto()
{
SubjectId = x.Id,
@@ -197,7 +193,7 @@ namespace IRaCIS.Core.Application.Service
}).ToListAsync();
- var clinicalData=await _readingClinicalDataRepository.Where(x=>x.TrialId == inDto.TrialId&&x.ClinicalDataTrialSet.UploadRole==UploadRole.CRC&&x.ClinicalDataTrialSet.ClinicalDataLevel!= ClinicalLevel.SubjectVisit)
+ var clinicalData= _readingClinicalDataRepository.Where(x=>x.TrialId == inDto.TrialId&&x.ClinicalDataTrialSet.UploadRole==UploadRole.CRC&&x.ClinicalDataTrialSet.ClinicalDataLevel!= ClinicalLevel.SubjectVisit)
.Where(x=>!x.IsSign)
.Include(x=>x.ClinicalDataTrialSet).Select(x=>new GetCRCSubjectClinicalOutDto() {
SubjectId=x.SubjectId,
@@ -206,24 +202,20 @@ namespace IRaCIS.Core.Application.Service
ClinicalDataTrialSetId = x.ClinicalDataTrialSet.Id,
ClinicalDataSetEnName= x.ClinicalDataTrialSet.ClinicalDataSetEnName,
ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName,
- }).OrderBy(x=>x.SubjectCode).ToListAsync();
+ });
- // 一次查询报错 分两次写
- clinicalData.ForEach(x =>
+ var pageList = await clinicalData.ToPagedListAsync(inDto.PageIndex, inDto.PageSize, string.IsNullOrWhiteSpace(inDto.SortField) ? nameof(GetCRCSubjectClinicalOutDto.SubjectCode) : inDto.SortField, inDto.Asc);
+ // 一次查询报错 分两次写
+ pageList.CurrentPageData.ForEach(x =>
{
x.ClinicalDataSetEnName = x.ClinicalDataSetName.LanguageName(x.ClinicalDataSetEnName, _userInfo.IsEn_Us);
-
});
-
-
var clinicalFormData = await _clinicalFormRepository.Where(x => x.TrialId == inDto.TrialId).ToListAsync();
- clinicalData.ForEach(n =>
+ pageList.CurrentPageData.ForEach(n =>
{
n.ClinicalCount = clinicalFormData.Where(y => y.ClinicalDataTrialSetId == n.ClinicalDataTrialSetId && y.SubjectId == n.SubjectId).Count();
});
-
-
- return clinicalData;
+ return pageList;
}
///
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
index b22cacbfd..ec8eceddd 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
@@ -18,7 +18,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
- public class GetCRCSubjectClinicalInDto
+ public class GetCRCSubjectClinicalInDto:PageInput
{
public Guid TrialId { get; set; }
}
From c67dcb1d5c7be4480e585ee9b7b01d3da7c6d345 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Tue, 4 Jul 2023 15:24:34 +0800
Subject: [PATCH 3/4] =?UTF-8?q?S-002=20=E4=B8=B4=E5=BA=8A=E6=95=B0?=
=?UTF-8?q?=E6=8D=AE=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ClinicalData/ClinicalAnswerService.cs | 36 +++++++++++--------
.../Service/Reading/Dto/ClinicalAnswerDto.cs | 2 +-
2 files changed, 22 insertions(+), 16 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
index 67f17a800..902957aa5 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
@@ -433,20 +433,24 @@ namespace IRaCIS.Core.Application.Service
///
///
[HttpPost]
- public async Task> GetCRCConfirmList(GetCRCConfirmListInDto inDto)
+ public async Task> GetCRCConfirmList(GetCRCConfirmListInDto inDto)
{
- List result = await _readModuleRepository.Where(x => x.TrialId == inDto.TrialId)
- .WhereIf(inDto.ReadModuleId!=null,x=>x.Id==inDto.ReadModuleId)
- .Select(x => new GetCRCConfirmListOutDto()
- {
- SubjectId= x.SubjectId,
- IsCRCConfirm = x.IsCRCConfirm,
- LatestScanDate = x.SubjectVisit.LatestScanDate,
- ReadingSetType = x.ReadingSetType,
- IsPMConfirm = x.IsPMConfirm,
- SubjectCode=x.Subject.Code,
- ReadModuleId = x.Id,
- }).OrderBy(x => x.LatestScanDate).ToListAsync();
+ var query = _readModuleRepository.Where(x => x.TrialId == inDto.TrialId)
+ .WhereIf(inDto.ReadModuleId != null, x => x.Id == inDto.ReadModuleId)
+ .Select(x => new GetCRCConfirmListOutDto()
+ {
+ SubjectId = x.SubjectId,
+ IsCRCConfirm = x.IsCRCConfirm,
+ LatestScanDate = x.SubjectVisit.LatestScanDate,
+ ReadingSetType = x.ReadingSetType,
+ IsPMConfirm = x.IsPMConfirm,
+ SubjectCode = x.Subject.Code,
+ ReadModuleId = x.Id,
+ });
+
+
+ var result = await query.ToPagedListAsync(inDto.PageIndex, inDto.PageSize, string.IsNullOrWhiteSpace(inDto.SortField) ? nameof(GetCRCConfirmListOutDto.LatestScanDate) : inDto.SortField, inDto.Asc);
+
var formList = await _clinicalFormRepository.Where(x => x.TrialId == inDto.TrialId)
.Where(x => x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC)
.Where(x => x.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.ImageRead || x.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.OncologyRead)
@@ -461,7 +465,7 @@ namespace IRaCIS.Core.Application.Service
ClinicalDataSetEnName=x.ClinicalDataTrialSet.ClinicalDataSetEnName,
}).ToListAsync();
var confirmList = await _readModuleCriterionFromRepository.Where(x => x.TrialId == inDto.TrialId).Include(x=>x.ClinicalForm).Include(x=>x.ClinicalForm.ClinicalDataTrialSet).ToListAsync();
- result.ForEach(x =>
+ result.CurrentPageData.ForEach(x =>
{
if (x.IsCRCConfirm)
{
@@ -516,8 +520,10 @@ namespace IRaCIS.Core.Application.Service
{
ReadModuleId = inDto.ReadModuleId,
TrialId = inDto.TrialId,
+ PageIndex=1,
+ PageSize=9999,
- })).SelectMany(x => x.ClinicalFormIdList).ToList();
+ })).CurrentPageData.SelectMany(x => x.ClinicalFormIdList).ToList();
result.ForEach(x => {
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
index ec8eceddd..fdb9f218a 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
@@ -99,7 +99,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string Answer { get; set; } = string.Empty;
}
- public class GetCRCConfirmListInDto
+ public class GetCRCConfirmListInDto:PageInput
{
public Guid TrialId { get; set; }
From 3e49e78dfec081160000bbac9dafac85bcd13e29 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Tue, 4 Jul 2023 15:48:20 +0800
Subject: [PATCH 4/4] =?UTF-8?q?S-003=20=E4=B8=B4=E5=BA=8A=E6=95=B0?=
=?UTF-8?q?=E6=8D=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ClinicalData/ClinicalAnswerService.cs | 30 ++++++++++++++-----
.../Service/Reading/Dto/ClinicalAnswerDto.cs | 7 ++++-
2 files changed, 29 insertions(+), 8 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
index 902957aa5..84d052758 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs
@@ -437,8 +437,11 @@ namespace IRaCIS.Core.Application.Service
{
var query = _readModuleRepository.Where(x => x.TrialId == inDto.TrialId)
.WhereIf(inDto.ReadModuleId != null, x => x.Id == inDto.ReadModuleId)
- .Select(x => new GetCRCConfirmListOutDto()
+ .WhereIf(inDto.TrialReadingCriterionId != null, x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId)
+ .WhereIf(inDto.SubjectId != null, x => x.SubjectId == inDto.SubjectId)
+ .Select(x => new GetCRCConfirmListOutDto()
{
+
SubjectId = x.SubjectId,
IsCRCConfirm = x.IsCRCConfirm,
LatestScanDate = x.SubjectVisit.LatestScanDate,
@@ -544,10 +547,17 @@ namespace IRaCIS.Core.Application.Service
[HttpPost]
public async Task CRCConfirmClinical(CRCConfirmClinicalInDto inDto)
{
- var dataList =await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
+
+ var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadModuleId).FirstNotNullAsync();
+
+ var dataList =(await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
{
- TrialId = inDto.TrialId
- });
+ TrialId = inDto.TrialId,
+ SubjectId= readModule.SubjectId,
+ TrialReadingCriterionId= readModule.TrialReadingCriterionId,
+ PageIndex=1,
+ PageSize=9999,
+ })).CurrentPageData;
var presentData = dataList.Where(x => x.ReadModuleId == inDto.ReadModuleId).First();
var confirmlist= dataList.Where(x =>(x.LatestScanDate < presentData.LatestScanDate && x.ReadingSetType == presentData.ReadingSetType)
@@ -591,10 +601,16 @@ namespace IRaCIS.Core.Application.Service
[HttpPost]
public async Task CRCCancelConfirmClinical(CRCCancelConfirmClinicalInDto inDto)
{
- var dataList = await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
+
+ var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadModuleId).FirstNotNullAsync();
+ var dataList = (await this.GetCRCConfirmList(new GetCRCConfirmListInDto()
{
- TrialId = inDto.TrialId
- });
+ TrialId = inDto.TrialId,
+ SubjectId = readModule.SubjectId,
+ TrialReadingCriterionId = readModule.TrialReadingCriterionId,
+ PageIndex = 1,
+ PageSize = 9999,
+ })).CurrentPageData;
var presentData = dataList.Where(x => x.ReadModuleId == inDto.ReadModuleId).First();
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
index fdb9f218a..8eab4e74f 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalAnswerDto.cs
@@ -101,6 +101,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public class GetCRCConfirmListInDto:PageInput
{
+
+ public Guid? TrialReadingCriterionId { get; set; }
+
+ public Guid? SubjectId { get; set; }
+
public Guid TrialId { get; set; }
public Guid? ReadModuleId { get; set; }
@@ -138,7 +143,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
{
public Guid TrialId { get; set; }
- public Guid SubjectId { get; set; }
+ public Guid SubjectId { get; set; }
public Guid ReadModuleId { get; set; }
}