Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8
This commit is contained in:
@@ -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
|
||||
|
||||
+13
-7
@@ -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;
|
||||
});
|
||||
|
||||
+16
-1
@@ -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);
|
||||
|
||||
+20
-6
@@ -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的值
|
||||
|
||||
+11
-1
@@ -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);
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+9
-1
@@ -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的值
|
||||
|
||||
+14
-2
@@ -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;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user