Uat_Study
he 2023-05-25 10:59:06 +08:00
parent 0e6055881a
commit d34f047418
2 changed files with 36 additions and 7 deletions

View File

@ -1295,6 +1295,8 @@ namespace IRaCIS.Application.Services
rowAnswer.MergeRowId = null; rowAnswer.MergeRowId = null;
rowAnswer.FristAddTaskId = inDto.VisitTaskId; rowAnswer.FristAddTaskId = inDto.VisitTaskId;
rowAnswer.SplitOrMergeType = SplitOrMergeType.Split; rowAnswer.SplitOrMergeType = SplitOrMergeType.Split;
rowAnswer.FromMark = string.Empty;
rowAnswer.ReportMark = string.Empty;
rowAnswer.SplitRowId = rowAnswer.Id; rowAnswer.SplitRowId = rowAnswer.Id;
rowAnswer.Id = NewId.NextGuid(); rowAnswer.Id = NewId.NextGuid();
rowAnswer.InstanceId = null; rowAnswer.InstanceId = null;

View File

@ -2536,11 +2536,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
/// ///
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// if上一访视评估为iUPD或iCPD&&靶病灶评估、非靶病灶评估或新病灶评估任一项为iCPD /// if上一访视整体肿瘤评估评估为iCPD && 靶病灶评估、非靶病灶评估或新病灶评估任一项为iCPD
/// { /// {
/// 疗效为 iCPD /// 疗效为 iCPD
/// } /// }
/// else if (上一访视评估为iUPD或iCPD&&靶病灶评估、非靶病灶评估或新病灶评估任一项从前一访视非iUPD结果评估为当前访视iUPD) /// else if (上一访视整体肿瘤评估评估为iUPD && 靶病灶评估、非靶病灶评估或新病灶评估任一项从前一访视iUPD结果评估为当前访视iCPD)
/// {
/// 疗效为 iCPD
/// }
/// else if (上一访视整体肿瘤评估评估为iUPD && 靶病灶评估、非靶病灶评估或新病灶评估任一项从前一访视非iUPD结果评估为当前访视iUPD)
/// { /// {
/// 疗效为 iCPD /// 疗效为 iCPD
/// } /// }
@ -2606,8 +2610,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
LastTaskLesioniUPDOriCPD = lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.Tumor && (x.Answer.EqEnum(OverallAssessment.iCPD) || x.Answer.EqEnum(OverallAssessment.iUPD))), LastTaskLesioniUPDOriCPD = lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.Tumor && (x.Answer.EqEnum(OverallAssessment.iCPD) || x.Answer.EqEnum(OverallAssessment.iUPD))),
}; };
// if上一访视评估为iUPD或iCPD&&靶病灶评估、非靶病灶评估或新病灶评估任一项为iCPD // if上一访视整体肿瘤评估评估为iCPD && 靶病灶评估、非靶病灶评估或新病灶评估任一项为iCPD
if (data.LastTaskLesioniUPDOriCPD if (lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.Tumor && x.Answer.EqEnum(OverallAssessment.iCPD))
&& (inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.TargetLesion && x.Answer.EqEnum(TargetAssessment.iCPD)) && (inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.TargetLesion && x.Answer.EqEnum(TargetAssessment.iCPD))
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NoTargetLesion && x.Answer.EqEnum(NoTargetAssessment.iCPD)) || inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NoTargetLesion && x.Answer.EqEnum(NoTargetAssessment.iCPD))
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewLesionEvaluation && x.Answer.EqEnum(NewLesionAssessment.iCPD)))) || inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewLesionEvaluation && x.Answer.EqEnum(NewLesionAssessment.iCPD))))
@ -2616,8 +2620,31 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
result = OverallAssessment.iCPD; result = OverallAssessment.iCPD;
} }
// else if (上一访视评估为iUPD或iCPD&&靶病灶评估、非靶病灶评估或新病灶评估任一项从前一访视非iUPD结果评估为当前访视iUPD) // else if (上一访视整体肿瘤评估评估为iUPD&&靶病灶评估、非靶病灶评估或新病灶评估任一项从前一访视iUPD结果评估为当前访视iCPD)
else if (data.LastTaskLesioniUPDOriCPD else if (lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.Tumor && x.Answer.EqEnum(OverallAssessment.iUPD))
&& (
(
lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.TargetLesion &&!x.Answer.EqEnum(TargetAssessment.iUPD))
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.TargetLesion && x.Answer.EqEnum(TargetAssessment.iCPD))
)
||
(
lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NoTargetLesion && x.Answer.EqEnum(NoTargetAssessment.iUPD))
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NoTargetLesion && x.Answer.EqEnum(NoTargetAssessment.iCPD))
)
||
(
lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewLesionEvaluation && x.Answer.EqEnum(NewLesionAssessment.iUPD)))
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewLesionEvaluation && x.Answer.EqEnum(NewLesionAssessment.iCPD))
)
)
{
// 疗效为 iCPD
result = OverallAssessment.iCPD;
}
// else if (上一访视整体肿瘤评估评估为iUPD&&靶病灶评估、非靶病灶评估或新病灶评估任一项从前一访视非iUPD结果评估为当前访视iUPD)
else if (lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.Tumor && x.Answer.EqEnum(OverallAssessment.iUPD))
&& ( && (
( (
lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.TargetLesion && !x.Answer.EqEnum(TargetAssessment.iUPD)) lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.TargetLesion && !x.Answer.EqEnum(TargetAssessment.iUPD))