导出模板修改

Test_HIR_Net8
he 2025-09-25 13:33:19 +08:00
parent 2530843931
commit 17ce41209f
5 changed files with 60 additions and 10 deletions

View File

@ -7357,6 +7357,11 @@
签名时间
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ExportVisitData.IsConvertedTask">
<summary>
是否为转变任务
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ExportVisitData.DoctorSignTime">
<summary>
医生签名时间

View File

@ -283,6 +283,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string OneDoctorSign { get; set; } = string.Empty;
public bool OneIsConvertedTask { get; set; } = false;
public string TwoVisitName { get; set; } = string.Empty;
public string TwoCheckDate { get; set; } = string.Empty;
@ -339,6 +341,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string TwoDoctorSign { get; set; } = string.Empty;
public bool TwoIsConvertedTask { get; set; } = false;
public string ThreeVisitName { get; set; } = string.Empty;
public string ThreeCheckDate { get; set; } = string.Empty;
@ -393,6 +397,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string ThreeDoctorSignTime { get; set; } = string.Empty;
public string ThreeDoctorSign { get; set; } = string.Empty;
public bool ThreeIsConvertedTask { get; set; } = false;
}
public class ExportVisitData
@ -488,6 +494,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// </summary>
public string SignTime { get; set; } = string.Empty;
/// <summary>
/// 是否为转变任务
/// </summary>
public bool IsConvertedTask { get; set; } = false;
/// <summary>
/// 医生签名时间
/// </summary>

View File

@ -101,6 +101,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
.Include(x => x.SourceSubjectVisit).Include(x => x.SourceSubjectVisit.StudyList)
.Include(x => x.DoctorUser).ToListAsync();
var isConvertedTaskList= await _visitTaskRepository.Where(x => relatedTaskIds.Contains(x.Id)).Select(x => new { x.Id, x.IsConvertedTask }).ToListAsync();
string getHavePreviousNewLesions(Guid visitId)
@ -134,8 +136,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
HaveNewLesion = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.NewLesions),
// 是否有明确既往新病灶 // 结果为IPUD就是有 其他的是无
HavePreviousNewLesions = getHavePreviousNewLesions(x.Id),
// 是否有明确既往新病灶
IsConvertedTask= isConvertedTaskList.Where(y=>y.Id==x.Id).Select(x=>x.IsConvertedTask).FirstOrDefault(),
// 是否有触发iRECIST后新病灶
HaveTriggeringIRECSITNewLesions = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.IRECISTNewTargetLesion),
NewTargetResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.NewTargetLesion),
@ -232,6 +234,19 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
var subjectName = subjectInfo.ShortName;
var subjectCode = string.Join(",", patientIdStrList); //患者编号;
foreach (var item in exportVisitDatas)
{
if (!item.IsConvertedTask)
{
item.HavePreviousNewLesions = "NA";
item.HaveTriggeringIRECSITNewLesions = "NA";
item.NewTargetResult = "NA";
item.NewNoTargetResult = "NA";
item.OtherPreviousNewLesionResult = "NA";
item.TriggeringIRECSITResult = "NA";
item.NewLesionEvaluationResult = "NA";
}
}
List<ExportTumorEvaluationInfo> resultdata = new List<ExportTumorEvaluationInfo>();
@ -252,6 +267,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
"OtherPreviousNewLesionResult",
"TriggeringIRECSITResult",
"NewLesionEvaluationResult",
"IsConvertedTask",
};
var forCount = (int)Math.Ceiling((double)exportVisitDatas.Count() / 3);
@ -518,6 +534,14 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
new ExportReportQuestion (){QuestionType=QuestionType.LowVisit},
};
var evaluationList= new List<ExportReportQuestion>()
{ new ExportReportQuestion (){QuestionType=QuestionType.TargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NoTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NewLesions},
new ExportReportQuestion (){ QuestionType=QuestionType.ExistDisease},
new ExportReportQuestion (){ QuestionType=QuestionType.Tumor }
};
var isConvertedTask = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Select(x => x.IsConvertedTask).FirstOrDefaultAsync();
if (isConvertedTask)
@ -529,6 +553,22 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
});
evaluationList = new List<ExportReportQuestion>()
{
new ExportReportQuestion (){QuestionType=QuestionType.TargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NoTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NewLesions},
new ExportReportQuestion (){ QuestionType=QuestionType.NewTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NewNoTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.OtherNewTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.IRECISTNewTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NewLesionEvaluation},
new ExportReportQuestion (){ QuestionType=QuestionType.ExistDisease},
new ExportReportQuestion (){ QuestionType=QuestionType.Tumor }
};
}
var assessmentResult = string.Empty;
@ -585,13 +625,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{ "TNMValue",taskinfo.TNMValue}, // TNM分期
{ "Result",getQuestionAnswerList(resultList)}, // 评估结果
{ "Curative",getQuestionAnswerList(new List<ExportReportQuestion>()
{ new ExportReportQuestion (){QuestionType=QuestionType.TargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NoTargetLesion},
new ExportReportQuestion (){ QuestionType=QuestionType.NewLesions},
new ExportReportQuestion (){ QuestionType=QuestionType.ExistDisease},
new ExportReportQuestion (){ QuestionType=QuestionType.Tumor},
})}, // 疗效结果
{ "Curative",getQuestionAnswerList(evaluationList)}, // 疗效结果
{ "ReportNo",await _generalCalculateService.GetReportExportNo(taskinfo) } ,
};

View File

@ -255,7 +255,7 @@ public class VisitTask : BaseFullAuditEntity
[Projectable]
[JsonIgnore]
public bool IsConvertedTask => BeforeConvertedTaskId != null || IsHistoryConvertedTask || Subject.SubjectVisitTaskList.Where(t => t.TrialReadingCriterionId == TrialReadingCriterionId
&& t.DoctorUserId == DoctorUserId && t.BeforeConvertedTaskId != null
&& t.BeforeConvertedTaskId != null
&& t.TaskState == TaskState.Effect
&& t.VisitTaskNum < VisitTaskNum
&& t.IsSelfAnalysis == IsSelfAnalysis