Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8

IRC_NewDev
hang 2024-03-08 10:30:35 +08:00
commit 40ab925a4e
2 changed files with 25 additions and 26 deletions

View File

@ -301,7 +301,7 @@ namespace IRaCIS.Application.Services
var readingId = await _readingClinicalDataRepository.Where(x => x.Id == inDto.ReadingClinicalDataId).Select(x => x.ReadingId).FirstOrDefaultAsync(); var readingId = await _readingClinicalDataRepository.Where(x => x.Id == inDto.ReadingClinicalDataId).Select(x => x.ReadingId).FirstOrDefaultAsync();
await this.iServiceProvider.GetService<IReadingImageTaskService>().AddOncologyTask(readingId); //await this.iServiceProvider.GetService<IReadingImageTaskService>().AddOncologyTask(readingId);
await DealVisiTaskClinicalDataSignedAsync(data.TrialId, data.SubjectId, data.ReadingId, data.IsVisit, inDto.TrialReadingCriterionId); await DealVisiTaskClinicalDataSignedAsync(data.TrialId, data.SubjectId, data.ReadingId, data.IsVisit, inDto.TrialReadingCriterionId);

View File

@ -909,13 +909,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
if (stateQuestion != null) if (stateQuestion != null)
{ {
// 找到主病灶的状态 //// 找到主病灶的状态
var state = await _readingTableQuestionAnswerRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && x.RowIndex == (int)Math.Floor(inDto.RowNumber) && x.TableQuestionId == stateQuestion.Id).Select(x => x.Answer).FirstOrDefaultAsync(); //var state = await _readingTableQuestionAnswerRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && x.RowIndex == (int)Math.Floor(inDto.RowNumber) && x.TableQuestionId == stateQuestion.Id).Select(x => x.Answer).FirstOrDefaultAsync();
// 长径 // 长径
var majorAxis = (await _readingTableQuestionAnswerRepository.Where(x => var majorAxis = (await _readingTableQuestionAnswerRepository.Where(x =>
x.VisitTaskId == inDto.VisitTaskId && x.VisitTaskId == inDto.VisitTaskId &&
x.RowIndex == (int)Math.Floor(inDto.RowNumber) && x.RowIndex == inDto.RowNumber &&
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.MajorAxis && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.MajorAxis &&
x.QuestionId == targetQuestion.Id x.QuestionId == targetQuestion.Id
).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0(); ).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0();
@ -923,7 +923,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
// 短径 // 短径
var shortAxis = (await _readingTableQuestionAnswerRepository.Where(x => var shortAxis = (await _readingTableQuestionAnswerRepository.Where(x =>
x.VisitTaskId == inDto.VisitTaskId && x.VisitTaskId == inDto.VisitTaskId &&
x.RowIndex == (int)Math.Floor(inDto.RowNumber) && x.RowIndex == inDto.RowNumber &&
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.ShortAxis && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.ShortAxis &&
x.QuestionId == targetQuestion.Id x.QuestionId == targetQuestion.Id
).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0(); ).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0();
@ -946,7 +946,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
var lowPPDInfo = await GetLowPPDInfo(new GetPPDInfoInDto() var lowPPDInfo = await GetLowPPDInfo(new GetPPDInfoInDto()
{ {
RowIndex = (int)Math.Floor(inDto.RowNumber), RowIndex = inDto.RowNumber,
VisitTaskId = inDto.VisitTaskId, VisitTaskId = inDto.VisitTaskId,
QuestionId = inDto.QuestionId, QuestionId = inDto.QuestionId,
}); });
@ -977,18 +977,18 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
} }
); );
} }
else if (state == TargetState.DiseaseProgression.GetEnumInt()) //else if (state == TargetState.DiseaseProgression.GetEnumInt())
{ //{
await _readingTableQuestionAnswerRepository.UpdatePartialFromQueryAsync(x => // //await _readingTableQuestionAnswerRepository.UpdatePartialFromQueryAsync(x =>
x.VisitTaskId == inDto.VisitTaskId && // // x.VisitTaskId == inDto.VisitTaskId &&
x.RowIndex == inDto.RowNumber && // // x.RowIndex == inDto.RowNumber &&
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State && // // x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State &&
x.QuestionId == targetQuestion.Id, x => new ReadingTableQuestionAnswer() // // x.QuestionId == targetQuestion.Id, x => new ReadingTableQuestionAnswer()
{ // // {
Answer = TargetState.Exist.GetEnumInt() // // Answer = TargetState.Exist.GetEnumInt()
} // // }
); // // );
} //}
} }
@ -1023,7 +1023,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
// 长径 // 长径
var majorAxis = (await _readingTableQuestionAnswerRepository.Where(x => var majorAxis = (await _readingTableQuestionAnswerRepository.Where(x =>
x.VisitTaskId == inDto.VisitTaskId && x.VisitTaskId == inDto.VisitTaskId &&
x.RowIndex == (int)Math.Floor(inDto.RowNumber) && x.RowIndex >= (int)Math.Floor(inDto.RowNumber) && x.RowIndex < ((int)Math.Floor(inDto.RowNumber) + 1) &&
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.MajorAxis && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.MajorAxis &&
x.QuestionId== targetQuestion.Id x.QuestionId== targetQuestion.Id
).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0(); ).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0();
@ -1031,7 +1031,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
// 短径 // 短径
var shortAxis = (await _readingTableQuestionAnswerRepository.Where(x => var shortAxis = (await _readingTableQuestionAnswerRepository.Where(x =>
x.VisitTaskId == inDto.VisitTaskId && x.VisitTaskId == inDto.VisitTaskId &&
x.RowIndex == (int)Math.Floor(inDto.RowNumber) && x.RowIndex >= (int)Math.Floor(inDto.RowNumber) && x.RowIndex < ((int)Math.Floor(inDto.RowNumber) + 1) &&
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.ShortAxis && x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.ShortAxis &&
x.QuestionId == targetQuestion.Id x.QuestionId == targetQuestion.Id
).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0(); ).Select(x => x.Answer).FirstOrDefaultAsync()).IsNullOrEmptyReturn0();
@ -2949,7 +2949,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
if (item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.IsLymph && x.Answer.EqEnum(YesOrNoOrNa.Yes))) if (item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.IsLymph && x.Answer.EqEnum(YesOrNoOrNa.Yes)))
{ {
// 当前访视淋巴结靶病灶的状态全部变为“消失” // 当前访视淋巴结靶病灶的状态全部变为“消失”
eqCR = eqCR && item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(TargetState.Loss)); eqCR = eqCR && item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.State && (x.Answer.EqEnum(TargetState.Loss)|| x.Answer.EqEnum(TargetState.TooSmall)));
} }
} }
// 1、与基线相比SPD变化的百分比 ≥50% // 1、与基线相比SPD变化的百分比 ≥50%
@ -2998,8 +2998,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{ {
result = TargetAssessment.NE; result = TargetAssessment.NE;
} }
//当前访视非淋巴结靶病灶全部消失; //当前访视非淋巴结靶病灶全部消失 && (当前访视淋巴结靶病灶的状态全部变为“消失” 或者 "太小"
//并且 2.当前访视淋巴结靶病灶的状态全部变为“消失”。
else if (eqCR) else if (eqCR)
{ {
result = TargetAssessment.CR; result = TargetAssessment.CR;