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:
2024-03-07 17:18:05 +08:00
16 changed files with 279 additions and 61 deletions
@@ -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;