Uat_Study
hang 2023-03-15 15:32:50 +08:00
commit 75badd8b69
23 changed files with 2363 additions and 160 deletions

View File

@ -1498,6 +1498,250 @@
<param name="inDto"></param>
<returns></returns>
</member>
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.sODData">
<summary>
获取Sod的值
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.GetDeleteLesionStatrIndex(IRaCIS.Core.Application.Service.Reading.Dto.DeleteReadingRowAnswerInDto)">
<summary>
删除病灶获取起始病灶序号RECIST1Point1 固定是1
</summary>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.GetReadingReportEvaluation(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingReportEvaluationInDto)">
<summary>
获取阅片报告
</summary>
<param name="indto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.TestCalculate(System.Guid,IRaCIS.Core.Domain.Share.QuestionType)">
<summary>
测试计算
</summary>
<param name="visitTaskId"></param>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.ReadingCalculate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto,System.Collections.Generic.List{IRaCIS.Core.Domain.Share.QuestionType})">
<summary>
自动计算
</summary>
<param name="inDto"></param>
<param name="calculateType"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.GetReportTumor(System.Guid)">
<summary>
获取报告整体整体评估
</summary>
<param name="visitTaskId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.GetReportIsExistDisease(System.Guid)">
<summary>
获取报告是否存在疾病
</summary>
<param name="visitTaskId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.AddTaskLesionAnswerFromLastTask(IRaCIS.Core.Application.ViewModel.AddTaskLesionAnswerFromLastTaskInDto)">
<summary>
将上一次的访视病灶添加到这一次
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.GetIsAddFiveRowIndexs(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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.GetLastVisitTaskId(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
<summary>
获取上一个访视任务Id
</summary>
<returns></returns>
</member>
<!-- Badly formed XML comment ignored for member "M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.GetTargetLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)" -->
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.RECIST1Point1_BMCalculateService.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.RECIST1Point1_BMCalculateService.GetNewLesionEvaluate(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
<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>
删除病灶获取起始病灶序号
@ -4107,26 +4351,6 @@
整体疗效
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetTumorAssessmentListInDto.TargetLesion">
<summary>
靶病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetTumorAssessmentListInDto.NonTargetLesions">
<summary>
非靶病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetTumorAssessmentListInDto.NewLesion">
<summary>
新病灶
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetTumorAssessmentListInDto.OverallEfficacy">
<summary>
整体疗效
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.SetCriterionDictionaryDto.IsBaseLineUse">
<summary>
IsBaseLineUse
@ -5892,32 +6116,12 @@
</summary>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.TA.ReadingQuestionService.GetTumorAssessmentList(IRaCIS.Core.Application.Service.Reading.Dto.GetTumorAssessmentListInDto)">
<summary>
获取疗效对照
</summary>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.TA.ReadingQuestionService.GetTumorAssessmentPageList(IRaCIS.Core.Application.Service.Reading.Dto.GetTumorAssessmentListInDto)">
<summary>
获取疗效对照
</summary>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.TA.ReadingQuestionService.AddOrUpdateTumorAssessment(IRaCIS.Core.Application.Service.Reading.Dto.AddOrUpdateTumorAssessmentInDto)">
<summary>
新增修改疗效对照
</summary>
<param name="indto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.TA.ReadingQuestionService.DeleteTumorAssessment(System.Guid)">
<summary>
删除疗效对照
</summary>
<param name="Id"></param>
<returns></returns>
</member>
<member name="T:IRaCIS.Core.Application.Service.ShortcutKeyService">
<summary>
快捷键服务
@ -9644,6 +9848,13 @@
<returns></returns>
</member>
<member name="M:IRaCIS.Application.Services.ReadingQuestionService.SynchronizeSystemCriterionQuestion(IRaCIS.Core.Application.Service.Reading.Dto.SynchronizeSystemCriterionInDto)">
<summary>
同步系统标准
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Application.Services.ReadingQuestionService.SynchronizeCriterion(IRaCIS.Core.Application.Service.Reading.Dto.SynchronizeCriterionInDto)">
<summary>
同步标准到项目新2022-08-10

View File

@ -726,7 +726,7 @@ namespace IRaCIS.Core.Application.Service.Common
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstOrDefaultAsync();
if (criterion.CriterionType != CriterionType.RECIST1Pointt1)
if (criterion.CriterionType != CriterionType.RECIST1Point1)
{
throw new Exception("当前标准导出还未支持");
}
@ -807,7 +807,7 @@ namespace IRaCIS.Core.Application.Service.Common
{
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstOrDefaultAsync();
if (criterion.CriterionType != CriterionType.RECIST1Pointt1)
if (criterion.CriterionType != CriterionType.RECIST1Point1)
{
throw new Exception("当前标准导出还未支持");
}
@ -927,7 +927,7 @@ namespace IRaCIS.Core.Application.Service.Common
var list = new List<ExportDocumentDes>();
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == trialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstOrDefaultAsync();
if (criterion.CriterionType == CriterionType.RECIST1Pointt1)
if (criterion.CriterionType == CriterionType.RECIST1Point1)
{
list.Add(new ExportDocumentDes() { Code = StaticData.Export.OverallTumorEvaluation_Export, ExportCatogory = ExportCatogory.OverallTumorEvaluation });
list.Add(new ExportDocumentDes() { Code = StaticData.Export.RECIST1Point1EvaluationOfTumorEfficacy_Export, ExportCatogory = ExportCatogory.EvaluationOfTumorEfficacy });
@ -974,7 +974,7 @@ namespace IRaCIS.Core.Application.Service.Common
//每次查询必须是单标准的
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstNotNullAsync();
if (criterion.CriterionType != CriterionType.RECIST1Pointt1 && criterion.CriterionType != CriterionType.PCWG3)
if (criterion.CriterionType != CriterionType.RECIST1Point1 && criterion.CriterionType != CriterionType.PCWG3)
{
throw new Exception("当前标准导出还未支持");
}
@ -1055,7 +1055,7 @@ namespace IRaCIS.Core.Application.Service.Common
var exportInfo = (await _trialRepository.Where(t => t.Id == queryVisitTask.TrialId).IgnoreQueryFilters().ProjectTo<ExcelExportInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
exportInfo.CriterionName = criterion.CriterionName;
if (criterion.CriterionType == CriterionType.RECIST1Pointt1)
if (criterion.CriterionType == CriterionType.RECIST1Point1)
{
var list = await query.ProjectTo<RECIST1Point1EvaluationOfTumorEfficacyExport>(_mapper.ConfigurationProvider, new { criterionType = criterion.CriterionType }).ToListAsync();
@ -1115,7 +1115,7 @@ namespace IRaCIS.Core.Application.Service.Common
var exportInfo = (await _trialRepository.Where(t => t.Id == queryVisitTask.TrialId).IgnoreQueryFilters().ProjectTo<ExcelExportInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
exportInfo.CriterionName = criterion.CriterionName;
if (criterion.CriterionType == CriterionType.RECIST1Pointt1)
if (criterion.CriterionType == CriterionType.RECIST1Point1)
{
var list = await query.ProjectTo<RECIST1Point1DetailedOfEvaluatedLesionExport>(_mapper.ConfigurationProvider, new { criterionType = criterion.CriterionType, isEn_Us = _userInfo.IsEn_Us }).ToListAsync();

View File

@ -1165,7 +1165,7 @@ namespace IRaCIS.Core.Application.Service
{
case CriterionType.RECIST1Pointt1:
case CriterionType.RECIST1Point1:
if (readingCategory == ReadingCategory.Visit)
{

View File

@ -837,8 +837,8 @@ namespace IRaCIS.Core.Application.Contracts
public string UserName { get; set; }
[DictionaryTranslateAttribute("ExistDisease", CriterionType.RECIST1Pointt1, nameof(OverallTumorEvaluationExport.IsBaseline), "true")]
[DictionaryTranslateAttribute("OverallAssessment", CriterionType.RECIST1Pointt1, nameof(OverallTumorEvaluationExport.IsBaseline), "false")]
[DictionaryTranslateAttribute("ExistDisease", CriterionType.RECIST1Point1, nameof(OverallTumorEvaluationExport.IsBaseline), "true")]
[DictionaryTranslateAttribute("OverallAssessment", CriterionType.RECIST1Point1, nameof(OverallTumorEvaluationExport.IsBaseline), "false")]
[DictionaryTranslateAttribute("VisitTumorEvaluation", CriterionType.PCWG3)]
//整体肿瘤评估结果 需要翻译
@ -857,16 +857,16 @@ namespace IRaCIS.Core.Application.Contracts
public class RECIST1Point1EvaluationOfTumorEfficacyExport : OverallTumorEvaluationExport
{
[DictionaryTranslateAttribute("TargetAssessment", CriterionType.RECIST1Pointt1)]
[DictionaryTranslateAttribute("TargetAssessment", CriterionType.RECIST1Point1)]
// 靶病灶评估
public string TargetlesionEvaluationResult { get; set; }
[DictionaryTranslateAttribute("NoTargetAssessment", CriterionType.RECIST1Pointt1)]
[DictionaryTranslateAttribute("NoTargetAssessment", CriterionType.RECIST1Point1)]
// 非靶病灶评估
public string NoneTargetlesionEvaluationResult { get; set; }
// 是否存在新病灶
[DictionaryTranslateAttribute("NewLesionAssessment", CriterionType.RECIST1Pointt1)]
[DictionaryTranslateAttribute("NewLesionAssessment", CriterionType.RECIST1Point1)]
public string IsExistNewlesionEvaluationResult { get; set; }

View File

@ -173,7 +173,7 @@ namespace IRaCIS.Core.Application.Service
.ForMember(o => o.IsBaseline, t => t.MapFrom(u => u.SourceSubjectVisit.IsBaseLine))
.ForMember(o => o.OverallTumorEvaluationResult, t => t.MapFrom(u =>
criterionType == CriterionType.RECIST1Pointt1 ?( u.SourceSubjectVisit.IsBaseLine==true ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).FirstOrDefault().Answer:
criterionType == CriterionType.RECIST1Point1 ?( u.SourceSubjectVisit.IsBaseLine==true ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).FirstOrDefault().Answer:
u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.Tumor).FirstOrDefault().Answer)
: criterionType == CriterionType.PCWG3 ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.SiteVisitForTumorEvaluation).FirstOrDefault().Answer : String.Empty
))

View File

@ -393,6 +393,12 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid SystemCriterionId { get; set; }
public string Part { get; set; }
public string TULAT { get; set; }
public string TULOC { get; set; }
}

View File

@ -47,29 +47,41 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
public class ColumnInfo
{
public string ColumnName { get; set; }
public string ColumnKey { get; set; }
public string DictionaryKey { get; set; }
}
public class GetTumorAssessmentListInDto:PageInput
{
public Guid CriterionId { get; set; }
//public Guid CriterionId { get; set; }
/// <summary>
/// 靶病灶
/// </summary>
public TargetAssessment? TargetLesion { get; set; }
public CriterionType CriterionType { get; set; }
/// <summary>
/// 靶病灶
/// </summary>
public NoTargetAssessment? NonTargetLesions { get; set; }
///// <summary>
///// 靶病灶
///// </summary>
//public TargetAssessment? TargetLesion { get; set; }
/// <summary>
///病灶
/// </summary>
public NewLesionAssessment? NewLesion { get; set; }
///// <summary>
///// 非靶病灶
///// </summary>
//public NoTargetAssessment? NonTargetLesions { get; set; }
/// <summary>
/// 整体疗效
/// </summary>
public OverallAssessment? OverallEfficacy { get; set; }
///// <summary>
///// 新病灶
///// </summary>
//public NewLesionAssessment? NewLesion { get; set; }
///// <summary>
///// 整体疗效
///// </summary>
//public OverallAssessment? OverallEfficacy { get; set; }
}
public class CopySystemCriterionDataInDto
{
@ -565,6 +577,14 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
{
public Guid OriginalId { get; set; }
}
public class SynchronizeSystemCriterionInDto
{
public Guid FromSystemCriterionId { get; set; }
public Guid ToSystemCriterionId { get; set; }
}
public class SynchronizeCriterionInDto
{
[NotDefault]

View File

@ -94,6 +94,9 @@ namespace IRaCIS.Core.Application.Service
var organInfoQueryable = _organInfoRepository
.Where(x => x.SystemCriterionId == inQuery.SystemCriterionId)
.WhereIf(!inQuery.Part.IsNullOrEmpty() , x => x.Part.Contains(inQuery.Part))
.WhereIf(!inQuery.TULOC.IsNullOrEmpty(), x => x.TULOC.Contains(inQuery.TULOC))
.WhereIf(!inQuery.TULAT.IsNullOrEmpty(), x => x.TULAT.Contains(inQuery.TULAT))
.WhereIf(inQuery.LesionType != null, x => organs.Contains(x.OrganType))
.WhereIf(inQuery.OrganType != null, x => x.OrganType == inQuery.OrganType)
.ProjectTo<OrganInfoView>(_mapper.ConfigurationProvider);

View File

@ -30,7 +30,7 @@ namespace IRaCIS.Application.Services
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingCriterionPage> _readingCriterionPageRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<ReadingTableQuestionSystem> _readingTableQuestionSystemRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer;
@ -50,7 +50,7 @@ namespace IRaCIS.Application.Services
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingCriterionPage> readingCriterionPageRepository,
IRepository<Trial> trialRepository,
IRepository<TumorAssessment> tumorAssessmentRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<ReadingTableQuestionSystem> readingTableQuestionSystemRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswer,
@ -827,6 +827,94 @@ namespace IRaCIS.Application.Services
return ResponseOutput.Ok();
}
/// <summary>
/// 同步系统标准
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task SynchronizeSystemCriterionQuestion(SynchronizeSystemCriterionInDto inDto)
{
// 先找到项目系统问题Id和项目问题Id的对应关系
var questionRelation = _readingQuestionSystemRepository.Where(x => x.ReadingQuestionCriterionSystemId == inDto.FromSystemCriterionId).ToDictionary(
x => x.Id,
x => NewId.NextGuid()
);
var newQuestionList = await _readingQuestionSystemRepository.Where(x => x.ReadingQuestionCriterionSystemId == inDto.FromSystemCriterionId).ProjectTo<AddOrUpdateReadingQuestionSystemInDto>(_mapper.ConfigurationProvider).ToListAsync();
var copyNewQuestionList = newQuestionList.Clone();
var needAddDatas = new List<ReadingQuestionSystem>();
foreach (var x in newQuestionList)
{
var question = x.Clone();
question.ReadingQuestionCriterionSystemId = inDto.ToSystemCriterionId;
question.Id = questionRelation[question.Id.Value];
if (question.ParentId != null)
{
question.ParentId = questionRelation[question.ParentId ?? default(Guid)];
}
if (question.GroupId != null)
{
question.GroupId = questionRelation[question.GroupId ?? default(Guid)];
}
if (question.RelevanceId != null)
{
question.RelevanceId = questionRelation[question.RelevanceId ?? default(Guid)];
}
needAddDatas.Add(_mapper.Map<ReadingQuestionSystem>(question));
};
await _readingQuestionSystemRepository.BatchDeleteNoTrackingAsync(x => x.ReadingQuestionCriterionSystemId == inDto.ToSystemCriterionId);
await _readingQuestionSystemRepository.AddRangeAsync(needAddDatas);
var tableQuestionRelation = _readingTableQuestionSystemRepository.Where(x => x.SystemCriterionId == inDto.FromSystemCriterionId).ToDictionary(
x => x.Id,
x => NewId.NextGuid()
);
var newtableQuestion =await _readingTableQuestionSystemRepository.Where(x => x.SystemCriterionId == inDto.FromSystemCriterionId).ToListAsync();
var copyNewTableQuestionList = newtableQuestion.Clone();
var needAddTableDatas = new List<ReadingTableQuestionSystem>();
foreach (var x in newtableQuestion)
{
var tableQuestion = x.Clone();
tableQuestion.SystemCriterionId = inDto.ToSystemCriterionId;
tableQuestion.Id = tableQuestionRelation[tableQuestion.Id];
tableQuestion.ReadingQuestionId = questionRelation[tableQuestion.ReadingQuestionId];
if (tableQuestion.ParentId != null)
{
tableQuestion.ParentId = tableQuestionRelation[tableQuestion.ParentId.Value];
}
if (tableQuestion.RelevanceId != null)
{
tableQuestion.RelevanceId = tableQuestionRelation[tableQuestion.RelevanceId.Value]; ;
}
if (tableQuestion.DependParentId != null)
{
tableQuestion.DependParentId = tableQuestionRelation[tableQuestion.DependParentId.Value]; ;
}
needAddTableDatas.Add(tableQuestion);
}
await _readingTableQuestionSystemRepository.BatchDeleteNoTrackingAsync(x => x.SystemCriterionId == inDto.ToSystemCriterionId);
await _readingTableQuestionSystemRepository.AddRangeAsync(needAddTableDatas);
await _readingTableQuestionSystemRepository.SaveChangesAsync();
}
/// <summary>
/// 同步标准到项目新2022-08-10
/// </summary>

View File

@ -15,77 +15,100 @@ namespace IRaCIS.Core.Application.Service.TA
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadingQuestionService : BaseService
{
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
public ReadingQuestionService( IRepository<TumorAssessment> tumorAssessmentRepository )
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository1Point1;
private readonly IRepository<TumorAssessment_RECIST1Point1BM> _tumorAssessmentRepository1Point1BM;
public ReadingQuestionService( IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository1Point1,
IRepository<TumorAssessment_RECIST1Point1BM> tumorAssessmentRepository1Point1BM
)
{
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._tumorAssessmentRepository1Point1 = tumorAssessmentRepository1Point1;
this._tumorAssessmentRepository1Point1BM = tumorAssessmentRepository1Point1BM;
}
///// <summary>
///// 获取疗效对照
///// </summary>
///// <returns></returns>
//[HttpPost]
//public async Task<List<TumorAssessmentView>> GetTumorAssessmentList(GetTumorAssessmentListInDto inDto)
//{
// var result = await _tumorAssessmentRepository
// .Where(x => x.CriterionId == inDto.CriterionId)
// .WhereIf(inDto.OverallEfficacy != null, x => x.OverallEfficacy == inDto.OverallEfficacy)
// .WhereIf(inDto.TargetLesion != null, x => x.TargetLesion == inDto.TargetLesion)
// .WhereIf(inDto.NonTargetLesions != null, x => x.NonTargetLesions == inDto.NonTargetLesions)
// .WhereIf(inDto.NewLesion != null, x => x.NewLesion == inDto.NewLesion)
// .ProjectTo<TumorAssessmentView>(_mapper.ConfigurationProvider).ToListAsync();
// return result;
//}
/// <summary>
/// 获取疗效对照
/// </summary>
/// <returns></returns>
[HttpPost]
public async Task<List<TumorAssessmentView>> GetTumorAssessmentList(GetTumorAssessmentListInDto inDto)
public async Task<(object,List<ColumnInfo>)> GetTumorAssessmentPageList(GetTumorAssessmentListInDto inQuery)
{
var result = await _tumorAssessmentRepository
.Where(x => x.CriterionId == inDto.CriterionId)
.WhereIf(inDto.OverallEfficacy != null, x => x.OverallEfficacy == inDto.OverallEfficacy)
.WhereIf(inDto.TargetLesion != null, x => x.TargetLesion == inDto.TargetLesion)
.WhereIf(inDto.NonTargetLesions != null, x => x.NonTargetLesions == inDto.NonTargetLesions)
.WhereIf(inDto.NewLesion != null, x => x.NewLesion == inDto.NewLesion)
.ProjectTo<TumorAssessmentView>(_mapper.ConfigurationProvider).ToListAsync();
return result;
}
var result = new object();
List<ColumnInfo> columnList = new List<ColumnInfo>();
switch (inQuery.CriterionType)
{
case CriterionType.RECIST1Point1:
result= await _tumorAssessmentRepository1Point1.AsQueryable().ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? nameof(TumorAssessmentView.Id) : inQuery.SortField, inQuery.Asc);
columnList = new List<ColumnInfo>()
{
new ColumnInfo(){ ColumnName="靶病灶",ColumnKey=nameof(TumorAssessment_RECIST1Point1.TargetLesion),DictionaryKey=typeof(TargetAssessment).Name },
new ColumnInfo(){ ColumnName="非靶病灶",ColumnKey=nameof(TumorAssessment_RECIST1Point1.NonTargetLesions),DictionaryKey=typeof(NoTargetAssessment).Name },
new ColumnInfo(){ ColumnName="新病灶",ColumnKey=nameof(TumorAssessment_RECIST1Point1.NewLesion),DictionaryKey=typeof(NewLesionAssessment).Name },
new ColumnInfo(){ ColumnName="整体疗效",ColumnKey=nameof(TumorAssessment_RECIST1Point1.OverallEfficacy),DictionaryKey=typeof(OverallAssessment).Name },
};
break;
case CriterionType.RECIST1Pointt1_MB:
result = await _tumorAssessmentRepository1Point1BM.AsQueryable().ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? nameof(TumorAssessmentView.Id) : inQuery.SortField, inQuery.Asc);
columnList = new List<ColumnInfo>()
{
new ColumnInfo(){ ColumnName="靶病灶",ColumnKey=nameof(TumorAssessment_RECIST1Point1.TargetLesion),DictionaryKey=typeof(TargetAssessment).Name },
new ColumnInfo(){ ColumnName="非靶病灶",ColumnKey=nameof(TumorAssessment_RECIST1Point1.NonTargetLesions),DictionaryKey=typeof(NoTargetAssessment).Name },
new ColumnInfo(){ ColumnName="新病灶",ColumnKey=nameof(TumorAssessment_RECIST1Point1.NewLesion),DictionaryKey=typeof(NewLesionAssessment).Name },
new ColumnInfo(){ ColumnName="整体疗效",ColumnKey=nameof(TumorAssessment_RECIST1Point1.OverallEfficacy),DictionaryKey=typeof(OverallAssessment).Name },
};
break;
}
/// <summary>
/// 获取疗效对照
/// </summary>
/// <returns></returns>
[HttpPost]
public async Task<PageOutput<TumorAssessmentView>> GetTumorAssessmentPageList(GetTumorAssessmentListInDto inQuery)
{
var query = _tumorAssessmentRepository
.Where(x => x.CriterionId == inQuery.CriterionId)
.WhereIf(inQuery.OverallEfficacy != null, x => x.OverallEfficacy == inQuery.OverallEfficacy)
.WhereIf(inQuery.TargetLesion != null, x => x.TargetLesion == inQuery.TargetLesion)
.WhereIf(inQuery.NonTargetLesions != null, x => x.NonTargetLesions == inQuery.NonTargetLesions)
.WhereIf(inQuery.NewLesion != null, x => x.NewLesion == inQuery.NewLesion)
.ProjectTo<TumorAssessmentView>(_mapper.ConfigurationProvider);
return (result, columnList);
return await query.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? nameof(TumorAssessmentView.Id) : inQuery.SortField, inQuery.Asc);
}
/// <summary>
/// 新增修改疗效对照
/// </summary>
/// <param name="indto"></param>
/// <returns></returns>
[HttpPost]
public async Task<IResponseOutput> AddOrUpdateTumorAssessment(AddOrUpdateTumorAssessmentInDto indto)
{
///// <summary>
///// 新增修改疗效对照
///// </summary>
///// <param name="indto"></param>
///// <returns></returns>
//[HttpPost]
//public async Task<IResponseOutput> AddOrUpdateTumorAssessment(AddOrUpdateTumorAssessmentInDto indto)
//{
var entity = await _tumorAssessmentRepository.InsertOrUpdateAsync(indto, true);
// var entity = await _tumorAssessmentRepository.InsertOrUpdateAsync(indto, true);
return ResponseOutput.Ok(entity.Id.ToString());
// return ResponseOutput.Ok(entity.Id.ToString());
}
//}
/// <summary>
/// 删除疗效对照
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
[HttpDelete("{Id:guid}")]
public async Task<IResponseOutput> DeleteTumorAssessment(Guid Id)
{
await _tumorAssessmentRepository.DeleteFromQueryAsync(t => t.Id == Id);
var success = await _tumorAssessmentRepository.SaveChangesAsync();
return ResponseOutput.Result(success);
}
///// <summary>
///// 删除疗效对照
///// </summary>
///// <param name="Id"></param>
///// <returns></returns>
//[HttpDelete("{Id:guid}")]
//public async Task<IResponseOutput> DeleteTumorAssessment(Guid Id)
//{
// await _tumorAssessmentRepository.DeleteFromQueryAsync(t => t.Id == Id);
// var success = await _tumorAssessmentRepository.SaveChangesAsync();
// return ResponseOutput.Result(success);
//}
}
}

View File

@ -43,7 +43,7 @@ namespace IRaCIS.Application.Services
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<ReadingCriterionDictionary> _readingCriterionDictionaryRepository;
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingTableQuestionSystem> _readingTableQuestionSystemRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
@ -80,7 +80,7 @@ namespace IRaCIS.Application.Services
IRepository<OrganInfo> organInfoRepository,
IMemoryCache cache,
IRepository<ReadingCriterionDictionary> readingCriterionDictionaryRepository,
IRepository<TumorAssessment> tumorAssessmentRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingTableQuestionSystem> readingTableQuestionSystemRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
@ -1381,7 +1381,7 @@ namespace IRaCIS.Application.Services
// 2 对于淋巴结病灶,验证当前访视该病灶的短径 > 上一访视该病灶的短径。
// 约束条件:两次访视该病灶的短径有测量值。
// 提示语:当前访视该淋巴结病灶的短径小于上一访视的值,不能设置为显著增大。
case CriterionType.RECIST1Pointt1:
case CriterionType.RECIST1Point1:
var lastTaskinfo = await _visitTaskRepository
.Where(x => x.IsAnalysisCreate == taskinfo.IsAnalysisCreate &&
x.SubjectId==taskinfo.SubjectId&&
@ -1551,7 +1551,7 @@ namespace IRaCIS.Application.Services
{
Dictionary<CriterionType, string> errorMsgDic = new Dictionary<CriterionType, string>()
{
{CriterionType.RECIST1Pointt1, _localizer["ReadingImage_Maxlesion", item.MaxRowCount.Value]},
{CriterionType.RECIST1Point1, _localizer["ReadingImage_Maxlesion", item.MaxRowCount.Value]},
{CriterionType.PCWG3, _localizer["ReadingImage_PCWGMaximum", item.MaxRowCount.Value]},
};

View File

@ -20,7 +20,7 @@ namespace IRaCIS.Core.Application.Service
CreateMap<ReadingPeriodSetAddOrEdit, ReadingPeriodSet>();
CreateMap<AddOrUpdateTumorAssessmentInDto, TumorAssessment>();
CreateMap<AddOrUpdateTumorAssessmentInDto, TumorAssessment_RECIST1Point1>();
CreateMap<ReadingPeriodSet, ReadingPeriodSetView>()
.ForMember(d => d.SubjectVisitName, u => u.MapFrom(s => s.VisitStage==null?string.Empty: s.VisitStage.VisitName))
@ -73,7 +73,7 @@ namespace IRaCIS.Core.Application.Service
CreateMap<ReadModuleAddOrEdit, ReadModule>();
CreateMap<TumorAssessment, TumorAssessmentView>();
CreateMap<TumorAssessment_RECIST1Point1, TumorAssessmentView>();
CreateMap<CopyTableAnswerRowInfo, ReadingTableAnswerRowInfo>();
@ -169,10 +169,10 @@ namespace IRaCIS.Core.Application.Service
CreateMap<AddOrUpdateReadingQuestionCriterionSystemInDto, ReadingQuestionCriterionSystem>();
CreateMap<ReadingQuestionCriterionSystem, ReadingQuestionCriterionSystemView>()
.ForMember(d => d.QuestionCount, u => u.MapFrom(s => s.ReadingQuestionSystemList.Count()));
//.ForMember(d => d.IsEnable, u => u.MapFrom(s => s.Dictionary.IsEnable))
//.ForMember(d => d.ShowOrder, u => u.MapFrom(s => s.Dictionary.ShowOrder));
//.ForMember(d => d.IsEnable, u => u.MapFrom(s => s.Dictionary.IsEnable))
//.ForMember(d => d.ShowOrder, u => u.MapFrom(s => s.Dictionary.ShowOrder));
CreateMap<ReadingQuestionSystem, AddOrUpdateReadingQuestionSystemInDto>();
CreateMap<AddOrUpdateReadingQuestionSystemInDto, ReadingQuestionSystem>();
CreateMap<ReadingQuestionSystem, ReadingQuestionSystemView>()
.ForMember(d => d.GroupName, u => u.MapFrom(s => s.GroupInfo==null?s.GroupName:s.GroupInfo.GroupName))

View File

@ -19,7 +19,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public GeneralCalculateService(
@ -30,7 +30,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<TumorAssessment> tumorAssessmentRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{

View File

@ -27,7 +27,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
@ -42,7 +42,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IRepository<OrganInfo> organInfoRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<NoneDicomStudy> noneDicomStudyRepository,
IRepository<TumorAssessment> tumorAssessmentRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)

View File

@ -26,7 +26,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
@ -39,7 +39,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<TumorAssessment> tumorAssessmentRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)

View File

@ -16,7 +16,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
/// </summary>
Dictionary<CriterionType, Type> CalculateServiceDic = new Dictionary<CriterionType, Type>()
{
{CriterionType.RECIST1Pointt1,typeof(RECIST1Point1CalculateService) }, //RECIST1.1
{CriterionType.RECIST1Point1,typeof(RECIST1Point1CalculateService) }, //RECIST1.1
{CriterionType.PCWG3,typeof(PCWG3CalculateService) },
{CriterionType.SelfDefine,typeof(SelfDefineCalculateService) }
};

View File

@ -27,7 +27,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<TumorAssessment> _tumorAssessmentRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
@ -42,7 +42,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IRepository<OrganInfo> organInfoRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<NoneDicomStudy> noneDicomStudyRepository,
IRepository<TumorAssessment> tumorAssessmentRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)

View File

@ -224,7 +224,7 @@ namespace IRaCIS.Core.Domain.Share
/// <summary>
/// RECIST 1.1
/// </summary>
RECIST1Pointt1 = 1,
RECIST1Point1 = 1,
/// <summary>
/// PCWG3
@ -299,7 +299,12 @@ namespace IRaCIS.Core.Domain.Share
/// <summary>
/// IMWG 2016
/// </summary>
IMWG2016 = 9
IMWG2016 = 9,
/// <summary>
/// RECIST 1.1-BM
/// </summary>
RECIST1Pointt1_MB = 17
}

View File

@ -9,11 +9,11 @@ using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models
{
///<summary>
///肿瘤评估(系统标准)
///</summary>
[Table("TumorAssessment")]
public class TumorAssessment : Entity
///<summary>
///RECIST1Point1肿瘤评估(系统标准)
///</summary>
[Table("TumorAssessment_RECIST1Point1")]
public class TumorAssessment_RECIST1Point1 : Entity
{
/// <summary>
@ -35,12 +35,6 @@ namespace IRaCIS.Core.Domain.Models
/// 整体疗效
/// </summary>
public OverallAssessment OverallEfficacy { get; set; }
/// <summary>
/// 标准ID(系统标准Id)
/// </summary>
public Guid CriterionId { get; set; }
}
}

View File

@ -0,0 +1,40 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2022-08-22 10:06:13
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using System;
using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models
{
///<summary>
///RECIST1Point1BM肿瘤评估(系统标准)
///</summary>
[Table("TumorAssessment_RECIST1Point1BM")]
public class TumorAssessment_RECIST1Point1BM : Entity
{
/// <summary>
/// 靶病灶
/// </summary>
public TargetAssessment TargetLesion { get; set; }
/// <summary>
/// 非靶病灶
/// </summary>
public NoTargetAssessment NonTargetLesions { get; set; }
/// <summary>
/// 新病灶
/// </summary>
public NewLesionAssessment NewLesion { get; set; }
/// <summary>
/// 整体疗效
/// </summary>
public OverallAssessment OverallEfficacy { get; set; }
}
}

View File

@ -599,18 +599,18 @@ namespace IRaCIS.Core.Infra.EFCore.Common
//疗效评估
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TumorAssessment)))
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TumorAssessment_RECIST1Point1)))
{
var type = GetEntityAuditOpt(item);
var entity = item.Entity as TumorAssessment;
var entity = item.Entity as TumorAssessment_RECIST1Point1;
await InsertInspection<TumorAssessment>(entity, type, x => new InspectionConvertDTO()
await InsertInspection<TumorAssessment_RECIST1Point1>(entity, type, x => new InspectionConvertDTO()
{
IsDistinctionInterface = false,
ObjectRelationParentId = entity.CriterionId
//ObjectRelationParentId = entity.CriterionId
});
}

View File

@ -262,7 +262,8 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet<ReadingTableQuestionTrial> ReadingTableQuestionTrial { get; set; }
public virtual DbSet<TumorAssessment> TumorAssessment { get; set; }
public virtual DbSet<TumorAssessment_RECIST1Point1BM> TumorAssessment_RECIST1Point1BM { get; set; }
public virtual DbSet<TumorAssessment_RECIST1Point1> TumorAssessment_RECIST1Point1 { get; set; }
public virtual DbSet<TrialClinicalDataSetCriterion> TrialClinicalDataSetCriterion { get; set; }