修改
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
9b3e4194a9
commit
5b08640a02
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,4 +1,5 @@
|
||||||
using DocumentFormat.OpenXml.Wordprocessing;
|
using DocumentFormat.OpenXml.Wordprocessing;
|
||||||
|
using IRaCIS.Core.Infra.EFCore.Common;
|
||||||
using MassTransit.Caching.Internals;
|
using MassTransit.Caching.Internals;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
|
|
@ -522,7 +523,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
return VisitTargetInfoList.Sum(x => x.VisitLength);
|
return VisitTargetInfoList.Sum(x => x.VisitLength.IsNullOrEmptyReturn0());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -618,7 +619,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 长度
|
/// 长度
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public decimal? VisitLength { get; set; }
|
public string VisitLength { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -151,10 +151,10 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
||||||
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
||||||
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
||||||
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion, x.Id),
|
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion, x.Id,1),
|
||||||
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id),
|
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id,1),
|
||||||
NewVisitTargetInfoList = getLesionInfo(LesionType.NewTargetLesion, x.Id),
|
NewVisitTargetInfoList = getLesionInfo(LesionType.NewTargetLesion, x.Id,1),
|
||||||
NewNoVisitTargetInfoList = getLesionInfo(LesionType.NewNonTargetLesion, x.Id),
|
NewNoVisitTargetInfoList = getLesionInfo(LesionType.NewNonTargetLesion, x.Id,1),
|
||||||
}).OrderBy(x => x.VisitNum).ToList();
|
}).OrderBy(x => x.VisitNum).ToList();
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -203,7 +203,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
return targetInfo;
|
return targetInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
decimal getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
// 靶病灶和新靶病灶取长度 其他病灶取状态
|
||||||
|
string getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
||||||
{
|
{
|
||||||
// 非淋巴结取长径 淋巴结取长短径
|
// 非淋巴结取长径 淋巴结取长短径
|
||||||
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
||||||
|
|
@ -214,19 +215,25 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
|
||||||
var result = string.Empty;
|
var result = string.Empty;
|
||||||
|
|
||||||
|
|
||||||
|
switch (lesionType)
|
||||||
|
{
|
||||||
|
case LesionType.TargetLesion:
|
||||||
|
case LesionType.NewTargetLesion:
|
||||||
if (!majorAxis.IsNullOrEmpty())
|
if (!majorAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = majorAxis;
|
result = majorAxis;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = shortAxis;
|
result = shortAxis;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
return result.IsNullOrEmptyReturn0();
|
default:
|
||||||
|
result = state;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.MsForms;
|
using DocumentFormat.OpenXml.Drawing.Charts;
|
||||||
|
using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.MsForms;
|
||||||
using IRaCIS.Application.Contracts;
|
using IRaCIS.Application.Contracts;
|
||||||
using IRaCIS.Core.Application.Contracts;
|
using IRaCIS.Core.Application.Contracts;
|
||||||
using IRaCIS.Core.Application.Helper;
|
using IRaCIS.Core.Application.Helper;
|
||||||
|
|
@ -101,13 +102,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
||||||
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
||||||
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
||||||
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion, x.Id),
|
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion, x.Id, 1),
|
||||||
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id),
|
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id, 1),
|
||||||
}).OrderBy(x => x.VisitNum).ToList();
|
}).OrderBy(x => x.VisitNum).ToList();
|
||||||
|
|
||||||
|
|
||||||
#region 两个函数
|
#region 两个函数
|
||||||
List<VisitLesionInfo> getLesionInfo(LesionType lesionType, Guid Visittaskid)
|
List<VisitLesionInfo> getLesionInfo(LesionType lesionType, Guid Visittaskid, int? minNum = null)
|
||||||
{
|
{
|
||||||
var targetFocus = rowinfoList.Where(x => x.VisitTaskId == Visittaskid && x.ReadingQuestionTrial.LesionType == lesionType).OrderBy(x => x.RowIndex).ToList();
|
var targetFocus = rowinfoList.Where(x => x.VisitTaskId == Visittaskid && x.ReadingQuestionTrial.LesionType == lesionType).OrderBy(x => x.RowIndex).ToList();
|
||||||
|
|
||||||
|
|
@ -142,24 +143,25 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
num++;
|
num++;
|
||||||
|
|
||||||
}
|
}
|
||||||
//if (lesionType == LesionType.TargetLesion)
|
|
||||||
//{
|
|
||||||
// for (int i = num; i <= 5; i++)
|
|
||||||
// {
|
|
||||||
// VisitLesionInfo target = new VisitLesionInfo
|
|
||||||
// {
|
|
||||||
// Number = i,
|
|
||||||
// };
|
|
||||||
// targetInfo.Add(target);
|
|
||||||
|
|
||||||
// }
|
if (minNum != null)
|
||||||
|
{
|
||||||
|
for (int i = num; i <= minNum.Value; i++)
|
||||||
|
{
|
||||||
|
VisitLesionInfo target = new VisitLesionInfo
|
||||||
|
{
|
||||||
|
Number = i,
|
||||||
|
};
|
||||||
|
targetInfo.Add(target);
|
||||||
|
|
||||||
//}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
return targetInfo;
|
return targetInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
decimal getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
// 靶病灶和新靶病灶取长度 其他病灶取状态
|
||||||
|
string getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
||||||
{
|
{
|
||||||
// 非淋巴结取长径 淋巴结取长短径
|
// 非淋巴结取长径 淋巴结取长短径
|
||||||
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
||||||
|
|
@ -170,19 +172,25 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
|
||||||
var result = string.Empty;
|
var result = string.Empty;
|
||||||
|
|
||||||
|
|
||||||
|
switch (lesionType)
|
||||||
|
{
|
||||||
|
case LesionType.TargetLesion:
|
||||||
|
case LesionType.NewTargetLesion:
|
||||||
if (!majorAxis.IsNullOrEmpty())
|
if (!majorAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = majorAxis;
|
result = majorAxis;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = shortAxis;
|
result = shortAxis;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
return result.IsNullOrEmptyReturn0();
|
default:
|
||||||
|
result = state;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -116,13 +116,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
||||||
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
||||||
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
||||||
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion,x.Id),
|
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion,x.Id,1),
|
||||||
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id),
|
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id,1),
|
||||||
}).OrderBy(x=>x.VisitNum).ToList();
|
}).OrderBy(x=>x.VisitNum).ToList();
|
||||||
|
|
||||||
|
|
||||||
#region 两个函数
|
#region 两个函数
|
||||||
List<VisitLesionInfo> getLesionInfo(LesionType lesionType,Guid Visittaskid)
|
List<VisitLesionInfo> getLesionInfo(LesionType lesionType,Guid Visittaskid, int? minNum = null)
|
||||||
{
|
{
|
||||||
var targetFocus = rowinfoList.Where(x => x.VisitTaskId == Visittaskid && x.ReadingQuestionTrial.LesionType == lesionType).OrderBy(x => x.RowIndex).ToList();
|
var targetFocus = rowinfoList.Where(x => x.VisitTaskId == Visittaskid && x.ReadingQuestionTrial.LesionType == lesionType).OrderBy(x => x.RowIndex).ToList();
|
||||||
|
|
||||||
|
|
@ -149,47 +149,55 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
num++;
|
num++;
|
||||||
|
|
||||||
}
|
}
|
||||||
//if (lesionType == LesionType.TargetLesion)
|
if (minNum != null)
|
||||||
//{
|
{
|
||||||
// for (int i = num; i <= 5; i++)
|
for (int i = num; i <= minNum.Value; i++)
|
||||||
// {
|
{
|
||||||
// VisitLesionInfo target = new VisitLesionInfo
|
VisitLesionInfo target = new VisitLesionInfo
|
||||||
// {
|
{
|
||||||
// Number = i,
|
Number = i,
|
||||||
// };
|
};
|
||||||
// targetInfo.Add(target);
|
targetInfo.Add(target);
|
||||||
|
|
||||||
// }
|
}
|
||||||
|
|
||||||
//}
|
}
|
||||||
|
|
||||||
return targetInfo;
|
return targetInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
decimal getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
// 靶病灶和新靶病灶取长度 其他病灶取状态
|
||||||
|
string getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
||||||
{
|
{
|
||||||
// 非淋巴结取长径 淋巴结取长短径
|
// 非淋巴结取长径 淋巴结取长短径
|
||||||
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
||||||
var majorAxis = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.MajorAxis, item,false);
|
var majorAxis = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.MajorAxis, item, false);
|
||||||
|
|
||||||
var isLymph = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.IsLymph, item);
|
var isLymph = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.IsLymph, item);
|
||||||
var shortAxis = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.ShortAxis, item, false);
|
var shortAxis = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.ShortAxis, item, false);
|
||||||
|
|
||||||
var result = string.Empty;
|
var result = string.Empty;
|
||||||
|
|
||||||
|
|
||||||
|
switch (lesionType)
|
||||||
|
{
|
||||||
|
case LesionType.TargetLesion:
|
||||||
|
case LesionType.NewTargetLesion:
|
||||||
if (!majorAxis.IsNullOrEmpty())
|
if (!majorAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = majorAxis;
|
result = majorAxis;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = shortAxis;
|
result = shortAxis;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
return result.IsNullOrEmptyReturn0();
|
case LesionType.NonTargetLesions:
|
||||||
|
case LesionType.NewNonTargetLesion:
|
||||||
|
result = state;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -112,8 +112,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
OverallResult = _generalCalculateService.GetTaskanswer(answerList, dictionList, unitDictionary, x.Id, QuestionType.Tumor),
|
||||||
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
DoctorName = x.DoctorUser.LastName + x.DoctorUser.FirstName,
|
||||||
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
SignTime = x.SignTime?.ToString("yyyy-MM-dd HH:mm:ss"),
|
||||||
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion, x.Id),
|
VisitTargetInfoList = getLesionInfo(LesionType.TargetLesion, x.Id,1),
|
||||||
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id),
|
VisitNoTargetInfoList = getLesionInfo(LesionType.NonTargetLesions, x.Id,1),
|
||||||
}).OrderBy(x => x.VisitNum).ToList();
|
}).OrderBy(x => x.VisitNum).ToList();
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -162,7 +162,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
return targetInfo;
|
return targetInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
decimal getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
// 靶病灶和新靶病灶取长度 其他病灶取状态
|
||||||
|
string getStateInfo(Guid visitTaskid, decimal item, LesionType lesionType)
|
||||||
{
|
{
|
||||||
// 非淋巴结取长径 淋巴结取长短径
|
// 非淋巴结取长径 淋巴结取长短径
|
||||||
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
var state = _generalCalculateService.GetTaskTableAnswer(tableAnswerList, dictionList, unitDictionary, visitTaskid, lesionType, QuestionMark.State, item);
|
||||||
|
|
@ -173,19 +174,25 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
|
||||||
var result = string.Empty;
|
var result = string.Empty;
|
||||||
|
|
||||||
|
|
||||||
|
switch (lesionType)
|
||||||
|
{
|
||||||
|
case LesionType.TargetLesion:
|
||||||
|
case LesionType.NewTargetLesion:
|
||||||
if (!majorAxis.IsNullOrEmpty())
|
if (!majorAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = majorAxis;
|
result = majorAxis;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
if (isLymph.EqEnum(YesOrNoOrNa.Yes) && !shortAxis.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
result = shortAxis;
|
result = shortAxis;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
return result.IsNullOrEmptyReturn0();
|
default:
|
||||||
|
result = state;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue