diff --git a/IRaCIS.Core.Application/Service/Common/Export/IVUS_OCTExportService.cs b/IRaCIS.Core.Application/Service/Common/Export/IVUS_OCTExportService.cs index 5d46e7704..5e824492a 100644 --- a/IRaCIS.Core.Application/Service/Common/Export/IVUS_OCTExportService.cs +++ b/IRaCIS.Core.Application/Service/Common/Export/IVUS_OCTExportService.cs @@ -185,16 +185,16 @@ public class OctExportDto : IVUS_OCTBaseDto public string LAMAX { get; set; } /// 巨噬细胞浸润 - public string MACRI { get; set; } + public string PLAMACRI { get; set; } /// 巨噬细胞浸润角度 - public string MIARC { get; set; } + public string PLAMIARC { get; set; } /// 微通道 - public string MC { get; set; } + public string PLAMC { get; set; } /// 胆固醇结晶 - public string CCS { get; set; } + public string PLACCS { get; set; } } @@ -459,98 +459,162 @@ public class IVUS_OCTExportService(IRepository _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 _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; }