From 5cda083a404dc7f956343a2a27998fcd876f1062 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Mon, 1 Aug 2022 12:06:00 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=80=E7=89=88?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Service/Allocation/VisitTaskService.cs | 2 +-
.../Reading/ReadingImageTaskService.cs | 77 ++++++++++++++-----
2 files changed, 57 insertions(+), 22 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
index 899e0ee79..bd42c7e97 100644
--- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
@@ -1085,7 +1085,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
{
var visitGroupQuery = _visitTaskRepository.Where(x => x.TrialId == trialId && x.DoctorUserId == _userInfo.Id)
.Where(x => !x.Subject.IsDeleted)
- .Where(t => (t.ReadingTaskState != ReadingTaskState.HaveSigned && t.TaskState == TaskState.Effect) || t.ReReadingApplyState == ReReadingApplyState.HaveApplyed)
+ .Where(t => (t.ReadingTaskState != ReadingTaskState.HaveSigned || t.ReReadingApplyState == ReReadingApplyState.HaveApplyed) && t.TaskState == TaskState.Effect)
.GroupBy(x => new { x.SubjectId, x.Subject.Code, x.BlindSubjectCode });
var visitTaskQuery = visitGroupQuery.Select(x => new IRUnReadSubjectView()
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs
index bea8e4732..d177cb204 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTaskService.cs
@@ -129,7 +129,7 @@ namespace IRaCIS.Application.Services
///
///
[HttpPost]
- public async Task GetGlobalReadingInfo(GetGlobalReadingInfoInDto inDto)
+ public async Task<(GetGlobalReadingInfoOutDto,object)> GetGlobalReadingInfo(GetGlobalReadingInfoInDto inDto)
{
var taskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync();
if (taskInfo.ReadingCategory != ReadingCategory.Global)
@@ -215,7 +215,28 @@ namespace IRaCIS.Application.Services
});
- return result;
+
+ var subjectCode = await _subjectRepository.Where(x => x.Id == taskInfo.SubjectId).Select(x => x.Code).FirstOrDefaultAsync();
+
+
+ var trialInfo = await _trialRepository.Where(x => x.Id == taskInfo.TrialId).Select(x => new
+ {
+ x.IsReadingShowPreviousResults,
+ x.IsReadingShowSubjectInfo,
+ x.ClinicalInformationTransmissionEnum,
+ }).FirstOrDefaultAsync();
+
+ return (result, new
+ {
+ VisitTaskId = taskInfo.Id,
+ SubjectId = taskInfo.SubjectId,
+ SubjectCode = taskInfo.BlindSubjectCode.IsNullOrEmpty() ? subjectCode : taskInfo.BlindSubjectCode,
+ ReadingCategory = taskInfo.ReadingCategory,
+ TaskBlindName = taskInfo.TaskBlindName,
+ IsReadingShowPreviousResults = trialInfo.IsReadingShowPreviousResults,
+ IsReadingShowSubjectInfo = trialInfo.IsReadingShowSubjectInfo,
+
+ });
}
#endregion
@@ -692,15 +713,9 @@ namespace IRaCIS.Application.Services
///
///
[HttpPost]
- public async Task GetJudgeReadingInfo(GetJudgeReadingInfo inDto)
+ public async Task<(GetJudgeReadingInfoOutDto,object)> GetJudgeReadingInfo(GetJudgeReadingInfo inDto)
{
- var visitTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Select(x => new
- {
- x.ReadingTaskState,
- x.JudgeResultTaskId,
- x.JudgeResultRemark,
- x.JudgeResultImagePath,
- }).FirstOrDefaultAsync();
+ var visitTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstOrDefaultAsync();
GetJudgeReadingInfoOutDto judgeInfo = new GetJudgeReadingInfoOutDto()
{
ReadingTaskState = visitTask.ReadingTaskState,
@@ -758,17 +773,17 @@ namespace IRaCIS.Application.Services
break;
case ReadingCategory.Global:
- var taskOneInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
+ var taskOneInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
{
UsingOriginalData = true,
VisitTaskId = taskList[0].Id
- });
+ })).Item1;
- var taskTwoInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
+ var taskTwoInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
{
UsingOriginalData = true,
VisitTaskId = taskList[1].Id
- });
+ })).Item1;
foreach (var item in taskOneInfo.TaskList)
@@ -855,8 +870,28 @@ namespace IRaCIS.Application.Services
break;
}
-
- return judgeInfo;
+ var subjectCode = await _subjectRepository.Where(x => x.Id == visitTask.SubjectId).Select(x => x.Code).FirstOrDefaultAsync();
+
+
+ var trialInfo = await _trialRepository.Where(x => x.Id == visitTask.TrialId).Select(x => new
+ {
+ x.IsReadingShowPreviousResults,
+ x.IsReadingShowSubjectInfo,
+ x.ClinicalInformationTransmissionEnum,
+ }).FirstOrDefaultAsync();
+
+ return (judgeInfo, new
+ {
+ VisitTaskId = visitTask.Id,
+ SubjectId = visitTask.SubjectId,
+ SubjectCode = visitTask.BlindSubjectCode.IsNullOrEmpty() ? subjectCode : visitTask.BlindSubjectCode,
+ ReadingCategory = visitTask.ReadingCategory,
+ TaskBlindName = visitTask.TaskBlindName,
+ IsReadingShowPreviousResults = trialInfo.IsReadingShowPreviousResults,
+ IsReadingShowSubjectInfo = trialInfo.IsReadingShowSubjectInfo,
+
+ });
+
}
#endregion
@@ -1267,17 +1302,17 @@ namespace IRaCIS.Application.Services
noteEqual = ComputeJudgeResult(groupTasks);
break;
case ReadingCategory.Global:
- var taskOneInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
+ var taskOneInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
{
UsingOriginalData = true,
VisitTaskId = visitTaskids[0]
- });
+ })).Item1;
- var taskTwoInfo = await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
+ var taskTwoInfo = (await this.GetGlobalReadingInfo(new GetGlobalReadingInfoInDto()
{
UsingOriginalData = true,
VisitTaskId = visitTaskids[1]
- });
+ })).Item1;
// 判断两个任务是否
if (taskOneInfo.TaskList.Count() != taskTwoInfo.TaskList.Count())
@@ -1330,7 +1365,7 @@ namespace IRaCIS.Application.Services
});
// 找到最后一个任务ID
- var lastTask = taskOneInfo.TaskList.Last();
+ var lastTask = taskOneInfo.Item1.TaskList.Last();
if (lastTask == null)
{