修改一版
parent
79dd787ed9
commit
2a005f538f
|
@ -107,8 +107,4 @@
|
||||||
<ProjectReference Include="..\IRaCIS.Core.Infra.EFCore\IRaCIS.Core.Infra.EFCore.csproj" />
|
<ProjectReference Include="..\IRaCIS.Core.Infra.EFCore\IRaCIS.Core.Infra.EFCore.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<Folder Include="Service\ReadingCalculate\Dto\" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
@ -780,6 +780,337 @@
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
<exception cref="T:IRaCIS.Core.Infrastructure.BusinessValidationFailedException"></exception>
|
<exception cref="T:IRaCIS.Core.Infrastructure.BusinessValidationFailedException"></exception>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ICriterionCalculateService.CalculateTask(IRaCIS.Core.Application.Service.Reading.Dto.CalculateTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
自动计算 并修改值
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ICriterionCalculateService.VerifyVisitTaskQuestions(IRaCIS.Core.Application.Service.Reading.Dto.VerifyVisitTaskQuestionsInDto)">
|
||||||
|
<summary>
|
||||||
|
验证访视提交
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ICriterionCalculateService.AddTaskLesionAnswerFromLastTask(IRaCIS.Core.Application.ViewModel.AddTaskLesionAnswerFromLastTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
将上一次的访视病灶添加到这一次
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ICriterionCalculateService.GetReportVerify(IRaCIS.Core.Application.Service.Reading.Dto.GetReportVerifyInDto)">
|
||||||
|
<summary>
|
||||||
|
获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.CalculateTask(IRaCIS.Core.Application.Service.Reading.Dto.CalculateTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
自动计算 并修改值
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.VerifyVisitTaskQuestions(IRaCIS.Core.Application.Service.Reading.Dto.VerifyVisitTaskQuestionsInDto)">
|
||||||
|
<summary>
|
||||||
|
验证访视提交
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.AddTaskLesionAnswerFromLastTask(IRaCIS.Core.Application.ViewModel.AddTaskLesionAnswerFromLastTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
将上一次的访视病灶添加到这一次
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.GetReportVerify(IRaCIS.Core.Application.Service.Reading.Dto.GetReportVerifyInDto)">
|
||||||
|
<summary>
|
||||||
|
获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.CalculateServiceDic">
|
||||||
|
<summary>
|
||||||
|
标准和服务对应
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.GetService(System.Guid)">
|
||||||
|
<summary>
|
||||||
|
获取Service
|
||||||
|
</summary>
|
||||||
|
<param name="visitTaskId"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.CalculateTask(IRaCIS.Core.Application.Service.Reading.Dto.CalculateTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
自动计算 并修改值
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.VerifyVisitTaskQuestions(IRaCIS.Core.Application.Service.Reading.Dto.VerifyVisitTaskQuestionsInDto)">
|
||||||
|
<summary>
|
||||||
|
验证访视提交
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.AddTaskLesionAnswerFromLastTask(IRaCIS.Core.Application.ViewModel.AddTaskLesionAnswerFromLastTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
将上一次的访视病灶添加到这一次
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.GetReportVerify(IRaCIS.Core.Application.Service.Reading.Dto.GetReportVerifyInDto)">
|
||||||
|
<summary>
|
||||||
|
获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.sODData">
|
||||||
|
<summary>
|
||||||
|
获取Sod的值
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.CalculateTask(IRaCIS.Core.Application.Service.Reading.Dto.CalculateTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
计算任务
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetReportVerify(IRaCIS.Core.Application.Service.Reading.Dto.GetReportVerifyInDto)">
|
||||||
|
<summary>
|
||||||
|
获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.ReadingCalculate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
自动计算
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetReportTumor(System.Guid)">
|
||||||
|
<summary>
|
||||||
|
获取报告整体整体评估
|
||||||
|
</summary>
|
||||||
|
<param name="visitTaskId"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetReportIsExistDisease(System.Guid)">
|
||||||
|
<summary>
|
||||||
|
获取报告是否存在疾病
|
||||||
|
</summary>
|
||||||
|
<param name="visitTaskId"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.VerifyVisitTaskQuestions(IRaCIS.Core.Application.Service.Reading.Dto.VerifyVisitTaskQuestionsInDto)">
|
||||||
|
<summary>
|
||||||
|
验证访视提交
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetReadingCalculateDto(System.Guid)">
|
||||||
|
<summary>
|
||||||
|
获取ReadingCalculateDto
|
||||||
|
</summary>
|
||||||
|
<param name="visitTaskId"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.AddTaskLesionAnswerFromLastTask(IRaCIS.Core.Application.ViewModel.AddTaskLesionAnswerFromLastTaskInDto)">
|
||||||
|
<summary>
|
||||||
|
将上一次的访视病灶添加到这一次
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetSODData(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取SOD
|
||||||
|
</summary>
|
||||||
|
<remarks>
|
||||||
|
靶病灶径线之和(SOD)
|
||||||
|
非淋巴结的长径 和淋巴结的短径
|
||||||
|
</remarks>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetSumOfDiameter(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
非淋巴结靶病灶长径之和
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.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.ReadingCalculate.RECIST1Point1CalculateService.GetSODPercent(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
与基线访视相比SOD变化百分比
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetLowestIncrease(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
与整个访视期间SOD最低点相比增加的值(mm)
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<remarks>
|
||||||
|
要更新之前的
|
||||||
|
</remarks>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetLowPercent(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
与整个访视期间SOD最低点相比增加的百分比
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<remarks>
|
||||||
|
要更新之前的
|
||||||
|
</remarks>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetLowVisit(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
整个访视期间SOD最低点访视名称
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<remarks>
|
||||||
|
要更新之前的
|
||||||
|
</remarks>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetIsLymphTarget(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
是否存在非淋巴结靶病灶
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.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.ReadingCalculate.RECIST1Point1CalculateService.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.ReadingCalculate.RECIST1Point1CalculateService.GetTumor(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
整体肿瘤评估
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetIsExistDisease(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
是否存在疾病
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.ChangeAllLowestIncrease(IRaCIS.Core.Application.Service.Reading.Dto.ChangeAllTaskDto)">
|
||||||
|
<summary>
|
||||||
|
修改与整个访视期间SOD最低点相比增加的值(mm)
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.ChangeAllLowPercent(IRaCIS.Core.Application.Service.Reading.Dto.ChangeAllTaskDto)">
|
||||||
|
<summary>
|
||||||
|
修改整个访视期间SOD最低点相比增加的百分比
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.ChangeAllLowVisitName(IRaCIS.Core.Application.Service.Reading.Dto.ChangeAllTaskDto)">
|
||||||
|
<summary>
|
||||||
|
修改最低方式点名称
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.ChangeAllVisitTaskAnswer(System.Collections.Generic.List{System.Guid},System.Guid,System.String)">
|
||||||
|
<summary>
|
||||||
|
修改所有访视任务的答案
|
||||||
|
</summary>
|
||||||
|
<param name="visitTaskGuids"></param>
|
||||||
|
<param name="questionId"></param>
|
||||||
|
<param name="answer"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.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.ReadingCalculate.RECIST1Point1CalculateService.GetLowSODVisit(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取最低方式
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetVisitTaskAnswerList(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取访视任务信息
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetLastVisitTaskId(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取上一个访视任务Id
|
||||||
|
</summary>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetTargetLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取靶病灶评估
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetNoTargetLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取非靶病灶评估
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetNewLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取新病灶评估
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ClinicalDataTrialSetAddOrEdit.ClinicalDataSetName">
|
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ClinicalDataTrialSetAddOrEdit.ClinicalDataSetName">
|
||||||
<summary>
|
<summary>
|
||||||
名称
|
名称
|
||||||
|
@ -3937,248 +4268,6 @@
|
||||||
<param name="inDto"></param>
|
<param name="inDto"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.Service.ReadingCalculateService">
|
|
||||||
<summary>
|
|
||||||
阅片计算
|
|
||||||
</summary>
|
|
||||||
<summary>
|
|
||||||
阅片验证
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculateService.sODData">
|
|
||||||
<summary>
|
|
||||||
获取Sod的值
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.CalculateTask(IRaCIS.Core.Application.Service.Reading.Dto.CalculateTaskInDto)">
|
|
||||||
<summary>
|
|
||||||
计算任务
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<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.GetReportTumor(System.Guid)">
|
|
||||||
<summary>
|
|
||||||
获取报告整体整体评估
|
|
||||||
</summary>
|
|
||||||
<param name="visitTaskId"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetReportIsExistDisease(System.Guid)">
|
|
||||||
<summary>
|
|
||||||
获取报告是否存在疾病
|
|
||||||
</summary>
|
|
||||||
<param name="visitTaskId"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.VerifyVisitTaskQuestions(IRaCIS.Core.Application.Service.Reading.Dto.VerifyVisitTaskQuestionsInDto)">
|
|
||||||
<summary>
|
|
||||||
验证访视提交
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetReadingCalculateDto(System.Guid)">
|
|
||||||
<summary>
|
|
||||||
获取ReadingCalculateDto
|
|
||||||
</summary>
|
|
||||||
<param name="visitTaskId"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetSODData(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
获取SOD
|
|
||||||
</summary>
|
|
||||||
<remarks>
|
|
||||||
靶病灶径线之和(SOD)
|
|
||||||
非淋巴结的长径 和淋巴结的短径
|
|
||||||
</remarks>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<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.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.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
与基线访视相比SOD变化百分比
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowestIncrease(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
与整个访视期间SOD最低点相比增加的值(mm)
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<remarks>
|
|
||||||
要更新之前的
|
|
||||||
</remarks>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowPercent(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
与整个访视期间SOD最低点相比增加的百分比
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<remarks>
|
|
||||||
要更新之前的
|
|
||||||
</remarks>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetLowVisit(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
整个访视期间SOD最低点访视名称
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<remarks>
|
|
||||||
要更新之前的
|
|
||||||
</remarks>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<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.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.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.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
整体肿瘤评估
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.GetIsExistDisease(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.Service.Reading.Dto.ChangeAllTaskDto)">
|
|
||||||
<summary>
|
|
||||||
修改与整个访视期间SOD最低点相比增加的值(mm)
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllLowPercent(IRaCIS.Core.Application.Service.Reading.Dto.ChangeAllTaskDto)">
|
|
||||||
<summary>
|
|
||||||
修改整个访视期间SOD最低点相比增加的百分比
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllLowVisitName(IRaCIS.Core.Application.Service.Reading.Dto.ChangeAllTaskDto)">
|
|
||||||
<summary>
|
|
||||||
修改最低方式点名称
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.ChangeAllVisitTaskAnswer(System.Collections.Generic.List{System.Guid},System.Guid,System.String)">
|
|
||||||
<summary>
|
|
||||||
修改所有访视任务的答案
|
|
||||||
</summary>
|
|
||||||
<param name="visitTaskGuids"></param>
|
|
||||||
<param name="questionId"></param>
|
|
||||||
<param name="answer"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<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.GetLowSODVisit(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
获取最低方式
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<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.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
获取上一个访视任务Id
|
|
||||||
</summary>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<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.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.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
获取新病灶评估
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.CriterionVerify(System.Guid)">
|
|
||||||
<summary>
|
|
||||||
标准验证
|
|
||||||
</summary>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculateService.RECIST1Point1Verify(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
|
||||||
<summary>
|
|
||||||
RECIST 1.1验证
|
|
||||||
</summary>
|
|
||||||
<param name="inDto"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:IRaCIS.Core.Application.Service.ReadingMedicalReviewService">
|
<member name="T:IRaCIS.Core.Application.Service.ReadingMedicalReviewService">
|
||||||
<summary>
|
<summary>
|
||||||
阅片医学审核
|
阅片医学审核
|
||||||
|
@ -5143,11 +5232,6 @@
|
||||||
IOrganInfoService
|
IOrganInfoService
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.Interfaces.IReadingCalculateService">
|
|
||||||
<summary>
|
|
||||||
IReadingCalculateService
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:IRaCIS.Core.Application.Interfaces.ITrialExternalUserService">
|
<member name="T:IRaCIS.Core.Application.Interfaces.ITrialExternalUserService">
|
||||||
<summary>
|
<summary>
|
||||||
ITrialExternalUserService
|
ITrialExternalUserService
|
||||||
|
@ -7714,13 +7798,6 @@
|
||||||
<param name="inDto"></param>
|
<param name="inDto"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.AddBaseLineAnswerToOtherTask(System.Guid)">
|
|
||||||
<summary>
|
|
||||||
添加基线表格数据到其他任务
|
|
||||||
</summary>
|
|
||||||
<param name="visitTaskId"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.GetReadingReportEvaluation(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingReportEvaluationInDto)">
|
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.GetReadingReportEvaluation(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingReportEvaluationInDto)">
|
||||||
<summary>
|
<summary>
|
||||||
获取阅片报告
|
获取阅片报告
|
||||||
|
|
|
@ -116,10 +116,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
|
|
||||||
public class GetReadingReportEvaluationOutDto
|
public class GetReadingReportEvaluationOutDto
|
||||||
{
|
{
|
||||||
public string TumorEvaluate { get; set; }
|
|
||||||
|
|
||||||
|
public object ReportCalculateResult{ get; set; }
|
||||||
public string IsExistDisease { get; set; }
|
|
||||||
|
public object CalculateResult { get; set; }
|
||||||
public ReadingTaskState ReadingTaskState { get; set; }
|
public ReadingTaskState ReadingTaskState { get; set; }
|
||||||
|
|
||||||
public List<VisitTaskInfo> VisitTaskList { get; set; }
|
public List<VisitTaskInfo> VisitTaskList { get; set; }
|
||||||
|
@ -1051,13 +1051,13 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
public Func<ReadingCalculateDto, Task<string>> Fun { get; set; }
|
public Func<ReadingCalculateDto, Task<string>> Fun { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class VerifyVisitTaskQuestionsOutDto
|
public class GetReportVerifyInDto
|
||||||
{
|
{
|
||||||
public bool IsVerified { get; set; }
|
public Guid VisitTaskId { get; set; }
|
||||||
|
|
||||||
public string ErrorMessage { get; set; }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public class VerifyVisitTaskQuestionsInDto
|
public class VerifyVisitTaskQuestionsInDto
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -1,25 +0,0 @@
|
||||||
//--------------------------------------------------------------------
|
|
||||||
// 此代码由T4模板自动生成 byzhouhang 20210918
|
|
||||||
// 生成时间 2022-08-22 09:33:28
|
|
||||||
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
|
|
||||||
//--------------------------------------------------------------------
|
|
||||||
|
|
||||||
using IRaCIS.Core.Application.Service.Reading.Dto;
|
|
||||||
using IRaCIS.Core.Application.ViewModel;
|
|
||||||
namespace IRaCIS.Core.Application.Interfaces
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// IReadingCalculateService
|
|
||||||
/// </summary>
|
|
||||||
public interface IReadingCalculateService
|
|
||||||
{
|
|
||||||
Task CalculateTask(CalculateTaskInDto inDto);
|
|
||||||
|
|
||||||
|
|
||||||
Task<VerifyVisitTaskQuestionsOutDto> VerifyVisitTaskQuestions(VerifyVisitTaskQuestionsInDto inDto);
|
|
||||||
|
|
||||||
Task<string> GetReportTumor(Guid visitTaskId);
|
|
||||||
|
|
||||||
Task<string> GetReportIsExistDisease(Guid visitTaskId);
|
|
||||||
}
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,81 +0,0 @@
|
||||||
using IRaCIS.Core.Domain.Models;
|
|
||||||
using Microsoft.AspNetCore.Mvc;
|
|
||||||
using IRaCIS.Core.Application.Interfaces;
|
|
||||||
using IRaCIS.Core.Application.ViewModel;
|
|
||||||
using Panda.DynamicWebApi.Attributes;
|
|
||||||
using IRaCIS.Core.Domain.Share;
|
|
||||||
using IRaCIS.Core.Infra.EFCore.Common;
|
|
||||||
using Microsoft.Extensions.Caching.Memory;
|
|
||||||
using IRaCIS.Core.Application.Service.Reading.Dto;
|
|
||||||
using IRaCIS.Core.Infrastructure;
|
|
||||||
|
|
||||||
namespace IRaCIS.Core.Application.Service
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 阅片验证
|
|
||||||
/// </summary>
|
|
||||||
[NonDynamicWebApi]
|
|
||||||
public partial class ReadingCalculateService : BaseService, IReadingCalculateService
|
|
||||||
{
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 标准验证
|
|
||||||
/// </summary>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task CriterionVerify(Guid visitTaskId)
|
|
||||||
{
|
|
||||||
var taskinfo = await _visitTaskRepository.Where(x => x.Id == visitTaskId).Include(x=>x.TrialReadingCriterion).FirstNotNullAsync();
|
|
||||||
ReadingCalculateDto readingData = await GetReadingCalculateDto(visitTaskId);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// RECIST 1.1验证
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="inDto"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task RECIST1Point1Verify(ReadingCalculateDto inDto)
|
|
||||||
{
|
|
||||||
var tableAnswerList = inDto.QuestionInfo.SelectMany(x => x.TableRowInfoList).SelectMany(x=>x.TableQuestionList).ToList();
|
|
||||||
|
|
||||||
List<string> errorList = new List<string>();
|
|
||||||
|
|
||||||
// 判断是否为基线
|
|
||||||
if (inDto.IsBaseLine)
|
|
||||||
{
|
|
||||||
// 不能有状态为 无法评估 消失 太小 显著增大 疑似的病灶
|
|
||||||
List<string> targetStates = new List<string>() {
|
|
||||||
TargetState.TooSmall.GetEnumInt(),
|
|
||||||
TargetState.Loss.GetEnumInt(),
|
|
||||||
TargetState.UnableEvaluate.GetEnumInt(),
|
|
||||||
};
|
|
||||||
|
|
||||||
if (tableAnswerList.Any(x => x.QuestionMark == QuestionMark.State && targetStates.Contains(x.Answer)))
|
|
||||||
{
|
|
||||||
errorList.Add("基线不能有状态为 无法评估 消失 太小 显著增大 疑似的病灶!");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (inDto.QuestionInfo.Where(x => x.LesionType == LesionType.NewLesions).SelectMany(x => x.TableRowInfoList).Count() > 0)
|
|
||||||
{
|
|
||||||
errorList.Add($"基线不能有新病灶!");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (errorList.Count > 0)
|
|
||||||
{
|
|
||||||
throw new BusinessValidationFailedException(string.Join(',',errorList));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -391,103 +391,6 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 添加基线表格数据到其他任务
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="visitTaskId"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
|
|
||||||
private async Task<bool> AddBaseLineAnswerToOtherTask(Guid visitTaskId)
|
|
||||||
{
|
|
||||||
var taskinfo = await _visitTaskRepository.Where(x => x.Id == visitTaskId).FirstNotNullAsync();
|
|
||||||
|
|
||||||
var baseLineVisitId = await _subjectVisitRepository.Where(x => x.SubjectId == taskinfo.SubjectId && x.IsBaseLine).Select(x => x.Id).FirstOrDefaultAsync();
|
|
||||||
|
|
||||||
// 判断当前任务是否是基线
|
|
||||||
if (taskinfo.SourceSubjectVisitId != baseLineVisitId)
|
|
||||||
{
|
|
||||||
// 判断当前任务是是否有表格问题答案
|
|
||||||
if (!(await _readingTableQuestionAnswerRepository.AnyAsync(x => x.VisitTaskId == visitTaskId)))
|
|
||||||
{
|
|
||||||
|
|
||||||
var LastVisitTaskId = await _visitTaskRepository.Where(x => x.ReadingCategory == ReadingCategory.Visit&&x.SubjectId==taskinfo.SubjectId&&x.ReadingTaskState==ReadingTaskState.HaveSigned &&x.VisitTaskNum< taskinfo.VisitTaskNum&&x.TaskState==TaskState.Effect&&x.ArmEnum==taskinfo.ArmEnum
|
|
||||||
).OrderByDescending(x=>x.VisitTaskNum).Select(x => x.Id).FirstOrDefaultAsync();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var copyTableAnswers = await _readingTableQuestionAnswerRepository.Where(x => x.VisitTaskId == LastVisitTaskId).Select(x => new CopyTableAnswerDto() {
|
|
||||||
Answer = x.Answer,
|
|
||||||
QuestionId = x.QuestionId,
|
|
||||||
RowId=x.RowId,
|
|
||||||
QuestionMark = x.ReadingTableQuestionTrial.QuestionMark,
|
|
||||||
TableQuestionId = x.TableQuestionId,
|
|
||||||
|
|
||||||
RowIndex = x.RowIndex,
|
|
||||||
TrialId = x.TrialId
|
|
||||||
}).ToListAsync();
|
|
||||||
|
|
||||||
var tableRowAnswers = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == LastVisitTaskId).ProjectTo<CopyTableAnswerRowInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
|
||||||
|
|
||||||
|
|
||||||
tableRowAnswers.ForEach(x =>
|
|
||||||
{
|
|
||||||
x.VisitTaskId = visitTaskId;
|
|
||||||
x.IsCurrentTaskAdd = false;
|
|
||||||
x.Id = NewId.NextGuid();
|
|
||||||
x.SeriesId = null;
|
|
||||||
x.InstanceId = null;
|
|
||||||
x.MeasureData = string.Empty;
|
|
||||||
});
|
|
||||||
|
|
||||||
tableRowAnswers.ForEach(x =>
|
|
||||||
{
|
|
||||||
x.SplitRowId = tableRowAnswers.Where(y => y.OriginalId == x.SplitRowId).Select(y => y.Id).FirstOrDefault();
|
|
||||||
x.MergeRowId = tableRowAnswers.Where(y => y.OriginalId == x.MergeRowId).Select(y => y.Id).FirstOrDefault();
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
List<QuestionMark?> notNeedCopyMarks = new List<QuestionMark?>()
|
|
||||||
{
|
|
||||||
QuestionMark.MajorAxis,
|
|
||||||
QuestionMark.ShortAxis,
|
|
||||||
QuestionMark.State,
|
|
||||||
};
|
|
||||||
|
|
||||||
var tableAnswers = copyTableAnswers.Select(x => new ReadingTableQuestionAnswer
|
|
||||||
{
|
|
||||||
Id = NewId.NextGuid(),
|
|
||||||
Answer = notNeedCopyMarks.Contains(x.QuestionMark) ? string.Empty : x.Answer,
|
|
||||||
QuestionId = x.QuestionId,
|
|
||||||
RowIndex = x.RowIndex,
|
|
||||||
RowId= tableRowAnswers.Where(y=>y.OriginalId==x.RowId).Select(x=>x.Id).FirstOrDefault(),
|
|
||||||
TableQuestionId = x.TableQuestionId,
|
|
||||||
TrialId = x.TrialId,
|
|
||||||
VisitTaskId = visitTaskId,
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
await _visitTaskRepository.UpdatePartialFromQueryAsync(visitTaskId, x => new VisitTask()
|
|
||||||
{
|
|
||||||
ReadingTaskState = ReadingTaskState.Reading,
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
tableRowAnswers.ForEach(x =>
|
|
||||||
{
|
|
||||||
x.MergeRow = null;
|
|
||||||
x.SplitRow = null;
|
|
||||||
});
|
|
||||||
await _readingTableAnswerRowInfoRepository.AddRangeAsync(tableRowAnswers);
|
|
||||||
await _readingTableQuestionAnswerRepository.AddRangeAsync(tableAnswers);
|
|
||||||
await _readingTableQuestionAnswerRepository.SaveChangesAsync();
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return taskinfo.SourceSubjectVisitId == baseLineVisitId;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取阅片报告
|
/// 获取阅片报告
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -498,8 +401,10 @@ namespace IRaCIS.Application.Services
|
||||||
{
|
{
|
||||||
GetReadingReportEvaluationOutDto result = new GetReadingReportEvaluationOutDto();
|
GetReadingReportEvaluationOutDto result = new GetReadingReportEvaluationOutDto();
|
||||||
|
|
||||||
result.TumorEvaluate = await _readingCalculateService.GetReportTumor(indto.VisitTaskId);
|
result.CalculateResult = await _readingCalculateService.GetReportVerify(new GetReportVerifyInDto() {
|
||||||
result.IsExistDisease= await _readingCalculateService.GetReportIsExistDisease(indto.VisitTaskId);
|
VisitTaskId=indto.VisitTaskId
|
||||||
|
});
|
||||||
|
|
||||||
var visitTaskInfo = await _visitTaskRepository.Where(x => x.Id == indto.VisitTaskId).FirstNotNullAsync();
|
var visitTaskInfo = await _visitTaskRepository.Where(x => x.Id == indto.VisitTaskId).FirstNotNullAsync();
|
||||||
result.ReadingTaskState = visitTaskInfo.ReadingTaskState;
|
result.ReadingTaskState = visitTaskInfo.ReadingTaskState;
|
||||||
var taskInfoList = await _visitTaskRepository.Where(x => (x.SubjectId == visitTaskInfo.SubjectId && x.TaskState == TaskState.Effect
|
var taskInfoList = await _visitTaskRepository.Where(x => (x.SubjectId == visitTaskInfo.SubjectId && x.TaskState == TaskState.Effect
|
||||||
|
@ -665,8 +570,11 @@ namespace IRaCIS.Application.Services
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public async Task<List<GetTableAnswerRowInfoOutDto>> GetTableAnswerRowInfoList(GetTableAnswerRowInfoInDto inDto)
|
public async Task<List<GetTableAnswerRowInfoOutDto>> GetTableAnswerRowInfoList(GetTableAnswerRowInfoInDto inDto)
|
||||||
{
|
{
|
||||||
await this.AddBaseLineAnswerToOtherTask(inDto.VisitTaskId);
|
await _readingCalculateService.AddTaskLesionAnswerFromLastTask(new AddTaskLesionAnswerFromLastTaskInDto()
|
||||||
var result= await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId)
|
{
|
||||||
|
VisitTaskId = inDto.VisitTaskId
|
||||||
|
});
|
||||||
|
var result = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId)
|
||||||
.WhereIf(inDto.QuestionId != null, x => x.QuestionId == inDto.QuestionId)
|
.WhereIf(inDto.QuestionId != null, x => x.QuestionId == inDto.QuestionId)
|
||||||
.ProjectTo<GetTableAnswerRowInfoOutDto>(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ThenBy(x => x.RowIndex)
|
.ProjectTo<GetTableAnswerRowInfoOutDto>(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ThenBy(x => x.RowIndex)
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.ViewModel
|
||||||
|
{
|
||||||
|
public class AddTaskLesionAnswerFromLastTaskInDto
|
||||||
|
{
|
||||||
|
public Guid VisitTaskId { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class AddTaskLesionAnswerFromLastTaskOutDto
|
||||||
|
{
|
||||||
|
public bool IsBaseLine { get; set; }
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,44 @@
|
||||||
|
using IRaCIS.Core.Application.Service.Reading.Dto;
|
||||||
|
using IRaCIS.Core.Application.ViewModel;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.Service
|
||||||
|
{
|
||||||
|
public interface ICriterionCalculateService
|
||||||
|
{
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 自动计算 并修改值
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task CalculateTask(CalculateTaskInDto inDto);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 验证访视提交
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task VerifyVisitTaskQuestions(VerifyVisitTaskQuestionsInDto inDto);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 将上一次的访视病灶添加到这一次
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<AddTaskLesionAnswerFromLastTaskOutDto> AddTaskLesionAnswerFromLastTask(AddTaskLesionAnswerFromLastTaskInDto inDto);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<object> GetReportVerify(GetReportVerifyInDto inDto);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,41 @@
|
||||||
|
using IRaCIS.Core.Application.Service.Reading.Dto;
|
||||||
|
using IRaCIS.Core.Application.ViewModel;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.Service
|
||||||
|
{
|
||||||
|
public interface IReadingCalculateService
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 自动计算 并修改值
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task CalculateTask(CalculateTaskInDto inDto);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 验证访视提交
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task VerifyVisitTaskQuestions(VerifyVisitTaskQuestionsInDto inDto);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 将上一次的访视病灶添加到这一次
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<AddTaskLesionAnswerFromLastTaskOutDto> AddTaskLesionAnswerFromLastTask(AddTaskLesionAnswerFromLastTaskInDto inDto);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<object> GetReportVerify(GetReportVerifyInDto inDto);
|
||||||
|
}
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,144 @@
|
||||||
|
using IRaCIS.Core.Application.Interfaces;
|
||||||
|
using IRaCIS.Core.Domain.Share;
|
||||||
|
using IRaCIS.Core.Infrastructure;
|
||||||
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
using IRaCIS.Core.Application.Service.Reading.Dto;
|
||||||
|
using IRaCIS.Core.Application.ViewModel;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
{
|
||||||
|
[ApiExplorerSettings(GroupName = "Image")]
|
||||||
|
public class ReadingCalculateService: BaseService, IReadingCalculateService
|
||||||
|
{
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 标准和服务对应
|
||||||
|
/// </summary>
|
||||||
|
Dictionary<CriterionType, Type> CalculateServiceDic = new Dictionary<CriterionType, Type>()
|
||||||
|
{
|
||||||
|
{CriterionType.RECIST1Pointt1,typeof(RECIST1Point1CalculateService) } //RECIST1.1
|
||||||
|
};
|
||||||
|
|
||||||
|
private readonly IEnumerable<ICriterionCalculateService> CriterionServices;
|
||||||
|
|
||||||
|
private readonly IEnumerable<ICriterionCalculateService> _criterionServices;
|
||||||
|
private readonly IRepository<VisitTask> _visitTaskRepository;
|
||||||
|
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
|
||||||
|
private ICriterionCalculateService _useCriterion;
|
||||||
|
|
||||||
|
|
||||||
|
public ReadingCalculateService(IEnumerable<ICriterionCalculateService> criterionServices,
|
||||||
|
IRepository<VisitTask> visitTaskRepository,
|
||||||
|
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository
|
||||||
|
|
||||||
|
)
|
||||||
|
{
|
||||||
|
|
||||||
|
_criterionServices = criterionServices;
|
||||||
|
this._visitTaskRepository = visitTaskRepository;
|
||||||
|
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取Service
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="visitTaskId"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<ICriterionCalculateService> GetService(Guid visitTaskId)
|
||||||
|
{
|
||||||
|
if (_useCriterion == null)
|
||||||
|
{
|
||||||
|
var criterionId = await _visitTaskRepository.Where(x => x.Id == visitTaskId).Select(x => x.TrialReadingCriterionId).FirstNotNullAsync();
|
||||||
|
|
||||||
|
var criterionType = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == criterionId).Select(x => x.CriterionType).FirstOrDefaultAsync();
|
||||||
|
|
||||||
|
if (criterionType == null)
|
||||||
|
{
|
||||||
|
throw new BusinessValidationFailedException($"当前标准计算未开发好");
|
||||||
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
CriterionType thisCriterionType = criterionType.Value;
|
||||||
|
Type thisServiceType = CalculateServiceDic[thisCriterionType];
|
||||||
|
_useCriterion = CriterionServices.FirstOrDefault(x => x.GetType().Name == nameof(thisServiceType) + "Proxy");
|
||||||
|
|
||||||
|
if (criterionType == null)
|
||||||
|
{
|
||||||
|
throw new BusinessValidationFailedException($"当前标准计算未开发好");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception)
|
||||||
|
{
|
||||||
|
|
||||||
|
throw new BusinessValidationFailedException($"当前标准计算未开发好");
|
||||||
|
}
|
||||||
|
|
||||||
|
return _useCriterion;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return _useCriterion;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 自动计算 并修改值
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task CalculateTask(CalculateTaskInDto inDto)
|
||||||
|
{
|
||||||
|
var service = await this.GetService(inDto.VisitTaskId);
|
||||||
|
await service.CalculateTask(inDto);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 验证访视提交
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task VerifyVisitTaskQuestions(VerifyVisitTaskQuestionsInDto inDto)
|
||||||
|
{
|
||||||
|
var service = await this.GetService(inDto.VisitTaskId);
|
||||||
|
await service.VerifyVisitTaskQuestions(inDto);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 将上一次的访视病灶添加到这一次
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<AddTaskLesionAnswerFromLastTaskOutDto> AddTaskLesionAnswerFromLastTask(AddTaskLesionAnswerFromLastTaskInDto inDto)
|
||||||
|
{
|
||||||
|
var service = await this.GetService(inDto.VisitTaskId);
|
||||||
|
return await service.AddTaskLesionAnswerFromLastTask(inDto);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取报告验证的信息(这里每个标准可能不一样 返回用object)
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<object> GetReportVerify(GetReportVerifyInDto inDto)
|
||||||
|
{
|
||||||
|
var service = await this.GetService(inDto.VisitTaskId);
|
||||||
|
return await service.GetReportVerify(inDto);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue