Uat_Study
he 2023-04-04 16:24:31 +08:00
parent 473851c9fd
commit 76d913bbd3
5 changed files with 144 additions and 9 deletions

View File

@ -7177,6 +7177,86 @@
检查日期
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTTargetLesionDto.ExistsTargetLesion">
<summary>
基线未选择任何靶病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTTargetLesionDto.LastTaskIsICPD">
<summary>
上一访视评估为iCPD
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTTargetLesionDto.MeetRECISTPD">
<summary>
满足RECISTPD
</summary>
</member>
<member name="T:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto">
<summary>
新靶病灶评估Dto
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto.ExistsNewTargetLesion">
<summary>
存在新靶病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto.AllVanish">
<summary>
所有状态为消失
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto.LastTaskIsiUPD">
<summary>
上一访视新靶病灶评估为“iUPD”
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto.ISODAdd5mm">
<summary>
SOD增加5mm以上
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto.HaveExixtsState">
<summary>
有"存在"状态的新靶病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewTargetLesionDto.ExixtsUnevaluableState">
<summary>
至少有一个新靶病无法评估
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewNoTargetLesionDto.ExistsNewNoTargetLesion">
<summary>
存在新非靶病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewNoTargetLesionDto.AllVanish">
<summary>
所有状态为消失
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewNoTargetLesionDto.LastTaskIsiUPD">
<summary>
上一访视新靶病灶评估为“iUPD”
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewNoTargetLesionDto.ExixtsEnlargementState">
<summary>
任一新非靶病灶状态为“增大”
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewNoTargetLesionDto.HaveExixtsState">
<summary>
有"存在"状态的病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.ViewModel.IRECISTNewNoTargetLesionDto.ExixtsUnevaluableState">
<summary>
至少有一个病灶无法评估
</summary>
</member>
<member name="T:IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationView">
<summary> SubjectCriteriaEvaluationView 列表视图模型 </summary>
</member>

View File

@ -14,20 +14,21 @@
"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.",
"ReadingImage_IsLymphNotbigger": "The short diameter of this nodal non-target lesion on the current visit is smaller than the value on the previous visit, and the state cannot be set to \"Unequivocal progression\".",
"ReadingImage_NotLymphNotbigger": "The long diameter of this non-nodal non-target lesion on the current visit is smaller than the value on the previous visit, and the state cannot be set to \"Unequivocal progression\".",
"ReadingImage_IsLymphNotbigger": "The short diameter of this nodal non-target lesion on the current visit is smaller than the value on the previous visit, and the state cannot be set to 'Unequivocal progression'.",
"ReadingImage_NotLymphNotbigger": "The long diameter of this non-nodal non-target lesion on the current visit is smaller than the value on the previous visit, and the state cannot be set to 'Unequivocal progression'.",
"ReadingImage_Twice": "System call error. Questions & answers submitted are duplicated.",
"ReadingImage_MaxQuestion": "According to the imaging charter, the number of the current type of lesion cannot exceed {0}.",
"ReadingImage_Maxlesion": "According to the imaging charter, the number of target lesions in the same organ cannot exceed {0}. Please confirm.",
"ReadingImage_Maximum": "\"{0}\" can only be repeated {1} times, and it has been repeated {2} times so far.",
"ReadingImage_Maximum": "{0} can only be repeated {1} times, and it has been repeated {2} times so far.",
"ReadingImage_PCWGMaximum": "According to the imaging charter, the number of baseline lesions at the same location should enter only {0} time. Please confirm.",
"ReadingImage_RequiredQuestion": "Before submission, please fill in \"{0}\".",
"ReadingImage_NotNewFocus": "There should be no new lesions in the converted task",
"ReadingImage_RequiredQuestion": "Before submission, please fill in {0}.",
"ReadingImage_ClinicalRead": "The clinical data has not been read. Please confirm!",
"ReadingImage_IDMust": "System call failed. When there is no Read ID, the standard ID must be passed.",
"ReadingImage_TaskFinish": "Please note that all reads of the current subject have been completed.",
"ReadingImage_NeedRest": "You have been continuously reading for {0} hours. Please take a break of {1} minutes before resumption.",
//ReadingJudgeTaskService
"ReadingJudge_SouceIdNull": "'System call failed. The Source ID of the global review which is being adjudicated currently is 'null'. '",
"ReadingJudge_SouceIdNull": "System call failed. The Source ID of the global review which is being adjudicated currently is 'null'. ",
//ReadingOncologyTaskService
"ReadingOncology_TaskError": "System call error. The current read is not an oncology read.",
"ReadingOncology_Abnormal": "System call exception. The result of adjudication is null",
@ -50,6 +51,9 @@
"Repository_UpdateError": "Updated data does not exist in the database. ",
"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.",

View File

@ -3,6 +3,8 @@
"RequiredAttribute": "{0} 字段是必须的",
// ------------------------------------------------------------Reading--------------------------------------------------------------------
//ReadingGlobalTaskService
"ReadingGlobal_NotGlobal": "系统调用错误,当前任务不是全局阅片任务。",
//ReadingImageTaskService
"ReadingImage_NotVisit": "系统调用错误,当前任务不是访视任务。",
"ReadingImage_CantSplit": "当前任务是基线任务,不能执行分裂病灶的操作。",
@ -11,14 +13,15 @@
"ReadingImage_NotaTask": "合并的病灶并非同一个访视任务",
"ReadingImage_DeleteError": "当前病灶分裂出其他病灶或者其他病灶合并到了当前病灶,删除失败。",
"ReadingImage_Idnotcorrespond": "病灶标记添加失败影像的Instance ID和Series ID不对应。",
"ReadingImage_IsLymphNotbigger": "当前访视该淋巴结病灶的短径小于上一访视的值,不能设置为显著增大。",
"ReadingImage_NotLymphNotbigger": "当前访视该非淋巴结病灶的长径小于上一访视的值,不能设置为显著增大。",
"ReadingImage_IsLymphNotbigger": "当前访视该淋巴结非靶病灶的短径小于上一访视的值,不能设置为显著增大。",
"ReadingImage_NotLymphNotbigger": "当前访视该非淋巴结非靶病灶的长径小于上一访视的值,不能设置为显著增大。",
"ReadingImage_Twice": "系统调用错误,提交的问题及答案重复。",
"ReadingImage_MaxQuestion": "按照《独立影像评估章程》的相关规则,当前病灶类型的病灶数量不超过{0}个。",
"ReadingImage_Maxlesion": "按照《独立影像评估章程》的相关规则,同一器官的靶病灶数量不超过{0}个,请确认",
"ReadingImage_Maximum": "\"{0}\"的重复次数限制为{1},目前已重复{2}次。",
"ReadingImage_Maximum": "{0}的重复次数限制为{1},目前已重复{2}次。",
"ReadingImage_PCWGMaximum": "按照《独立影像评估章程》的相关规则,同一部位的基线病灶只需录入{0}次,请确认。",
"ReadingImage_RequiredQuestion": "提交前,请完成\"{0}\"",
"ReadingImage_NotNewFocus": "转换后的任务不应该存在新病灶",
"ReadingImage_RequiredQuestion": "提交前,请完成{0}",
"ReadingImage_ClinicalRead": "临床数据未阅读,请确认!",
"ReadingImage_IDMust": "系统调用失败当没有任务ID的时候标准ID必传。",
"ReadingImage_TaskFinish": "当前受试者所有阅片任务已完成,请知悉。",
@ -47,6 +50,8 @@
"Repository_UpdateError": "修改的数据在数据库不存在。",
"Repository_DeleteError": "删除的数据在数据库不存在。",
// ------------------------------------------------------------Allocation--------------------------------------------------------------------
//TaskAllocationRuleService
"TaskAllocation_DoctorIdNotFound": "错误未在入组表中找到该医生的账号Id",

View File

@ -2047,6 +2047,7 @@ namespace IRaCIS.Application.Services
}
/// <summary>
/// 验证访视提交
/// </summary>
@ -2057,6 +2058,16 @@ namespace IRaCIS.Application.Services
{
await VerifyTaskIsSign(inDto.VisitTaskId);
await VerifyDefaultQuestionBeAnswer(inDto);
// 转化后的任务不应该有新病灶
var isConvertedTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Select(x=>x.IsConvertedTask).FirstNotNullAsync();
if (await _readingTableAnswerRowInfoRepository.AnyAsync(x => x.ReadingQuestionTrial.LesionType == LesionType.NewLesions && x.VisitTaskId == inDto.VisitTaskId))
{
throw new BusinessValidationFailedException(_localizer["ReadingImage_NotNewFocus"]);
}
var taskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync();
var isBaseline = await _subjectVisitRepository.Where(x => x.Id == taskInfo.SourceSubjectVisitId).Select(x => x.IsBaseLine).FirstOrDefaultAsync();
var readingQuestionList = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrialId == taskInfo.TrialReadingCriterionId

View File

@ -1574,6 +1574,41 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
#endregion
public async Task<string> GetNewTargetLesionEvaluate(ReadingCalculateDto inDto)
{
var tableQuestion = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.NewTargetLesion).SelectMany(x => x.TableRowInfoList).ToList();
if (inDto.IsBaseLine)
{
return TargetAssessment.NA.GetEnumInt();
}
IRECISTNewTargetLesionDto resultData = new IRECISTNewTargetLesionDto()
{
// 是否存在新靶病灶
ExistsNewTargetLesion = tableQuestion.Count() > 0,
// 所有状态为消失
AllVanish = false,
// 上一访视新靶病灶评估为“iUPD”
LastTaskIsiUPD = true,
//SOD增加5mm以上
ISODAdd5mm = true,
//有"存在"状态的新靶病灶
HaveExixtsState = true,
// 至少有一个新靶病无法评估
ExixtsUnevaluableState = true,
};
return string.Empty;
}
#region 获取靶病灶评估
/// <summary>
/// 获取靶病灶评估