Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8
commit
d58089b9ee
|
@ -1312,6 +1312,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<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>
|
||||
将上一次的访视病灶添加到这一次
|
||||
|
@ -1352,6 +1359,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.IRECIST1Point1CalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.IRECIST1Point1CalculateService.sODData">
|
||||
<summary>
|
||||
获取Sod的值
|
||||
|
@ -1725,6 +1739,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.LuganoCalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.LuganoCalculateService.sODData">
|
||||
<summary>
|
||||
获取Sod的值
|
||||
|
@ -2177,6 +2198,13 @@
|
|||
<param name="digitPlaces"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.PCWG3CalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.PCWG3CalculateService.GetDeleteLesionStatrIndex(IRaCIS.Core.Application.Service.Reading.Dto.DeleteReadingRowAnswerInDto)">
|
||||
<summary>
|
||||
删除病灶获取起始病灶序号
|
||||
|
@ -2276,6 +2304,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1CalculateService.sODData">
|
||||
<summary>
|
||||
获取Sod的值
|
||||
|
@ -2520,6 +2555,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.sODData">
|
||||
<summary>
|
||||
获取Sod的值
|
||||
|
@ -2824,6 +2866,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.SelfDefineCalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.SelfDefineCalculateService.GetDeleteLesionStatrIndex(IRaCIS.Core.Application.Service.Reading.Dto.DeleteReadingRowAnswerInDto)">
|
||||
<summary>
|
||||
删除病灶获取起始病灶序号
|
||||
|
@ -2908,6 +2957,13 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ICriterionCalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.IGeneralCalculateService.GetReadingCalculateDto(System.Guid)">
|
||||
<summary>
|
||||
获取ReadingCalculateDto
|
||||
|
@ -2980,6 +3036,13 @@
|
|||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.IReadingCalculateService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationService">
|
||||
<summary>
|
||||
SubjectCriteriaEvaluationService
|
||||
|
@ -4979,6 +5042,11 @@
|
|||
任务Id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto.VisitTaskId">
|
||||
<summary>
|
||||
任务Id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ReadingCustomTagDto.VisitTaskId">
|
||||
<summary>
|
||||
任务Id
|
||||
|
@ -13368,6 +13436,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
|
||||
<summary>
|
||||
获取阅片的计算数据
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.SubmitCustomTag(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCustomTagDto)">
|
||||
<summary>
|
||||
提交自定义标记
|
||||
|
|
|
@ -72,9 +72,10 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
.WhereIf(inQuery.DoctorUserIdeaEnum != null, t => t.DoctorUserIdeaEnum == inQuery.DoctorUserIdeaEnum)
|
||||
.WhereIf(inQuery.TrialReadingCriterionId != null, t => t.VisitTask.TrialReadingCriterionId == inQuery.TrialReadingCriterionId)
|
||||
.ProjectTo<TaskMedicalReviewView>(_mapper.ConfigurationProvider);
|
||||
.OrderBy(x => x.AuditState).ThenBy(x => x.VisitTask.SubjectId).ThenBy(x => x.VisitTask.ArmEnum).ThenBy(x => x.VisitTask.VisitTaskNum)
|
||||
.ProjectTo<TaskMedicalReviewView>(_mapper.ConfigurationProvider);
|
||||
|
||||
var pageList = await taskMedicalReviewQueryable.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? nameof(TaskMedicalReviewView.Id) : inQuery.SortField, inQuery.Asc);
|
||||
var pageList = await taskMedicalReviewQueryable.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, new string[] { });
|
||||
|
||||
return pageList;
|
||||
}
|
||||
|
@ -220,7 +221,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.WhereIf(inQuery.IsInvalid != null, t => t.IsInvalid == inQuery.IsInvalid)
|
||||
.WhereIf(inQuery.IsGetBeRead,x=>!x.IsInvalid&&x.AuditState!= MedicalReviewAuditState.HaveSigned)
|
||||
.WhereIf(inQuery.TrialReadingCriterionId != null, t => t.VisitTask.TrialReadingCriterionId == inQuery.TrialReadingCriterionId)
|
||||
.OrderBy(x=>x.VisitTask.SubjectId).ThenBy(x=>x.VisitTask.ArmEnum).ThenBy(x=>x.VisitTask.VisitTaskNum)
|
||||
.OrderBy(x=>x.AuditState).ThenBy(x=>x.VisitTask.SubjectId).ThenBy(x=>x.VisitTask.ArmEnum).ThenBy(x=>x.VisitTask.VisitTaskNum)
|
||||
.ProjectTo<TaskMedicalReviewView>(_mapper.ConfigurationProvider);
|
||||
|
||||
|
||||
|
|
|
@ -434,7 +434,15 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
|||
public Guid VisitTaskId { get; set; }
|
||||
}
|
||||
|
||||
public class ReadingCustomTagDto
|
||||
public class GetReadingCalculationDataInDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 任务Id
|
||||
/// </summary>
|
||||
public Guid VisitTaskId { get; set; }
|
||||
}
|
||||
|
||||
public class ReadingCustomTagDto
|
||||
{
|
||||
public Guid? Id { get; set; }
|
||||
|
||||
|
|
|
@ -89,7 +89,6 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
|
||||
public class TrialDataFromSystem : ReadingMedicineTrialQuestion
|
||||
{
|
||||
public Guid SystemQuestionId { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
@ -100,7 +99,7 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
[NotDefault]
|
||||
public Guid TrialReadingCriterionId { get; set; }
|
||||
|
||||
public bool IsEnglish { get; set; }
|
||||
public LanguageType LanguageType { get; set; }
|
||||
}
|
||||
|
||||
public class AddTrialDataFromSystemInDto
|
||||
|
|
|
@ -180,9 +180,11 @@ namespace IRaCIS.Core.Application.Service
|
|||
var questionList = await query.ToPagedListAsync(inDto.PageIndex, inDto.PageSize, inDto.SortField, inDto.Asc);
|
||||
return (questionList, new
|
||||
{
|
||||
|
||||
IsConfirmMedicineQuestion = isConfirmMedicineQuestion,
|
||||
//QuestionCount = questionList.Count(),
|
||||
});
|
||||
LanguageType=(await _readingMedicineTrialQuestionRepository.FirstOrDefaultAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId&& x.SystemQuestionId != null))?.LanguageType,
|
||||
//QuestionCount = questionList.Count(),
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
@ -501,9 +503,13 @@ namespace IRaCIS.Core.Application.Service
|
|||
[HttpPost]
|
||||
public async Task<IResponseOutput> AddDefaultQuestions(AddDefaultQuestionsInDto inDto)
|
||||
{
|
||||
if (await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId))
|
||||
if (await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.LanguageType == inDto.LanguageType && x.SystemQuestionId != null))
|
||||
{
|
||||
throw new BusinessValidationFailedException(_localizer["Medicine_ExistsMedicineQuestion"]);
|
||||
await _readingMedicineTrialQuestionRepository.BatchDeleteNoTrackingAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.LanguageType == inDto.LanguageType && x.SystemQuestionId != null);
|
||||
}
|
||||
else
|
||||
{
|
||||
await _readingMedicineTrialQuestionRepository.BatchDeleteNoTrackingAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.LanguageType != inDto.LanguageType);
|
||||
}
|
||||
var criterionInfo = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync();
|
||||
List<ReadingCategory> needAddCategory = new List<ReadingCategory>() { ReadingCategory.Visit };
|
||||
|
@ -522,12 +528,11 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
var maxOrder = await _readingMedicineTrialQuestionRepository.Where(x => x.TrialId == inDto.TrialId && x.TrialReadingCriterionId == inDto.TrialReadingCriterionId).OrderByDescending(x => x.ShowOrder).Select(x => x.ShowOrder).FirstOrDefaultAsync();
|
||||
List<TrialDataFromSystem> needList = await _readingMedicineSystemQuestionRepository
|
||||
.WhereIf(inDto.IsEnglish, x => x.LanguageType == LanguageType.English)
|
||||
.WhereIf(!inDto.IsEnglish, x => x.LanguageType == LanguageType.Chinese)
|
||||
.Where(x=>x.LanguageType==inDto.LanguageType)
|
||||
.Where(x => x.CriterionTypeEnum == criterionInfo.CriterionType && needAddCategory.Contains(x.ReadingCategory))
|
||||
.Select(x => new TrialDataFromSystem()
|
||||
{
|
||||
Id = NewId.NextGuid(),
|
||||
|
||||
ShowOrder = x.ShowOrder,
|
||||
IsEnable = x.IsEnable,
|
||||
LanguageType = x.LanguageType,
|
||||
|
@ -543,6 +548,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
}).ToListAsync();
|
||||
|
||||
needList.ForEach(x => {
|
||||
x.Id = NewId.NextGuid();
|
||||
maxOrder++;
|
||||
x.ShowOrder = maxOrder;
|
||||
});
|
||||
|
|
|
@ -150,12 +150,27 @@ namespace IRaCIS.Application.Services
|
|||
this._trialEmailNoticeConfigService = trialEmailNoticeConfigService;
|
||||
}
|
||||
|
||||
#region 计算
|
||||
|
||||
/// <summary>
|
||||
/// 提交自定义标记
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
return await _readingCalculateService.GetReadingCalculationData(inDto);
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// 提交自定义标记
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput> SubmitCustomTag(ReadingCustomTagDto inDto)
|
||||
{
|
||||
var entity = await _readingCustomTagRepository.InsertOrUpdateAsync(inDto, true);
|
||||
|
|
|
@ -118,12 +118,26 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 将上一次的访视病灶添加到这一次
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<AddTaskLesionAnswerFromLastTaskOutDto> AddTaskLesionAnswerFromLastTask(AddTaskLesionAnswerFromLastTaskInDto inDto)
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
var service = await this.GetService(inDto.VisitTaskId);
|
||||
|
||||
return await service.GetReadingCalculationData(inDto);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 将上一次的访视病灶添加到这一次
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<AddTaskLesionAnswerFromLastTaskOutDto> AddTaskLesionAnswerFromLastTask(AddTaskLesionAnswerFromLastTaskInDto inDto)
|
||||
{
|
||||
var service = await this.GetService(inDto.VisitTaskId);
|
||||
var visitTaskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync();
|
||||
|
|
|
@ -63,9 +63,21 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
this._logger = logger;
|
||||
}
|
||||
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
return new
|
||||
{
|
||||
};
|
||||
}
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
|
||||
/// <summary>
|
||||
/// 获取Sod的值
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
using IRaCIS.Core.Application.Service.Reading.Dto;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
@ -52,6 +53,15 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// <returns></returns>
|
||||
Task<int> GetDeleteLesionStatrIndex(DeleteReadingRowAnswerInDto inDto);
|
||||
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
}
|
||||
Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto);
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -51,5 +51,13 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<int> GetDeleteLesionStatrIndex(DeleteReadingRowAnswerInDto inDto);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -71,9 +71,31 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
|
||||
}
|
||||
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
ReadingCalculateDto readingData = await _generalCalculateService.GetReadingCalculateDto(inDto.VisitTaskId);
|
||||
var baseLinePET5PS = 0m;
|
||||
if (!readingData.IsBaseLine)
|
||||
{
|
||||
var baseLineTaskId = await GetBaseLineTaskId(readingData);
|
||||
baseLinePET5PS = (await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId == baseLineTaskId && x.ReadingQuestionTrial.QuestionType == QuestionType.PET5PS).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0();
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
}
|
||||
return new
|
||||
{
|
||||
BaseLinePET5PS= baseLinePET5PS,
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
|
||||
/// <summary>
|
||||
/// 获取Sod的值
|
||||
|
@ -2731,35 +2753,35 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
List<CalculationDto> data = new List<CalculationDto>() {
|
||||
|
||||
//ND NE NE/NA ND
|
||||
//1、ND NE NE/NA ND
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA}),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.ND }),
|
||||
},
|
||||
//ND/PD/CR/NE/PR/SD PMD PMD/CMR/PMR/NMR/NE/NA PMD/PD
|
||||
//2、ND/PD/CR/NE/PR/SD PMD PMD/CMR/PMR/NMR/NE/NA PMD/PD
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND, CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD}),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.PMD, }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() {FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.PMDPD }),
|
||||
},
|
||||
//ND/PD/CR/NE/PR/SD NE PMD PMD/PD
|
||||
//3、ND/PD/CR/NE/PR/SD NE PMD PMD/PD
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND, CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD}),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() {FDGPETOverallAssessment.NE }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.PMD, }),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.PMDPD }),
|
||||
},
|
||||
//PD NE CMR/PMR/NMR/NE/NA PMD/PD
|
||||
//4、PD NE CMR/PMR/NMR/NE/NA PMD/PD
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.PD}),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE, }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.PMDPD }),
|
||||
},
|
||||
//NE NE NE/NA NE
|
||||
//5、NE NE NE/NA NE
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.NE }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
|
@ -2767,14 +2789,14 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.NE }),
|
||||
},
|
||||
|
||||
//CR、PR、SD、NE、ND、PD CMR CMR/PMR/NMR/PMD/NE/NA CMR/CR
|
||||
//6、CR、PR、SD、NE、ND、PD CMR CMR/PMR/NMR/PMD/NE/NA CMR/CR
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND,CTMRIOverallAssessment.PD }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.CMR }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.CMRCR }),
|
||||
},
|
||||
//CR NE NE/NA CMR/CR
|
||||
//7、CR NE NE/NA CMR/CR
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.CR }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
|
@ -2782,53 +2804,53 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.CMRCR }),
|
||||
},
|
||||
|
||||
//CR、PR、SD、NE、ND CMR NE/NA CMR/CR
|
||||
//8、CR、PR、SD、NE、ND NE CMR CMR/CR
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.CMR }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}),
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.CMR,}),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.CMRCR }),
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
//ND/PD/CR/NE/PR/SD PMR PMD/CMR/PMR/NMR/NE PMR/PR
|
||||
//9、ND/PD/CR/NE/PR/SD PMR PMD/CMR/PMR/NMR/NE PMR/PR
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND, CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.PMR }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE,FDGPETOverallAssessment.NA, }),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.PMRPR }),
|
||||
},
|
||||
//PR NE NE PMR/PR
|
||||
//10、PR NE NE/NA PMR/PR
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.PR }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.PMRPR }),
|
||||
},
|
||||
//CR/PR/SD/NE/ND NE PMR PMR/PR
|
||||
//11、CR/PR/SD/NE/ND NE PMR PMR/PR
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.PMR}),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.PMRPR }),
|
||||
},
|
||||
//ND/PD/CR/NE/PR/SD NMR PMD/CMR/PMR/NMR/NE NMR/SD
|
||||
//12、ND/PD/CR/NE/PR/SD NMR PMD/CMR/PMR/NMR/NE NMR/SD
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND,CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NMR }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.CMR, FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.NMRSD }),
|
||||
},
|
||||
//CR/PR/SD/ND/NE NE NMR NMR/SD
|
||||
//13、CR/PR/SD/ND/NE NE NMR NMR/SD
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.CR, CTMRIOverallAssessment.PR, CTMRIOverallAssessment.SD, CTMRIOverallAssessment.ND, CTMRIOverallAssessment.NE }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
Column3=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NMR}),
|
||||
Column4=ReadingCommon.EnumToString(new List<ImagingOverallAssessment_Lugano>() { ImagingOverallAssessment_Lugano.NMRSD }),
|
||||
},
|
||||
//SD NE NE NMR/SD
|
||||
//14、SD NE NE NMR/SD
|
||||
new CalculationDto(){
|
||||
Column1=ReadingCommon.EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.SD }),
|
||||
Column2=ReadingCommon.EnumToString(new List<FDGPETOverallAssessment>() { FDGPETOverallAssessment.NE }),
|
||||
|
@ -2953,7 +2975,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
if (baseLineSPD > 0)
|
||||
{
|
||||
eqPR = (presentSPD - baseLineSPD) / baseLineSPD > 0.5m;
|
||||
eqPR = (presentSPD - baseLineSPD) / baseLineSPD <=- 0.5m;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2982,7 +3004,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
{
|
||||
result = TargetAssessment.CR;
|
||||
}
|
||||
// 与基线相比SPD变化的百分比 ≥50%,;
|
||||
// 与基线相比SPD变化的百分比 <=-50%,;
|
||||
else if (eqPR)
|
||||
{
|
||||
result = TargetAssessment.PR;
|
||||
|
|
|
@ -63,13 +63,24 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
private List<SiteVisitForTumor> siteVisitForTumorList = new List<SiteVisitForTumor>();
|
||||
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
return new
|
||||
{
|
||||
};
|
||||
}
|
||||
|
||||
#region 删除病灶获取起始病灶序号
|
||||
/// <summary>
|
||||
/// 删除病灶获取起始病灶序号
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<int> GetDeleteLesionStatrIndex(DeleteReadingRowAnswerInDto inDto)
|
||||
#region 删除病灶获取起始病灶序号
|
||||
/// <summary>
|
||||
/// 删除病灶获取起始病灶序号
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<int> GetDeleteLesionStatrIndex(DeleteReadingRowAnswerInDto inDto)
|
||||
{
|
||||
var rowInfo = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.RowId).Include(x => x.ReadingQuestionTrial).FirstNotNullAsync();
|
||||
if (rowInfo.ReadingQuestionTrial.LesionType == LesionType.NewLesions)
|
||||
|
|
|
@ -56,9 +56,21 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
|
||||
}
|
||||
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
return new
|
||||
{
|
||||
};
|
||||
}
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
|
||||
/// <summary>
|
||||
/// 获取Sod的值
|
||||
|
|
|
@ -56,9 +56,21 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
|
||||
}
|
||||
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
return new
|
||||
{
|
||||
};
|
||||
}
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
#region 临时对象 单个请求的生命周期 避免重复查询数据库
|
||||
|
||||
private List<VisitTaskAnswerInfo> visitTaskAnswerList;
|
||||
|
||||
/// <summary>
|
||||
/// 获取Sod的值
|
||||
|
|
|
@ -63,13 +63,24 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
private List<SiteVisitForTumor> siteVisitForTumorList = new List<SiteVisitForTumor>() ;
|
||||
|
||||
/// <summary>
|
||||
/// 获取阅片的计算数据
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<object> GetReadingCalculationData(GetReadingCalculationDataInDto inDto)
|
||||
{
|
||||
return new
|
||||
{
|
||||
};
|
||||
}
|
||||
|
||||
#region 删除病灶获取起始病灶序号
|
||||
/// <summary>
|
||||
/// 删除病灶获取起始病灶序号
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<int> GetDeleteLesionStatrIndex(DeleteReadingRowAnswerInDto inDto)
|
||||
#region 删除病灶获取起始病灶序号
|
||||
/// <summary>
|
||||
/// 删除病灶获取起始病灶序号
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<int> GetDeleteLesionStatrIndex(DeleteReadingRowAnswerInDto inDto)
|
||||
{
|
||||
return 1;
|
||||
|
||||
|
|
|
@ -101,6 +101,8 @@ namespace IRaCIS.Core.Domain.Models
|
|||
/// </summary>
|
||||
public Guid TrialReadingCriterionId { get; set; }
|
||||
|
||||
public Guid? SystemQuestionId { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
[ForeignKey("ParentId")]
|
||||
public ReadingMedicineTrialQuestion ParentQuestion { get; set; }
|
||||
|
|
Loading…
Reference in New Issue