Uat_Study
parent
abca2d730c
commit
946b5ab961
|
@ -1225,6 +1225,106 @@
|
|||
排序字段
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.SumOfDiameter">
|
||||
<summary>
|
||||
非淋巴结靶病灶长径之和 decimal
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.DiameterLessThan10">
|
||||
<summary>
|
||||
所有淋巴结靶病灶的短径小于10mm
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.SODPercentBigger30">
|
||||
<summary>
|
||||
SOD 百分比与基线期SOD相比减小≥30%
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.SODPercentLess30">
|
||||
<summary>
|
||||
SOD 百分比 与基线期SOD相比减小<30%
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.LowPercentLess20">
|
||||
<summary>
|
||||
SOD 百分比 整体访视期间最低点SOD相比增加
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.LowPercentBigger20">
|
||||
<summary>
|
||||
SOD 百分比 比整体访视期间最低点SOD增加≥20%
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.LowChangeLess5">
|
||||
<summary>
|
||||
SOD 变化值 比整体访视期间最低点SOD绝对增加值<5 mm
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.LowChangeBigger5">
|
||||
<summary>
|
||||
比整体访视期间最低点SOD绝对增加值≥5 mm
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.ExixtsNETargetLesion">
|
||||
<summary>
|
||||
被评估为NE的单个靶病灶 是否存在状态为不可评估的靶病灶
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.LastTargetLesionEvaluate">
|
||||
<summary>
|
||||
上次访视点整体肿瘤评估
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.CurrentMajoreBigger0">
|
||||
<summary>
|
||||
当前访视点非淋巴结病灶长径>0
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.CurrenShortBigger10">
|
||||
<summary>
|
||||
至少一个淋巴结靶病灶短径≥10 mm
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TargetLesionCalculateDto.IsAddFive">
|
||||
<summary>
|
||||
该淋巴结靶病灶短径绝对增加值≥5 mm
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto">
|
||||
<summary>
|
||||
阅片计算Dto
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.QuestionInfo.Answer">
|
||||
<summary>
|
||||
答案
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.QuestionInfo.QuesionName">
|
||||
<summary>
|
||||
问题名称
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.QuestionInfo.LesionType">
|
||||
<summary>
|
||||
病灶类型
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TableQuestionInfo.Answer">
|
||||
<summary>
|
||||
答案
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TableQuestionInfo.TableQuestionId">
|
||||
<summary>
|
||||
问题Id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.TableQuestionInfo.QuestionMark">
|
||||
<summary>
|
||||
问题标识
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.AddOrUpdateReadingClinicalDataDto.TrialId">
|
||||
<summary>
|
||||
项目ID
|
||||
|
@ -3610,7 +3710,7 @@
|
|||
阅片计算
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.CalculateTask(IRaCIS.Core.Application.ViewModel.CalculateTaskInDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.CalculateTask(IRaCIS.Core.Application.Service.Reading.Dto.CalculateTaskInDto)">
|
||||
<summary>
|
||||
计算任务
|
||||
</summary>
|
||||
|
@ -3631,14 +3731,14 @@
|
|||
<param name="visitTaskId"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ReadingCalculate(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ReadingCalculate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
自动计算
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODData(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODData(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取SOD
|
||||
</summary>
|
||||
|
@ -3648,28 +3748,28 @@
|
|||
</remarks>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSumOfDiameter(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSumOfDiameter(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
非淋巴结靶病灶长径之和
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODChange(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODChange(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
与基线SOD相比变化量(mm)
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODPercent(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODPercent(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
与整个访视期间最低点相比增加的百分比
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowestIncrease(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowestIncrease(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
与整个访视期间最低点相比增加的值(mm)
|
||||
</summary>
|
||||
|
@ -3679,7 +3779,7 @@
|
|||
</remarks>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowPercent(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowPercent(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
与整个访视期间最低点相比增加的百分比
|
||||
</summary>
|
||||
|
@ -3689,7 +3789,7 @@
|
|||
</remarks>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowVisit(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowVisit(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
整个访视期间最低点访视名称
|
||||
</summary>
|
||||
|
@ -3699,35 +3799,35 @@
|
|||
</remarks>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetIsLymphTarget(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetIsLymphTarget(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
是否存在非淋巴结靶病灶
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetIsAddFive(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetIsAddFive(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
是否存在淋巴结靶病灶且该病灶比上一访视短径增加5MM以上
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetNETarget(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetNETarget(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
被评估为NE的单个靶病灶
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetTumor(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetTumor(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
整体肿瘤评估
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllLowestIncrease(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto,System.Guid)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllLowestIncrease(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto,System.Guid)">
|
||||
<summary>
|
||||
修改与整个访视期间最低点相比增加的值(mm)
|
||||
</summary>
|
||||
|
@ -3735,7 +3835,7 @@
|
|||
<param name="questionId"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllLowPercent(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto,System.Guid)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllLowPercent(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto,System.Guid)">
|
||||
<summary>
|
||||
修改整个访视期间最低点相比增加的百分比
|
||||
</summary>
|
||||
|
@ -3752,41 +3852,41 @@
|
|||
<param name="answer"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetBaseLineSOD(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetBaseLineSOD(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取基线SOD
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetVisitTaskAnswerList(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetVisitTaskAnswerList(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取访视任务信息
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLastVisitTaskId(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLastVisitTaskId(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取上一个访视任务Id
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetTargetLesionEvaluate(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetTargetLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取靶病灶评估
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetNoTargetLesionEvaluate(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetNoTargetLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取非靶病灶评估
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetNewLesionEvaluate(IRaCIS.Core.Application.ViewModel.ReadingCalculateDto)">
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetNewLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||
<summary>
|
||||
获取新病灶评估
|
||||
</summary>
|
||||
|
@ -4422,41 +4522,6 @@
|
|||
标准 病灶类型
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:IRaCIS.Core.Application.ViewModel.ReadingCalculateDto">
|
||||
<summary>
|
||||
阅片计算Dto
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.QuestionInfo.Answer">
|
||||
<summary>
|
||||
答案
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.QuestionInfo.QuesionName">
|
||||
<summary>
|
||||
问题名称
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.QuestionInfo.LesionType">
|
||||
<summary>
|
||||
病灶类型
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.TableQuestionInfo.Answer">
|
||||
<summary>
|
||||
答案
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.TableQuestionInfo.TableQuestionId">
|
||||
<summary>
|
||||
问题Id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.TableQuestionInfo.QuestionMark">
|
||||
<summary>
|
||||
问题标识
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.ViewModel.ReadingMedicineSystemQuestionView.Type">
|
||||
<summary>
|
||||
类型
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
using System;
|
||||
using IRaCIS.Core.Domain.Share;
|
||||
using System.Collections.Generic;
|
||||
namespace IRaCIS.Core.Application.ViewModel
|
||||
namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||
{
|
||||
|
||||
public class CalculateTaskInDto
|
||||
|
@ -16,6 +16,75 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
public bool IsChangeOtherTask { get; set; }
|
||||
}
|
||||
|
||||
public class TargetLesionCalculateDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 非淋巴结靶病灶长径之和 decimal
|
||||
/// </summary>
|
||||
public decimal SumOfDiameter { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 所有淋巴结靶病灶的短径小于10mm
|
||||
/// </summary>
|
||||
public bool DiameterLessThan10 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SOD 百分比与基线期SOD相比减小≥30%
|
||||
/// </summary>
|
||||
public bool SODPercentBigger30 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SOD 百分比 与基线期SOD相比减小<30%
|
||||
/// </summary>
|
||||
public bool SODPercentLess30 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SOD 百分比 整体访视期间最低点SOD相比增加
|
||||
/// </summary>
|
||||
public bool LowPercentLess20 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SOD 百分比 比整体访视期间最低点SOD增加≥20%
|
||||
/// </summary>
|
||||
public bool LowPercentBigger20 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// SOD 变化值 比整体访视期间最低点SOD绝对增加值<5 mm
|
||||
/// </summary>
|
||||
public bool LowChangeLess5 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 比整体访视期间最低点SOD绝对增加值≥5 mm
|
||||
/// </summary>
|
||||
public bool LowChangeBigger5 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 被评估为NE的单个靶病灶 是否存在状态为不可评估的靶病灶
|
||||
/// </summary>
|
||||
public bool ExixtsNETargetLesion { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上次访视点整体肿瘤评估
|
||||
/// </summary>
|
||||
public string LastTargetLesionEvaluate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前访视点非淋巴结病灶长径>0
|
||||
/// </summary>
|
||||
public bool CurrentMajoreBigger0 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 至少一个淋巴结靶病灶短径≥10 mm
|
||||
/// </summary>
|
||||
public bool CurrenShortBigger10 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 该淋巴结靶病灶短径绝对增加值≥5 mm
|
||||
/// </summary>
|
||||
public bool IsAddFive { get; set; }
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 阅片计算Dto
|
||||
/// </summary>
|
||||
|
|
|
@ -889,6 +889,13 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
|||
|
||||
}
|
||||
|
||||
public class VerifyVisitTaskDto
|
||||
{
|
||||
public QuestionType QuestionType { get; set; }
|
||||
|
||||
public Func<ReadingCalculateDto, Task<string>> Fun { get; set; }
|
||||
}
|
||||
|
||||
public class VerifyVisitTaskQuestionsOutDto
|
||||
{
|
||||
public bool IsVerified { get; set; }
|
||||
|
|
|
@ -90,41 +90,26 @@ namespace IRaCIS.Core.Application.Service
|
|||
ErrorMessage=string.Empty,
|
||||
};
|
||||
|
||||
foreach (var item in data.QuestionInfo.Where(x => x.QuestionType != null))
|
||||
List<VerifyVisitTaskDto> types = new List<VerifyVisitTaskDto>() {
|
||||
new VerifyVisitTaskDto (){ QuestionType=QuestionType.TargetLesion,Fun=this.GetTargetLesionEvaluate },
|
||||
new VerifyVisitTaskDto (){ QuestionType=QuestionType.NoTargetLesion,Fun=this.GetNoTargetLesionEvaluate },
|
||||
new VerifyVisitTaskDto (){ QuestionType=QuestionType.NewLesions,Fun=this.GetNewLesionEvaluate }
|
||||
};
|
||||
|
||||
foreach (var type in types)
|
||||
{
|
||||
switch (item.QuestionType)
|
||||
{
|
||||
case QuestionType.TargetLesion:
|
||||
var targetLesionAnswer = await GetTargetLesionEvaluate(data);
|
||||
if (item.Answer != targetLesionAnswer)
|
||||
{
|
||||
result.IsVerified = false;
|
||||
var msg = $"问题【{item.QuesionName}】的答案为【{item.Answer}】但是计算答案为【{targetLesionAnswer}】";
|
||||
result.ErrorMessage += result.ErrorMessage == string.Empty ? msg : "," + msg;
|
||||
}
|
||||
break;
|
||||
|
||||
case QuestionType.NoTargetLesion:
|
||||
var noTargetLesionAnswer = await GetNoTargetLesionEvaluate(data);
|
||||
if (item.Answer != noTargetLesionAnswer)
|
||||
{
|
||||
result.IsVerified = false;
|
||||
var msg = $"问题【{item.QuesionName}】的答案为【{item.Answer}】但是计算答案为【{noTargetLesionAnswer}】";
|
||||
result.ErrorMessage += result.ErrorMessage == string.Empty ? msg : "," + msg;
|
||||
}
|
||||
break;
|
||||
case QuestionType.NewLesions:
|
||||
var newTargetLesionAnswer = await GetNewLesionEvaluate(data);
|
||||
if (item.Answer != newTargetLesionAnswer)
|
||||
{
|
||||
result.IsVerified = false;
|
||||
var msg = $"问题【{item.QuesionName}】的答案为【{item.Answer}】但是计算答案为【{newTargetLesionAnswer}】";
|
||||
result.ErrorMessage += result.ErrorMessage == string.Empty ? msg : "," + msg;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
var question=data.QuestionInfo.Where(x => x.QuestionType == type.QuestionType).FirstOrDefault();
|
||||
if (question != null)
|
||||
{
|
||||
var calculateAnswer = await type.Fun(data);
|
||||
if (question.Answer != calculateAnswer)
|
||||
{
|
||||
result.IsVerified = false;
|
||||
var msg = $"问题【{question.QuesionName}】的答案为【{question.Answer}】但是计算答案为【{calculateAnswer}】";
|
||||
result.ErrorMessage += result.ErrorMessage == string.Empty ? msg : "," + msg;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -798,18 +783,18 @@ namespace IRaCIS.Core.Application.Service
|
|||
public async Task<string> GetTargetLesionEvaluate(ReadingCalculateDto inDto)
|
||||
{
|
||||
var tableQuestion = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.TargetLesion).SelectMany(x => x.TableRowInfoList).ToList();
|
||||
dynamic resultData = new
|
||||
TargetLesionCalculateDto resultData = new TargetLesionCalculateDto()
|
||||
{
|
||||
//非淋巴结靶病灶长径之和
|
||||
//非淋巴结靶病灶长径之和 decimal
|
||||
SumOfDiameter = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.SumOfDiameter).Sum(x => x.Answer.IsNullOrEmptyReturn0()),
|
||||
|
||||
//所有淋巴结靶病灶的短径小于10mm
|
||||
//所有淋巴结靶病灶的短径小于10mm bool
|
||||
DiameterLessThan10 = true,
|
||||
|
||||
// SOD 百分比与基线期SOD相比减小≥30%
|
||||
// SOD 百分比与基线期SOD相比减小≥30% bool
|
||||
SODPercentBigger30 = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.SODPercent).Sum(x => x.Answer.IsNullOrEmptyReturn0()) >= (decimal)0.3,
|
||||
|
||||
// SOD 百分比 与基线期SOD相比减小<30%
|
||||
// SOD 百分比 与基线期SOD相比减小<30% bool
|
||||
SODPercentLess30 = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.SODPercent).Sum(x => x.Answer.IsNullOrEmptyReturn0()) < (decimal)0.3,
|
||||
|
||||
// SOD 百分比 整体访视期间最低点SOD相比增加<20%
|
||||
|
@ -872,7 +857,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
|
||||
string result = string.Empty;
|
||||
if (resultData.calculateData == 0 && resultData.DiameterLessThan10 && !resultData.ExixtsNETargetLesion)
|
||||
if (resultData.SumOfDiameter == 0 && resultData.DiameterLessThan10 && !resultData.ExixtsNETargetLesion)
|
||||
{
|
||||
result = "CR";
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue