From 5359e61c8173c3eaa1f0f4744bc547dfb483c4c2 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Mon, 21 Nov 2022 16:09:18 +0800
Subject: [PATCH] =?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/Dto/ReadingImageTaskViewModel.cs | 5 ++++
.../ReadingImageTaskService.cs | 28 ++++++++++++++++++-
IRaCIS.Core.Domain/Allocation/VisitTask.cs | 5 ++++
3 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
index 8a2bc6e23..758201856 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs
@@ -253,6 +253,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid RowId { get; set; }
}
+ public class ReadClinicalDataInDto
+ {
+ [NotDefault]
+ public Guid VisitTaskId { get; set; }
+ }
public class GetReadingToolInDto
{
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index b51b986e9..dcdb2a2d3 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -114,6 +114,20 @@ namespace IRaCIS.Application.Services
this._trialEmailNoticeConfigService = trialEmailNoticeConfigService;
}
+ ///
+ /// 阅读临床数据
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task ReadClinicalData(ReadClinicalDataInDto inDto)
+ {
+ await _visitTaskRepository.UpdatePartialFromQueryAsync(inDto.VisitTaskId, x => new VisitTask
+ {
+ IsReadClinicalData = true
+ });
+ await _visitTaskRepository.SaveChangesAsync();
+ }
///
/// 添加默认值到任务里面
@@ -1097,7 +1111,19 @@ namespace IRaCIS.Application.Services
await _readingCalculateService.VerifyVisitTaskQuestions(inDto);
- //await _readingCalculateService.VerifyVisitTaskQuestions(inDto);
+ if ((await _readingClinicalDataService.GetClinicalDataList(new GetReadingOrTaskClinicalDataListInDto()
+ {
+
+ SubjectId = taskInfo.SubjectId,
+ TrialId = taskInfo.TrialId,
+ VisitTaskId = taskInfo.Id,
+ })).Count() > 0 && !taskInfo.IsReadClinicalData)
+ {
+ throw new BusinessValidationFailedException($"临床数据未阅读!");
+ }
+
+
+
return ResponseOutput.Ok(true);
}
diff --git a/IRaCIS.Core.Domain/Allocation/VisitTask.cs b/IRaCIS.Core.Domain/Allocation/VisitTask.cs
index 133399d50..f95525d6e 100644
--- a/IRaCIS.Core.Domain/Allocation/VisitTask.cs
+++ b/IRaCIS.Core.Domain/Allocation/VisitTask.cs
@@ -169,6 +169,11 @@ namespace IRaCIS.Core.Domain.Models
///
public bool? IsGlobalHaveUpdate { get; set; }
+ ///
+ /// 是否阅读临床数据
+ ///
+ public bool IsReadClinicalData { get; set; } = false;
+
#region 裁判任务特有