Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing

This commit is contained in:
2025-09-12 16:14:57 +08:00
14 changed files with 38520 additions and 53 deletions
@@ -8685,11 +8685,6 @@
截图地址
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ReadingTableAnswerRowInfoBase.FristAddTaskNum">
<summary>
第一次添加的任务ID
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ReadingTableAnswerRowInfoBase.CreateUserId">
<summary>
CreateUserId
@@ -855,12 +855,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// </summary>
public string? PicturePath { get; set; }
/// <summary>
/// 第一次添加的任务ID
/// </summary>
public decimal FristAddTaskNum { get; set; } = 0;
public SplitOrMergeType? SplitOrMergeType { get; set; }
/// <summary>
@@ -1033,6 +1027,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string MergeName { get; set; }
public decimal FristAddTaskNum { get; set; }
/// <summary>
/// 病灶类型
/// </summary>
@@ -2350,8 +2346,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public bool? IsCanEditPosition { get; set; }
public decimal FristAddTaskNum { get; set; } = 0;
public decimal? WW { get; set; }
public decimal? WL { get; set; }
@@ -280,6 +280,7 @@ namespace IRaCIS.Core.Application.Service
.ForMember(d => d.ReadingQuestionSystemId, u => u.MapFrom(s => s.Id));
CreateMap<ReadingTableAnswerRowInfo, TableAnsweRowInfo>()
.ForMember(d => d.FristAddTaskNum, u => u.MapFrom(s => s.FristAddTask.VisitTaskNum))
.ForMember(dest => dest.CreateUserRole, opt => opt.Ignore())
.ForMember(d => d.MergeName, u => u.MapFrom(s => s.MergeRow == null ? string.Empty : s.MergeRow.ReadingQuestionTrial.OrderMark + s.MergeRow.RowIndex.GetLesionMark()))
.ForMember(d => d.SplitName, u => u.MapFrom(s => s.SplitRow == null ? string.Empty : s.SplitRow.ReadingQuestionTrial.OrderMark + s.SplitRow.RowIndex.GetLesionMark()))
@@ -179,7 +179,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
var baseLineVisitId = await _subjectVisitRepository.Where(x => x.SubjectId == visitTask.SubjectId && x.IsBaseLine).Select(x => x.Id).FirstOrDefaultAsync();
var rowInfoList = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == visitTaskId).ToListAsync();
var rowInfoList = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == visitTaskId).Include(x=>x.FristAddTask).ToListAsync();
var baseLinetaskId = await _visitTaskRepository.Where(x => x.SourceSubjectVisitId == baseLineVisitId && x.TaskState == TaskState.Effect
&& x.TrialReadingCriterionId == visitTask.TrialReadingCriterionId
@@ -228,7 +228,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
RowIndex = x.RowIndex,
MeasureData = x.MeasureData,
OtherMeasureData = x.OtherMeasureData,
FristAddTaskNum = x.FristAddTaskNum,
FristAddTaskNum = x.FristAddTask.VisitTaskNum,
TableQuestionList = tableQuestion.Where(y => y.QuestionId == item.QuestionId && y.RowId == x.Id).ToList(),
}).ToList();
@@ -702,7 +702,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IsCurrentTaskAdd = true,
BlindName = taskinfo.TaskBlindName,
OrderMark = questionInfo.OrderMark,
FristAddTaskNum = taskinfo.VisitTaskNum,
FristAddTaskId = taskinfo.Id,
RowMark = questionInfo.OrderMark + decimal.Parse(maxnum.ToString()).GetLesionMark()
});
@@ -842,7 +841,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IsCurrentTaskAdd = true,
BlindName = inDto.BlindName,
OrderMark = questionInfo.OrderMark,
FristAddTaskNum = inDto.VisitTaskNum,
FristAddTaskId = inDto.VisitTaskId,
RowMark = questionInfo.OrderMark + decimal.Parse(item.ToString()).GetLesionMark()
});
@@ -903,7 +901,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IsCurrentTaskAdd = true,
BlindName = inDto.BlindName,
OrderMark = pAVquestionInfo.OrderMark,
FristAddTaskNum = inDto.VisitTaskNum,
FristAddTaskId = inDto.VisitTaskId,
RowMark = pAVquestionInfo.OrderMark + decimal.Parse(item.ToString()).GetLesionMark()
});
@@ -867,30 +867,45 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
TrialId = x.TrialId,
}).ToListAsync();
foreach (var item in recistTableAnswers)
{
item.QuestionId = tableRowAnswers.Where(y => y.OriginalId == item.RowId).Select(x => x.QuestionId).FirstOrDefault();
item.TableQuestionId = tableQuestionList.Where(x => x.ReadingQuestionId == item.QuestionId && x.QuestionMark == item.QuestionMark).Select(x => x.Id).FirstOrDefault();
}
foreach (var item in recistTableAnswers)
{
var rowinfo = tableRowAnswers.Where(y => y.OriginalId == item.RowId).FirstOrDefault();
if (rowinfo != null)
{
item.QuestionId = rowinfo.QuestionId;
var IslymphNode= recistTableAnswers.Where(x=>x.RowId== item.RowId&&x.QuestionMark==QuestionMark.IsLymph).Select(x=>x.Answer).FirstIsNullReturnEmpty().EqEnum(YesOrNoOrNa.Yes);
var minorAxis= recistTableAnswers.Where(x => x.RowId == item.RowId && x.QuestionMark == QuestionMark.ShortAxis).Select(x => x.Answer).FirstIsNullReturnEmpty().IsNullOrEmptyReturn0();
var iSbetween15and20= minorAxis >= 15 && minorAxis < 20;
if (item.QuestionMark == QuestionMark.State && IslymphNode && iSbetween15and20 && rowinfo.LesionType == LesionType.TargetLesion)
{
item.Answer = string.Empty;
}
}
item.TableQuestionId = tableQuestionList.Where(x => x.ReadingQuestionId == item.QuestionId && x.QuestionMark == item.QuestionMark).Select(x => x.Id).FirstOrDefault();
}
recistTableAnswers = recistTableAnswers.Where(x => x.TableQuestionId != default(Guid)).ToList();
List<QuestionMark?> notNeedCopyMarks = new List<QuestionMark?>()
{
};
var tableAnswers = recistTableAnswers.Select(x => new ReadingTableQuestionAnswer
{
Id = NewId.NextGuid(),
Answer = notNeedCopyMarks.Contains(x.QuestionMark) ? string.Empty : x.Answer,
QuestionId = x.QuestionId,
RowIndex = x.RowIndex,
RowId = tableRowAnswers.Where(y => y.OriginalId == x.RowId).Select(x => x.Id).FirstOrDefault(),
TableQuestionId = x.TableQuestionId,
TrialId = x.TrialId,
VisitTaskId = visitTaskId,
}).ToList();
List<QuestionMark?> notNeedCopyMarks = new List<QuestionMark?>()
{
};
var tableAnswers = recistTableAnswers.Select(x => new ReadingTableQuestionAnswer
{
Id = NewId.NextGuid(),
Answer = notNeedCopyMarks.Contains(x.QuestionMark) ? string.Empty : x.Answer,
QuestionId = x.QuestionId,
RowIndex = x.RowIndex,
RowId = tableRowAnswers.Where(y => y.OriginalId == x.RowId).Select(x => x.Id).FirstOrDefault(),
TableQuestionId = x.TableQuestionId,
TrialId = x.TrialId,
VisitTaskId = visitTaskId,
}).ToList();
// 添加 典型肝内病灶 默认值
tableRowAnswers.ForEach(x =>
@@ -558,7 +558,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IsCurrentTaskAdd = true,
BlindName = taskinfo.TaskBlindName,
OrderMark = questionInfo.OrderMark,
FristAddTaskNum = taskinfo.VisitTaskNum,
FristAddTaskId = taskinfo.Id,
RowMark = questionInfo.OrderMark + decimal.Parse(maxnum.ToString()).GetLesionMark()
});
@@ -769,7 +768,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IsCurrentTaskAdd = true,
BlindName = taskinfo.TaskBlindName,
OrderMark = questionInfo.OrderMark,
FristAddTaskNum = taskinfo.VisitTaskNum,
FristAddTaskId = taskinfo.Id,
RowMark = questionInfo.OrderMark + decimal.Parse(maxnum.ToString()).GetLesionMark()
});
@@ -1043,7 +1041,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
IsCurrentTaskAdd = true,
BlindName = inDto.BlindName,
OrderMark = patchDataStatisticsInfo.OrderMark,
FristAddTaskNum = inDto.VisitTaskNum,
FristAddTaskId = inDto.VisitTaskId,
RowMark = patchDataStatisticsInfo.OrderMark + decimal.Parse(item.ToString()).GetLesionMark()
});