IRC_NewDev
parent
88931a4a56
commit
8b7cc8a220
|
@ -4867,6 +4867,21 @@
|
|||
序号标记
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.MergeLesionInDto.MergeRowId">
|
||||
<summary>
|
||||
融合的病灶
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.MergeLesionInDto.MeltingInToLesionList">
|
||||
<summary>
|
||||
融向的病灶
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.MergeLesionInDto.LesionState">
|
||||
<summary>
|
||||
融合后病灶状态
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetCustomTagInDto.VisitTaskId">
|
||||
<summary>
|
||||
任务Id
|
||||
|
|
|
@ -334,10 +334,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
|||
/// </summary>
|
||||
public List<Guid> MeltingInToLesionList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 融合后病灶状态
|
||||
/// </summary>
|
||||
public string LesionState { get; set; }
|
||||
///// <summary>
|
||||
///// 融合后病灶状态
|
||||
///// </summary>
|
||||
//public string LesionState { get; set; }
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1465,24 +1465,30 @@ namespace IRaCIS.Application.Services
|
|||
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
|
||||
public async Task MergeLesion(MergeLesionInDto inDto)
|
||||
{
|
||||
await VerifyTaskIsSign(inDto.VisitTaskId);
|
||||
await this.VerifyIsBaseLineTask(inDto.VisitTaskId);
|
||||
var mergeRow =await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.MergeRowId).FirstNotNullAsync();
|
||||
if (inDto.LesionState != string.Empty)
|
||||
{
|
||||
await _readingTableQuestionAnswerRepository.BatchUpdateNoTrackingAsync(x => x.RowId == mergeRow.Id && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State, x => new ReadingTableQuestionAnswer()
|
||||
{
|
||||
Answer = inDto.LesionState,
|
||||
});
|
||||
}
|
||||
|
||||
await _readingTableAnswerRowInfoRepository.UpdatePartialFromQueryAsync(inDto.MergeRowId, x => new ReadingTableAnswerRowInfo()
|
||||
{
|
||||
MeltingInToLesion=JsonConvert.SerializeObject(inDto.MeltingInToLesionList),
|
||||
SplitOrMergeType = SplitOrMergeType.Merge,
|
||||
});
|
||||
await _readingTableAnswerRowInfoRepository.SaveChangesAsync();
|
||||
}
|
||||
await VerifyTaskIsSign(inDto.VisitTaskId);
|
||||
await this.VerifyIsBaseLineTask(inDto.VisitTaskId);
|
||||
var mergeRow = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.MergeRowId).FirstNotNullAsync();
|
||||
|
||||
await _readingTableQuestionAnswerRepository.BatchUpdateNoTrackingAsync(x => x.RowId == mergeRow.Id && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State, x => new ReadingTableQuestionAnswer()
|
||||
{
|
||||
Answer = TargetState.Loss.GetEnumInt(),
|
||||
});
|
||||
|
||||
|
||||
await _readingTableAnswerRowInfoRepository.UpdatePartialFromQueryAsync(inDto.MergeRowId, x => new ReadingTableAnswerRowInfo()
|
||||
{
|
||||
MeltingInToLesion = JsonConvert.SerializeObject(inDto.MeltingInToLesionList),
|
||||
SplitOrMergeType = SplitOrMergeType.Merge,
|
||||
});
|
||||
await _readingTableAnswerRowInfoRepository.SaveChangesAsync();
|
||||
|
||||
await this._readingCalculateService.CalculateTask(new CalculateTaskInDto()
|
||||
{
|
||||
IsChangeOtherTask = false,
|
||||
VisitTaskId = inDto.VisitTaskId,
|
||||
ComputationTrigger = ComputationTrigger.Lesion,
|
||||
});
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取可合并的病灶
|
||||
|
|
Loading…
Reference in New Issue