From ccd10e3c69e0b91f08266bec8ae918420a88cecf Mon Sep 17 00:00:00 2001 From: wxd <123@qq.com> Date: Mon, 5 Aug 2024 17:59:09 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=8C=E4=B8=9A=E7=97=85=E6=8A=A5=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...mpanyOccupationalDiseaseDetailReportDto.cs | 385 ++++++++++++++++++ ...OccupationalDiseaseDetailReportInputDto.cs | 12 + .../OccupationalDiseaseReportAppService.cs | 28 ++ 3 files changed, 425 insertions(+) create mode 100644 src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs create mode 100644 src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportInputDto.cs diff --git a/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs b/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs new file mode 100644 index 0000000..947819a --- /dev/null +++ b/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportDto.cs @@ -0,0 +1,385 @@ +using System; +using System.Collections.Generic; +using System.Security.Cryptography.X509Certificates; +using System.Text; + +namespace Shentun.Peis.OccupationalDiseaseReports +{ + public class GetCompanyOccupationalDiseaseDetailReportDto + { + /// + /// 单位名称 + /// + public string CustomerOrgName { get; set; } + + /// + /// 证书编号 + /// + public string CertificateNo { get; set; } + + + + /// + /// 备案号 + /// + public string RecordNumber { get; set; } + + /// + /// 体检中心名称 + /// + public string MedicalCenterName { get; set; } + + + /// + /// 体检日期 年月日 + /// + public string MedicalStartDate { get; set; } + + + /// + /// 报告日期 年月日 + /// + public string ReportDate { get; set; } + + + /// + /// 职业病检测类别 集合 + /// + public List OcCheckTypeNames { get; set; } + + /// + /// 检查情况报告列表 + /// + public List OcCheckTypeDetails { get; set; } = new List(); + + /// + /// 体检结果描述 + /// + public string MedicalResultDesc { get; set; } + + /// + /// 职业病异常明细 + /// + public List OccupationalAbnormalDetails { get; set; }=new List(); + + /// + /// 体检结果一览表明细 + /// + public List MedicalResultDetails { get; set; } = new List(); + + /// + /// 体检结果异常率明细 + /// + public List MedicalResultAbnormalRateDetails { get; set; } = new List(); + + /// + /// 职业健康检查缺项情况表明细 + /// + public List ListOfMissingItemsDetails { get; set; } = new List(); + + /// + /// 职业病专科复查人员一览表明细 + /// + public List ReviewPersonnelDetails { get; set; } = new List(); + + /// + /// 尽快诊疗一览表 + /// + public List DiagnosisAndTreatmentDetails { get; set; } = new List(); + + /// + /// 职业禁忌证人员一览表 + /// + public List OccupationalContraindicationDetails { get; set; } = new List(); + + /// + /// 疑似职业病人员一览表 + /// + public List SuspectedOccupationalDiseaseDetails { get; set; } = new List(); + } + + public class GetCompanyOccupationalDiseaseDetailReportOcCheckTypeSummaryDto + { + /// + /// 毒害因素名称 A、B格式 + /// + public string PoisonNames { get; set; } + + /// + /// 职业病检查类别名称 + /// + public string OcCheckTypeName { get; set; } + + /// + /// 人数 + /// + public int CheckCount { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportOccupationalAbnormalDetailDto + { + /// + /// 异常名称 + /// + public string OccupationalAbnormalName { get; set; } + + /// + /// 人数 + /// + public int OccupationalAbnormalCount { get; set; } + + /// + /// 人数 + /// + public decimal OccupationalAbnormalRatio { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportMedicalResultDetailDto + { + /// + /// 人员条码号 + /// + public string PatientRegisterNo { get; set; } + + /// + /// 姓名 + /// + public string PatientName { get; set; } + + /// + /// 工种 + /// + public string JobType { get; set; } + + /// + /// 接害工龄 + /// + public string PoisonWorkTime { get; set; } + + /// + /// 毒害因素 A、B格式 + /// + public string PoisonNames { get; set; } + + /// + /// 异常指标 + /// + public string AnomalyIndex { get; set; } + + /// + /// 处理意见 + /// + public string HandlingSuggestions { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportMedicalResultAbnormalRateDetailDto + { + /// + /// 组合项目名称 + /// + public string AsbitemName { get; set; } + + /// + /// 异常率 + /// + public decimal AbnormalRate { get; set; } + + /// + /// 异常人员名称 A、B格式 + /// + public string AbnormalPatientNames { get; set; } + + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportListOfMissingItemsDetailDto + { + /// + /// 人员条码号 + /// + public string PatientRegisterNo { get; set; } + + /// + /// 姓名 + /// + public string PatientName { get; set; } + + /// + /// 身份证 + /// + public string IdNo { get; set; } + + /// + /// 未检组合项目名称 + /// + public string UnCheckAsbitemName { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportReviewPersonnelDetailDto + { + /// + /// 人员条码号 + /// + public string PatientRegisterNo { get; set; } + + /// + /// 姓名 + /// + public string PatientName { get; set; } + + /// + /// 身份证 + /// + public string IdNo { get; set; } + + /// + /// 毒害因素 + /// + public string PoisonName { get; set; } + + /// + /// 检查结果 + /// + public string CheckResult { get; set; } + + /// + /// 处理意见 + /// + public string HandlingSuggestions { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportDiagnosisAndTreatmentDetailDto + { + /// + /// 人员条码号 + /// + public string PatientRegisterNo { get; set; } + + /// + /// 姓名 + /// + public string PatientName { get; set; } + + /// + /// 身份证 + /// + public string IdNo { get; set; } + + /// + /// 未检组合项目名称 + /// + public string UnCheckAsbitemName { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportOccupationalContraindicationDetailDto + { + /// + /// 人员条码号 + /// + public string PatientRegisterNo { get; set; } + + /// + /// 姓名 + /// + public string PatientName { get; set; } + + /// + /// 身份证 + /// + public string IdNo { get; set; } + + /// + /// 毒害因素 + /// + public string PoisonName { get; set; } + + + /// + /// 检查结果 + /// + public string CheckResult { get; set; } + + /// + /// 处理意见 + /// + public string HandlingSuggestions { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } + + public class GetCompanyOccupationalDiseaseDetailReportSuspectedOccupationalDiseaseDetailDto + { + /// + /// 人员条码号 + /// + public string PatientRegisterNo { get; set; } + + /// + /// 姓名 + /// + public string PatientName { get; set; } + + /// + /// 身份证 + /// + public string IdNo { get; set; } + + /// + /// 毒害因素 + /// + public string PoisonName { get; set; } + + + /// + /// 检查结果 + /// + public string CheckResult { get; set; } + + /// + /// 处理意见 + /// + public string HandlingSuggestions { get; set; } + + /// + /// 排序 + /// + public int DisplayOrder { get; set; } + } +} diff --git a/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportInputDto.cs b/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportInputDto.cs new file mode 100644 index 0000000..3b0209a --- /dev/null +++ b/src/Shentun.Peis.Application.Contracts/OccupationalDiseaseReports/GetCompanyOccupationalDiseaseDetailReportInputDto.cs @@ -0,0 +1,12 @@ +using Shentun.Peis.PeisReports; +using System; +using System.Collections.Generic; +using System.Text; + +namespace Shentun.Peis.OccupationalDiseaseReports +{ + public class GetCompanyOccupationalDiseaseDetailReportInputDto + { + public List CustomerOrgs { get; set; } = new List() { }; + } +} diff --git a/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs b/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs index a64f033..b9f51b4 100644 --- a/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs +++ b/src/Shentun.Peis.Application/OccupationalDiseaseReports/OccupationalDiseaseReportAppService.cs @@ -269,5 +269,33 @@ namespace Shentun.Peis.OccupationalDiseaseReports return msg; } + + + + + /// + /// 获取单位职业病明细报告 + /// + /// + [HttpPost("api/app/OccupationalDiseaseReport/GetCompanyOccupationalDiseaseDetailReport")] + public async Task GetCompanyOccupationalDiseaseDetailReportAsync(GetCompanyOccupationalDiseaseDetailReportInputDto input) + { + + if (!input.CustomerOrgs.Any()) + throw new UserFriendlyException("单位信息不能为空"); + + var customerOrgPara = input.CustomerOrgs.First(); + if (customerOrgPara.CustomerOrgId == null || customerOrgPara.CustomerOrgId == Guid.Empty) + throw new UserFriendlyException("单位不能为空"); + if (customerOrgPara.CustomerOrgRegisterId == null || customerOrgPara.CustomerOrgRegisterId == Guid.Empty) + throw new UserFriendlyException("单位体检次数不能为空"); + + + + + return new GetCompanyOccupationalDiseaseDetailReportDto(); + } + + } }