uat-发布导表-1

Test_IRC_Net8
hang 2025-12-04 15:21:31 +08:00
parent 4c4807c22e
commit d8b799f057
1 changed files with 144 additions and 80 deletions

View File

@ -185,16 +185,16 @@ public class OctExportDto : IVUS_OCTBaseDto
public string LAMAX { get; set; }
/// <summary>巨噬细胞浸润</summary>
public string MACRI { get; set; }
public string PLAMACRI { get; set; }
/// <summary>巨噬细胞浸润角度</summary>
public string MIARC { get; set; }
public string PLAMIARC { get; set; }
/// <summary>微通道</summary>
public string MC { get; set; }
public string PLAMC { get; set; }
/// <summary>胆固醇结晶</summary>
public string CCS { get; set; }
public string PLACCS { get; set; }
}
@ -459,98 +459,162 @@ public class IVUS_OCTExportService(IRepository<ReadingQuestionCriterionTrial> _r
{
pNoIndex++;
var findFct1 = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.FirstFCT).FirstOrDefault();
if (findFct1 != null)
foreach (var lessionAnswer in fctLesion?.LessionAnswerList.Where(t => t.QuestionMark != QuestionMark.PlaqueNumber).OrderBy(t=>t.ShowOrder))
{
var oct = CreatOCT(task, pNo);
var mark = string.Empty;
switch (lessionAnswer.QuestionMark)
{
case QuestionMark.FirstFCT:
mark = "FCTMV1";
break;
case QuestionMark.SecondFCT:
mark = "FCTMV2";
break;
case QuestionMark.ThirdFCT:
mark = "FCTMV3";
break;
case QuestionMark.AvgFCT:
mark = "AVGFCT";
break;
case QuestionMark.MacrophageInfiltration:
mark = "MACRI";
break;
case QuestionMark.MacrophageExtensionAngle:
mark = "MIARC";
break;
case QuestionMark.Microchannels:
mark = "MC";
break;
case QuestionMark.CholesterolCrystallization:
mark = "CCS";
break;
case QuestionMark.LumenArea:
mark = "LUMEN";
break;
// 测量标识
}
oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
if (mark.IsNotNullOrEmpty())
{
var oct = CreatOCT(task, pNo);
// 测量参数名称
// 测量标识 阅片人_斑块号_表格_行号
oct.TESTCD = "FCTMV1";
oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// 测量参数值
oct.ORRES = findFct1?.QuestionValue ?? string.Empty;
// 测量参数名称
// 测量值单位
oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)findFct1.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
oct.TESTCD = mark;
octList.Add(oct);
// 测量参数值
oct.ORRES = lessionAnswer?.QuestionValue ?? string.Empty;
// 测量值单位
oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)lessionAnswer.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
octList.Add(oct);
}
}
var findFct2 = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.SecondFCT).FirstOrDefault();
if (findFct2 != null)
{
var oct = CreatOCT(task, pNo);
// 测量标识
oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// 测量参数名称
oct.TESTCD = "FCTMV2";
// 测量参数值
oct.ORRES = findFct2?.QuestionValue ?? string.Empty;
// 测量值单位
oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)findFct2.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
octList.Add(oct);
}
var findFct3 = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.ThirdFCT).FirstOrDefault();
if (findFct3 != null)
{
var oct = CreatOCT(task, pNo);
// 测量标识
oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// 测量参数名称
oct.TESTCD = "FCTMV3";
// 测量参数值
oct.ORRES = findFct3?.QuestionValue ?? string.Empty;
// 测量值单位
oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)findFct3.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
octList.Add(oct);
}
#region 废弃
var avgFct = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.AvgFCT).FirstOrDefault();
//var findFct1 = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.FirstFCT).FirstOrDefault();
if (avgFct != null)
{
var oct = CreatOCT(task, pNo);
//if (findFct1 != null)
//{
// var oct = CreatOCT(task, pNo);
// 测量标识
// // 测量标识
oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// 测量参数名称
// // 测量参数名称
oct.TESTCD = "AVGFCT";
// oct.TESTCD = "FCTMV1";
// 测量参数值
oct.ORRES = avgFct?.QuestionValue ?? string.Empty;
// // 测量参数值
// oct.ORRES = findFct1?.QuestionValue ?? string.Empty;
// 测量值单位
oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)avgFct.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
// // 测量值单位
// oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)findFct1.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
octList.Add(oct);
}
// octList.Add(oct);
//}
//var findFct2 = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.SecondFCT).FirstOrDefault();
//if (findFct2 != null)
//{
// var oct = CreatOCT(task, pNo);
// // 测量标识
// oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// // 测量参数名称
// oct.TESTCD = "FCTMV2";
// // 测量参数值
// oct.ORRES = findFct2?.QuestionValue ?? string.Empty;
// // 测量值单位
// oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)findFct2.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
// octList.Add(oct);
//}
//var findFct3 = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.ThirdFCT).FirstOrDefault();
//if (findFct3 != null)
//{
// var oct = CreatOCT(task, pNo);
// // 测量标识
// oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// // 测量参数名称
// oct.TESTCD = "FCTMV3";
// // 测量参数值
// oct.ORRES = findFct3?.QuestionValue ?? string.Empty;
// // 测量值单位
// oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)findFct3.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
// octList.Add(oct);
//}
//var avgFct = fctLesion?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.AvgFCT).FirstOrDefault();
//if (avgFct != null)
//{
// var oct = CreatOCT(task, pNo);
// // 测量标识
// oct.TestID = $"{(task.ArmEnum == Arm.DoubleReadingArm1 ? "R1" : "R2")}_{pNo}_L_{pNoIndex}";
// // 测量参数名称
// oct.TESTCD = "AVGFCT";
// // 测量参数值
// oct.ORRES = avgFct?.QuestionValue ?? string.Empty;
// // 测量值单位
// oct.ORRESU = translateDataList["ValueUnit"].Where(t => t.Code.ToLower() == ((int?)avgFct.Unit)?.ToString().ToLower()).Select(t => isEn_Us ? t.Value : t.ValueCN).FirstOrDefault() ?? String.Empty;
// octList.Add(oct);
//}
#endregion
}
@ -668,13 +732,13 @@ public class IVUS_OCTExportService(IRepository<ReadingQuestionCriterionTrial> _r
// 脂质角度最大值
oct.LAMAX = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.MaxAvgLipidAngle).FirstOrDefault()?.QuestionValue ?? string.Empty;
// 巨噬细胞浸润
oct.MACRI = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.MacrophageInfiltration).FirstOrDefault()?.QuestionValue ?? string.Empty;
oct.PLAMACRI = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.MacrophageInfiltration).FirstOrDefault()?.QuestionValue ?? string.Empty;
// 巨噬细胞浸润角度
oct.MIARC = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.MacrophageExtensionAngle).FirstOrDefault()?.QuestionValue ?? string.Empty;
oct.PLAMIARC = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.MacrophageExtensionAngle).FirstOrDefault()?.QuestionValue ?? string.Empty;
// 微通道
oct.MC = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.Microchannels).FirstOrDefault()?.QuestionValue ?? string.Empty;
oct.PLAMC = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.Microchannels).FirstOrDefault()?.QuestionValue ?? string.Empty;
// 胆固醇结晶
oct.CCS = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.CholesterolCrystallization).FirstOrDefault()?.QuestionValue ?? string.Empty;
oct.PLACCS = findLession?.LessionAnswerList.Where(t => t.QuestionMark == QuestionMark.CholesterolCrystallization).FirstOrDefault()?.QuestionValue ?? string.Empty;
return oct;
}