From b0f189c3385f2238fe59f14b27df466a8ed1c2ed Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Thu, 23 Mar 2023 13:23:43 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../IRaCIS.Core.Application.xml | 2 +-
.../Interface/IVisitTaskHelpeService.cs | 3 ++
.../ReadingImageTaskService.cs | 44 +++++++++++++++----
3 files changed, 40 insertions(+), 9 deletions(-)
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 45f77f15b..13f4793d0 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -10482,7 +10482,7 @@
-
+
获取子元素
diff --git a/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskHelpeService.cs b/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskHelpeService.cs
index e527c8301..f8380bb8f 100644
--- a/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskHelpeService.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskHelpeService.cs
@@ -15,6 +15,9 @@ namespace IRaCIS.Core.Application.Service
Task AddTaskAsync(GenerateTaskCommand generateTaskCommand);
+
+ Task AddConvertedTask(Guid taskId);
+
Task BaseCritrionGenerateVisitTask(Guid trialId, Guid confirmedTrialReadingCriterionId,bool? isManualSelectVisit=null,List? subjectVisitIdList=null);
}
}
\ No newline at end of file
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index a300b9826..15173b0f2 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -2347,22 +2347,50 @@ namespace IRaCIS.Application.Services
await _visitTaskRepository.SaveChangesAsync();
+ bool isConverted = false;
+
+ var taskinfo = await _visitTaskRepository.Where(x => x.Id == visitTaskId).Include(x=>x.TrialReadingCriterion).FirstNotNullAsync();
+
+ switch (taskinfo.TrialReadingCriterion.CriterionType)
+ {
+ case CriterionType.IRECIST1Point1:
+ if (!taskinfo.IsConvertedTask &&
+ (await _readingTaskQuestionAnswerRepository.AnyAsync(x => x.VisitTaskId == visitTaskId
+ && x.ReadingQuestionTrial.QuestionType == QuestionType.Tumor && x.Answer.EqEnum(OverallAssessment.PD)))
+ )
+ {
+
+ isConverted = true;
+ }
+ break;
+ }
+
// 创建任务关联关系
await this.CreateTaskRelated(visitTaskId);
- // 触裁判任务
- await this.TriggerJudgeQuestion(visitTaskId);
- // 添加阅片期任务
- await this.AddReadingTask(visitTaskId);
+ // 是否触发转变任务
+ if (isConverted)
+ {
+ await _visitTaskHelpeService.AddConvertedTask(visitTaskId);
+ }
+ else
+ {
+ // 触裁判任务
+ await this.TriggerJudgeQuestion(visitTaskId);
+ // 添加阅片期任务
+ await this.AddReadingTask(visitTaskId);
- // 完成阅片修改状态
- //await this.FinishReadUpdateState(visitTaskId);
+ // 完成阅片修改状态
+ //await this.FinishReadUpdateState(visitTaskId);
- await _visitTaskRepository.SaveChangesAsync();
+ await _visitTaskRepository.SaveChangesAsync();
- await _trialEmailNoticeConfigService.BaseBusinessScenarioSendEmailAsync(visitTaskId);
+ await _trialEmailNoticeConfigService.BaseBusinessScenarioSendEmailAsync(visitTaskId);
+ }
+
+
}
From eddc091c0f5b6c78de6c451b8e33a12ddb356a7f Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Thu, 23 Mar 2023 14:15:34 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Reading/ReadingImageTask/ReadingImageTaskService.cs | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index 15173b0f2..1489399ec 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -2354,9 +2354,12 @@ namespace IRaCIS.Application.Services
switch (taskinfo.TrialReadingCriterion.CriterionType)
{
case CriterionType.IRECIST1Point1:
+
+
+
if (!taskinfo.IsConvertedTask &&
(await _readingTaskQuestionAnswerRepository.AnyAsync(x => x.VisitTaskId == visitTaskId
- && x.ReadingQuestionTrial.QuestionType == QuestionType.Tumor && x.Answer.EqEnum(OverallAssessment.PD)))
+ && x.ReadingQuestionTrial.QuestionType == QuestionType.Tumor && x.Answer==(((int)OverallAssessment.PD)).ToString()))
)
{