diff --git a/IRaCIS.Core.Application/Resources/en-US.json b/IRaCIS.Core.Application/Resources/en-US.json index 4cb655ec8..70d24362f 100644 --- a/IRaCIS.Core.Application/Resources/en-US.json +++ b/IRaCIS.Core.Application/Resources/en-US.json @@ -11,6 +11,7 @@ "ReadingImage_CantSplit": "The current read is a baseline read, and lesion split is not allowed.", "ReadingImage_BeSigned": "The current read has already been signed off. Please do not submit it again.", "ReadingImage_Beinvalid": "The current read has already been invalidated, and reading is not allowed anymore.", + "ReadingImage_PresenceReview": "The current subject has a review request that has not been processed and is not allowed to operate", "ReadingImage_NotaTask": "The coalesced lesions are not from the same timepoint. ", "ReadingImage_DeleteError": "Other lesions have split from or coalesced into the current lesion. Deletion failed.", "ReadingImage_Idnotcorrespond": "Failed to add the lesion mark. The Instance ID and Series ID of the image do not match.", @@ -52,8 +53,6 @@ "Repository_DeleteError": "Deleted data does not exist in the database.", - - // ------------------------------------------------------------Allocation-------------------------------------------------------------------- //TaskAllocationRuleService "TaskAllocation_DoctorIdNotFound": "Error, the doctor is account Id was not found in the enrollment table.", diff --git a/IRaCIS.Core.Application/Resources/zh-CN.json b/IRaCIS.Core.Application/Resources/zh-CN.json index c413f4073..c148776bb 100644 --- a/IRaCIS.Core.Application/Resources/zh-CN.json +++ b/IRaCIS.Core.Application/Resources/zh-CN.json @@ -10,6 +10,7 @@ "ReadingImage_CantSplit": "当前任务是基线任务,不能执行分裂病灶的操作。", "ReadingImage_BeSigned": "当前任务已经签名,请勿重复提交。", "ReadingImage_Beinvalid": "当前任务已失效,不能执行阅片。", + "ReadingImage_PresenceReview": "当前受试者存在重阅申请还未处理,不允许操作", "ReadingImage_NotaTask": "合并的病灶并非同一个访视任务", "ReadingImage_DeleteError": "当前病灶分裂出其他病灶或者其他病灶合并到了当前病灶,删除失败。", "ReadingImage_Idnotcorrespond": "病灶标记添加失败,影像的Instance ID和Series ID不对应。", @@ -51,7 +52,6 @@ "Repository_DeleteError": "删除的数据在数据库不存在。", - // ------------------------------------------------------------Allocation-------------------------------------------------------------------- //TaskAllocationRuleService "TaskAllocation_DoctorIdNotFound": "错误,未在入组表中找到该医生的账号Id", diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index bac7a4f55..0104ae196 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -569,6 +569,8 @@ namespace IRaCIS.Application.Services /// private async Task VerifyTaskIsSign(Guid visitTaskid) { + var taskInfo = await _visitTaskRepository.Where(x => x.Id == visitTaskid).FirstNotNullAsync(); + if (await _visitTaskRepository.AnyAsync(x => x.Id == visitTaskid && x.ReadingTaskState == ReadingTaskState.HaveSigned)) { throw new BusinessValidationFailedException(_localizer["ReadingImage_BeSigned"]); @@ -579,6 +581,17 @@ namespace IRaCIS.Application.Services { throw new BusinessValidationFailedException(_localizer["ReadingImage_Beinvalid"]); } + + if (await _visitTaskRepository.AnyAsync(x => x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId + &&x.IsAnalysisCreate&&taskInfo.IsAnalysisCreate + &&x.SubjectId== taskInfo.SubjectId&&x.TaskState==TaskState.Effect&& + ((x.ReReadingApplyState==ReReadingApplyState.DocotorHaveApplyed && x.DoctorUserId == taskInfo.DoctorUserId)|| x.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed) + + )) + { + throw new BusinessValidationFailedException(_localizer["ReadingImage_PresenceReview"]); + } + } diff --git a/后端提示语.xlsx b/后端提示语.xlsx index ccb26eee1..12a5f5a5c 100644 Binary files a/后端提示语.xlsx and b/后端提示语.xlsx differ