From b52167fd6b78d3dfa3c46a425da4183752c26156 Mon Sep 17 00:00:00 2001
From: wxd <123@qq.com>
Date: Mon, 4 Nov 2024 12:20:12 +0800
Subject: [PATCH] =?UTF-8?q?=E8=81=8C=E4=B8=9A=E7=97=85?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
 ...mpanyOccupationalDiseaseDetailReportDto.cs | 32 ++++++++++++++-----
 .../OccupationalDiseaseReportAppService.cs    | 18 ++++++++---
 2 files changed, 38 insertions(+), 12 deletions(-)
diff --git a/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs b/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs
index 94e72c2..490a3ba 100644
--- a/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs
@@ -45,12 +45,12 @@ namespace Shentun.Peis.OccupationalDiseaseReports
         /// 
         /// 职业病检查类别  集合
         /// 
-        public List OcCheckTypeNames { get; set; }
+        public List OcCheckTypeNames { get; set; } = new List();
 
-        /// 
-        /// 已有职业病检查类别  集合
-        /// 
-        public List SelectedOcCheckTypeNames { get; set; }
+        ///// 
+        ///// 已有职业病检查类别  集合
+        ///// 
+        //public List SelectedOcCheckTypeNames { get; set; }
 
         /// 
         /// 检查情况报告列表
@@ -62,7 +62,7 @@ namespace Shentun.Peis.OccupationalDiseaseReports
         /// 
         public string MedicalResultDesc { get; set; }
 
-     
+
         /// 
         /// 未见异常一览表
         /// 
@@ -79,7 +79,7 @@ namespace Shentun.Peis.OccupationalDiseaseReports
         /// 
         public List ReviewPersonnelDetails { get; set; } = new List();
 
-     
+
         /// 
         /// 职业禁忌证人员一览表  
         /// 
@@ -138,7 +138,7 @@ namespace Shentun.Peis.OccupationalDiseaseReports
         public int DisplayOrder { get; set; }
     }
 
-    
+
     /// 
     /// 附件一~五
     /// 
@@ -421,4 +421,20 @@ namespace Shentun.Peis.OccupationalDiseaseReports
         /// 
         public int DisplayOrder { get; set; }
     }
+
+    /// 
+    /// 检查类别 多选框
+    /// 
+    public class GetCompanyOccupationalDiseaseDetailReportOcCheckTypeDetailDto
+    {
+        /// 
+        /// 名称
+        /// 
+        public string OcCheckTypeName { get; set; }
+
+        /// 
+        /// 是否选中
+        /// 
+        public bool IsSelected { get; set; } = false;
+    }
 }
diff --git a/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs b/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs
index 0829a67..61c32c9 100644
--- a/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs
+++ b/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs
@@ -381,7 +381,7 @@ namespace Shentun.Peis.OccupationalDiseaseReports
 
                 //人员
                 //var patientRegisters = patientRegisterList.Select(m => m.patientRegister).Distinct().ToList();
-               
+
 
 
                 var patientRegisterfisrt = patientRegisterList.First();
@@ -393,7 +393,11 @@ namespace Shentun.Peis.OccupationalDiseaseReports
                 msg.RecordNumber = await _sysParmValueManager.GetSysParmValueAsync(Guid.Empty, "medical_center_record_number");
                 msg.ReportDate = DateTime.Now.ToString("yyyy年MM月dd日");
 
-                msg.OcCheckTypeNames = (await _ocCheckTypeRepository.GetListAsync()).Select(s => s.DisplayName).ToList();
+                msg.OcCheckTypeNames = (await _ocCheckTypeRepository.GetListAsync()).Select(s => new GetCompanyOccupationalDiseaseDetailReportOcCheckTypeDetailDto
+                {
+                    OcCheckTypeName = s.DisplayName,
+                    IsSelected = false
+                }).ToList();
 
                 #region 检查情况报告列表
 
@@ -417,9 +421,15 @@ namespace Shentun.Peis.OccupationalDiseaseReports
 
                 #endregion
 
-                msg.SelectedOcCheckTypeNames = ocCheckTypeDetails.Select(s => s.OcCheckTypeName).Distinct().ToList();
+                #region 选中检查类别
+                foreach (var item in msg.OcCheckTypeNames)
+                {
+                    var isSelected = ocCheckTypeDetails.Count(f => f.OcCheckTypeName == item.OcCheckTypeName) > 0 ? true : false;
+                    item.IsSelected = isSelected;
+                } 
+                #endregion
+
 
-               
                 #region 未见异常人员一览表
                 var noAbnormalConditionsDetails = patientRegisterList.Where(m => !string.IsNullOrWhiteSpace(m.patientOccupationalDisease.OccupationalAbnormal)
                 && m.patientOccupationalDisease.OccupationalAbnormal.Contains("未见异常"))