From f515bb8fbb1801103e5cac86d527ef6ed9c55f95 Mon Sep 17 00:00:00 2001 From: "Zhang.WH" Date: Thu, 16 Oct 2025 17:17:24 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/common/core/redis/RedisCache.java | 29 +- .../core/common/enums/TenantOptionDict.java | 34 +- .../web/service/SysLoginService.java | 2 +- .../appservice/ISupplyService.java | 22 + .../appservice/impl/SupplyServiceImpl.java | 28 + .../controller/ChangePriceController.java | 112 + .../web/adjustprice/dto/SupplyListDto.java | 22 + .../web/adjustprice/mapper/SupplyMapper.java | 25 + .../impl/OutpatientChargeAppServiceImpl.java | 1 - .../impl/OutpatientRefundAppServiceImpl.java | 4 +- .../mapper/OutpatientChargeAppMapper.java | 1 + .../web/common/dto/PerformRecordDto.java | 2 + .../appservice/IDiagTreatMAppService.java | 17 + .../impl/DeviceManageAppServiceImpl.java | 222 +- .../impl/DiagTreatMAppServiceImpl.java | 207 +- .../impl/MedicationManageAppServiceImpl.java | 131 +- .../DiagnosisTreatmentController.java | 27 +- .../controller/DiseaseManageController.java | 2 +- .../datadictionary/dto/DeviceImportDto.java | 66 +- .../dto/DiagnosisTreatmentImportDto.java | 75 + .../IDoctorStationDiagnosisAppService.java | 10 + .../DoctorStationAdviceAppServiceImpl.java | 2 +- .../DoctorStationDiagnosisAppServiceImpl.java | 22 +- ...torStationElepPrescriptionServiceImpl.java | 361 +-- .../DoctorStationDiagnosisController.java | 14 + .../dto/ActivityBindDeviceDetailDto.java | 10 +- .../dto/ActivityBindDeviceDto.java | 8 + .../web/doctorstation/dto/AdviceBaseDto.java | 4 + .../dto/ElepPrescriptionInfoParam.java | 44 +- .../web/doctorstation/utils/AdviceUtils.java | 56 +- .../utils/DoctorStationSendApplyUtil.java | 10 +- .../IDocStatisticsDefinitionAppService.java | 21 +- ...cStatisticsDefinitionOptionAppService.java | 36 - ...DocStatisticsDefinitionAppServiceImpl.java | 103 +- ...tisticsDefinitionOptionAppServiceImpl.java | 229 -- .../DocStatisticsDefinitionController.java | 49 +- .../DocStatisticsOptionController.java | 25 - .../dto/DocStatisticsDefinitionDto.java | 17 +- .../appservice/IBankPosCloudAppService.java | 11 + .../IFoodborneAcquisitionAppService.java | 20 + .../impl/BankPosCloudAppServiceImpl.java | 418 +++ .../FoodborneAcquisitionAppServiceImpl.java | 176 ++ .../FoodborneAcquisitionAppController.java | 35 + .../dto/BpcDataElementDto.java | 179 ++ .../dto/BpcPaymentScanNotifyDto.java | 113 + .../dto/BpcTransactionRequestDto.java | 224 ++ .../dto/BpcTransactionResponseDto.java | 158 + .../dto/FaSimplediseaseAddNopwParam.java | 113 + .../externalintegration/enums/BpcPayType.java | 59 + .../enums/BpcPayerIdType.java | 83 + .../enums/BpcRealNameAuthFlag.java | 47 + .../enums/BpcRespType.java | 55 + .../enums/BpcTranType.java | 91 + .../mapper/FoodborneAcquisitionAppMapper.java | 43 + .../utils/BpcHttpUtil.java | 105 + .../utils/BpcTraceNoGenerator.java | 20 + .../appservice/IAdviceProcessAppService.java | 8 +- ...e.java => IMedicineSummaryAppService.java} | 3 +- .../impl/AdviceProcessAppServiceImpl.java | 596 +++- ...ava => MedicineSummaryAppServiceImpl.java} | 20 +- .../controller/AdviceProcessController.java | 16 +- ...er.java => MedicineSummaryController.java} | 10 +- .../dto/AdviceExecuteDetailParam.java | 11 + .../dto/InpatientAdviceDto.java | 18 +- .../dto/InpatientAdviceParam.java | 2 + .../dto/MedicationRequestUseExe.java | 8 + .../dto/ServiceRequestUseExe.java} | 35 +- .../impl/LossReportFormAppServiceImpl.java | 49 +- .../impl/ReceiptApprovalAppServiceImpl.java | 78 +- .../dto/LossReportFormDto.java | 7 +- .../inventorymanage/dto/ReceiptDetailDto.java | 5 +- .../IReviewPrescriptionRecordsAppService.java | 16 + ...viewPrescriptionRecordsAppServiceImpl.java | 27 + .../ReviewPrescriptionRecordsController.java | 32 +- .../dto/ReviewPrescriptionRecordsDto.java | 5 + .../ReviewPrescriptionRecordsAppMapper.java | 16 + .../OutpatientTreatmentAppServiceImpl.java | 18 +- .../impl/PatientInformationServiceImpl.java | 47 +- .../appservice/IPaymentRecService.java | 2 +- .../impl/PaymentRecServiceImpl.java | 7 +- .../PaymentReconciliationController.java | 51 +- .../paymentmanage/mapper/PaymentMapper.java | 2 +- ...> ISummaryDispenseMedicineAppService.java} | 14 +- .../impl/ReturnMedicineAppServiceImpl.java | 81 +- ...ummaryDispenseMedicineAppServiceImpl.java} | 62 +- ...=> SummaryDispenseMedicineController.java} | 32 +- ...ummaryDto.java => MedicineSummaryDto.java} | 4 +- ...itDto.java => MedicineSummaryInitDto.java} | 2 +- ...m.java => MedicineSummarySearchParam.java} | 4 +- ...ava => SummaryDispenseMedicineMapper.java} | 30 +- .../impl/AdviceManageAppServiceImpl.java | 13 +- ...DepartmentRevenueStatisticsAppService.java | 30 + .../IReportStatisticsAppService.java | 36 + ...rtmentRevenueStatisticsAppServiceImpl.java | 60 + .../impl/ReportStatisticsAppServiceImpl.java | 156 + ...DepartmentRevenueStatisticsController.java | 51 + .../MedicationDeviceReportController.java | 17 +- .../ReportStatisticsController.java | 56 + .../dto/AnnualReportStatisticsPageDto.java | 625 ++++ .../dto/DailyReportStatisticsPageDto.java | 216 ++ .../DepartmentRevenueStatisticsPageDto.java | 46 + .../DepartmentRevenueStatisticsMapper.java | 38 + .../mapper/ReportStatisticsMapper.java | 78 + .../ybmanage/controller/YbElepController.java | 115 +- .../ybmanage/service/IYbEleBaseService.java | 29 +- .../service/impl/YbEleHttpServiceImpl.java | 105 +- .../service/impl/YbElepBaseServiceImpl.java | 242 +- .../ybmanage/util/YbEleParamBuilderUtil.java | 450 +-- .../src/main/resources/application-local.yml | 2 +- .../src/main/resources/application.yml | 2 +- .../Inventorymanage/LossReportFormMapper.xml | 6 +- .../Inventorymanage/ProductTransferMapper.xml | 4 + .../mapper/adjustprice/SupplyMapper.xml | 9 + .../OutpatientChargeAppMapper.xml | 1 + .../mapper/common/CommonAppMapper.xml | 2 + .../DoctorStationAdviceAppMapper.xml | 5 + .../FoodborneAcquisitionAppMapper.xml | 74 + .../AdviceProcessAppMapper.xml | 34 +- .../ReviewPrescriptionRecordsAppMapper.xml | 22 + .../mapper/paymentmanage/PaymentMapper.xml | 3 + ....xml => SummaryDispenseMedicineMapper.xml} | 4 +- .../DepartmentRevenueStatisticsMapper.xml | 67 + .../reportmanage/ReportStatisticsMapper.xml | 101 + openhis-server-new/openhis-common/pom.xml | 4 + .../openhis/common/aspectj/DictAspect.java | 2 + .../common/constant/CommonConstants.java | 4 + .../openhis/common/enums/AssignSeqEnum.java | 6 +- .../com/openhis/common/utils/CommonUtil.java | 83 + .../administration/domain/ChargeItem.java | 2 + .../mapper/EncounterDiagnosisMapper.java | 10 + .../service/IChargeItemDefinitionService.java | 29 +- .../service/IChargeItemService.java | 15 + .../service/IEncounterDiagnosisService.java | 15 +- .../impl/ChargeItemDefinitionServiceImpl.java | 58 + .../service/impl/ChargeItemServiceImpl.java | 35 +- .../impl/EncounterDiagnosisServiceImpl.java | 29 +- .../service/IConditionDefinitionService.java | 23 +- .../clinical/service/IProcedureService.java | 9 +- .../impl/ConditionDefinitionServiceImpl.java | 35 +- .../service/impl/ProcedureServiceImpl.java | 17 +- .../utils/CrossSystemSendApplyUtil.java | 46 +- .../domain/DocStatisticsDefinition.java | 5 + .../domain/DocStatisticsDefinitionOption.java | 3 + .../medication/domain/MedicationDispense.java | 3 + .../medication/domain/MedicationRequest.java | 6 + .../service/IMedicationDispenseService.java | 21 +- .../impl/MedicationDispenseServiceImpl.java | 76 + .../workflow/domain/DeviceDispense.java | 12 +- .../workflow/domain/DeviceRequest.java | 5 + .../domain/ElepMedicationRequest.java | 11 +- .../service/IDeviceDispenseService.java | 18 +- .../impl/DeviceDispenseServiceImpl.java | 38 +- .../impl/SupplyDeliveryServiceImpl.java | 17 +- .../impl/SupplyRequestServiceImpl.java | 53 +- .../openhis/yb/domain/ClinicPreSettle.java | 62 - .../java/com/openhis/yb/domain/ClinicReg.java | 109 - .../com/openhis/yb/domain/ClinicSettle.java | 112 - .../com/openhis/yb/domain/ClinicUnReg.java | 47 - .../com/openhis/yb/domain/ClinicUnSettle.java | 111 - .../yb/domain/DirectoryCheckRecord.java | 46 - .../main/java/com/openhis/yb/domain/File.java | 39 - .../yb/domain/FinancialApplyRecord.java | 72 - .../yb/domain/FinancialReconcileRecord.java | 68 - .../com/openhis/yb/domain/InfoPerson.java | 93 - .../openhis/yb/domain/InpatientDischarge.java | 180 -- .../openhis/yb/domain/InpatientFeeDetail.java | 227 -- .../openhis/yb/domain/InpatientPreSettle.java | 338 -- .../com/openhis/yb/domain/InpatientReg.java | 262 -- .../domain/InpatientRegInfoUpdateRecorde.java | 241 -- .../openhis/yb/domain/InpatientSettle.java | 319 -- .../yb/domain/InpatientUnDischarge.java | 53 - .../com/openhis/yb/domain/InpatientUnReg.java | 53 - .../openhis/yb/domain/InpatientUnSettle.java | 258 -- .../yb/domain/InpatientcancelFeeDetail.java | 66 - .../yb/domain/InventoryChangeRecord.java | 95 - .../yb/domain/InventoryCheckRecord.java | 82 - .../openhis/yb/domain/InventoryDelRecord.java | 42 - .../yb/domain/InventoryPurchaseRecord.java | 121 - .../domain/InventoryPurchaseReturnRecord.java | 109 - .../yb/domain/InventorySaleRecord.java | 193 -- .../yb/domain/InventorySaleReturnRecord.java | 132 - .../main/java/com/openhis/yb/domain/Sign.java | 76 - .../java/com/openhis/yb/dto/BaseInfo.java | 96 - .../java/com/openhis/yb/dto/BaseParam.java | 14 - .../com/openhis/yb/dto/CancelPaymentDto.java | 59 - .../openhis/yb/dto/CancelRegPaymentDto.java | 50 - .../openhis/yb/dto/Catalogue1312Output.java | 117 - .../yb/dto/Catalogue1312QueryParam.java | 50 - .../openhis/yb/dto/ChargeItemDetailVO.java | 13 - .../com/openhis/yb/dto/ChargeItemDto.java | 22 - .../openhis/yb/dto/ChargeItemGroupDto.java | 30 - .../openhis/yb/dto/Clearing3204AParam.java | 29 - .../openhis/yb/dto/Clearing3205AParma.java | 33 - .../openhis/yb/dto/Clearing3205AResult.java | 91 - .../openhis/yb/dto/Clearing3205AWebParma.java | 27 - .../openhis/yb/dto/Clearing3206AParam.java | 33 - .../openhis/yb/dto/Clearing3206AResult.java | 33 - .../yb/dto/Clinic2203DiseInfoParam.java | 110 - .../com/openhis/yb/dto/Clinic2203Medical.java | 83 - .../yb/dto/Clinic2203MedicalParam.java | 79 - .../yb/dto/Clinic2204FeeDetailParam.java | 242 -- .../yb/dto/Clinic2204FeeDetailResult.java | 63 - .../openhis/yb/dto/Clinic2204OrderParam.java | 37 - .../openhis/yb/dto/Clinic2204OrderResult.java | 26 - .../openhis/yb/dto/Clinic2205OrderParam.java | 39 - .../yb/dto/Clinic2206FundPaymentResult.java | 42 - .../openhis/yb/dto/Clinic2206OrderOutput.java | 140 - .../openhis/yb/dto/Clinic2206OrderParam.java | 110 - .../openhis/yb/dto/Clinic2206OrderResult.java | 161 - .../yb/dto/Clinic2206OrderResultDto.java | 90 - .../yb/dto/Clinic2206SetldetaiResult.java | 59 - .../openhis/yb/dto/Clinic2207OrderResult.java | 158 - .../yb/dto/Clinic2207OrderResultDto.java | 14 - .../yb/dto/Clinic2207OrderResultInfoDto.java | 74 - .../yb/dto/Clinic2208UnSetlInfoOutput.java | 106 - .../yb/dto/Clinic2208UnSetlInfoParam.java | 43 - .../yb/dto/Clinic2208UnSetlInfoResult.java | 137 - .../java/com/openhis/yb/dto/ClinicReg.java | 116 - .../openhis/yb/dto/ClinicReg2201Output.java | 66 - .../yb/dto/DispenseInventory3505Dto.java | 103 - .../yb/dto/EleInvoiceChargeDetailDto.java | 34 - .../yb/dto/EleInvoiceListDetailDto.java | 46 - .../yb/dto/EleInvoicePatientInfoDto.java | 75 - .../yb/dto/EleInvoicePaymentInfoDto.java | 60 - .../openhis/yb/dto/EleInvoiceResultDto.java | 73 - .../com/openhis/yb/dto/File9101Param.java | 14 - .../java/com/openhis/yb/dto/FileDownload.java | 26 - .../java/com/openhis/yb/dto/FileResult.java | 43 - .../openhis/yb/dto/Financial13203Param.java | 53 - .../openhis/yb/dto/Financial13203Result.java | 58 - .../yb/dto/Financial13203WebParam.java | 49 - .../openhis/yb/dto/Financial3201Output.java | 19 - .../openhis/yb/dto/Financial3201Param.java | 81 - .../yb/dto/Financial3202FileParam.java | 76 - .../yb/dto/Financial3202FileResult.java | 56 - .../yb/dto/Financial3202OtherParam.java | 21 - .../openhis/yb/dto/Financial3203AParam.java | 75 - .../yb/dto/Financial3203AWebParam.java | 37 - .../com/openhis/yb/dto/Financial3203Dto.java | 39 - .../openhis/yb/dto/Financial3203Param.java | 72 - .../openhis/yb/dto/Financial3203WebParam.java | 42 - .../openhis/yb/dto/Financial3204Param.java | 32 - .../dto/FinancialClearing3203AWebParam.java | 19 - .../yb/dto/FinancialSettlement3202Param.java | 68 - .../yb/dto/FinancialSettlement3202Result.java | 37 - .../yb/dto/FinancialSettlement3209AParam.java | 40 - .../dto/FinancialSettlement3209AResult.java | 28 - .../yb/dto/FsiConsultation3101Param.java | 46 - .../openhis/yb/dto/FsiDiagnose3101Param.java | 57 - .../openhis/yb/dto/FsiEncounter3101Param.java | 167 - .../yb/dto/FsiFeedback3103DataParam.java | 27 - .../yb/dto/FsiFeedback3103WarnsParam.java | 31 - .../openhis/yb/dto/FsiOperation3101Param.java | 67 - .../com/openhis/yb/dto/FsiOrder3101Param.java | 168 - .../openhis/yb/dto/FsiPatient3101Param.java | 61 - .../yb/dto/FsiViolation3101Result.java | 72 - .../yb/dto/FsiViolationDetail3101Result.java | 43 - .../yb/dto/HospAdm2401DiseInfoParam.java | 70 - .../yb/dto/HospAdm2401MdtInfoParam.java | 193 -- .../yb/dto/HospAdm2402DiseInfoParam.java | 72 - .../yb/dto/HospAdm2402DscgInfoParam.java | 131 - .../yb/dto/HospAdm2403AdmInfoParam.java | 182 -- .../yb/dto/HospAdm2403DiseInfoParam.java | 76 - .../yb/dto/HospAdm2404AdmCnlParam.java | 32 - .../yb/dto/HospAdm2406SmAttrUpParam.java | 62 - .../yb/dto/HospAdm2407SmAttrSelectParam.java | 78 - .../yb/dto/HospAdm2407SmAttrSelectResult.java | 67 - .../openhis/yb/dto/HospDept3401AParam.java | 19 - .../com/openhis/yb/dto/HospDept3401Param.java | 89 - .../com/openhis/yb/dto/HospDept3402Param.java | 89 - .../com/openhis/yb/dto/HospDept3403Param.java | 28 - .../yb/dto/HospTrf2501ARefmedinParam.java | 109 - .../yb/dto/HospTrf2501RefmedinParam.java | 108 - .../openhis/yb/dto/HospTrfCxl2502Param.java | 31 - .../com/openhis/yb/dto/Info1101Output.java | 68 - .../openhis/yb/dto/Info1101PerinfoResult.java | 58 - .../openhis/yb/dto/Info1101ReadcardParam.java | 45 - .../com/openhis/yb/dto/Info5301Param.java | 14 - .../dto/Info5301SpecialConditionResult.java | 21 - .../openhis/yb/dto/InvoiceBaseInfoDto.java | 104 - .../openhis/yb/dto/MatAllowReg25007Param.java | 58 - .../yb/dto/MatAllowReg25007Result.java | 84 - .../yb/dto/MatAllowRegSel25008Param.java | 84 - .../com/openhis/yb/dto/Medical3503Param.java | 113 - .../com/openhis/yb/dto/Medical3505Param.java | 179 -- .../com/openhis/yb/dto/Medical3505Result.java | 29 - .../com/openhis/yb/dto/Medical3506Param.java | 118 - .../com/openhis/yb/dto/Medical3507Param.java | 29 - .../com/openhis/yb/dto/Medical3508Param.java | 102 - .../com/openhis/yb/dto/Medical3508Result.java | 104 - .../yb/dto/MedicalDirectory3301ListParam.java | 16 - .../yb/dto/MedicalDirectory3301Param.java | 69 - .../yb/dto/MedicalDirectory3302Param.java | 32 - .../yb/dto/MedicalInventory3501Param.java | 72 - .../yb/dto/MedicalInventory3502Param.java | 81 - .../yb/dto/MedicalInventory3511Output.java | 320 ++ .../yb/dto/MedicalInventory3511Param.java | 263 ++ .../yb/dto/MedicalPurchase3504Param.java | 95 - .../com/openhis/yb/dto/MedicalTraceNoDto.java | 28 - .../com/openhis/yb/dto/PatientInfoDto.java | 84 - .../yb/dto/PaymentDecDetailUniAccountDto.java | 25 - .../com/openhis/yb/dto/PaymentDetailDto.java | 37 - .../openhis/yb/dto/PaymentInpatientDto.java | 55 - .../com/openhis/yb/dto/PaymentSettleDto.java | 19 - .../dto/PersBirthApprovalCnl25004Param.java | 27 - .../dto/PersBirthApprovalSel25005Param.java | 66 - .../yb/dto/PersBirthRecord25003Param.java | 126 - .../openhis/yb/dto/PersChrDis2503Param.java | 83 - .../yb/dto/PersChrDisCxl2504Param.java | 30 - .../openhis/yb/dto/PersDesigPt2505Param.java | 100 - .../yb/dto/PersDesigPtCxl2506Param.java | 30 - .../yb/dto/PersMedApprovalCnl25006Param.java | 26 - .../yb/dto/PersMedRecord25001Param.java | 86 - .../yb/dto/PersMedSelect25002Param.java | 39 - .../yb/dto/PersMedSelect25002Result.java | 91 - .../openhis/yb/dto/PersUnintInj2507Param.java | 168 - .../com/openhis/yb/dto/PrePaymentDto.java | 46 - .../main/java/com/openhis/yb/dto/Result.java | 48 - .../java/com/openhis/yb/dto/ResultBody.java | 39 - .../yb/dto/Settlement3201DetailDto.java | 39 - .../com/openhis/yb/dto/Settlement3201Dto.java | 28 - .../yb/dto/Settlement3201WebParam.java | 38 - .../com/openhis/yb/dto/Settlement3202Dto.java | 45 - .../yb/dto/Settlement3202WebParam.java | 37 - .../yb/dto/Settlement3209AWebParam.java | 30 - .../main/java/com/openhis/yb/dto/Sign.java | 62 - .../com/openhis/yb/dto/Sign1101Param.java | 19 - .../com/openhis/yb/dto/Sign9001Result.java | 24 - .../yb/dto/SupplyItemDetail3503Dto.java | 126 - .../yb/dto/VeriPrescriptionDetailInfoDto.java | 101 - .../yb/dto/VeriPrescriptionInfoDto.java | 53 - .../openhis/yb/dto/VeriPrescriptionParam.java | 21 - .../openhis/yb/dto/Yb2301InputFeeDetail.java | 194 -- .../yb/dto/Yb2301InputFeeDetailModel.java | 29 - .../openhis/yb/dto/Yb2301OutputResult.java | 124 - .../openhis/yb/dto/Yb2302InputInpatient.java | 35 - .../openhis/yb/dto/Yb2303InputInpatient.java | 123 - .../openhis/yb/dto/Yb2303OutputSetInfo.java | 292 -- .../openhis/yb/dto/Yb2304InputExpContent.java | 31 - .../openhis/yb/dto/Yb2304InputInpatient.java | 115 - .../openhis/yb/dto/Yb2304OutputSetlInfo.java | 279 -- .../openhis/yb/dto/Yb2305InputInpatient.java | 35 - .../openhis/yb/dto/Yb2305OutputSetlInfo.java | 224 -- .../yb/dto/Yb2401InputInpatientDiseInfo.java | 82 - .../yb/dto/Yb2401InputInpatientMdtrtInfo.java | 239 -- .../dto/Yb2401InputInpatientTrumContent.java | 38 - .../yb/dto/Yb2402InputInpatientDiseInfo.java | 88 - .../yb/dto/Yb2402InputInpatientDscgInfo.java | 164 - .../com/openhis/yb/dto/Yb2402InputParam.java | 26 - .../openhis/yb/dto/Yb2403InputAdmInfo.java | 226 -- .../openhis/yb/dto/Yb2403InputDiseInfo.java | 92 - .../yb/dto/Yb2403InputMdtrtGrpContent.java | 20 - .../com/openhis/yb/dto/Yb2403InputParam.java | 30 - .../yb/dto/Yb2403InputTrumContent.java | 30 - .../openhis/yb/dto/Yb2404InputInpatient.java | 36 - .../openhis/yb/dto/Yb2405InputInpatient.java | 39 - .../Yb3101AdapterEncounterDiagnoseInfo.java | 52 - .../Yb3101AdapterEncounterPatientInfo.java | 128 - .../yb/dto/Yb3101AdapterOrderInfo.java | 118 - .../com/openhis/yb/dto/Yb3101InputData.java | 58 - .../yb/dto/Yb3101InputFsiDiagnoseDto.java | 81 - .../yb/dto/Yb3101InputFsiEncounterDto.java | 283 -- .../yb/dto/Yb3101InputFsiOperationDto.java | 94 - .../yb/dto/Yb3101InputFsiOrderDto.java | 281 -- .../openhis/yb/dto/Yb3101InputPatientDto.java | 88 - .../dto/Yb3101OutputJudgeResultDetailDto.java | 69 - .../openhis/yb/dto/Yb3101OutputResult.java | 124 - .../com/openhis/yb/dto/Yb3103InputData.java | 39 - .../com/openhis/yb/dto/Yb3103InputWarn.java | 42 - .../yb/dto/Yb4101AAdapterSettleInfo.java | 67 - .../openhis/yb/dto/Yb4101AInputBldinfo.java | 40 - .../openhis/yb/dto/Yb4101AInputDiseinfo.java | 61 - .../openhis/yb/dto/Yb4101AInputIcuinfo.java | 54 - .../openhis/yb/dto/Yb4101AInputOprninfo.java | 98 - .../yb/dto/Yb4101AInputOpspdiseinfo.java | 53 - .../openhis/yb/dto/Yb4101AInputSetlinfo.java | 446 --- .../com/openhis/yb/dto/Yb4101AOutputData.java | 29 - .../yb/dto/Yb5205InputSpecialDisease.java | 43 - .../yb/dto/Yb5205OutputSpecialDisease.java | 219 -- .../main/java/com/openhis/yb/dto/extData.java | 96 - .../yb/mapper/ClinicPreSettleMapper.java | 17 - .../openhis/yb/mapper/ClinicSettleMapper.java | 17 - .../openhis/yb/mapper/ClinicUnRegMapper.java | 17 - .../yb/mapper/ClinicUnSettleMapper.java | 17 - .../yb/mapper/DirectoryCheckRecordMapper.java | 17 - .../yb/mapper/FinancialApplyRecordMapper.java | 17 - .../FinancialReconcileRecordMapper.java | 17 - .../yb/mapper/InpatientFeeDetailMapper.java | 10 - .../openhis/yb/mapper/InpatientRegMapper.java | 19 - .../yb/mapper/InpatientSettleMapper.java | 10 - .../mapper/InventoryChangeRecordMapper.java | 17 - .../yb/mapper/InventoryCheckRecordMapper.java | 17 - .../yb/mapper/InventoryDelRecordMapper.java | 17 - .../mapper/InventoryPurchaseRecordMapper.java | 17 - .../InventoryPurchaseReturnRecordMapper.java | 17 - .../yb/mapper/InventorySaleRecordMapper.java | 17 - .../InventorySaleReturnRecordMapper.java | 17 - .../yb/mapper/MedicalInsuranceMapper.java | 60 - .../com/openhis/yb/mapper/PerinfoMapper.java | 11 - .../java/com/openhis/yb/mapper/RegMapper.java | 13 - .../com/openhis/yb/mapper/SignMapper.java | 12 - .../yb/model/CancelRegPaymentModel.java | 53 - .../yb/model/Clinic2207OrderModel.java | 126 - .../yb/model/Clinic2207OrderParam.java | 88 - .../yb/model/OutpatientRegistrationModel.java | 19 - .../yb/service/IClinicPreSettleService.java | 14 - .../yb/service/IClinicSettleService.java | 39 - .../yb/service/IClinicUnRegService.java | 14 - .../yb/service/IClinicUnSettleService.java | 23 - .../service/IDirectoryCheckRecordService.java | 14 - .../service/IFinancialApplyRecordService.java | 14 - .../IFinancialReconcileRecordService.java | 14 - .../service/IInpatientFeeDetailService.java | 8 - .../yb/service/IInpatientRegService.java | 25 - .../yb/service/IInpatientSettleService.java | 14 - .../IInventoryChangeRecordService.java | 14 - .../service/IInventoryCheckRecordService.java | 14 - .../service/IInventoryDelRecordService.java | 14 - .../IInventoryPurchaseRecordService.java | 14 - ...IInventoryPurchaseReturnRecordService.java | 14 - .../service/IInventorySaleRecordService.java | 14 - .../IInventorySaleReturnRecordService.java | 14 - .../openhis/yb/service/IPerinfoService.java | 44 - .../com/openhis/yb/service/IRegService.java | 23 - .../com/openhis/yb/service/ISignService.java | 11 - .../java/com/openhis/yb/service/YbDao.java | 2778 ----------------- .../com/openhis/yb/service/YbHttpUtils.java | 1051 ------- .../com/openhis/yb/service/YbManager.java | 1034 ------ .../impl/ClinicPreSettleServiceImpl.java | 19 - .../service/impl/ClinicSettleServiceImpl.java | 44 - .../service/impl/ClinicUnRegServiceImpl.java | 20 - .../impl/ClinicUnSettleServiceImpl.java | 35 - .../impl/DirectoryCheckRecordServiceImpl.java | 20 - .../impl/FinancialApplyRecordServiceImpl.java | 19 - .../FinancialReconcileRecordServiceImpl.java | 20 - .../impl/InpatientFeeDetailServiceImpl.java | 11 - .../service/impl/InpatientRegServiceImpl.java | 29 - .../impl/InpatientSettleServiceImpl.java | 18 - .../InventoryChangeRecordServiceImpl.java | 19 - .../impl/InventoryCheckRecordServiceImpl.java | 19 - .../impl/InventoryDelRecordServiceImpl.java | 19 - .../InventoryPurchaseRecordServiceImpl.java | 19 - ...entoryPurchaseReturnRecordServiceImpl.java | 19 - .../impl/InventorySaleRecordServiceImpl.java | 19 - .../InventorySaleReturnRecordServiceImpl.java | 19 - .../yb/service/impl/PerinfoServiceImpl.java | 65 - .../yb/service/impl/RegServiceImpl.java | 39 - .../yb/service/impl/SignServiceImpl.java | 16 - .../com/openhis/yb/util/CommonConstant.java | 327 -- .../openhis/yb/util/YbParamBuilderUtil.java | 2440 --------------- .../ybcatalog/domain/CatalogDrugInfo.java | 319 -- .../domain/CatalogDrugInfoUsual.java | 319 -- .../domain/CatalogMedicalConsumables.java | 241 -- .../domain/CatalogMedicalHerbInfo.java | 121 - .../domain/CatalogMedicalService.java | 88 - .../domain/CatalogSpecialDisease.java | 70 - .../CatalogSpecialInsuranceDisease.java | 30 - .../CatalogSurgeryStandardDirectory.java | 94 - .../domain/CatalogWesternDisease.java | 94 - .../domain/CatalogZyDiseaseDiagnosis.java | 64 - .../ybcatalog/domain/CatalogZySyndrome.java | 64 - .../mapper/CatalogDrugInfoMapper.java | 17 - .../mapper/CatalogDrugInfoUsualMapper.java | 17 - .../CatalogMedicalConsumablesMapper.java | 17 - .../mapper/CatalogMedicalHerbInfoMapper.java | 17 - .../mapper/CatalogMedicalServiceMapper.java | 17 - .../mapper/CatalogSpecialDiseaseMapper.java | 17 - ...CatalogSurgeryStandardDirectoryMapper.java | 17 - .../mapper/CatalogWesternDiseaseMapper.java | 17 - .../CatalogZyDiseaseDiagnosisMapper.java | 17 - .../mapper/CatalogZySyndromeMapper.java | 17 - .../service/ICatalogDrugInfoService.java | 28 - .../service/ICatalogDrugInfoUsualService.java | 23 - .../ICatalogMedicalConsumablesService.java | 14 - .../ICatalogMedicalHerbInfoService.java | 14 - .../ICatalogMedicalServiceService.java | 14 - .../ICatalogSpecialDiseaseService.java | 14 - ...atalogSurgeryStandardDirectoryService.java | 14 - .../ICatalogWesternDiseaseService.java | 14 - .../ICatalogZyDiseaseDiagnosisService.java | 14 - .../service/ICatalogZySyndromeService.java | 14 - .../impl/CatalogDrugInfoServiceImpl.java | 31 - .../impl/CatalogDrugInfoUsualServiceImpl.java | 35 - .../CatalogMedicalConsumablesServiceImpl.java | 19 - .../CatalogMedicalHerbInfoServiceImpl.java | 19 - .../CatalogMedicalServiceServiceImpl.java | 19 - .../CatalogSpecialDiseaseServiceImpl.java | 20 - ...ogSurgeryStandardDirectoryServiceImpl.java | 19 - .../CatalogWesternDiseaseServiceImpl.java | 19 - .../CatalogZyDiseaseDiagnosisServiceImpl.java | 19 - .../impl/CatalogZySyndromeServiceImpl.java | 19 - .../ybelep/domain/ElepMedresultDetail.java | 64 - .../ybelep/domain/ElepMedresultInfo.java | 49 - .../ybelep/domain/ElepMedresultInput.java | 49 - .../ybelep/domain/ElepQuerDiagnosisInfo.java | 73 - .../domain/ElepQuerPrescriptionDetail.java | 142 - .../domain/ElepQuerPrescriptionInfo.java | 120 - .../domain/ElepQuerPrescriptionInput.java | 49 - .../ybelep/domain/ElepQuerVisitInfo.java | 109 - .../ybelep/domain/ElepRevokeInput.java | 60 - .../ybelep/domain/ElepRevokeOutput.java | 41 - .../ybelep/domain/ElepSignatureInput.java | 52 - .../ybelep/domain/ElepSignatureOutput.java | 49 - .../ybelep/domain/ElepUploadInput.java | 104 - .../ybelep/domain/ElepUploadOutput.java | 40 - .../ybelep/domain/ElepVeriDiagnosisInfo.java | 86 - .../domain/ElepVeriPrescriptionDetail.java | 157 - .../domain/ElepVeriPrescriptionInfo.java | 126 - .../domain/ElepVeriPrescriptionOutput.java | 36 - .../ybelep/domain/ElepVeriVisitInfo.java | 182 -- .../ybelep/domain/InformationInquiry.java | 26 - .../domain/MedicationResultInquiry.java | 41 - .../ybelep/domain/PreCheckPrescription.java | 129 - .../ybelep/domain/QueryPrescription.java | 122 - .../mapper/ElepMedresultDetailMapper.java | 17 - .../mapper/ElepMedresultInfoMapper.java | 17 - .../mapper/ElepMedresultInputMapper.java | 17 - .../mapper/ElepQuerDiagnosisInfoMapper.java | 17 - .../ElepQuerPrescriptionDetailMapper.java | 17 - .../ElepQuerPrescriptionInfoMapper.java | 17 - .../ElepQuerPrescriptionInputMapper.java | 17 - .../mapper/ElepQuerVisitInfoMapper.java | 17 - .../ybelep/mapper/ElepRevokeInputMapper.java | 17 - .../ybelep/mapper/ElepRevokeOutputMapper.java | 17 - .../mapper/ElepSignatureInputMapper.java | 17 - .../mapper/ElepSignatureOutputMapper.java | 17 - .../ybelep/mapper/ElepUploadInputMapper.java | 17 - .../ybelep/mapper/ElepUploadOutputMapper.java | 17 - .../mapper/ElepVeriDiagnosisInfoMapper.java | 17 - .../ElepVeriPrescriptionDetailMapper.java | 17 - .../ElepVeriPrescriptionInfoMapper.java | 17 - .../ElepVeriPrescriptionOutputMapper.java | 17 - .../mapper/ElepVeriVisitInfoMapper.java | 17 - .../service/IElepMedresultDetailService.java | 14 - .../service/IElepMedresultInfoService.java | 14 - .../service/IElepMedresultInputService.java | 14 - .../IElepQuerDiagnosisInfoService.java | 14 - .../IElepQuerPrescriptionDetailService.java | 14 - .../IElepQuerPrescriptionInfoService.java | 14 - .../IElepQuerPrescriptionInputService.java | 14 - .../service/IElepQuerVisitInfoService.java | 14 - .../service/IElepRevokeInputService.java | 14 - .../service/IElepRevokeOutputService.java | 14 - .../service/IElepSignatureInputService.java | 14 - .../service/IElepSignatureOutputService.java | 14 - .../service/IElepUploadInputService.java | 14 - .../service/IElepUploadOutputService.java | 14 - .../IElepVeriDiagnosisInfoService.java | 14 - .../IElepVeriPrescriptionDetailService.java | 14 - .../IElepVeriPrescriptionInfoService.java | 14 - .../IElepVeriPrescriptionOutputService.java | 14 - .../service/IElepVeriVisitInfoService.java | 14 - .../impl/ElepMedresultDetailServiceImpl.java | 19 - .../impl/ElepMedresultInfoServiceImpl.java | 19 - .../impl/ElepMedresultInputServiceImpl.java | 19 - .../ElepQuerDiagnosisInfoServiceImpl.java | 19 - ...ElepQuerPrescriptionDetailServiceImpl.java | 19 - .../ElepQuerPrescriptionInfoServiceImpl.java | 19 - .../ElepQuerPrescriptionInputServiceImpl.java | 19 - .../impl/ElepQuerVisitInfoServiceImpl.java | 19 - .../impl/ElepRevokeInputServiceImpl.java | 19 - .../impl/ElepRevokeOutputServiceImpl.java | 19 - .../impl/ElepSignatureInputServiceImpl.java | 19 - .../impl/ElepSignatureOutputServiceImpl.java | 19 - .../impl/ElepUploadInputServiceImpl.java | 19 - .../impl/ElepUploadOutputServiceImpl.java | 19 - .../ElepVeriDiagnosisInfoServiceImpl.java | 19 - ...ElepVeriPrescriptionDetailServiceImpl.java | 19 - .../ElepVeriPrescriptionInfoServiceImpl.java | 19 - ...ElepVeriPrescriptionOutputServiceImpl.java | 19 - .../impl/ElepVeriVisitInfoServiceImpl.java | 19 - .../EncounterDiagnosisMapper.xml | 11 + .../financial/PaymentReconciliationMapper.xml | 1 + .../mapper/yb/MedicalInsuranceMapper.xml | 7 +- .../openhis-einvoiceapp/pom.xml | 149 - .../openhis/OpenHisInvoiceApplication.java | 33 - .../com/openhis/controller/YbController.java | 134 - .../com/openhis/vo/EleInvioceBillDto.java | 18 - .../src/main/resources/application-druid.yml | 63 - .../src/main/resources/application-prod.yml | 61 - .../src/main/resources/application.yml | 159 - .../src/main/resources/banner.txt | 10 - .../src/main/resources/config/flow.el.xml | 6 - .../config/hospital-config.properties | 0 .../resources/config/sys-config.properties | 21 - .../src/main/resources/logback.xml | 112 - .../main/resources/mybatis/mybatis-config.xml | 21 - openhis-server-new/openhis-miniapp/pom.xml | 67 - .../main/java/com/openhis/OpenHisMiniApp.java | 26 - .../META-INF/spring-devtools.properties | 1 - .../src/main/resources/application-druid.yml | 61 - .../src/main/resources/application.yml | 149 - .../src/main/resources/banner.txt | 10 - .../main/resources/i18n/messages.properties | 46 - .../src/main/resources/logback.xml | 93 - .../main/resources/mybatis/mybatis-config.xml | 21 - openhis-server-new/package-lock.json | 6 + openhis-server-new/pom.xml | 1 - 598 files changed, 7551 insertions(+), 35624 deletions(-) create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/ISupplyService.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/impl/SupplyServiceImpl.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/controller/ChangePriceController.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/dto/SupplyListDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/mapper/SupplyMapper.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DiagnosisTreatmentImportDto.java delete mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionOptionAppService.java delete mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionOptionAppServiceImpl.java delete mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsOptionController.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IBankPosCloudAppService.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IFoodborneAcquisitionAppService.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/BankPosCloudAppServiceImpl.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/FoodborneAcquisitionAppServiceImpl.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/controller/FoodborneAcquisitionAppController.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcDataElementDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcPaymentScanNotifyDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionRequestDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionResponseDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/FaSimplediseaseAddNopwParam.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayType.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayerIdType.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRealNameAuthFlag.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRespType.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcTranType.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/mapper/FoodborneAcquisitionAppMapper.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcHttpUtil.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcTraceNoGenerator.java rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/{IInpatientMedicineCollectionAppService.java => IMedicineSummaryAppService.java} (95%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/{InpatientMedicineCollectionAppServiceImpl.java => MedicineSummaryAppServiceImpl.java} (97%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/{InpatientMedicineCollectionController.java => MedicineSummaryController.java} (90%) rename openhis-server-new/{openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java => openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/ServiceRequestUseExe.java} (36%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/{IInpatientMedicineSummaryDispenseAppService.java => ISummaryDispenseMedicineAppService.java} (70%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/{InpatientMedicineSummaryDispenseAppServiceImpl.java => SummaryDispenseMedicineAppServiceImpl.java} (89%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/{InpatientMedicineSummaryDispenseController.java => SummaryDispenseMedicineController.java} (63%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/{InpatientMedicineSummaryDto.java => MedicineSummaryDto.java} (96%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/{InpatientMedicineInitDto.java => MedicineSummaryInitDto.java} (97%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/{InpatientMedicineSearchParam.java => MedicineSummarySearchParam.java} (86%) rename openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/{InpatientMedicineSummaryDispenseMapper.java => SummaryDispenseMedicineMapper.java} (40%) create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IDepartmentRevenueStatisticsAppService.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IReportStatisticsAppService.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/DepartmentRevenueStatisticsAppServiceImpl.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/ReportStatisticsAppServiceImpl.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/DepartmentRevenueStatisticsController.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/ReportStatisticsController.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/AnnualReportStatisticsPageDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DailyReportStatisticsPageDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DepartmentRevenueStatisticsPageDto.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/DepartmentRevenueStatisticsMapper.java create mode 100644 openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/ReportStatisticsMapper.java create mode 100644 openhis-server-new/openhis-application/src/main/resources/mapper/adjustprice/SupplyMapper.xml create mode 100644 openhis-server-new/openhis-application/src/main/resources/mapper/externalintegration/FoodborneAcquisitionAppMapper.xml rename openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/{InpatientMedicineSummaryDispenseMapper.xml => SummaryDispenseMedicineMapper.xml} (99%) create mode 100644 openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/DepartmentRevenueStatisticsMapper.xml create mode 100644 openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/ReportStatisticsMapper.xml delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Output.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java delete mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java delete mode 100644 openhis-server-new/openhis-einvoiceapp/pom.xml delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/OpenHisInvoiceApplication.java delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/controller/YbController.java delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/vo/EleInvioceBillDto.java delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/application-druid.yml delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/application-prod.yml delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/application.yml delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/banner.txt delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/config/flow.el.xml delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/config/hospital-config.properties delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/config/sys-config.properties delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/logback.xml delete mode 100644 openhis-server-new/openhis-einvoiceapp/src/main/resources/mybatis/mybatis-config.xml delete mode 100644 openhis-server-new/openhis-miniapp/pom.xml delete mode 100644 openhis-server-new/openhis-miniapp/src/main/java/com/openhis/OpenHisMiniApp.java delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/META-INF/spring-devtools.properties delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/application-druid.yml delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/application.yml delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/banner.txt delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/i18n/messages.properties delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/logback.xml delete mode 100644 openhis-server-new/openhis-miniapp/src/main/resources/mybatis/mybatis-config.xml create mode 100644 openhis-server-new/package-lock.json diff --git a/openhis-server-new/core-common/src/main/java/com/core/common/core/redis/RedisCache.java b/openhis-server-new/core-common/src/main/java/com/core/common/core/redis/RedisCache.java index 9522f9cf..66a23b9a 100644 --- a/openhis-server-new/core-common/src/main/java/com/core/common/core/redis/RedisCache.java +++ b/openhis-server-new/core-common/src/main/java/com/core/common/core/redis/RedisCache.java @@ -5,10 +5,7 @@ import java.util.concurrent.TimeUnit; import com.core.common.exception.UtilException; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.redis.core.BoundSetOperations; -import org.springframework.data.redis.core.HashOperations; -import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.data.redis.core.ValueOperations; +import org.springframework.data.redis.core.*; import org.springframework.stereotype.Component; /** @@ -256,4 +253,28 @@ public class RedisCache { return this.redisTemplate.opsForValue().increment(key, delta); } } + /** + * 获取所有String类型的键值对(开发环境下使用) + */ + public Map getAllDictDataWithKeys(String pattern) { + pattern+="*"; + Map allDict = new HashMap<>(); + // 1. 获取所有键("*"匹配所有键) + Set allKeys = redisTemplate.keys(pattern); + if (allKeys == null || allKeys.isEmpty()) { + return allDict; + } + // 2. 批量获取值(使用multiGet高效批量查询) + ValueOperations valueOps = redisTemplate.opsForValue(); + List values = valueOps.multiGet(allKeys); + // 3. 组装键值对 + Iterator keyIter = allKeys.iterator(); + for (Object value : values) { + if (keyIter.hasNext()) { + allDict.put(keyIter.next(), value); + } + } + return allDict; + } + } diff --git a/openhis-server-new/core-common/src/main/java/com/core/common/enums/TenantOptionDict.java b/openhis-server-new/core-common/src/main/java/com/core/common/enums/TenantOptionDict.java index e2107993..b6916595 100644 --- a/openhis-server-new/core-common/src/main/java/com/core/common/enums/TenantOptionDict.java +++ b/openhis-server-new/core-common/src/main/java/com/core/common/enums/TenantOptionDict.java @@ -197,7 +197,39 @@ public enum TenantOptionDict { /** * PACSAppSecret */ - FORWARD_SWITCH("forwardSwitch", "电子发票中转服务开关", 47); + FORWARD_SWITCH("forwardSwitch", "电子发票中转服务开关", 47), + /** + * 食源性开关 + */ + FOODBORNE_SWITCH("foodborneSwitch", "食源性开关", 48), + /** + * 食源性接口地址 ../goto(格式如下:http://172.16.7.247/infections/goto 需指定到/goto) + */ + FOODBORNE_API_URL("foodborneApiUrl", "食源性接口地址 ../goto", 49), + /** + * 食源性医疗机构 + */ + FOODBORNE_HOSPITAL("foodborneHospital", "食源性医疗机构", 50), + /** + * 食源性登录账号 + */ + FOODBORNE_USER_NAME("foodborneUserName", "食源性登录账号", 51), + /** + * BPC商户号 + */ + BPC_MID("bpcMid", "BPC商户号", 52), + /** + * BPC终端号 + */ + BPC_TID("bpcTid", "BPC终端号", 53), + /** + * BPCMD5签名密钥 + */ + BPC_MD5_SHARED_SECRET("bpcMd5SharedSecret", "BPCMD5签名密钥", 54), + /** + * BPC请求URL + */ + BPC_REQUEST_URL("bpcRequestUrl", "BPC请求URL", 55); private final String code; private final String name; diff --git a/openhis-server-new/core-framework/src/main/java/com/core/framework/web/service/SysLoginService.java b/openhis-server-new/core-framework/src/main/java/com/core/framework/web/service/SysLoginService.java index 42ed2172..e217d679 100644 --- a/openhis-server-new/core-framework/src/main/java/com/core/framework/web/service/SysLoginService.java +++ b/openhis-server-new/core-framework/src/main/java/com/core/framework/web/service/SysLoginService.java @@ -273,7 +273,7 @@ public class SysLoginService { Optional currentTenantOptional = bindTenantList.getData().stream().filter(e -> tenantId.equals(e.getId())).findFirst(); if (currentTenantOptional.isEmpty()) { - throw new ServiceException("所属医院非法"); + throw new ServiceException("所属医院无权限"); } // 租户状态校验 SysTenant currentTenant = currentTenantOptional.get(); diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/ISupplyService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/ISupplyService.java new file mode 100644 index 00000000..ce7cda3d --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/ISupplyService.java @@ -0,0 +1,22 @@ +package com.openhis.web.adjustprice.appservice; + +import com.openhis.web.adjustprice.dto.SupplyListDto; + +import java.util.List; + +/** + * Desc: + * @Author raymond + * @Date 16:09 2025/10/15 + * @return + **/ +public interface ISupplyService { + /** + * Desc: + * @param + * @Author raymond + * @Date 17:10 2025/10/15 + * @return java.util.List + **/ + List searchAllSupplyList(); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/impl/SupplyServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/impl/SupplyServiceImpl.java new file mode 100644 index 00000000..55283471 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/appservice/impl/SupplyServiceImpl.java @@ -0,0 +1,28 @@ +package com.openhis.web.adjustprice.appservice.impl; + +import com.openhis.web.adjustprice.appservice.ISupplyService; +import com.openhis.web.adjustprice.dto.SupplyListDto; +import com.openhis.web.adjustprice.mapper.SupplyMapper; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @ClassName ChangePriceImpl + * @Description TODO + * @Author raymond + * @Date 2025/10/15 16:10 + * @Version 1.0 + **/ +@Component +public class SupplyServiceImpl implements ISupplyService { + + @Resource + private SupplyMapper supplyMapper; + + @Override + public List searchAllSupplyList() { + return this.supplyMapper.searchAllSupplyList(); + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/controller/ChangePriceController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/controller/ChangePriceController.java new file mode 100644 index 00000000..21480ed8 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/controller/ChangePriceController.java @@ -0,0 +1,112 @@ +package com.openhis.web.adjustprice.controller; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; + +import org.springframework.web.bind.annotation.*; + +import com.core.common.core.domain.R; +import com.openhis.web.adjustprice.appservice.ISupplyService; +import com.openhis.web.datadictionary.dto.MedicationSearchParam; + +/** + * @ClassName ChargePriceController + * @Description 调价修改药品、耗材、诊疗、挂号接口类 + * @Author raymond + * @Date 2025/10/14 16:56 + * @Version 1.0 + **/ +@RestController +@RequestMapping("/change/price") +public class ChangePriceController { + @Resource + private ISupplyService supplyService; + + /** + * Desc: 查询所有供应商集合 + * + * @param + * @Author raymond + * @Date 16:55 2025/10/15 + * @return com.core.common.core.domain.R + **/ + @GetMapping(value = "searchAllSupply") + public R searchAllSupply() { + return R.ok(this.supplyService.searchAllSupplyList()); + } + + /** + * Desc: 根据供应商和药品名称加载要修改的药品数据 + * + * @Author raymond + * @Date 08:47 2025/10/15 + * @return com.core.common.core.domain.R + **/ + @PostMapping(value = "searchMedicineListToPage") + public R searchMedicineListToPage() { + return R.ok(); + } + + /** + * Desc: + * + * @param medicationSearchParam + * @param searchKey + * @param pageNo + * @param pageSize + * @param request + * @Author raymond + * @Date 13:41 2025/10/15 + * @return com.core.common.core.domain.R + **/ + @PostMapping(value = "searchConsumablesListToPage") + public R searchConsumablesListToPage(MedicationSearchParam medicationSearchParam, + @RequestParam(value = "searchKey", defaultValue = "") String searchKey, + @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { + + return null; + } + + /** + * Desc: + * + * @param medicationSearchParam + * @param searchKey + * @param pageNo + * @param pageSize + * @param request + * @Author raymond + * @Date 13:41 2025/10/15 + * @return com.core.common.core.domain.R + **/ + @PostMapping(value = "searchDiagnosisListToPage") + public R searchDiagnosisListToPage(MedicationSearchParam medicationSearchParam, + @RequestParam(value = "searchKey", defaultValue = "") String searchKey, + @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { + + return null; + } + + /** + * Desc: + * + * @param medicationSearchParam + * @param searchKey + * @param pageNo + * @param pageSize + * @param request + * @Author raymond + * @Date 13:41 2025/10/15 + * @return com.core.common.core.domain.R + **/ + @PostMapping(value = "searchHealthCareListToPage") + public R searchRegisterListToPage(MedicationSearchParam medicationSearchParam, + @RequestParam(value = "searchKey", defaultValue = "") String searchKey, + @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { + + return null; + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/dto/SupplyListDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/dto/SupplyListDto.java new file mode 100644 index 00000000..9a27fc88 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/dto/SupplyListDto.java @@ -0,0 +1,22 @@ +package com.openhis.web.adjustprice.dto; + +import lombok.Data; + +/** + * @ClassName SupplyListDto + * @Description TODO + * @Author raymond + * @Date 2025/10/15 16:56 + * @Version 1.0 + **/ +@Data +public class SupplyListDto { + /** + * 供应商ID + */ + private Long supplyId; + /** + * 供应商名称 + */ + private String supplyName; +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/mapper/SupplyMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/mapper/SupplyMapper.java new file mode 100644 index 00000000..80119327 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/adjustprice/mapper/SupplyMapper.java @@ -0,0 +1,25 @@ +package com.openhis.web.adjustprice.mapper; + +import com.openhis.web.adjustprice.dto.SupplyListDto; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * Desc: + * @Author raymond + * @Date 14:37 2025/10/15 + * @return + **/ +@Component +public interface SupplyMapper { + /** + * Desc: + * @param + * @Author raymond + * @Date 17:10 2025/10/15 + * @return java.util.List + **/ + List searchAllSupplyList(); + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientChargeAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientChargeAppServiceImpl.java index 155c5085..d73b278c 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientChargeAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientChargeAppServiceImpl.java @@ -126,7 +126,6 @@ public class OutpatientChargeAppServiceImpl implements IOutpatientChargeAppServi }); return prescriptionDtoList; } - /** * 医保转自费 * diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientRefundAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientRefundAppServiceImpl.java index d3b73586..0c73f7f7 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientRefundAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/appservice/impl/OutpatientRefundAppServiceImpl.java @@ -387,7 +387,9 @@ public class OutpatientRefundAppServiceImpl implements IOutpatientRefundAppServi // 收费状态枚举 e.setStatusEnum_enumText(EnumUtils.getInfoByValue(ChargeItemStatus.class, e.getStatusEnum())); // 计算年龄 - e.setAge(AgeCalculatorUtil.getAge(e.getBirthDate())); + if (e.getBirthDate() != null) { + e.setAge(AgeCalculatorUtil.getAge(e.getBirthDate())); + } }); return R.ok(encounterPatientPage); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/mapper/OutpatientChargeAppMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/mapper/OutpatientChargeAppMapper.java index a43d2086..e3c5d3be 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/mapper/OutpatientChargeAppMapper.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/chargemanage/mapper/OutpatientChargeAppMapper.java @@ -56,4 +56,5 @@ public interface OutpatientChargeAppMapper { @Param("register") Integer register, @Param("planned") Integer planned, @Param("billable") Integer billable, @Param("billed") Integer billed, @Param("refunding") Integer refunding, @Param("refunded") Integer refunded, @Param("partRefund") Integer partRefund); + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/common/dto/PerformRecordDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/common/dto/PerformRecordDto.java index 684b7a83..8e1e81ca 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/common/dto/PerformRecordDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/common/dto/PerformRecordDto.java @@ -5,6 +5,7 @@ package com.openhis.web.common.dto; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; @@ -30,6 +31,7 @@ public class PerformRecordDto { private String statusEnum_enumText; /** 执行时间 */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") private Date occurrenceTime; /** 执行位置 */ diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/IDiagTreatMAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/IDiagTreatMAppService.java index bbdf1494..43a0300a 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/IDiagTreatMAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/IDiagTreatMAppService.java @@ -3,6 +3,9 @@ package com.openhis.web.datadictionary.appservice; import java.util.List; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.web.multipart.MultipartFile; import com.core.common.core.domain.R; import com.openhis.web.datadictionary.dto.DiagnosisTreatmentSelParam; @@ -75,4 +78,18 @@ public interface IDiagTreatMAppService { */ R addDiseaseTreatment(DiagnosisTreatmentUpDto diagnosisTreatmentUpDto); + /** + * 导入诊疗目录 + * + * @param file 文件 + * @return 结果 + */ + R importData(MultipartFile file); + + /** + * 获取导入模板 + * + * @param response 响应 + */ + void importTemplate(HttpServletResponse response); } \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DeviceManageAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DeviceManageAppServiceImpl.java index 31fc8016..baed3592 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DeviceManageAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DeviceManageAppServiceImpl.java @@ -3,7 +3,7 @@ */ package com.openhis.web.datadictionary.appservice.impl; -import java.io.IOException; +import java.math.BigDecimal; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; import java.util.stream.Collectors; @@ -35,10 +35,14 @@ import com.openhis.administration.domain.ChargeItemDefinition; import com.openhis.administration.domain.DeviceDefinition; import com.openhis.administration.domain.Location; import com.openhis.administration.domain.Supplier; -import com.openhis.administration.service.*; +import com.openhis.administration.service.IChargeItemDefinitionService; +import com.openhis.administration.service.IDeviceDefinitionService; +import com.openhis.administration.service.ILocationService; +import com.openhis.administration.service.ISupplierService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.enums.*; +import com.openhis.common.utils.CommonUtil; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.sys.service.IOperationRecordService; @@ -65,10 +69,7 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { private IDeviceDefinitionService deviceDefinitionService; @Autowired - IChargeItemDefinitionService chargeItemDefinitionService; - - @Autowired - IChargeItemDefDetailService chargeItemDefDetailService; + private IChargeItemDefinitionService chargeItemDefinitionService; @Autowired private ILocationService locationService; @@ -386,7 +387,7 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { @Override public R importData(MultipartFile file) { // 读取文件 - R> readResult = readExcelFile(file); + R> readResult = CommonUtil.readImportedExcelFile(file, DeviceImportDto.class); if (R.SUCCESS != readResult.getCode()) { return readResult; } @@ -396,9 +397,8 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { if (R.SUCCESS != validateResult.getCode()) { return validateResult; } - // 查询机构ID、当前时间、位置信息供后续使用 + // 查询机构ID、位置信息供后续使用 Long orgId = SecurityUtils.getLoginUser().getOrgId(); - Date now = DateUtils.getNowDate(); List locationList = locationService.list(new LambdaQueryWrapper() .eq(Location::getDeleteFlag, DeleteFlag.NOT_DELETED.getCode()).orderByAsc(Location::getId)); Long defaultLocationId = locationList.stream().findFirst().orElse(new Location()).getId(); @@ -406,7 +406,15 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { locationList.stream().collect(Collectors.groupingBy(Location::getName)); // 创建表数据 for (DeviceImportDto importDto : importDtoList) { - + // 创建器材定义 + DeviceDefinition deviceDefinition = + createDeviceDefinitionEntity(importDto, orgId, defaultLocationId, locationNameMap); + deviceDefinitionService.save(deviceDefinition); + // 创建费用定价和详情 + chargeItemDefinitionService.addChargeItemDefinitionAndDetail(importDto.getName(), importDto.getTypeCode(), + importDto.getYbType(), importDto.getUnitCode(), importDto.getPurchasePrice(), + importDto.getRetailPrice(), importDto.getMaximumRetailPrice(), orgId, + CommonConstants.TableName.ADM_DEVICE_DEFINITION, deviceDefinition.getId()); } return R.ok(null, "导入成功!"); } @@ -422,26 +430,6 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { util.importTemplateExcel(response, "器材目录数据"); } - /** - * 读取Excel文件 - * - * @param file 文件 - * @return 读取结果 - */ - private R> readExcelFile(MultipartFile file) { - ExcelUtil util = new ExcelUtil<>(DeviceImportDto.class); - List importDtoList; - try { - importDtoList = util.importExcel(file.getInputStream()); - } catch (IOException e) { - return R.fail("导入失败!文件读取异常"); - } - if (importDtoList.isEmpty()) { - return R.fail("导入失败!文件不能为空"); - } - return R.ok(importDtoList); - } - /** * 导入信息校验 * @@ -449,11 +437,147 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { */ private R validateImportDtoList(List importDtoList) { // 字段校验(必填及数值类型) - + List fieldValidateMsgList = new ArrayList<>(); + for (int i = 0; i < importDtoList.size(); i++) { + DeviceImportDto importDto = importDtoList.get(i); + importDto.setLineNumber(i + 2); + List lineValidateMsgList = new ArrayList<>(); + if (StringUtils.isEmpty(importDto.getName())) { + lineValidateMsgList.add("器材名称必填"); + } + if (StringUtils.isEmpty(importDto.getCategoryCode())) { + lineValidateMsgList.add("器材分类必填"); + } + if (StringUtils.isEmpty(importDto.getUnitCode())) { + lineValidateMsgList.add("包装单位必填"); + } + if (StringUtils.isEmpty(importDto.getSize())) { + lineValidateMsgList.add("包装规格必填"); + } + if (StringUtils.isEmpty(importDto.getItemMinQuantityStr())) { + lineValidateMsgList.add("最小库存警戒数量(常规单位)必填"); + } + BigDecimal itemMinQuantity; + try { + itemMinQuantity = new BigDecimal(importDto.getItemMinQuantityStr()); + importDto.setItemMinQuantity(itemMinQuantity); + } catch (Exception e) { + lineValidateMsgList.add("最小库存警戒数量(常规单位)应为数值类型"); + } + if (StringUtils.isEmpty(importDto.getItemMaxQuantityStr())) { + lineValidateMsgList.add("最大库存警戒数量(常规单位)必填"); + } + BigDecimal itemMaxQuantity; + try { + itemMaxQuantity = new BigDecimal(importDto.getItemMaxQuantityStr()); + importDto.setItemMaxQuantity(itemMaxQuantity); + } catch (Exception e) { + lineValidateMsgList.add("最大库存警戒数量(常规单位)应为数值类型"); + } + if (StringUtils.isEmpty(importDto.getPartPercentStr())) { + lineValidateMsgList.add("拆零比必填"); + } + BigDecimal partPercent; + try { + partPercent = new BigDecimal(importDto.getPartPercentStr()); + importDto.setPartPercent(partPercent); + } catch (Exception e) { + lineValidateMsgList.add("拆零比应为数值类型"); + } + if (StringUtils.isEmpty(importDto.getLocationName())) { + lineValidateMsgList.add("所在位置名称必填"); + } + if (StringUtils.isEmpty(importDto.getHvcmFlag())) { + lineValidateMsgList.add("高值器材标志必填"); + } + if (StringUtils.isEmpty(importDto.getYbFlag())) { + lineValidateMsgList.add("医保标记必填"); + } + if (StringUtils.isEmpty(importDto.getYbMatchFlag())) { + lineValidateMsgList.add("医保对码标记必填"); + } + if (Whether.YES.getCode().equals(importDto.getYbMatchFlag()) && StringUtils.isEmpty(importDto.getYbNo())) { + lineValidateMsgList.add("医保对码时,医保编码必填"); + } + if (StringUtils.isEmpty(importDto.getAllergenFlag())) { + lineValidateMsgList.add("过敏标记必填"); + } + if (StringUtils.isEmpty(importDto.getRxFlag())) { + lineValidateMsgList.add("处方标志必填"); + } + if (StringUtils.isEmpty(importDto.getTypeCode())) { + lineValidateMsgList.add("财务类别必填"); + } + if (StringUtils.isEmpty(importDto.getYbType())) { + lineValidateMsgList.add("医保费用类别必填"); + } + if (StringUtils.isEmpty(importDto.getPurchasePriceStr())) { + lineValidateMsgList.add("购入价必填"); + } + BigDecimal purchasePrice; + try { + purchasePrice = new BigDecimal(importDto.getPurchasePriceStr()); + importDto.setPurchasePrice(purchasePrice); + } catch (Exception e) { + lineValidateMsgList.add("购入价应为数值类型"); + } + if (StringUtils.isEmpty(importDto.getRetailPriceStr())) { + lineValidateMsgList.add("零售价必填"); + } + BigDecimal retailPrice; + try { + retailPrice = new BigDecimal(importDto.getRetailPriceStr()); + importDto.setRetailPrice(retailPrice); + } catch (Exception e) { + lineValidateMsgList.add("零售价应为数值类型"); + } + if (StringUtils.isEmpty(importDto.getMaximumRetailPriceStr())) { + lineValidateMsgList.add("最高零售价必填"); + } + BigDecimal maximumRetailPrice; + try { + maximumRetailPrice = new BigDecimal(importDto.getMaximumRetailPriceStr()); + importDto.setMaximumRetailPrice(maximumRetailPrice); + } catch (Exception e) { + lineValidateMsgList.add("最高零售价应为数值类型"); + } + if (!lineValidateMsgList.isEmpty()) { + fieldValidateMsgList + .add("■ 第" + importDto.getLineNumber() + "行:" + String.join(",", lineValidateMsgList) + ";"); + } + } + if (!fieldValidateMsgList.isEmpty()) { + return R.fail("导入失败!器材信息填写有误:" + String.join(" ", fieldValidateMsgList)); + } // 重复校验(文件行重复) - + List lineRepeatedValidateMsgList = new ArrayList<>(); + List> importDtoGroupList = new ArrayList<>(importDtoList.stream() + .collect(Collectors.groupingBy(e -> e.getName() + e.getManufacturerText() + e.getSize())).values()); + for (List importDtoGroup : importDtoGroupList) { + if (importDtoGroup.size() > 1) { + lineRepeatedValidateMsgList.add( + "■ 第" + importDtoGroup.stream().map(DeviceImportDto::getLineNumber).sorted().map(Object::toString) + .collect(Collectors.joining(",")) + "行的【" + importDtoGroup.get(0).getName() + "】重复;"); + } + } + if (!lineRepeatedValidateMsgList.isEmpty()) { + return R.fail("导入失败!文件中存在重复器材:" + String.join(" ", lineRepeatedValidateMsgList)); + } // 重复校验(文件与数据库重复) - + List dbRepeatedValidateMsgList = new ArrayList<>(); + for (DeviceImportDto importDto : importDtoList) { + List deviceDefinitionList = deviceDefinitionService + .list(new LambdaQueryWrapper().eq(DeviceDefinition::getName, importDto.getName()) + .eq(DeviceDefinition::getManufacturerText, importDto.getManufacturerText()) + .eq(DeviceDefinition::getSize, importDto.getSize())); + if (!deviceDefinitionList.isEmpty()) { + dbRepeatedValidateMsgList + .add("■ 第" + importDto.getLineNumber() + "行的【" + importDto.getName() + "】在系统中已存在;"); + } + } + if (!dbRepeatedValidateMsgList.isEmpty()) { + return R.fail("导入失败!系统中存在重复器材:" + String.join(" ", dbRepeatedValidateMsgList)); + } return R.ok(); } @@ -461,11 +585,37 @@ public class DeviceManageAppServiceImpl implements IDeviceManageAppService { * 创建器材定义实体 * * @param importDto 器材目录导入Dto + * @param orgId 机构ID + * @param defaultLocationId 默认位置ID + * @param locationNameMap 位置名称匹配分组Map * @return 器材定义实体 */ - private DeviceDefinition createDeviceDefinitionEntity(DeviceImportDto importDto) { - - return null; + private DeviceDefinition createDeviceDefinitionEntity(DeviceImportDto importDto, Long orgId, Long defaultLocationId, + Map> locationNameMap) { + DeviceDefinition deviceDefinition = new DeviceDefinition(); + // 根据输入的所在位置名称获取位置ID + List mapLocationList = locationNameMap.get(importDto.getLocationName()); + if (mapLocationList == null || mapLocationList.isEmpty()) { + deviceDefinition.setLocationId(defaultLocationId); + } else { + deviceDefinition.setLocationId(mapLocationList.get(0).getId()); + } + deviceDefinition.setBusNo(assignSeqUtil.getSeq(AssignSeqEnum.DEVICE_NUM.getPrefix(), 10)) + .setName(importDto.getName()).setPyStr(ChineseConvertUtils.toPinyinFirstLetter(importDto.getName())) + .setWbStr(ChineseConvertUtils.toWBFirstLetter(importDto.getName())) + .setCategoryCode(importDto.getCategoryCode()).setTypeCode(importDto.getTypeCode()) + .setUnitCode(importDto.getUnitCode()).setSize(importDto.getSize()) + .setItemMinQuantity(importDto.getItemMinQuantity()).setItemMaxQuantity(importDto.getItemMaxQuantity()) + .setPartPercent(importDto.getPartPercent()).setMinUnitCode(importDto.getMinUnitCode()).setOrgId(orgId) + .setHvcmFlag(CommonUtil.tryParseInt(importDto.getHvcmFlag())).setSalesUnitCode(importDto.getSalesUnitCode()) + .setApprovalNumber(importDto.getApprovalNumber()).setYbFlag(CommonUtil.tryParseInt(importDto.getYbFlag())) + .setYbNo(importDto.getYbNo()).setYbOrgNo(importDto.getYbOrgNo()) + .setYbMatchFlag(CommonUtil.tryParseInt(importDto.getYbMatchFlag())) + .setChrgitmLv(CommonUtil.tryParseInt(importDto.getChrgitmLv())) + .setStatusEnum(PublicationStatus.ACTIVE.getValue()).setManufacturerText(importDto.getManufacturerText()) + .setAllergenFlag(CommonUtil.tryParseInt(importDto.getAllergenFlag())) + .setRxFlag(CommonUtil.tryParseInt(importDto.getRxFlag())); + return deviceDefinition; } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DiagTreatMAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DiagTreatMAppServiceImpl.java index 61f52741..3debdfb1 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DiagTreatMAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/DiagTreatMAppServiceImpl.java @@ -1,5 +1,6 @@ package com.openhis.web.datadictionary.appservice.impl; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; @@ -10,10 +11,11 @@ import java.util.stream.Stream; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; -import com.openhis.yb.service.YbManager; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -23,13 +25,16 @@ import com.core.common.core.domain.R; import com.core.common.core.domain.entity.SysDictData; import com.core.common.utils.*; import com.core.common.utils.bean.BeanUtils; +import com.core.common.utils.poi.ExcelUtil; import com.core.system.service.ISysDictTypeService; import com.openhis.administration.domain.ChargeItemDefinition; import com.openhis.administration.domain.Organization; +import com.openhis.administration.service.IChargeItemDefinitionService; import com.openhis.administration.service.IOrganizationService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.enums.*; +import com.openhis.common.utils.CommonUtil; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.sys.service.IOperationRecordService; @@ -41,6 +46,7 @@ import com.openhis.web.datadictionary.mapper.ActivityDefinitionManageMapper; import com.openhis.workflow.domain.ActivityDefinition; import com.openhis.workflow.mapper.ActivityDefinitionMapper; import com.openhis.workflow.service.IActivityDefinitionService; +import com.openhis.yb.service.YbManager; /** * 诊疗实现类 @@ -52,7 +58,9 @@ import com.openhis.workflow.service.IActivityDefinitionService; public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { @Autowired - private IActivityDefinitionService iActivityDefinitionService; + private IActivityDefinitionService activityDefinitionService; + @Autowired + private IChargeItemDefinitionService chargeItemDefinitionService; @Autowired private ActivityDefinitionMapper activityDefinitionMapper; @Autowired @@ -110,15 +118,15 @@ public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { .collect(Collectors.toList()); diagnosisTreatmentInitDto.setDiagnosisCategoryOptions(diagnosisCategories); -// // 查询医疗服务项类型 -// List medical_service_items = -// iSysDictTypeService.selectDictDataByType(ActivityDefCategory.MEDICAL_SERVICE_ITEM.getCode()); -// // 获取医疗服务项List -// List diseaseTreatmentCategoryList = medical_service_items -// .stream().map(status -> new DiagnosisTreatmentInitDto.diseaseTreatmentType(status.getDictValue(), -// status.getDictLabel())) -// .toList(); -// List diseaseTreatmentCategories = new ArrayList<>(); + // // 查询医疗服务项类型 + // List medical_service_items = + // iSysDictTypeService.selectDictDataByType(ActivityDefCategory.MEDICAL_SERVICE_ITEM.getCode()); + // // 获取医疗服务项List + // List diseaseTreatmentCategoryList = medical_service_items + // .stream().map(status -> new DiagnosisTreatmentInitDto.diseaseTreatmentType(status.getDictValue(), + // status.getDictLabel())) + // .toList(); + // List diseaseTreatmentCategories = new ArrayList<>(); // // //获取目录分类 // DiagnosisTreatmentInitDto.diseaseTreatmentCategory diseaseTreatmentCategory = @@ -233,10 +241,10 @@ public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { activityDefinition.setWbStr(ChineseConvertUtils.toWBFirstLetter(activityDefinition.getName())); // 更新诊疗信息 - if (iActivityDefinitionService.updateById(activityDefinition)) { + if (activityDefinitionService.updateById(activityDefinition)) { // 调用医保目录对照接口 String ybSwitch = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.YB_SWITCH); // 医保开关 - if (Whether.YES.getCode().equals(ybSwitch) && StringUtils.isNotEmpty(activityDefinition.getYbNo()) ) { + if (Whether.YES.getCode().equals(ybSwitch) && StringUtils.isNotEmpty(activityDefinition.getYbNo())) { R r = ybService.directoryCheck(CommonConstants.TableName.WOR_ACTIVITY_DEFINITION, activityDefinition.getId()); if (200 != r.getCode()) { @@ -294,7 +302,7 @@ public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { iOperationRecordService.addIdsOperationRecord(DbOpType.STOP.getCode(), CommonConstants.TableName.WOR_ACTIVITY_DEFINITION, ids); // 更新诊疗信息 - return iActivityDefinitionService.updateBatchById(ActivityDefinitionList) + return activityDefinitionService.updateBatchById(ActivityDefinitionList) ? R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00002, new Object[] {"诊疗目录"})) : R.fail(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); @@ -322,7 +330,7 @@ public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { iOperationRecordService.addIdsOperationRecord(DbOpType.START.getCode(), CommonConstants.TableName.WOR_ACTIVITY_DEFINITION, ids); // 更新诊疗信息 - return iActivityDefinitionService.updateBatchById(ActivityDefinitionList) + return activityDefinitionService.updateBatchById(ActivityDefinitionList) ? R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00002, new Object[] {"诊疗目录"})) : R.fail(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); @@ -355,10 +363,10 @@ public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { // 新增外来诊疗目录 activityDefinition.setStatusEnum(PublicationStatus.ACTIVE.getValue()); - if (iActivityDefinitionService.addDiagnosisTreatment(activityDefinition)) { + if (activityDefinitionService.addDiagnosisTreatment(activityDefinition)) { // 调用医保目录对照接口 String ybSwitch = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.YB_SWITCH); // 医保开关 - if (Whether.YES.getCode().equals(ybSwitch) && StringUtils.isNotEmpty(activityDefinition.getYbNo()) ) { + if (Whether.YES.getCode().equals(ybSwitch) && StringUtils.isNotEmpty(activityDefinition.getYbNo())) { R r = ybService.directoryCheck(CommonConstants.TableName.WOR_ACTIVITY_DEFINITION, activityDefinition.getId()); if (200 != r.getCode()) { @@ -387,4 +395,169 @@ public class DiagTreatMAppServiceImpl implements IDiagTreatMAppService { } + /** + * 导入诊疗目录 + * + * @param file 文件 + * @return 结果 + */ + @Override + public R importData(MultipartFile file) { + // 读取文件 + R> readResult = + CommonUtil.readImportedExcelFile(file, DiagnosisTreatmentImportDto.class); + if (R.SUCCESS != readResult.getCode()) { + return readResult; + } + List importDtoList = readResult.getData(); + // 导入信息校验 + R validateResult = validateImportDtoList(importDtoList); + if (R.SUCCESS != validateResult.getCode()) { + return validateResult; + } + // 查询机构ID供后续使用 + Long orgId = SecurityUtils.getLoginUser().getOrgId(); + // 创建表数据 + for (DiagnosisTreatmentImportDto importDto : importDtoList) { + // 创建诊疗定义 + ActivityDefinition activityDefinition = createActivityDefinitionEntity(importDto, orgId); + activityDefinitionService.save(activityDefinition); + // 创建费用定价和详情 + chargeItemDefinitionService.addChargeItemDefinitionAndDetail(importDto.getName(), importDto.getTypeCode(), + importDto.getYbType(), importDto.getPermittedUnitCode(), null, importDto.getRetailPrice(), + importDto.getMaximumRetailPrice(), orgId, CommonConstants.TableName.WOR_ACTIVITY_DEFINITION, + activityDefinition.getId()); + } + return R.ok(null, "导入成功!"); + } + + /** + * 获取导入模板 + * + * @param response 响应 + */ + @Override + public void importTemplate(HttpServletResponse response) { + ExcelUtil util = new ExcelUtil<>(DiagnosisTreatmentImportDto.class); + util.importTemplateExcel(response, "诊疗目录数据"); + } + + /** + * 导入信息校验 + * + * @param importDtoList 器材目录导入数据列表 + */ + private R validateImportDtoList(List importDtoList) { + // 字段校验(必填及数值类型) + List fieldValidateMsgList = new ArrayList<>(); + for (int i = 0; i < importDtoList.size(); i++) { + DiagnosisTreatmentImportDto importDto = importDtoList.get(i); + importDto.setLineNumber(i + 2); + List lineValidateMsgList = new ArrayList<>(); + if (StringUtils.isEmpty(importDto.getName())) { + lineValidateMsgList.add("诊疗名称必填"); + } + if (StringUtils.isEmpty(importDto.getCategoryCode())) { + lineValidateMsgList.add("目录类别必填"); + } + if (StringUtils.isEmpty(importDto.getPermittedUnitCode())) { + lineValidateMsgList.add("使用单位必填"); + } + if (StringUtils.isEmpty(importDto.getYbFlag())) { + lineValidateMsgList.add("医保标记必填"); + } + if (StringUtils.isEmpty(importDto.getYbMatchFlag())) { + lineValidateMsgList.add("医保对码标记必填"); + } + if (Whether.YES.getCode().equals(importDto.getYbMatchFlag()) && StringUtils.isEmpty(importDto.getYbNo())) { + lineValidateMsgList.add("医保对码时,医保编码必填"); + } + if (StringUtils.isEmpty(importDto.getChrgitmLv())) { + lineValidateMsgList.add("医保等级必填"); + } + if (StringUtils.isEmpty(importDto.getTypeCode())) { + lineValidateMsgList.add("财务类别必填"); + } + if (StringUtils.isEmpty(importDto.getYbType())) { + lineValidateMsgList.add("医保费用类别必填"); + } + if (StringUtils.isEmpty(importDto.getRetailPriceStr())) { + lineValidateMsgList.add("零售价必填"); + } + BigDecimal retailPrice; + try { + retailPrice = new BigDecimal(importDto.getRetailPriceStr()); + importDto.setRetailPrice(retailPrice); + } catch (Exception e) { + lineValidateMsgList.add("零售价应为数值类型"); + } + if (StringUtils.isEmpty(importDto.getMaximumRetailPriceStr())) { + lineValidateMsgList.add("最高零售价必填"); + } + BigDecimal maximumRetailPrice; + try { + maximumRetailPrice = new BigDecimal(importDto.getMaximumRetailPriceStr()); + importDto.setMaximumRetailPrice(maximumRetailPrice); + } catch (Exception e) { + lineValidateMsgList.add("最高零售价应为数值类型"); + } + if (!lineValidateMsgList.isEmpty()) { + fieldValidateMsgList + .add("■ 第" + importDto.getLineNumber() + "行:" + String.join(",", lineValidateMsgList) + ";"); + } + } + if (!fieldValidateMsgList.isEmpty()) { + return R.fail("导入失败!诊疗信息填写有误:" + String.join(" ", fieldValidateMsgList)); + } + // 重复校验(文件行重复) + List lineRepeatedValidateMsgList = new ArrayList<>(); + List> importDtoGroupList = new ArrayList<>( + importDtoList.stream().collect(Collectors.groupingBy(DiagnosisTreatmentImportDto::getName)).values()); + for (List importDtoGroup : importDtoGroupList) { + if (importDtoGroup.size() > 1) { + lineRepeatedValidateMsgList.add("■ 第" + + importDtoGroup.stream().map(DiagnosisTreatmentImportDto::getLineNumber).sorted() + .map(Object::toString).collect(Collectors.joining(",")) + + "行的【" + importDtoGroup.get(0).getName() + "】重复;"); + } + } + if (!lineRepeatedValidateMsgList.isEmpty()) { + return R.fail("导入失败!文件中存在重复诊疗:" + String.join(" ", lineRepeatedValidateMsgList)); + } + // 重复校验(文件与数据库重复) + List dbRepeatedValidateMsgList = new ArrayList<>(); + for (DiagnosisTreatmentImportDto importDto : importDtoList) { + List deviceDefinitionList = activityDefinitionService.list( + new LambdaQueryWrapper().eq(ActivityDefinition::getName, importDto.getName())); + if (!deviceDefinitionList.isEmpty()) { + dbRepeatedValidateMsgList + .add("■ 第" + importDto.getLineNumber() + "行的【" + importDto.getName() + "】在系统中已存在;"); + } + } + if (!dbRepeatedValidateMsgList.isEmpty()) { + return R.fail("导入失败!系统中存在重复诊疗:" + String.join(" ", dbRepeatedValidateMsgList)); + } + return R.ok(); + } + + /** + * 创建诊疗定义实体 + * + * @param importDto 器材目录导入Dto + * @param orgId 机构ID + * @return 诊疗定义实体 + */ + private ActivityDefinition createActivityDefinitionEntity(DiagnosisTreatmentImportDto importDto, Long orgId) { + ActivityDefinition activityDefinition = new ActivityDefinition(); + activityDefinition.setBusNo(assignSeqUtil.getSeq(AssignSeqEnum.ACTIVITY_DEFINITION_NUM.getPrefix(), 10)) + .setName(importDto.getName()).setCategoryCode(importDto.getCategoryCode()) + .setPyStr(ChineseConvertUtils.toPinyinFirstLetter(importDto.getName())) + .setWbStr(ChineseConvertUtils.toWBFirstLetter(importDto.getName())) + .setPermittedUnitCode(importDto.getPermittedUnitCode()).setOrgId(orgId) + .setYbFlag(CommonUtil.tryParseInt(importDto.getYbFlag())).setYbNo(importDto.getYbNo()) + .setYbMatchFlag(CommonUtil.tryParseInt(importDto.getYbMatchFlag())) + .setStatusEnum(PublicationStatus.ACTIVE.getValue()) + .setChrgitmLv(CommonUtil.tryParseInt(importDto.getChrgitmLv())); + return activityDefinition; + } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/MedicationManageAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/MedicationManageAppServiceImpl.java index 1641339a..8920f0c2 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/MedicationManageAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/impl/MedicationManageAppServiceImpl.java @@ -3,7 +3,6 @@ */ package com.openhis.web.datadictionary.appservice.impl; -import java.io.IOException; import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; @@ -30,17 +29,16 @@ import com.core.common.utils.*; import com.core.common.utils.bean.BeanUtils; import com.core.common.utils.poi.ExcelUtil; import com.core.system.service.ISysDictTypeService; -import com.openhis.administration.domain.ChargeItemDefDetail; import com.openhis.administration.domain.ChargeItemDefinition; import com.openhis.administration.domain.Location; import com.openhis.administration.domain.Supplier; -import com.openhis.administration.service.IChargeItemDefDetailService; import com.openhis.administration.service.IChargeItemDefinitionService; import com.openhis.administration.service.ILocationService; import com.openhis.administration.service.ISupplierService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.enums.*; +import com.openhis.common.utils.CommonUtil; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.medication.domain.Medication; @@ -73,10 +71,7 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi private IMedicationDefinitionService medicationDefinitionService; @Autowired - IChargeItemDefinitionService chargeItemDefinitionService; - - @Autowired - IChargeItemDefDetailService chargeItemDefDetailService; + private IChargeItemDefinitionService chargeItemDefinitionService; @Autowired private ILocationService locationService; @@ -474,7 +469,7 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi @Override public R importData(MultipartFile file) { // 读取文件 - R> readResult = readExcelFile(file); + R> readResult = CommonUtil.readImportedExcelFile(file, MedicationImportDto.class); if (R.SUCCESS != readResult.getCode()) { return readResult; } @@ -484,9 +479,8 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi if (R.SUCCESS != validateResult.getCode()) { return validateResult; } - // 查询机构ID、当前时间、位置信息供后续使用 + // 查询机构ID、位置信息供后续使用 Long orgId = SecurityUtils.getLoginUser().getOrgId(); - Date now = DateUtils.getNowDate(); List locationList = locationService.list(new LambdaQueryWrapper() .eq(Location::getDeleteFlag, DeleteFlag.NOT_DELETED.getCode()).orderByAsc(Location::getId)); Long defaultLocationId = locationList.stream().findFirst().orElse(new Location()).getId(); @@ -494,21 +488,18 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi locationList.stream().collect(Collectors.groupingBy(Location::getName)); // 创建表数据 for (MedicationImportDto importDto : importDtoList) { - // 药品定义表 + // 创建药品定义 MedicationDefinition medicationDefinition = createMedicationDefinitionEntity(importDto); medicationDefinitionService.save(medicationDefinition); - // 药品表 + // 创建药品 Medication medication = createMedicationEntity(importDto, medicationDefinition.getId(), defaultLocationId, locationNameMap); medicationService.save(medication); - // 费用定价表 - ChargeItemDefinition chargeItemDefinition = - createChargeItemDefinition(importDto, orgId, medicationDefinition.getId(), now); - chargeItemDefinitionService.save(chargeItemDefinition); - // 费用定价子表 - List chargeItemDefDetailList = - createChargeItemDefDetailList(importDto, chargeItemDefinition.getId()); - chargeItemDefDetailService.saveBatch(chargeItemDefDetailList); + // 创建费用定价和详情 + chargeItemDefinitionService.addChargeItemDefinitionAndDetail(importDto.getName(), importDto.getTypeCode(), + importDto.getYbType(), importDto.getUnitCode(), importDto.getPurchasePrice(), + importDto.getRetailPrice(), importDto.getMaximumRetailPrice(), orgId, + CommonConstants.TableName.MED_MEDICATION_DEFINITION, medicationDefinition.getId()); } return R.ok(null, "导入成功!"); } @@ -524,26 +515,6 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi util.importTemplateExcel(response, "药品目录数据"); } - /** - * 读取Excel文件 - * - * @param file 文件 - * @return 读取结果 - */ - private R> readExcelFile(MultipartFile file) { - ExcelUtil util = new ExcelUtil<>(MedicationImportDto.class); - List importDtoList; - try { - importDtoList = util.importExcel(file.getInputStream()); - } catch (IOException e) { - return R.fail("导入失败!文件读取异常"); - } - if (importDtoList.isEmpty()) { - return R.fail("导入失败!文件不能为空"); - } - return R.ok(importDtoList); - } - /** * 导入信息校验 * @@ -797,23 +768,26 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi .setMerchandisePyStr(ChineseConvertUtils.toPinyinFirstLetter(importDto.getMerchandiseName())) .setMerchandiseWbStr(ChineseConvertUtils.toPinyinFirstLetter(importDto.getMerchandiseName())) .setUnitCode(importDto.getUnitCode()).setMinUnitCode(importDto.getMinUnitCode()) - .setPartPercent(importDto.getPartPercent()).setDoseFrom(tryParseInt(importDto.getDoseFrom())) - .setApprovalNumber(importDto.getApprovalNumber()).setYbMatchFlag(tryParseInt(importDto.getYbMatchFlag())) - .setYbNo(importDto.getYbNo()).setPharmacologyCategoryCode("1") - .setSkinTestFlag(tryParseInt(importDto.getSkinTestFlag())) - .setInjectFlag(tryParseInt(importDto.getInjectFlag())).setManufacturerText(importDto.getManufacturerText()) - .setRestrictedFlag(tryParseInt(importDto.getRestrictedFlag())) + .setPartPercent(importDto.getPartPercent()).setDoseFrom(CommonUtil.tryParseInt(importDto.getDoseFrom())) + .setApprovalNumber(importDto.getApprovalNumber()) + .setYbMatchFlag(CommonUtil.tryParseInt(importDto.getYbMatchFlag())).setYbNo(importDto.getYbNo()) + .setPharmacologyCategoryCode("1").setSkinTestFlag(CommonUtil.tryParseInt(importDto.getSkinTestFlag())) + .setInjectFlag(CommonUtil.tryParseInt(importDto.getInjectFlag())) + .setManufacturerText(importDto.getManufacturerText()) + .setRestrictedFlag(CommonUtil.tryParseInt(importDto.getRestrictedFlag())) .setRestrictedScope(importDto.getRestrictedScope()).setActiveFlag(Whether.YES.getValue()) - .setChildrenFlag(tryParseInt(importDto.getChildrenFlag())) + .setChildrenFlag(CommonUtil.tryParseInt(importDto.getChildrenFlag())) .setNationalDrugCode(importDto.getNationalDrugCode()) - .setPartAttributeEnum(tryParseInt(importDto.getPartAttributeEnum())) - .setAntibioticCode(importDto.getAntibioticCode()).setSelfFlag(tryParseInt(importDto.getSelfFlag())) - .setAntibioticFlag(tryParseInt(importDto.getAntibioticFlag())) - .setBasicFlag(tryParseInt(importDto.getBasicFlag())) - .setThoPartAttributeEnum(tryParseInt(importDto.getThoPartAttributeEnum())) + .setPartAttributeEnum(CommonUtil.tryParseInt(importDto.getPartAttributeEnum())) + .setAntibioticCode(importDto.getAntibioticCode()) + .setSelfFlag(CommonUtil.tryParseInt(importDto.getSelfFlag())) + .setAntibioticFlag(CommonUtil.tryParseInt(importDto.getAntibioticFlag())) + .setBasicFlag(CommonUtil.tryParseInt(importDto.getBasicFlag())) + .setThoPartAttributeEnum(CommonUtil.tryParseInt(importDto.getThoPartAttributeEnum())) .setUnitConversionRatio(importDto.getUnitConversionRatio()) - .setChrgitmLv(tryParseInt(importDto.getChrgitmLv())).setRxFlag(tryParseInt(importDto.getRxFlag())) - .setItemMinQuantity(importDto.getItemMinQuantity()).setItemMaxQuantity(importDto.getItemMaxQuantity()); + .setChrgitmLv(CommonUtil.tryParseInt(importDto.getChrgitmLv())) + .setRxFlag(CommonUtil.tryParseInt(importDto.getRxFlag())).setItemMinQuantity(importDto.getItemMinQuantity()) + .setItemMaxQuantity(importDto.getItemMaxQuantity()); return medicationDefinition; } @@ -844,53 +818,4 @@ public class MedicationManageAppServiceImpl implements IMedicationManageAppServi return medication; } - /** - * 创建费用定价实体 - * - * @param importDto 药品目录导入Dto - * @return 药品基本实体 - */ - private ChargeItemDefinition createChargeItemDefinition(MedicationImportDto importDto, Long orgId, - Long medicationDefId, Date effectiveStart) { - ChargeItemDefinition chargeItemDefinition = new ChargeItemDefinition(); - chargeItemDefinition.setChargeName(importDto.getName()).setStatusEnum(PublicationStatus.ACTIVE.getValue()) - .setOrgId(orgId).setInstanceTable(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setInstanceId(medicationDefId).setEffectiveStart(effectiveStart).setTypeCode(importDto.getTypeCode()) - .setYbType(importDto.getYbType()).setConditionFlag(Whether.YES.getValue()) - .setPrice(importDto.getRetailPrice()); - return chargeItemDefinition; - } - - /** - * 创建费用定价子实体列表 - * - * @param importDto 药品目录导入Dto - * @param chargeItemDefId 费用定价ID - * @return 费用定价子实体列表 - */ - private List createChargeItemDefDetailList(MedicationImportDto importDto, - Long chargeItemDefId) { - ChargeItemDefDetail defDetailPurchase = new ChargeItemDefDetail().setDefinitionId(chargeItemDefId) - .setConditionCode(ConditionCode.PURCHASE.getCode()).setAmount(importDto.getPurchasePrice()); - ChargeItemDefDetail defDetailRetail = - new ChargeItemDefDetail().setDefinitionId(chargeItemDefId).setConditionCode(ConditionCode.UNIT.getCode()) - .setConditionValue(importDto.getUnitCode()).setAmount(importDto.getRetailPrice()); - ChargeItemDefDetail defDetailMaximumRetail = new ChargeItemDefDetail().setDefinitionId(chargeItemDefId) - .setConditionCode(ConditionCode.LIMIT.getCode()).setAmount(importDto.getMaximumRetailPrice()); - return Arrays.asList(defDetailPurchase, defDetailRetail, defDetailMaximumRetail); - } - - /** - * 尝试转化为int - * - * @param intStr int字符串 - * @return int值 - */ - private Integer tryParseInt(String intStr) { - try { - return Integer.parseInt(intStr); - } catch (Exception e) { - return null; - } - } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiagnosisTreatmentController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiagnosisTreatmentController.java index 50709be5..35fa8d71 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiagnosisTreatmentController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiagnosisTreatmentController.java @@ -3,10 +3,12 @@ package com.openhis.web.datadictionary.controller; import java.util.List; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; import com.core.common.core.domain.R; import com.openhis.web.datadictionary.appservice.IDiagTreatMAppService; @@ -56,8 +58,8 @@ public class DiagnosisTreatmentController { @RequestParam(value = "searchKey", defaultValue = "") String searchKey, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { - return diagTreatMAppService.getDiseaseTreatmentPage(DiagnosisTreatmentSelParam, searchKey, pageNo, - pageSize, request); + return diagTreatMAppService.getDiseaseTreatmentPage(DiagnosisTreatmentSelParam, searchKey, pageNo, pageSize, + request); } /** @@ -136,4 +138,25 @@ public class DiagnosisTreatmentController { public R exportDiseaseTreatment(@RequestBody DiagnosisTreatmentDto diagnosisTreatmentDto) { return null; } + + /** + * 导入诊疗目录 + * + * @param file 文件 + * @return 结果 + */ + @PostMapping("/import-data") + public R importData(MultipartFile file) { + return diagTreatMAppService.importData(file); + } + + /** + * 获取导入模板 + * + * @param response 响应 + */ + @PostMapping("/import-template") + public void importTemplate(HttpServletResponse response) { + diagTreatMAppService.importTemplate(response); + } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiseaseManageController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiseaseManageController.java index ce946140..2eaec499 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiseaseManageController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/controller/DiseaseManageController.java @@ -20,7 +20,7 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; /** - * TODO:病种目录 + * 病种目录 * * @author lpt * @date 2025-02-20 diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DeviceImportDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DeviceImportDto.java index fb8ba7bd..8920ca12 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DeviceImportDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DeviceImportDto.java @@ -57,10 +57,6 @@ public class DeviceImportDto { @Excel(name = "最小使用单位", prompt = "必填", dictType = "unit_code", comboReadDict = true) private String minUnitCode; - /** 所属科室名称(orgId) */ - @Excel(name = "所属科室名称", prompt = "必填") - private String orgName; - /** 所在位置名称(locationId) */ @Excel(name = "所在位置名称", prompt = "必填") private String locationName; @@ -70,7 +66,7 @@ public class DeviceImportDto { private String hvcmFlag; /** 销售单位 */ - @Excel(name = "最小使用单位", prompt = "必填", dictType = "unit_code", comboReadDict = true) + @Excel(name = "销售单位", prompt = "必填", dictType = "unit_code", comboReadDict = true) private String salesUnitCode; /** 批准文号 */ @@ -78,49 +74,61 @@ public class DeviceImportDto { private String approvalNumber; /** 医保标记 */ + @Excel(name = "医保标记", prompt = "必填", readConverterExp = "0=否,1=是", combo = "否,是") private String ybFlag; + /** 医保对码标记 */ + @Excel(name = "医保对码标记", prompt = "必填", readConverterExp = "0=否,1=是", combo = "否,是") + private String ybMatchFlag; + /** 医保编码 */ @Excel(name = "医保编码", prompt = "医保对码时必填") private String ybNo; /** 医药机构目录编码 */ + @Excel(name = "医药机构目录编码") private String ybOrgNo; - /** 医保对码标记 */ - private Integer ybMatchFlag; - /** 医保等级 */ - private Integer chrgitmLv; - - /** 状态 */ - private Integer statusEnum; - - /** 生产厂家 */ - private Long manufacturerId; + @Excel(name = "医保等级", prompt = "必填", dictType = "chrgitm_lv", comboReadDict = true) + private String chrgitmLv; /** 生产厂家 */ + @Excel(name = "生产厂家文本", prompt = "必填") private String manufacturerText; - /** 供应商 */ - private Long supplyId; + /** 过敏标记 */ + @Excel(name = "过敏标记", prompt = "必填", readConverterExp = "0=否,1=是", combo = "否,是") + private String allergenFlag; - /** 说明 */ - private String description; + /** 处方标志 */ + @Excel(name = "处方标志", prompt = "必填", readConverterExp = "0=否,1=是", combo = "否,是") + private String rxFlag; - /** 适用范围 */ - private String jurisdiction; + // ---------------------- 费用定价 adm_charge_item_definition ---------------------------------------------- - /** 器材版本 */ - private String version; + /** 财务类别 */ + @Excel(name = "财务类别", prompt = "必填", dictType = "fin_type_code", comboReadDict = true) + private String typeCode; - /** 主要成分 */ - private String substanceText; + /** 医保费用类别 */ + @Excel(name = "医保费用类别", prompt = "必填", dictType = "med_chrgitm_type", comboReadDict = true) + private String ybType; - /** 过敏标记 */ - private Integer allergenFlag; + // ---------------------- 费用定价子表 adm_charge_item_def_detail ---------------------------------------------- - /** 处方标志 */ - private Integer rxFlag; + /** 购入价 */ + @Excel(name = "购入价", prompt = "必填,数值类型") + private String purchasePriceStr; + private BigDecimal purchasePrice; + + /** 零售价 */ + @Excel(name = "零售价", prompt = "必填,数值类型") + private String retailPriceStr; + private BigDecimal retailPrice; + /** 最高零售价 */ + @Excel(name = "最高零售价", prompt = "必填,数值类型") + private String maximumRetailPriceStr; + private BigDecimal maximumRetailPrice; } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DiagnosisTreatmentImportDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DiagnosisTreatmentImportDto.java new file mode 100644 index 00000000..46cf5eeb --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/datadictionary/dto/DiagnosisTreatmentImportDto.java @@ -0,0 +1,75 @@ +package com.openhis.web.datadictionary.dto; + +import java.math.BigDecimal; + +import com.core.common.annotation.Excel; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 诊疗目录导入Dto + * + * @author GuoRui + * @date 2025-09-29 + */ +@Data +@Accessors(chain = true) +public class DiagnosisTreatmentImportDto { + + /** 行号 */ + private Integer lineNumber; + + // ---------------------- 诊疗定义 wor_activity_definition ------------------------------------- + + /** 诊疗名称 */ + @Excel(name = "诊疗名称", prompt = "必填") + private String name; + + /** 目录类别 */ + @Excel(name = "目录类别", prompt = "必填", dictType = "activity_category_code", comboReadDict = true) + private String categoryCode; + + /** 使用单位 */ + @Excel(name = "使用单位", prompt = "必填", dictType = "unit_code", comboReadDict = true) + private String permittedUnitCode; + + /** 医保标记 */ + @Excel(name = "医保标记", prompt = "必填", readConverterExp = "0=否,1=是", combo = "否,是") + private String ybFlag; + + /** 医保对码标记 */ + @Excel(name = "医保对码标记", prompt = "必填", readConverterExp = "0=否,1=是", combo = "否,是") + private String ybMatchFlag; + + /** 医保编码 */ + @Excel(name = "医保编码", prompt = "医保对码时必填") + private String ybNo; + + /** 医保等级 */ + @Excel(name = "医保等级", prompt = "必填", dictType = "chrgitm_lv", comboReadDict = true) + private String chrgitmLv; + + // ---------------------- 费用定价 adm_charge_item_definition ---------------------------------------------- + + /** 财务类别 */ + @Excel(name = "财务类别", prompt = "必填", dictType = "fin_type_code", comboReadDict = true) + private String typeCode; + + /** 医保费用类别 */ + @Excel(name = "医保费用类别", prompt = "必填", dictType = "med_chrgitm_type", comboReadDict = true) + private String ybType; + + // ---------------------- 费用定价子表 adm_charge_item_def_detail ---------------------------------------------- + + /** 零售价 */ + @Excel(name = "零售价", prompt = "必填,数值类型") + private String retailPriceStr; + private BigDecimal retailPrice; + + /** 最高零售价 */ + @Excel(name = "最高零售价", prompt = "必填,数值类型") + private String maximumRetailPriceStr; + private BigDecimal maximumRetailPrice; + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/IDoctorStationDiagnosisAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/IDoctorStationDiagnosisAppService.java index 9dba844b..f7b606cc 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/IDoctorStationDiagnosisAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/IDoctorStationDiagnosisAppService.java @@ -1,5 +1,7 @@ package com.openhis.web.doctorstation.appservice; +import javax.servlet.http.HttpServletRequest; + import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.core.common.core.domain.R; import com.openhis.web.doctorstation.dto.ConditionDefinitionMetadata; @@ -91,4 +93,12 @@ public interface IDoctorStationDiagnosisAppService { */ R delEncounterDiagnosis(Long conditionId); + /** + * 查询诊断信息 + * + * @param searchKey 目标字符 + * @param request 请求 + * @return 查询结果 + */ + R getDiagnosisList(String searchKey, HttpServletRequest request); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java index c54bd676..6995a5c6 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationAdviceAppServiceImpl.java @@ -253,7 +253,7 @@ public class DoctorStationAdviceAppServiceImpl implements IDoctorStationAdviceAp if (deviceId != null) { AdviceBaseDto matchedAdvice = adviceMap.get(deviceId); if (matchedAdvice != null) { - activityBindDeviceInfo.setDeviceDetailInfos(matchedAdvice); + activityBindDeviceInfo.setOrderDetailInfos(matchedAdvice); } } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationDiagnosisAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationDiagnosisAppServiceImpl.java index 26a887e8..3fed653e 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationDiagnosisAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationDiagnosisAppServiceImpl.java @@ -6,6 +6,7 @@ import java.util.HashSet; import java.util.List; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -23,6 +24,7 @@ import com.openhis.clinical.domain.Condition; import com.openhis.clinical.domain.ConditionDefinition; import com.openhis.clinical.domain.DiagnosisBelongBinding; import com.openhis.clinical.mapper.ConditionDefinitionMapper; +import com.openhis.clinical.service.IConditionDefinitionService; import com.openhis.clinical.service.IConditionService; import com.openhis.clinical.service.IDiagnosisBelongBindingService; import com.openhis.common.constant.CommonConstants; @@ -56,6 +58,9 @@ public class DoctorStationDiagnosisAppServiceImpl implements IDoctorStationDiagn @Resource IEncounterDiagnosisService iEncounterDiagnosisService; + @Resource + IConditionDefinitionService conditionDefinitionService; + /** * 新增诊断归属绑定 * @@ -167,7 +172,7 @@ public class DoctorStationDiagnosisAppServiceImpl implements IDoctorStationDiagn conditionDefinition.setStatusEnum(PublicationStatus.ACTIVE.getValue()); QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(conditionDefinition, searchKey, new HashSet<>(Arrays.asList("name", "py_str", "wb_str")), null); - queryWrapper.eq("status_enum",PublicationStatus.ACTIVE.getValue()); + queryWrapper.eq("status_enum", PublicationStatus.ACTIVE.getValue()); // 设置排序 queryWrapper.orderByDesc("update_time"); // 拼接 用于区分 西医诊断 [1] 中医诊断 [2] 的查询条件 @@ -338,4 +343,19 @@ public class DoctorStationDiagnosisAppServiceImpl implements IDoctorStationDiagn }); } + /** + * 查询诊断信息 + * + * @param searchKey 目标字符 + * @param request 请求 + * @return 查询结果 + */ + @Override + public R getDiagnosisList(String searchKey, HttpServletRequest request) { + + List conditionDefinitionListBySearchKey = + conditionDefinitionService.getConditionDefinitionListBySearchKey(searchKey, request); + + return R.ok(conditionDefinitionListBySearchKey); + } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationElepPrescriptionServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationElepPrescriptionServiceImpl.java index 6f3e6e92..dab16f51 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationElepPrescriptionServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationElepPrescriptionServiceImpl.java @@ -6,52 +6,46 @@ import java.util.stream.Stream; import javax.annotation.Resource; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.core.common.core.domain.R; import com.core.common.core.domain.model.LoginUser; +import com.core.common.utils.AssignSeqUtil; import com.core.common.utils.DateUtils; +import com.core.common.utils.MessageUtils; import com.core.common.utils.SecurityUtils; import com.openhis.administration.domain.Practitioner; import com.openhis.administration.service.IPractitionerService; -import com.openhis.common.constant.CommonConstants; -import com.openhis.common.constant.YbCommonConstants; +import com.openhis.common.constant.PromptMsgConstant; +import com.openhis.common.enums.AssignSeqEnum; +import com.openhis.common.enums.PrescriptionType; +import com.openhis.common.enums.RequestStatus; import com.openhis.common.enums.ybenums.YbRxItemTypeCode; +import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; -import com.openhis.financial.domain.Contract; import com.openhis.web.doctorstation.appservice.IDoctorStationElepPrescriptionService; +import com.openhis.web.doctorstation.dto.*; import com.openhis.web.doctorstation.mapper.DoctorStationElepPrescriptionMapper; -import com.openhis.web.inventorymanage.dto.ProductStocktakingInitDto; -import com.openhis.web.reportmanage.dto.ChargeReportSearchParam; import com.openhis.workflow.domain.ElepMedicationRequest; -import com.openhis.workflow.domain.InventoryItem; -import com.openhis.workflow.domain.SupplyRequest; -import com.openhis.workflow.mapper.InventoryItemMapper; import com.openhis.workflow.service.IElepMedicationRequestService; import com.openhis.ybcatalog.domain.CatalogDrugInfo; import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; import com.openhis.ybcatalog.mapper.CatalogDrugInfoUsualMapper; -import com.openhis.ybcatalog.service.ICatalogDrugInfoService; import com.openhis.ybcatalog.service.ICatalogDrugInfoUsualService; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.core.common.core.domain.R; -import com.core.common.utils.AssignSeqUtil; -import com.core.common.utils.MessageUtils; -import com.openhis.common.constant.PromptMsgConstant; -import com.openhis.common.enums.*; -import com.openhis.common.utils.EnumUtils; -import com.openhis.web.doctorstation.dto.*; /** * 医生站-电子处方 应用实现类 */ @Service -public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl - implements IDoctorStationElepPrescriptionService { +public class DoctorStationElepPrescriptionServiceImpl extends + ServiceImpl implements IDoctorStationElepPrescriptionService { @Autowired ICatalogDrugInfoUsualService catalogDrugInfoUsualService; @Autowired @@ -75,15 +69,17 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl rxTypeCodeListOptions = Stream.of(YbRxItemTypeCode.values()) - .map(prescriptionType -> new ElepPrescriptionInitDto.commonStatusOption(prescriptionType.getValue(), - prescriptionType.getDescription())) - .collect(Collectors.toList()); -// //获取诊断信息 -// List conditionInfoList = elepPrescriptionMapper.selectConditionInfo(encounterId); -// // 诊断列表 -// List conditionListOptions = conditionInfoList.stream() -// .map(conditionInfo -> new ElepPrescriptionInitDto.conditionStatusOption(conditionInfo.getConditionId(), conditionInfo.getConditionName())) -// .collect(Collectors.toList()); + .map(prescriptionType -> new ElepPrescriptionInitDto.commonStatusOption(prescriptionType.getValue(), + prescriptionType.getDescription())) + .collect(Collectors.toList()); + // //获取诊断信息 + // List conditionInfoList = + // elepPrescriptionMapper.selectConditionInfo(encounterId); + // // 诊断列表 + // List conditionListOptions = conditionInfoList.stream() + // .map(conditionInfo -> new ElepPrescriptionInitDto.conditionStatusOption(conditionInfo.getConditionId(), + // conditionInfo.getConditionName())) + // .collect(Collectors.toList()); initDto.setRxTypeCodeListOptions(rxTypeCodeListOptions); return R.ok(initDto); @@ -92,35 +88,37 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl getAllMedicationUsualInfo(String searchKey, Integer pageNo, Integer pageSize) { - //从yb_catalog_drug_info_usual表中取数据 - IPage medicationUsualInfo = catalogDrugInfoUsualService.selectCatalogDrugInfoUsual(pageNo, pageSize, searchKey); + // 从yb_catalog_drug_info_usual表中取数据 + IPage medicationUsualInfo = + catalogDrugInfoUsualService.selectCatalogDrugInfoUsual(pageNo, pageSize, searchKey); return R.ok(medicationUsualInfo); } /** * 获取药品信息 * - * @param pageNo 当前页 - * @param pageSize 每页多少条 + * @param pageNo 当前页 + * @param pageSize 每页多少条 * @param searchKey 模糊查询关键字 * @return 药品信息 */ @Override public R getAllMedicationInfo(String searchKey, Integer pageNo, Integer pageSize) { // 构建查询条件 - QueryWrapper queryWrapper = - HisQueryUtils.buildQueryWrapper(null, searchKey, - new HashSet<>(Arrays.asList("registered_name", "pinyin_code", "wubi_code", "approval_no","manufacturer_name")), - null); - //从yb_catalog_drug_info表中取数据 - IPage medicationInfo = elepPrescriptionMapper.selectCatalogDrugInfo(new Page<>(pageNo, pageSize), queryWrapper); + QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(null, searchKey, + new HashSet<>( + Arrays.asList("registered_name", "pinyin_code", "wubi_code", "approval_no", "manufacturer_name")), + null); + // 从yb_catalog_drug_info表中取数据 + IPage medicationInfo = + elepPrescriptionMapper.selectCatalogDrugInfo(new Page<>(pageNo, pageSize), queryWrapper); return R.ok(medicationInfo); } @@ -128,15 +126,15 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl getPrescriptionInfo(Long patientId, Integer pageNo, Integer pageSize) { // 处方信息查询 IPage prescriptionInfo = - elepPrescriptionMapper.selectElepPrescriptionInfo(new Page<>(pageNo, pageSize), patientId); + elepPrescriptionMapper.selectElepPrescriptionInfo(new Page<>(pageNo, pageSize), patientId); // 状态转换 prescriptionInfo.getRecords().forEach(infoDto -> { infoDto.setStatusEnum_enumText(EnumUtils.getInfoByValue(RequestStatus.class, infoDto.getStatusEnum())); @@ -149,15 +147,15 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl getMedicationInfo(String prescriptionNo, Integer pageNo, Integer pageSize) { // 药品详细查询 IPage medicationInfo = - elepPrescriptionMapper.selectMedicationInfo(new Page<>(pageNo, pageSize), prescriptionNo); + elepPrescriptionMapper.selectMedicationInfo(new Page<>(pageNo, pageSize), prescriptionNo); return R.ok(medicationInfo); } @@ -189,7 +187,8 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl requestList = elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionInfo.getPrescriptionNo()); + List requestList = elepMedicationRequestService + .selectElepMedicationRequestByPrescriptionNo(prescriptionInfo.getPrescriptionNo()); if (!requestList.isEmpty()) { List idList = requestList.stream().map(ElepMedicationRequest::getId).collect(Collectors.toList()); // 处方信息删除 @@ -205,68 +204,72 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl().eq(CatalogDrugInfoUsual::getMedicalCatalogCode, item.getMedicationId())); + usualInfo = baseMapper.selectOne(new LambdaUpdateWrapper() + .eq(CatalogDrugInfoUsual::getMedicalCatalogCode, item.getMedicationId())); if (usualInfo == null) { drugInfo = elepPrescriptionMapper.selectCatalogDrugInfoByNo(item.getMedicationId(), item.getVersion()); BeanUtils.copyProperties(drugInfo, usualInfoInsert); @@ -292,7 +296,7 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl issuancePrescription(List prescriptionNoList) { // 搜索处方信息 List elepMedicationRequestList = - elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNoList(prescriptionNoList); + elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNoList(prescriptionNoList); // 判断处方是否存在 if (elepMedicationRequestList == null) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00006, null)); } for (ElepMedicationRequest item : elepMedicationRequestList) { - if(Objects.equals(item.getStatusEnum(), RequestStatus.DRAFT.getValue())|| Objects.equals(item.getStatusEnum(), RequestStatus.ENDED.getValue())){ + if (Objects.equals(item.getStatusEnum(), RequestStatus.DRAFT.getValue()) + || Objects.equals(item.getStatusEnum(), RequestStatus.ENDED.getValue())) { // 处方状态 item.setStatusEnum(RequestStatus.ACTIVE.getValue()); - }else{ + } else { return R.fail("选择了不能签发的处方"); } } @@ -469,6 +478,6 @@ public class DoctorStationElepPrescriptionServiceImpl extends ServiceImpl getDiagnosisList(@RequestParam(value = "searchKey", required = false) String searchKey, + HttpServletRequest request) { + return iDoctorStationDiagnosisAppService.getDiagnosisList(searchKey, request); + } + /** * 删除就诊诊断信息 * diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDetailDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDetailDto.java index 14a7fa4f..1e32e8b3 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDetailDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDetailDto.java @@ -4,6 +4,7 @@ import java.math.BigDecimal; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.openhis.common.annotation.Dict; import lombok.Data; import lombok.experimental.Accessors; @@ -15,6 +16,13 @@ import lombok.experimental.Accessors; @Accessors(chain = true) public class ActivityBindDeviceDetailDto { + /** + * 用于搭配Dict切面,无实际业务意义 + */ + @Dict(dictCode = "test_field") + private String testField; + private String testField_dictText; + /** * 诊疗id */ @@ -38,6 +46,6 @@ public class ActivityBindDeviceDetailDto { /** * 耗材详细信息 */ - private AdviceBaseDto deviceDetailInfos; + private AdviceBaseDto orderDetailInfos; } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDto.java index d5608c3c..2a47fb4c 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ActivityBindDeviceDto.java @@ -2,6 +2,7 @@ package com.openhis.web.doctorstation.dto; import java.util.List; +import com.openhis.common.annotation.Dict; import lombok.Data; import lombok.experimental.Accessors; @@ -12,6 +13,13 @@ import lombok.experimental.Accessors; @Accessors(chain = true) public class ActivityBindDeviceDto { + /** + * 用于搭配Dict切面,无实际业务意义 + */ + @Dict(dictCode = "test_field") + private String testField; + private String testField_dictText; + /** * 诊疗绑定耗材详情 */ diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/AdviceBaseDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/AdviceBaseDto.java index a0569392..becd16f2 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/AdviceBaseDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/AdviceBaseDto.java @@ -133,6 +133,10 @@ public class AdviceBaseDto { */ private String supplier; + /** 供应商ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long supplierId; + /** * 生产厂家 */ diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ElepPrescriptionInfoParam.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ElepPrescriptionInfoParam.java index a2765700..8376054d 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ElepPrescriptionInfoParam.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/dto/ElepPrescriptionInfoParam.java @@ -4,19 +4,13 @@ import java.math.BigDecimal; import java.util.Date; import java.util.List; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; + import lombok.Data; import lombok.experimental.Accessors; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Positive; - /** * 电子处方 dto */ @@ -24,104 +18,82 @@ import javax.validation.constraints.Positive; @Accessors(chain = true) public class ElepPrescriptionInfoParam { + /** 药品信息 */ + List medicationInfoList; /** ID */ @JsonSerialize(using = ToStringSerializer.class) private Integer id; - /** 医院内部处方编号 */ private String prescriptionNo; - /** 医院id (前台不传) */ @JsonSerialize(using = ToStringSerializer.class) private Long organizationId; - /** 门诊/住院病历号 (前台不传) */ private String iptOtpNo; - /** 科室病区 (前台不传) */ private String departmentWard; - /** 医保类型 (前台不传) */ private Integer insuranceEnum; - /** 开具日期 (前台不传) */ private Date issueTime; - /** 开具科室 (前台不传) */ @JsonSerialize(using = ToStringSerializer.class) private Long orgId; - /** 患者 */ @JsonSerialize(using = ToStringSerializer.class) private Long patientId; - /** 就诊id */ @JsonSerialize(using = ToStringSerializer.class) private Long encounterId; - /** 诊断id */ @JsonSerialize(using = ToStringSerializer.class) private Long conditionId; - + /** 诊断id */ + @JsonSerialize(using = ToStringSerializer.class) + private Long conditionDefId; + /** 慢病字段 */ + private String opspDiseCode; /** 有效天数 */ private Integer validityDays; - /** 药品定义id */ private String medicationId; - /** 药品剂量 */ private BigDecimal medDosage; /** 药品剂量单位 */ private String medDosageUnitCode; - /** 药品频率 */ private String medFrequency; - /** 药品途径 */ private String medRoute; - /** 开方医师 (前台不传) */ @JsonSerialize(using = ToStringSerializer.class) private Long prescribingDrId; - /** 延长原因 */ private String extensionReason; - /** 处方状态 (前台不传) */ private Integer statusEnum; - /** 请求数量 */ private Integer quantity; - /** 请求单位 */ private String unitCode; - /** 处方类别 */ private Integer rxTypeCode; /** 处方类别 */ private Integer rxItemTypeCode; - /** 支持用药信息 */ private String supportInfo; /** 服药时间(开始) */ @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") private Date effectiveDoseStart; - /** 服药时间(结束) */ @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") private Date effectiveDoseEnd; /** 给药间隔 */ private String dispenseInterval; - /** 单次发药数 */ private Integer dispensePerQuantity; - /** 每次发药供应天数 */ private Integer dispensePerDuration; - /** 药品版本号 */ private String version; - - /** 药品信息 */ - List medicationInfoList; } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/AdviceUtils.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/AdviceUtils.java index f8d1cb12..dc87575c 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/AdviceUtils.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/AdviceUtils.java @@ -2,10 +2,7 @@ package com.openhis.web.doctorstation.utils; import java.math.BigDecimal; import java.math.RoundingMode; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; import javax.annotation.Resource; @@ -28,6 +25,7 @@ import com.openhis.web.datadictionary.dto.ActivityChildJsonDto; import com.openhis.web.doctorstation.appservice.IDoctorStationAdviceAppService; import com.openhis.web.doctorstation.dto.*; import com.openhis.web.doctorstation.mapper.DoctorStationAdviceAppMapper; +import com.openhis.web.inhospitalnursestation.dto.MedicationRequestUseExe; import com.openhis.web.personalization.dto.ActivityDeviceDto; import com.openhis.workflow.domain.DeviceRequest; import com.openhis.workflow.domain.ServiceRequest; @@ -121,6 +119,56 @@ public class AdviceUtils { return null; // 校验通过 } + /** + * 执行住院医嘱,校验药品库存 + * + * @param medUseExeList 药品请求信息 + * @return 结果 + */ + public String checkExeMedInventory(List medUseExeList) { + // 医嘱定义id集合 + List adviceDefinitionIdList = + medUseExeList.stream().map(MedicationRequestUseExe::getMedicationId).collect(Collectors.toList()); + // 医嘱库存集合 + List adviceInventoryList = + doctorStationAdviceAppMapper.getAdviceInventory(null, adviceDefinitionIdList, + CommonConstants.SqlCondition.ABOUT_INVENTORY_TABLE_STR, PublicationStatus.ACTIVE.getValue()); + // 待发放个数信息 + List adviceDraftInventoryList = doctorStationAdviceAppMapper.getAdviceDraftInventory( + CommonConstants.TableName.MED_MEDICATION_DEFINITION, CommonConstants.TableName.ADM_DEVICE_DEFINITION, + DispenseStatus.DRAFT.getValue(), DispenseStatus.PREPARATION.getValue()); + // 预减库存 + List adviceInventory = + this.subtractInventory(adviceInventoryList, adviceDraftInventoryList); + // 生命提示信息集合 + List tipsList = new ArrayList<>(); + for (MedicationRequestUseExe medicationRequestUseExe : medUseExeList) { + Optional matchedInventory = adviceInventory.stream() + .filter(inventoryDto -> medicationRequestUseExe.getMedicationId().equals(inventoryDto.getItemId()) + && CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(inventoryDto.getItemTable()) + && medicationRequestUseExe.getPerformLocation().equals(inventoryDto.getLocationId()) + && medicationRequestUseExe.getLotNumber().equals(inventoryDto.getLotNumber())) + .findFirst(); + // 匹配到库存信息 + if (matchedInventory.isPresent()) { + AdviceInventoryDto inventoryDto = matchedInventory.get(); + if ((medicationRequestUseExe.getExecuteTimesNum() + .multiply(medicationRequestUseExe.getMinUnitQuantity())) + .compareTo(inventoryDto.getQuantity()) > 0) { + tipsList + .add("【" + medicationRequestUseExe.getBusNo() + "】在" + inventoryDto.getLocationName() + "库存不足"); + } + } else { + tipsList.add("【" + medicationRequestUseExe.getBusNo() + "】未匹配到库存信息"); + } + } + if (!tipsList.isEmpty()) { + // 返回库存不足提示信息 + return String.join(";", tipsList); + } + return null; // 校验通过 + } + /** * 预减库存 * diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/DoctorStationSendApplyUtil.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/DoctorStationSendApplyUtil.java index 02b5ec8e..8bea5f32 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/DoctorStationSendApplyUtil.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/utils/DoctorStationSendApplyUtil.java @@ -15,7 +15,7 @@ import com.openhis.administration.service.IOrganizationService; import com.openhis.administration.service.IPatientService; import com.openhis.administration.service.IPractitionerService; import com.openhis.common.enums.ActivityDefCategory; -import com.openhis.common.enums.ybenums.YbGender; +import com.openhis.common.enums.AdministrativeGender; import com.openhis.crosssystem.dto.LisApplyDto; import com.openhis.crosssystem.dto.LisApplyGroupDto; import com.openhis.crosssystem.dto.PacsApplyDto; @@ -99,9 +99,9 @@ public class DoctorStationSendApplyUtil { if (patient.getGenderEnum() == null) { lisPatientSex = LisPatientSex.UNKNOWN; } else { - if (YbGender.MALE.getValue().equals(patient.getGenderEnum().toString())) { + if (AdministrativeGender.MALE.getValue().equals(patient.getGenderEnum())) { lisPatientSex = LisPatientSex.MALE; - } else if (YbGender.FEMALE.getValue().equals(patient.getGenderEnum().toString())) { + } else if (AdministrativeGender.FEMALE.getValue().equals(patient.getGenderEnum())) { lisPatientSex = LisPatientSex.FEMALE; } else { lisPatientSex = LisPatientSex.UNKNOWN; @@ -128,9 +128,9 @@ public class DoctorStationSendApplyUtil { if (patient.getGenderEnum() == null) { pacsPatientSex = PacsPatientSex.UNKNOWN; } else { - if (YbGender.MALE.getValue().equals(patient.getGenderEnum().toString())) { + if (AdministrativeGender.MALE.getValue().equals(patient.getGenderEnum())) { pacsPatientSex = PacsPatientSex.MALE; - } else if (YbGender.FEMALE.getValue().equals(patient.getGenderEnum().toString())) { + } else if (AdministrativeGender.FEMALE.getValue().equals(patient.getGenderEnum())) { pacsPatientSex = PacsPatientSex.FEMALE; } else { pacsPatientSex = PacsPatientSex.UNKNOWN; diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionAppService.java index 9dc36bb7..9a987dd3 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionAppService.java @@ -38,8 +38,9 @@ public interface IDocStatisticsDefinitionAppService { */ public List getList(Integer isStatistics); + List getListWithOptionList(Integer isStatistics); /** - * 获取文档统计定义选项列表并按指定格式返回 + * 过时obsolete 获取文档统计定义选项列表并按指定格式返回 (key-value) * * @return 封装了处理结果的响应对象 */ @@ -53,22 +54,4 @@ public interface IDocStatisticsDefinitionAppService { public R deleteDocStatisticsDefinition(Long id); - - /** - * 根据id获取文档统计定义 - * - * @param id - * @return 封装了处理结果的响应对象 - */ - public R getDocStatisticsDefinitionById(Long id); - - /** - * 根据code获取文档统计定义 - * - * @param code - * @return 封装了处理结果的响应对象 - */ - public R getDocStatisticsDefinitionByCode(String code); - - } \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionOptionAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionOptionAppService.java deleted file mode 100644 index 9dd6d5e1..00000000 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/IDocStatisticsDefinitionOptionAppService.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.openhis.web.document.appservice; - - -import com.core.common.core.domain.AjaxResult; -import com.core.common.core.domain.R; -import com.openhis.web.document.dto.DocStatisticsDefinitionOptionDto; -import com.openhis.web.document.dto.DocStatisticsDefinitionOptionList; - -import java.util.List; - -/** - * 文档模板 业务接口 - */ -public interface IDocStatisticsDefinitionOptionAppService { - - - /** - * 新增、修改文档模板 统计项选项 - * - * @param docStatisticsDefinitionOptionList - */ - public R add(DocStatisticsDefinitionOptionList docStatisticsDefinitionOptionList); - - public R createOrEdit(DocStatisticsDefinitionOptionList docStatisticsDefinitionOptionList); - - public R deleteDocStatisticsDefinitionOptionById(Long id); - - public DocStatisticsDefinitionOptionList getDocStatisticsDefinitionOptionByDefinitionId(Long docStatisticsDefinitionId); - - /** - * 获取文档模板 统计项选项列表 - */ - public AjaxResult getDocStatisticsDefinitionOptionList(); - - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionAppServiceImpl.java index 4b824ca9..77c6767b 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionAppServiceImpl.java @@ -3,7 +3,10 @@ package com.openhis.web.document.appservice.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.core.common.constant.CacheConstants; import com.core.common.core.domain.R; +import com.core.common.core.domain.entity.SysDictData; +import com.core.common.core.redis.RedisCache; import com.core.common.utils.bean.BeanUtils; import com.openhis.common.utils.HisPageUtils; import com.openhis.common.utils.HisQueryUtils; @@ -11,13 +14,11 @@ import com.openhis.document.domain.DocStatisticsDefinition; import com.openhis.document.mapper.DocStatisticsDefinitionMapper; import com.openhis.document.service.IDocStatisticsDefinitionService; import com.openhis.web.document.appservice.IDocStatisticsDefinitionAppService; -import com.openhis.web.document.appservice.IDocStatisticsDefinitionOptionAppService; -import com.openhis.web.document.dto.DocDefinitionOrganizationDto; import com.openhis.web.document.dto.DocStatisticsDefinitionDto; -import com.openhis.web.document.dto.DocStatisticsDefinitionOptionList; import com.openhis.web.document.dto.OptionDto; import com.openhis.web.document.mapper.DocStatisticsDefinitionAppMapper; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -35,12 +36,11 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi @Resource private IDocStatisticsDefinitionService iDocStatisticsDefinitionService; @Resource - private IDocStatisticsDefinitionOptionAppService iDocStaticsDefinitionOptionAppService; - @Resource private DocStatisticsDefinitionMapper docStatisticsDefinitionMapper; @Resource private DocStatisticsDefinitionAppMapper docStatisticsDefinitionAppMapper; - + @Autowired + private RedisCache redisCache; @Override public R createOrEdit(DocStatisticsDefinitionDto docStatisticsDefinitionDto) { if (docStatisticsDefinitionDto == null) { @@ -95,15 +95,10 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi docStatisticsDefinition.setIsStatistics(docStatisticsDefinitionDto.getIsStatistics()); docStatisticsDefinition.setDisplayOrder(docStatisticsDefinitionDto.getDisplayOrder()); docStatisticsDefinition.setUnit(docStatisticsDefinitionDto.getUnit()); - - + docStatisticsDefinition.setDictType(docStatisticsDefinitionDto.getDictType()); + docStatisticsDefinition.setDictName(docStatisticsDefinitionDto.getDictName()); boolean saveResult = iDocStatisticsDefinitionService.save(docStatisticsDefinition); if (saveResult) { - // 同步保存选项列表(如有) - if (docStatisticsDefinitionDto.getOptionList() != null && !docStatisticsDefinitionDto.getOptionList().getOptions().isEmpty()) { - docStatisticsDefinitionDto.getOptionList().setDocStatisticsDefinitionId(docStatisticsDefinition.getId()); - return iDocStaticsDefinitionOptionAppService.add(docStatisticsDefinitionDto.getOptionList()); - } return R.ok("文档统计定义新增成功"); } else { return R.fail("文档统计定义新增失败"); @@ -131,10 +126,12 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi existingData.setIsStatistics(docStatisticsDefinitionDto.getIsStatistics()); existingData.setDisplayOrder(docStatisticsDefinitionDto.getDisplayOrder()); existingData.setUnit(docStatisticsDefinitionDto.getUnit()); + existingData.setDictType(docStatisticsDefinitionDto.getDictType()); + existingData.setDictName(docStatisticsDefinitionDto.getDictName()); boolean updateResult = iDocStatisticsDefinitionService.updateById(existingData); if (updateResult) { // 同步更新选项列表 - return iDocStaticsDefinitionOptionAppService.createOrEdit(docStatisticsDefinitionDto.getOptionList()); + return R.ok("文档统计定义更新成功"); } else { return R.fail("文档统计定义更新失败"); } @@ -168,12 +165,12 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi */ @Override public R getPageList(Integer pageNo, Integer pageSize, String searchKey, HttpServletRequest request) { +// Map keyMap = redisCache.getAllDictDataWithKeys(CacheConstants.SYS_DICT_KEY); // 构建查询条件(支持多字段搜索) QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper( null, searchKey, new HashSet<>(Arrays.asList("name", "code")), request); // 按记录时间倒序(最新记录在前) queryWrapper.lambda().orderByDesc(DocStatisticsDefinition::getDisplayOrder); - Page recordPage = HisPageUtils.selectPage( docStatisticsDefinitionMapper, queryWrapper, pageNo, pageSize, DocStatisticsDefinitionDto.class); // 转换为分页结果 @@ -181,13 +178,14 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi } /** - * 获取文档统计定义列表(不分页) + * 获取文档统计定义列表(不分页,不包含options) * * @param isStatistics 是否统计 * @return 文档统计定义列表 */ @Override public List getList(Integer isStatistics) { + Map keyMap = redisCache.getAllDictDataWithKeys(CacheConstants.SYS_DICT_KEY); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (isStatistics != null) { queryWrapper.eq(DocStatisticsDefinition::getIsStatistics, isStatistics); @@ -201,7 +199,28 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi } return resultList; } - + @Override + public List getListWithOptionList(Integer isStatistics) { + //从redis中获取所有字典数据 + Map keyMap = redisCache.getAllDictDataWithKeys(CacheConstants.SYS_DICT_KEY); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (isStatistics != null) { + queryWrapper.eq(DocStatisticsDefinition::getIsStatistics, isStatistics); + } + List dataList = iDocStatisticsDefinitionService.list(queryWrapper); + List resultList = new ArrayList<>(); + for (DocStatisticsDefinition data : dataList) { + DocStatisticsDefinitionDto dto = new DocStatisticsDefinitionDto(); + BeanUtils.copyProperties(data, dto); + if(keyMap.containsKey(CacheConstants.SYS_DICT_KEY+data.getDictType())) + { + List dictData = (List) keyMap.get(CacheConstants.SYS_DICT_KEY+data.getDictType()); + dto.setOptionList(dictData); + } + resultList.add(dto); + } + return resultList; + } /** * 获取文档统计定义选项列表并按指定格式返回 * @@ -276,62 +295,12 @@ public class DocStatisticsDefinitionAppServiceImpl implements IDocStatisticsDefi } boolean deleteResult = iDocStatisticsDefinitionService.removeById(id); if (deleteResult) { - // 同步删除选项列表 - iDocStaticsDefinitionOptionAppService.deleteDocStatisticsDefinitionOptionById(id); return R.ok("文档统计定义删除成功"); } else { return R.fail("文档统计定义删除失败"); } } - /** - * 获取文档统计定义详情 - * - * @param id 文档统计定义ID - * @return 封装了处理结果的响应对象 - */ - @Override - public R getDocStatisticsDefinitionById(Long id) { - if (id == null) { - return R.fail("获取文档统计定义,参数ID不能为空"); - } - DocStatisticsDefinition data = iDocStatisticsDefinitionService.getById(id); - if (data == null) { - return R.fail("获取文档统计定义失败,目标数据不存在"); - } - // 转换为DTO返回 - DocStatisticsDefinitionDto dto = new DocStatisticsDefinitionDto(); - BeanUtils.copyProperties(data, dto); - DocStatisticsDefinitionOptionList optionList = iDocStaticsDefinitionOptionAppService.getDocStatisticsDefinitionOptionByDefinitionId(id); - dto.setOptionList(optionList); - return R.ok(dto, "文档统计定义获取成功"); - } - /** - * 根据代码获取文档统计定义详情 - * - * @param code 文档统计定义代码 - * @return 封装了处理结果的响应对象 - */ - @Override - public R getDocStatisticsDefinitionByCode(String code) { - if (code == null || code.trim().isEmpty()) { - return R.fail("获取文档统计定义,参数代码不能为空"); - } - // 按代码查询 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(DocStatisticsDefinition::getCode, code); - DocStatisticsDefinition data = iDocStatisticsDefinitionService.getOne(queryWrapper); - if (data == null) { - return R.fail("获取文档统计定义失败,目标数据不存在"); - } - DocStatisticsDefinitionDto dto = new DocStatisticsDefinitionDto(); - if (data != null) { - BeanUtils.copyProperties(data, dto); - } - DocStatisticsDefinitionOptionList optionList = iDocStaticsDefinitionOptionAppService.getDocStatisticsDefinitionOptionByDefinitionId(data.getId()); - dto.setOptionList(optionList); - return R.ok(dto, "文档统计定义获取成功"); - } } \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionOptionAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionOptionAppServiceImpl.java deleted file mode 100644 index 1c199d8d..00000000 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocStatisticsDefinitionOptionAppServiceImpl.java +++ /dev/null @@ -1,229 +0,0 @@ -package com.openhis.web.document.appservice.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.core.common.core.domain.AjaxResult; -import com.core.common.core.domain.R; -import com.core.common.utils.bean.BeanUtils; -import com.openhis.document.domain.DocStatisticsDefinitionOption; -import com.openhis.document.mapper.DocStatisticsDefinitionOptionMapper; -import com.openhis.document.service.IDocStatisticsDefinitionOptionService; -import com.openhis.web.document.appservice.IDocStatisticsDefinitionOptionAppService; -import com.openhis.web.document.dto.DocStatisticsDefinitionOptionDto; -import com.openhis.web.document.dto.DocStatisticsDefinitionOptionList; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 文档统计定义选项 业务实现类 - */ -@Slf4j -@Service -public class DocStatisticsDefinitionOptionAppServiceImpl implements IDocStatisticsDefinitionOptionAppService { - - @Resource - private DocStatisticsDefinitionOptionMapper docStatisticsDefinitonOptionMapper; - @Resource - private IDocStatisticsDefinitionOptionService docStatisticsDefinitionOptionService; - - /** - * 新增文档统计定义选项 - * - * @param docStatisticsDefinitionOptionList 选项列表DTO - */ - @Override - public R add(DocStatisticsDefinitionOptionList docStatisticsDefinitionOptionList) { - // 参数校验 - if (docStatisticsDefinitionOptionList == null) { - return R.fail("统计项选项列表为空,请选择统计项选项"); - } - if (docStatisticsDefinitionOptionList.getOptions() == null || docStatisticsDefinitionOptionList.getOptions().isEmpty()) { - return R.fail("统计项选项不允许为空,请正确填写统计项选项"); - } - if (docStatisticsDefinitionOptionList.getDocStatisticsDefinitionId() == null) { - return R.fail("统计项定义ID为空,请选择统计项定义ID"); - } - - // DTO转实体 - List optionList = new ArrayList<>(); - for (DocStatisticsDefinitionOptionDto dto : docStatisticsDefinitionOptionList.getOptions()) { - DocStatisticsDefinitionOption option = new DocStatisticsDefinitionOption(); - option.setDocStatisticsDefinitionId(docStatisticsDefinitionOptionList.getDocStatisticsDefinitionId()); - option.setOption(dto.getOption()); - option.setDisplayOrder(dto.getDisplayOrder()); - optionList.add(option); - } - - // 批量新增 - boolean saveSuccess = docStatisticsDefinitionOptionService.saveBatch(optionList); - if (saveSuccess) { - return R.ok(optionList, "统计项选项保存成功"); - } else { - return R.fail("统计项选项保存失败"); - } - } - - /** - * 新增/编辑文档统计定义选项(区分增删改) - * - * @param docStatisticsDefinitionOptionList 选项列表DTO - */ - @Override - public R createOrEdit(DocStatisticsDefinitionOptionList docStatisticsDefinitionOptionList) { - // 参数校验 - if (docStatisticsDefinitionOptionList == null) { - return R.fail("统计项选项列表为空,请选择统计项选项"); - } - Long definitionId = docStatisticsDefinitionOptionList.getDocStatisticsDefinitionId(); - if (definitionId == null) { - return R.fail("统计项定义ID为空,请选择统计项定义ID"); - } - - // 1. 查询原数据列表(按统计定义ID关联) - List oldList = docStatisticsDefinitonOptionMapper.selectList( - new LambdaQueryWrapper() - .eq(DocStatisticsDefinitionOption::getDocStatisticsDefinitionId, definitionId)); - oldList = oldList == null ? Collections.emptyList() : oldList; - - // 2. 处理新数据列表(DTO转实体,避免空指针) - List newList = new ArrayList<>(); - if (docStatisticsDefinitionOptionList.getOptions() != null && !docStatisticsDefinitionOptionList.getOptions().isEmpty()) { - for (DocStatisticsDefinitionOptionDto dto : docStatisticsDefinitionOptionList.getOptions()) { - DocStatisticsDefinitionOption option = new DocStatisticsDefinitionOption(); - BeanUtils.copyProperties(dto, option); // 改用BeanUtils简化赋值 - option.setDocStatisticsDefinitionId(definitionId); // 强制关联父ID,确保数据一致性 - newList.add(option); - } - } - newList = newList == null ? Collections.emptyList() : newList; - - // 3. 构建原数据ID映射(快速查找) - Map oldIdMap = oldList.stream() - .filter(Objects::nonNull) - .filter(item -> item.getId() != null) - .collect(Collectors.toMap(DocStatisticsDefinitionOption::getId, item -> item)); - - // 4. 提取新数据中的有效ID集合 - Set newIds = newList.stream() - .map(DocStatisticsDefinitionOption::getId) - .filter(Objects::nonNull) - .collect(Collectors.toSet()); - - // 5. 确定需要删除的项(原数据存在但新数据不存在) - List deleteIds = oldList.stream() - .map(DocStatisticsDefinitionOption::getId) - .filter(id -> !newIds.contains(id)) - .collect(Collectors.toList()); - - // 6. 区分新增和修改的项 - List addList = new ArrayList<>(); - List updateList = new ArrayList<>(); - for (DocStatisticsDefinitionOption newItem : newList) { - Long newItemId = newItem.getId(); - if (newItemId != null && oldIdMap.containsKey(newItemId)) { - // 有ID且原数据存在 → 修改 - updateList.add(newItem); - } else { - // 无ID或原数据不存在 → 新增 - addList.add(newItem); - } - } - - // 7. 执行删除操作 - if (!deleteIds.isEmpty()) { - boolean deleteSuccess = docStatisticsDefinitionOptionService.removeByIds(deleteIds); - if (!deleteSuccess) { - return R.fail("统计项选项删除失败"); - } - } - - // 8. 执行修改操作 - if (!updateList.isEmpty()) { - boolean updateSuccess = docStatisticsDefinitionOptionService.updateBatchById(updateList); - if (!updateSuccess) { - return R.fail("统计项选项更新失败"); - } - } - - // 9. 执行新增操作 - if (!addList.isEmpty()) { - boolean addSuccess = docStatisticsDefinitionOptionService.saveBatch(addList); - if (!addSuccess) { - return R.fail("统计项选项新增失败"); - } - } - - return R.ok("统计项选项更新成功"); - } - - /** - * 删除单个统计项选项 - * - * @param id 选项ID - */ - @Override - public R deleteDocStatisticsDefinitionOptionById(Long id) { - if (id == null) { - return R.fail("统计项选项ID为空,请选择要删除的统计项选项"); - } - - // 先校验数据是否存在 - DocStatisticsDefinitionOption existingOption = docStatisticsDefinitionOptionService.getById(id); - if (existingOption == null) { - return R.fail("统计项选项不存在,删除失败"); - } - // 执行删除 - boolean deleteSuccess = docStatisticsDefinitionOptionService.removeById(id); - if (deleteSuccess) { - return R.ok("统计项选项删除成功"); - } else { - return R.fail("统计项选项删除失败"); - } - } - - /** - * 根据统计定义ID查询选项列表 - * - * @param docStatisticsDefinitionId 统计定义ID - */ - @Override - public DocStatisticsDefinitionOptionList getDocStatisticsDefinitionOptionByDefinitionId(Long docStatisticsDefinitionId) { - - // 修复原查询条件错误:原逻辑用ID查ID,改为用统计定义ID查关联选项 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(DocStatisticsDefinitionOption::getDocStatisticsDefinitionId, docStatisticsDefinitionId) - .orderByAsc(DocStatisticsDefinitionOption::getDisplayOrder); // 按显示顺序排序 - - List optionList = docStatisticsDefinitonOptionMapper.selectList(queryWrapper); - if (optionList == null || optionList.isEmpty()) { - return null; - } - // 实体转DTO - List dtoList = new ArrayList<>(); - for (DocStatisticsDefinitionOption option : optionList) { - DocStatisticsDefinitionOptionDto dto = new DocStatisticsDefinitionOptionDto(); - dto.setId(option.getId()); - dto.setOption(option.getOption()); - dto.setDisplayOrder(option.getDisplayOrder()); - dtoList.add(dto); - } - - // 封装返回结果 - DocStatisticsDefinitionOptionList resultList = new DocStatisticsDefinitionOptionList(); - resultList.setDocStatisticsDefinitionId(docStatisticsDefinitionId); - resultList.setOptions(dtoList); - - return resultList; - } - - /** - * 获取文档模板 统计项选项列表 - */ - @Override - public AjaxResult getDocStatisticsDefinitionOptionList() { - return null; - } -} \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsDefinitionController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsDefinitionController.java index d804e34e..33026be9 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsDefinitionController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsDefinitionController.java @@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -78,29 +79,6 @@ public class DocStatisticsDefinitionController { public R deleteDocStatisticsDefinition(Long id) { return docStatisticsDefinitionAppService.deleteDocStatisticsDefinition(id); } - - /** - * 根据id获取统计定义详情 - * - * @param id - * @return - */ - @GetMapping("/getDocStatisticsDefinitionById") - public R getDocStatisticsDefinitionById(Long id) { - return docStatisticsDefinitionAppService.getDocStatisticsDefinitionById(id); - } - - /** - * 根据code获取统计定义详情 - * - * @param code - * @return - */ - @GetMapping("/getDocStatisticsDefinitionByCode") - public R getDocStatisticsDefinitionByCode(String code) { - return docStatisticsDefinitionAppService.getDocStatisticsDefinitionByCode(code); - } - /** * 分页查询列表-不包含options * @@ -116,9 +94,30 @@ public class DocStatisticsDefinitionController { @RequestParam(name = "searchKey", required = false) String searchKey, HttpServletRequest request) { return docStatisticsDefinitionAppService.getPageList(pageNo, pageSize, searchKey, request); } - /** - * 获取文档统计定义选项列表并按指定格式返回 + * 获取文档统计定义列表-不包含options,即字典数据 + * + * @param isStatistics 文档统计定义是否启用 0:不统计 1:统计 可不传 + * @return + */ + @GetMapping("/getList") + public R getList(Integer isStatistics){ + List list = docStatisticsDefinitionAppService.getList(isStatistics); + return R.ok(list); + } + /** + * 获取文档统计定义列表(包含options,即字典数据) + * + * @param isStatistics 文档统计定义是否启用 0:不统计 1:统计 可不传 + * @return + */ + @GetMapping("/getListWithOptionList") + public RgetListWithOptionList(Integer isStatistics){ + List list = docStatisticsDefinitionAppService.getListWithOptionList(isStatistics); + return R.ok(list); + } + /** + * 获取文档统计定义选项列表并按指定格式返回-已作废 * * @return */ diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsOptionController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsOptionController.java deleted file mode 100644 index 10ee2955..00000000 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/controller/DocStatisticsOptionController.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.openhis.web.document.controller; - -import com.openhis.web.document.appservice.IDocRecordAppService; -import com.openhis.web.document.appservice.IDocStatisticsDefinitionOptionAppService; -import lombok.AllArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 文文统计选项 controller - * - * @author wanghaiming - * @date 2025-08-12 - */ -@RestController -@RequestMapping("/document/statisticsOption") -@Slf4j -@AllArgsConstructor -public class DocStatisticsOptionController { - - private final IDocStatisticsDefinitionOptionAppService docStatisticsDefinitionOptionAppService; - - -} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/dto/DocStatisticsDefinitionDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/dto/DocStatisticsDefinitionDto.java index 35769caf..a5b66510 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/dto/DocStatisticsDefinitionDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/dto/DocStatisticsDefinitionDto.java @@ -1,5 +1,7 @@ package com.openhis.web.document.dto; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.entity.SysDictData; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; @@ -48,9 +50,16 @@ public class DocStatisticsDefinitionDto { */ private Integer displayOrder; - /* - 统计类型定义选项值 - */ - private DocStatisticsDefinitionOptionList optionList; + private String defaultValue; + +// /* +// 统计类型定义选项值 +// */ + private List optionList; + /** 字典名称 */ + private String dictName; + + /** 字典类型 */ + private String dictType; } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IBankPosCloudAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IBankPosCloudAppService.java new file mode 100644 index 00000000..78b831cb --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IBankPosCloudAppService.java @@ -0,0 +1,11 @@ +package com.openhis.web.externalintegration.appservice; + +/** + * BPC商户接口Service接口 + * + * @author GuoRui + * @date 2025-10-16 + */ +public interface IBankPosCloudAppService { + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IFoodborneAcquisitionAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IFoodborneAcquisitionAppService.java new file mode 100644 index 00000000..fc15f5ef --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/IFoodborneAcquisitionAppService.java @@ -0,0 +1,20 @@ +package com.openhis.web.externalintegration.appservice; + +import com.core.common.core.domain.R; + +/** + * 食源性疾病病例数据智能采集Service接口 + * + * @author GuoRui + * @date 2025-10-10 + */ +public interface IFoodborneAcquisitionAppService { + + /** + * 是否是食源性诊断 + * + * @param encounterId 就诊ID + * @return 是否 + */ + R isFoodDiseasesNew(Long encounterId); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/BankPosCloudAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/BankPosCloudAppServiceImpl.java new file mode 100644 index 00000000..af70afcf --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/BankPosCloudAppServiceImpl.java @@ -0,0 +1,418 @@ +package com.openhis.web.externalintegration.appservice.impl; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import com.alibaba.fastjson.JSON; +import com.core.common.core.domain.R; +import com.core.common.enums.TenantOptionDict; +import com.core.web.util.TenantOptionUtil; +import com.openhis.web.externalintegration.appservice.IBankPosCloudAppService; +import com.openhis.web.externalintegration.dto.BpcTransactionRequestDto; +import com.openhis.web.externalintegration.dto.BpcTransactionResponseDto; +import com.openhis.web.externalintegration.enums.BpcPayType; +import com.openhis.web.externalintegration.enums.BpcTranType; +import com.openhis.web.externalintegration.utils.BpcHttpUtil; +import com.openhis.web.externalintegration.utils.BpcTraceNoGenerator; + +import lombok.extern.slf4j.Slf4j; + +/** + * BPC商户接口Service业务层处理 + * + * @author GuoRui + * @date 2025-10-16 + */ +@Slf4j +@Service +public class BankPosCloudAppServiceImpl implements IBankPosCloudAppService { + + /** + * 被扫消费 + * + * @param txnAmt 交易金额 + * @param merTradeNo 商户系统订单号 + * @param scanCode 二维码信息 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R processConsumerScan(String txnAmt, String merTradeNo, String scanCode, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(txnAmt)) { + return R.fail("交易金额不能为空"); + } + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + if (StringUtils.isEmpty(scanCode)) { + return R.fail("二维码信息不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,被扫消费 + .setTranType(BpcTranType.C.getValue()) + // 交易金额 + .setTxnAmt(txnAmt) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 二维码信息 + .setScanCode(scanCode) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC被扫消费】,交易金额:{},商户系统订单号:{},二维码信息:{},设备终端编号:{}", txnAmt, merTradeNo, scanCode, posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 主扫下单 + * + * @param txnAmt 交易金额 + * @param merTradeNo 商户系统订单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R createMerchantScanOrder(String txnAmt, String merTradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(txnAmt)) { + return R.fail("交易金额不能为空"); + } + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,主扫下单 + .setTranType(BpcTranType.F.getValue()) + // 交易金额 + .setTxnAmt(txnAmt) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC主扫下单】,交易金额:{},商户系统订单号:{},设备终端编号:{}", txnAmt, merTradeNo, posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 消费订单查询 + * + * @param merTradeNo 商户系统订单号 + * @param tradeNo 原交易订单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R queryPaymentOrder(String merTradeNo, String tradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + // if (StringUtils.isEmpty(tradeNo)) { + // return R.fail("原交易订单号不能为空"); + // } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,支付结果查询 + .setTranType(BpcTranType.G.getValue()) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 原交易订单号 + .setTradeNo(tradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC消费订单查询】,商户系统订单号:{},原交易订单号:{},设备终端编号:{}", merTradeNo, tradeNo, posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 关闭订单 + * + * @param merTradeNo 商户系统订单号 + * @param tradeNo 原交易订单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R closeOrder(String merTradeNo, String tradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + if (StringUtils.isEmpty(tradeNo)) { + return R.fail("原交易订单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,关闭订单 + .setTranType(BpcTranType.S.getValue()) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 原交易订单号 + .setTradeNo(tradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC关闭订单】,商户系统订单号:{},原交易订单号:{},设备终端编号:{}", merTradeNo, tradeNo, posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 申请退货 + * + * @param txnAmt 交易金额 + * @param vfTradeNo 退款退订定金单号 + * @param merTradeNo 商户系统订单号 + * @param tradeNo 原交易订单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R applyForRefund(String txnAmt, String vfTradeNo, String merTradeNo, String tradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(txnAmt)) { + return R.fail("交易金额不能为空"); + } + if (StringUtils.isEmpty(vfTradeNo)) { + return R.fail("退款退订定金单号不能为空"); + } + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + if (StringUtils.isEmpty(tradeNo)) { + return R.fail("原交易订单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,退货 + .setTranType(BpcTranType.R.getValue()) + // 交易金额 + .setTxnAmt(txnAmt) + // 退款退订定金单号 + .setVfTradeNo(vfTradeNo) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 原交易订单号 + .setTradeNo(tradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC申请退货】,交易金额:{},退款退订定金单号:{},商户系统订单号:{},原交易订单号:{},设备终端编号:{}", txnAmt, vfTradeNo, merTradeNo, tradeNo, + posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 查询退货订单 + * + * @param vfTradeNo 退款退订定金单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R queryRefundOrder(String vfTradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(vfTradeNo)) { + return R.fail("退款退订定金单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,退款结果查询 + .setTranType(BpcTranType.J.getValue()) + // 退款退订定金单号 + .setVfTradeNo(vfTradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC查询退货订单】,退款退订定金单号:{}", vfTradeNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 消费撤销 + * + * @param txnAmt 交易金额 + * @param vfTradeNo 退款退订定金单号 + * @param merTradeNo 商户系统订单号 + * @param tradeNo 原交易订单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R reversePayment(String txnAmt, String vfTradeNo, String merTradeNo, String tradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(txnAmt)) { + return R.fail("交易金额不能为空"); + } + if (StringUtils.isEmpty(vfTradeNo)) { + return R.fail("退款退订定金单号不能为空"); + } + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + if (StringUtils.isEmpty(tradeNo)) { + return R.fail("原交易订单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,消费撤销 + .setTranType(BpcTranType.D.getValue()) + // 交易金额 + .setTxnAmt(txnAmt) + // 退款退订定金单号 + .setVfTradeNo(vfTradeNo) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 原交易订单号 + .setTradeNo(tradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC消费撤销】,交易金额:{},退款退订定金单号:{},商户系统订单号:{},原交易订单号:{},设备终端编号:{}", txnAmt, vfTradeNo, merTradeNo, tradeNo, + posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 查询撤销订单 + * + * @param merTradeNo 商户系统订单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R queryReversalOrder(String merTradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(merTradeNo)) { + return R.fail("商户系统订单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,撤销结果查询 + .setTranType(BpcTranType.Z.getValue()) + // 商户系统订单号 + .setMerTradeNo(merTradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC查询撤销订单】,商户系统订单号:{},设备终端编号:{}", merTradeNo, posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 银行卡退货功能 + * + * @param txnAmt 交易金额 + * @param pan 银行卡号 + * @param vfTradeNo 退款退订定金单号 + * @param posNo 设备终端编号 + * @return 结果 + */ + public R processCardRefund(String txnAmt, String pan, String vfTradeNo, String posNo) { + // 参数验证 + if (StringUtils.isEmpty(txnAmt)) { + return R.fail("交易金额不能为空"); + } + if (StringUtils.isEmpty(pan)) { + return R.fail("银行卡号不能为空"); + } + if (StringUtils.isEmpty(vfTradeNo)) { + return R.fail("退款退订定金单号不能为空"); + } + if (StringUtils.isEmpty(posNo)) { + return R.fail("设备终端编号不能为空"); + } + // 作成请求参数 + BpcTransactionRequestDto requestDto = new BpcTransactionRequestDto() + // 交易类型,退货 + .setTranType(BpcTranType.R.getValue()) + // 交易金额 + .setTxnAmt(txnAmt) + // 终端流水号 + .setPayType(BpcPayType.BANK_CARD.getValue()) + // 银行卡号 + .setPan(pan) + // 退款退订定金单号 + .setVfTradeNo(vfTradeNo) + // 设备终端编号 + .setPosNo(posNo); + log.info("【BPC银行卡退货功能】,交易金额:{},银行卡号:{},退款退订定金单号:{},设备终端编号:{}", txnAmt, pan, vfTradeNo, posNo); + // 发起交易请求 + return submitTransactionRequest(requestDto); + } + + /** + * 发送交易请求 + * + * @param requestDto 请求参数 + * @return 结果 + */ + private R submitTransactionRequest(BpcTransactionRequestDto requestDto) { + // 验证租户配置 + String mid = TenantOptionUtil.getOptionContent(TenantOptionDict.BPC_MID); + if (StringUtils.isEmpty(mid)) { + return R.fail("BPC商户号未配置"); + } + String tid = TenantOptionUtil.getOptionContent(TenantOptionDict.BPC_TID); + if (StringUtils.isEmpty(tid)) { + return R.fail("BPC终端号未配置"); + } + String md5SharedSecret = TenantOptionUtil.getOptionContent(TenantOptionDict.BPC_MD5_SHARED_SECRET); + if (StringUtils.isEmpty(md5SharedSecret)) { + return R.fail("BPCMD5签名密钥未配置"); + } + String requestUrl = TenantOptionUtil.getOptionContent(TenantOptionDict.BPC_REQUEST_URL); + if (StringUtils.isEmpty(requestUrl)) { + return R.fail("BPC请求URL未配置"); + } + // 生成终端流水号 + String traceNo = BpcTraceNoGenerator.nextTraceNo(); + // 设置请求终端流水号 + requestDto.setTraceNo(traceNo); + // 设置其他固定参数 + requestDto.setMid(mid).setTid(tid); + // 将参数转化为json字符串 + String jsonStr = JSON.toJSONString(requestDto); + log.info("【BPC请求报文】:{}", jsonStr); + // 发起post请求 + String postResponse; + try { + postResponse = BpcHttpUtil.httpPost(jsonStr, md5SharedSecret, requestUrl); + } catch (Exception e) { + return R.fail(e.getMessage()); + } + log.info("【BPC响应报文】:{}", postResponse); + // 解析响应报文 + BpcTransactionResponseDto responseDto; + try { + responseDto = JSON.parseObject(postResponse, BpcTransactionResponseDto.class); + if (StringUtils.isNotEmpty(responseDto.getTraceNo()) && !traceNo.equals(responseDto.getTraceNo())) { + return R.fail("终端流水号不一致,交易失败"); + } + } catch (Exception e) { + return R.fail("报文解析失败"); + } + // 返回响应结果 + return R.ok(responseDto); + } +} \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/FoodborneAcquisitionAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/FoodborneAcquisitionAppServiceImpl.java new file mode 100644 index 00000000..af560706 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/appservice/impl/FoodborneAcquisitionAppServiceImpl.java @@ -0,0 +1,176 @@ +package com.openhis.web.externalintegration.appservice.impl; + +import java.io.IOException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +import org.apache.http.client.config.RequestConfig; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.core.common.core.domain.R; +import com.core.common.enums.TenantOptionDict; +import com.core.common.utils.StringUtils; +import com.core.web.util.TenantOptionUtil; +import com.openhis.common.enums.*; +import com.openhis.common.utils.CommonUtil; +import com.openhis.web.externalintegration.appservice.IFoodborneAcquisitionAppService; +import com.openhis.web.externalintegration.dto.FaSimplediseaseAddNopwParam; +import com.openhis.web.externalintegration.mapper.FoodborneAcquisitionAppMapper; + +import lombok.extern.slf4j.Slf4j; + +/** + * 食源性疾病病例数据智能采集Service业务层处理 + * + * @author GuoRui + * @date 2025-10-10 + */ +@Slf4j +@Service +public class FoodborneAcquisitionAppServiceImpl implements IFoodborneAcquisitionAppService { + @Autowired + private FoodborneAcquisitionAppMapper foodborneAcquisitionAppMapper; + + /** + * 是否是食源性诊断 + * + * @param encounterId 就诊ID + * @return 是否 + */ + @Override + public R isFoodDiseasesNew(Long encounterId) { + // 判断食源性开关状态 + String foodborneSwitch = TenantOptionUtil.getOptionContent(TenantOptionDict.FOODBORNE_SWITCH); + if (!Whether.YES.getCode().equals(foodborneSwitch)) { + // 开关未开启时,返回空OK结果,跳过处理 + return R.ok(); + } + // 判断食源性接口地址是否为空 + String foodborneApiUrl = TenantOptionUtil.getOptionContent(TenantOptionDict.FOODBORNE_API_URL); + if (StringUtils.isEmpty(foodborneApiUrl)) { + return R.fail("【食源性判断接口】租户配置项「食源性接口地址」未配置"); + } + // 判断食源性医疗机构是否为空 + String foodborneHospital = TenantOptionUtil.getOptionContent(TenantOptionDict.FOODBORNE_HOSPITAL); + if (StringUtils.isEmpty(foodborneHospital)) { + return R.fail("【食源性判断接口】租户配置项「食源性医疗机构」未配置"); + } + // 判断食源性登录账号是否为空 + String foodborneUserName = TenantOptionUtil.getOptionContent(TenantOptionDict.FOODBORNE_USER_NAME); + if (StringUtils.isEmpty(foodborneUserName)) { + return R.fail("【食源性判断接口】租户配置项「食源性登录账号」未配置"); + } + // 定义诊断列表参数 + List diagnosisNameList = new ArrayList<>(); + + // TODO:郭睿 等待从doc_statistics表取主诉诊断 + + // 查询就诊诊断内容列表 + List encounterDiagnosisConditionNameList = + foodborneAcquisitionAppMapper.selectEncounterDiagnosisConditionNameList(encounterId); + diagnosisNameList.addAll(encounterDiagnosisConditionNameList); + // 判断诊断是否为空 + if (diagnosisNameList.isEmpty()) { + return R.fail("【食源性判断接口】未找到有效诊断"); + } + // 设置超时时间 + RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(5000).setConnectionRequestTimeout(3000) + .setSocketTimeout(30000).build(); + // 创建无视SSL验证的HttpClient + CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig) + .setSSLSocketFactory(CommonUtil.createIgnoreSslSocketFactory()).build(); + CloseableHttpResponse response = null; + // 发起HTTP请求 + try { + // 对参数值进行URL编码 + String encodedDiagnosisName = + URLEncoder.encode(String.join(",", diagnosisNameList), StandardCharsets.UTF_8.toString()); + // 拼接完整的请求URL + String requestUrl = foodborneApiUrl + "/isFoodDiseasesNew?diagnosisName=" + encodedDiagnosisName; + // 创建HttpGet对象并设置URL + HttpGet httpGet = new HttpGet(requestUrl); + // 执行请求 + response = httpClient.execute(httpGet); + // 获取响应 + JSONObject object = + JSON.parseObject(EntityUtils.toString(response.getEntity(), StandardCharsets.UTF_8.toString())); + log.info("【食源性判断接口】入参encounterId:{}返回值:{}", encounterId, object.toString()); + // 判断返回的result字段 + String result = String.valueOf(object.getInnerMap().get("result")); + if (!"true".equals(result)) { + // 返回不是true时,返回空OK结果,跳过处理 + return R.ok(); + } + // 查询食源性疾病病例数据智能采集上报跳转页面所需参数 + FaSimplediseaseAddNopwParam simplediseaseAddNopwParam = foodborneAcquisitionAppMapper + .selectSimplediseaseAddNopwParam(encounterId, AdministrativeGender.MALE.getValue(), + AdministrativeGender.FEMALE.getValue(), EncounterType.FOLLOW_UP.getValue(), + EncounterClass.IMP.getValue(), ParticipantType.ADMITTER.getCode()); + if (simplediseaseAddNopwParam == null) { + return R.fail("【食源性判断接口】跳转参数查询失败"); + } + // 返回的标识字段 fillGuid + String fillGuid = String.valueOf(object.getInnerMap().get("fillGuid")); + // 拼装参数,作成跳转URL + String jumpUrl = foodborneApiUrl + "/SimplediseaseAddNopw" + "?diseaseDate=" + + simplediseaseAddNopwParam.getDiseaseDate() + "&diseaseTreattime=" + + simplediseaseAddNopwParam.getDiseaseTreattime() + "&outPatientNumber=" + + URLEncoder.encode(simplediseaseAddNopwParam.getOutPatientNumber(), StandardCharsets.UTF_8.toString()) + + "&patientName=" + + URLEncoder.encode(simplediseaseAddNopwParam.getPatientName(), StandardCharsets.UTF_8.toString()) + + "&diseaseSex=" + simplediseaseAddNopwParam.getDiseaseSex() + "&guarderName=" + + URLEncoder.encode(simplediseaseAddNopwParam.getGuarderName(), StandardCharsets.UTF_8.toString()) + + "&diseaseIsreexam=" + simplediseaseAddNopwParam.getDiseaseIsreexam() + "&diseaseIspaint=" + + simplediseaseAddNopwParam.getDiseaseIspaint() + "&diseaseHospitalno=" + + simplediseaseAddNopwParam.getDiseaseHospitalno() + "&identityCard=" + + Optional.ofNullable(simplediseaseAddNopwParam.getIdentityCard()).orElse("") + "&diseaseBirthday=" + + Optional.ofNullable(simplediseaseAddNopwParam.getDiseaseBirthday()).orElse("") + "&phoneNumber=" + + Optional.ofNullable(simplediseaseAddNopwParam.getPhoneNumber()).orElse("") + "&workUnit=" + + URLEncoder.encode(Optional.ofNullable(simplediseaseAddNopwParam.getWorkUnit()).orElse(""), + StandardCharsets.UTF_8.toString()) + + "&deathDate=" + Optional.ofNullable(simplediseaseAddNopwParam.getDeathDate()).orElse("") + + "&fillingDoctorName=" + + URLEncoder.encode(Optional.ofNullable(simplediseaseAddNopwParam.getFillingDoctorName()).orElse(""), + StandardCharsets.UTF_8.toString()) + + "&medicalInstiSeHospital=" + foodborneHospital + "&diseaseHometown=" + "&diseaseProvince=" + + URLEncoder.encode(Optional.ofNullable(simplediseaseAddNopwParam.getDiseaseProvince()).orElse(""), + StandardCharsets.UTF_8.toString()) + + "&diseaseCity=" + + URLEncoder.encode(Optional.ofNullable(simplediseaseAddNopwParam.getDiseaseCity()).orElse(""), + StandardCharsets.UTF_8.toString()) + + "&diseaseDistrict=" + + URLEncoder.encode(Optional.ofNullable(simplediseaseAddNopwParam.getDiseaseDistrict()).orElse(""), + StandardCharsets.UTF_8.toString()) + + "&diseaseAddress=" + + URLEncoder.encode(Optional.ofNullable(simplediseaseAddNopwParam.getDiseaseAddress()).orElse(""), + StandardCharsets.UTF_8.toString()) + + "&diseaseOccupation=23009012" + "&uName=" + foodborneUserName + "&fillGuid=" + fillGuid; + // 返回非空OK结果,并携带跳转URL + return R.ok(jumpUrl); + } catch (Exception e) { + log.error(e.getMessage(), e); + return R.fail("【食源性判断接口】发生异常:" + e.getMessage()); + } finally { + if (response != null) { + try { + response.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + } + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/controller/FoodborneAcquisitionAppController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/controller/FoodborneAcquisitionAppController.java new file mode 100644 index 00000000..3d4bd70c --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/controller/FoodborneAcquisitionAppController.java @@ -0,0 +1,35 @@ +package com.openhis.web.externalintegration.controller; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import com.core.common.core.domain.R; +import com.openhis.web.externalintegration.appservice.IFoodborneAcquisitionAppService; + +/** + * 食源性疾病病例数据智能采集Controller + * + * @author GuoRui + * @date 2025-10-10 + */ +@RestController +@RequestMapping("/external-integration/foodborne-acquisition") +public class FoodborneAcquisitionAppController { + + @Autowired + private IFoodborneAcquisitionAppService foodborneAcquisitionAppService; + + /** + * 是否是食源性诊断 + * + * @param encounterId 就诊ID + * @return 是否 + */ + @GetMapping("/is-food-diseases-new") + R isFoodDiseasesNew(@RequestParam("encounterId") Long encounterId) { + return foodborneAcquisitionAppService.isFoodDiseasesNew(encounterId); + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcDataElementDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcDataElementDto.java new file mode 100644 index 00000000..4e1fab55 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcDataElementDto.java @@ -0,0 +1,179 @@ +package com.openhis.web.externalintegration.dto; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; + +/** + * 【BPC】数据元 + * + * @author GuoRui + * @date 2025-10-16 + */ +@Data +public class BpcDataElementDto { + + /** + * 设备终端编号:设备的唯一编号 + */ + @Length(max = 10) + @JSONField(name = "posNo") + private String posNo; + + /** + * 终端实时经纬度信息:格式为为纬度/经度,+表示北纬、东经,-表示南纬、西 经。例:+37.12/-121.213。例:+37.12/-121.213 + */ + @Length(max = 30) + @JSONField(name = "posGa") + private String posGa; + + /** + * 交易类型:(枚举TranType) + */ + @Length(max = 1) + @JSONField(name = "tranType") + private String tranType; + + /** + * 交易金额:以分为单位的交易金额 + */ + @Length(max = 12) + @JSONField(name = "txnAmt") + private String txnAmt; + + /** + * 支付方式:(枚举PayType) + */ + @Length(max = 4) + @JSONField(name = "payType") + private String payType; + + /** + * 交易流水号 + */ + @Length(max = 32) + @JSONField(name = "sysTrace") + private String sysTrace; + + /** + * 原交易流水号:支付结果查询、退货、退货结果查询交易需要传入 + */ + @Length(max = 32) + @JSONField(name = "orgSysTrace") + private String orgSysTrace; + + /** + * 原交易时间:(yyyyMMddHHmmss)该字段为消费成功后返回的日期时间,在做退货、退货结果查询时,需要传入原消费交易的日期时间 + */ + @Length(max = 14) + @JSONField(name = "orgTxnTime") + private String orgTxnTime; + + /** + * 二维码信息:支付二维码,扫码消费订单查询时传入 + */ + @Length(max = 64) + @JSONField(name = "scanCode") + private String scanCode; + + /** + * 支付订单号:扫码支付交易订单号,扫码支付退货时传入 + */ + @Length(max = 64) + @JSONField(name = "tradeNo") + private String tradeNo; + + /** + * 通知URL:交易延时响应时的交易结果通知URL + */ + @Length(max = 256) + @JSONField(name = "retUrl") + private String retUrl; + + /** + * 清算商户号 + */ + @Length(max = 15) + @JSONField(name = "mid") + private String mid; + + /** + * 商户名称 + */ + @Length(max = 64) + @JSONField(name = "merName") + private String merName; + + /** + * 终端号 + */ + @Length(max = 8) + @JSONField(name = "tid") + private String tid; + + /** + * 商户系统订单号:由商户系统产生 + */ + @Length(max = 64) + @JSONField(name = "merTradeNo") + private String merTradeNo; + + /** + * 银行优惠金额 + */ + @Length(max = 12) + @JSONField(name = "discountAmt") + private String discountAmt; + + /** + * 收款方备注 + */ + @Length(max = 64) + @JSONField(name = "txtRemarks") + private String txtRemarks; + + /** + * 实名认证标志:(枚举RealNameAuthFlag) + */ + @Length(max = 1) + @JSONField(name = "realNameAuth") + private String realNameAuth; + + /** + * 付款人姓名:当realNameAuth为1时必填 + */ + @Length(max = 64) + @JSONField(name = "payerName") + private String payerName; + + /** + * 付款人身份证件类型:(枚举PayerIdType)当realNameAuth为1时必填 + */ + @Length(max = 2) + @JSONField(name = "payerIDType") + private String payerIdType; + + /** + * 付款人身份证件号码:当realNameAuth为1时必填 + */ + @Length(max = 20) + @JSONField(name = "payerID") + private String payerId; + + /** + * 发起方IP地址:支持IPv6格式 + */ + @Length(max = 40) + @JSONField(name = "IP") + private String ip; + + /** + * 终端设备类型:(枚举DeviceType) + */ + @Length(max = 2) + @JSONField(name = "deviceType") + private String deviceType; + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcPaymentScanNotifyDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcPaymentScanNotifyDto.java new file mode 100644 index 00000000..a516fb57 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcPaymentScanNotifyDto.java @@ -0,0 +1,113 @@ +package com.openhis.web.externalintegration.dto; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; + +/** + * 【BPC】主扫支付结果通知 + * + * @author GuoRui + * @date 2025-10-16 + */ +@Data +public class BpcPaymentScanNotifyDto { + + /** + * 商户系统订单号:申码交易商户系统订单号 + */ + @Length(max = 64) + @JSONField(name = "merTradeNo") + private String merTradeNo; + + /** + * 原交易订单号:银行订单号 + */ + @Length(max = 64) + @JSONField(name = "orgSysTrace") + private String orgSysTrace; + + /** + * 银行交易日期 + */ + @JSONField(name = "bankDate") + private String bankDate; + + /** + * 银行交易时间 + */ + @JSONField(name = "bankTime") + private String bankTime; + + /** + * 原申码订单号 + */ + @Length(max = 64) + @JSONField(name = "oldQrOrderNo") + private String oldQrOrderNo; + + /** + * 原商户号 + */ + @JSONField(name = "oldTermId") + private String oldTermId; + + /** + * 原支付方式 + */ + @JSONField(name = "oldPayType") + private String oldPayType; + + /** + * 原银行交易日期 + */ + @JSONField(name = "oldBankDate") + private String oldBankDate; + + /** + * 原银行交易时间 + */ + @JSONField(name = "oldBankTime") + private String oldBankTime; + + /** + * 原交易返回码 + */ + @JSONField(name = "oldRespCode") + private String oldRespCode; + + /** + * 原交易返回信息 + */ + @JSONField(name = "oldRespMsg") + private String oldRespMsg; + + /** + * 微信交易单号:仅OldPayType=WEIX 时此域有值 + */ + @Length(max = 64) + @JSONField(name = "oldTradeId") + private String oldTradeId; + + /** + * 支付宝交易单号:仅OldPayType=ZFBA 时此域有值 + */ + @Length(max = 64) + @JSONField(name = "oldTradeNo") + private String oldTradeNo; + + /** + * 响应码:00 表示成功,其它表示失败 + */ + @JSONField(name = "respCode") + private String respCode; + + /** + * 响应码解释信息 + */ + @JSONField(name = "respMsg") + private String respMsg; + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionRequestDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionRequestDto.java new file mode 100644 index 00000000..a59fe041 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionRequestDto.java @@ -0,0 +1,224 @@ +package com.openhis.web.externalintegration.dto; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【BPC】交易请求 + * + * @author GuoRui + * @date 2025-10-16 + */ +@Data +@Accessors(chain = true) +public class BpcTransactionRequestDto { + + /** + * 设备终端编号:设备的唯一编号(必填) + */ + @Length(max = 10) + @JSONField(name = "posNo") + private String posNo; + + /** + * 终端实时经纬度信息:(最新,甲方确认可以不传)tranType为C时必填,格式为为纬度/经度,+表示北纬、东经,-表示南纬、西 经。例:+37.12/-121.213。例:+37.12/-121.213 + */ + @Length(max = 30) + @JSONField(name = "posGa") + private String posGa; + + /** + * 交易类型:(枚举TranType) + */ + @Length(max = 1) + @JSONField(name = "tranType") + private String tranType; + + /** + * 交易金额:以分为单位的交易金额 + */ + @Length(max = 12) + @JSONField(name = "txnAmt") + private String txnAmt; + + /** + * 银行优惠金额:撤销、退货交易时填写原消费交易的优惠金额,可以不填 + */ + @Length(max = 12) + @JSONField(name = "discountAmt") + private String discountAmt; + + /** + * 支付方式:(枚举PayType)当tranType为F时,payType不填写返回聚合码scanCode填写则返回订单数据payData(部分收单行支持) + */ + @Length(max = 4) + @JSONField(name = "payType") + private String payType; + + /** + * 二维码信息:被扫交易,采集到的手机支付二维码信息,主扫交易该字段为空 + */ + @Length(max = 64) + @JSONField(name = "scanCode") + private String scanCode; + + /** + * 商户编号 + */ + @Length(max = 15) + @JSONField(name = "mid") + private String mid; + + /** + * 终端编号(可以不填) + */ + @Length(max = 8) + @JSONField(name = "tid") + private String tid; + + /** + * 终端流水号:终端号系统跟踪号,从 000001 开始到 999999 循环,应答报文原值返回,客户端收到应答报文需要验证traceNo字段值,如果不一致则丢包交易失败 + */ + @Length(max = 6) + @JSONField(name = "traceNo") + private String traceNo; + + /** + * 商品名称:自定义商品名称(可以不填,默认为“商品”) + */ + @Length(max = 200) + @JSONField(name = "goodsName") + private String goodsName; + + /** + * 原交易订单号:银行订单号(可以不填) + */ + @Length(max = 64) + @JSONField(name = "tradeNo") + private String tradeNo; + + /** + * 原交易日期时间:(yyyyMMddHHmmss)撤销、退货时填写原消费交易返回的时间日期 + */ + @Length(max = 14) + @JSONField(name = "orgTxnTime") + private String orgTxnTime; + + /** + * 商户系统订单号:商户系统订单号,消费交易、定金交易,商户生成唯一订单号(如果不能生成,可以向扫码平台申请商户系统订单号);支付结果查询、定金支付结果查询、消费撤销、 + * 消费撤销结果查询、退货交易需要传入原消费或定金交易商户系统订单号;退订、定金确认,填写原定金交易订单号;定金确认撤销、定金确认撤销结果查询,填写定金确认订单号 + */ + @Length(max = 64) + @JSONField(name = "merTradeNo") + private String merTradeNo; + + /** + * 退款退订定金单号:商户系统退货、退订、定金确认订单号(如果不能生成,可以向扫码平台申请商户系统订单号);退货结果查询、退订结果查询、定金确认查询,需要传入原商户系统退货单号 + */ + @Length(max = 64) + @JSONField(name = "vfTradeNo") + private String vfTradeNo; + + /** + * 有效时间:主扫二维码有效时间(可以不填,部分收单行不支持) + */ + @Length(max = 6) + @JSONField(name = "qrValidTime") + private String qrValidTime; + + /** + * 通知URL:主扫交易延时响应时的交易结果通知URL(可以不填) + */ + @Length(max = 256) + @JSONField(name = "retUrl") + private String retUrl; + + /** + * 支付成功回调地址:主扫交易当使用微信和支付宝支付成功后,前端可通过此地址回调到商户提供的地址。注意:地址必须以 HTTP 或 HTTPS 开头,且 HTTPS 必须为颁发的有效证书。 + * 回调地址不支持换行符等不可见字符以及特殊字符(可以不填,部分收单行不支持)微信需要对接微信点金计划,详情请参考微信相关文档 + */ + @Length(max = 128) + @JSONField(name = "callBackUrl") + private String callBackUrl; + + /** + * 商户应用ID:当tranType为F时,payType 值为ZFBA或WEIX时需填写 + */ + @Length(max = 32) + @JSONField(name = "subAppId") + private String subAppId; + + /** + * 商户用户openId:当tranType为F时,payType 值为ZFBA或WEIX时需填写。当上送wxApiType字段时,可以不用填写。 + */ + @Length(max = 64) + @JSONField(name = "subOpenId") + private String subOpenId; + + /** + * 微信API类型:当业务场景为微信APP支付时,填写固定值APP,其余交易不送该字段 + */ + @Length(max = 10) + @JSONField(name = "wxApiType") + private String wxApiType; + + /** + * 收款方备注 + */ + @Length(max = 64) + @JSONField(name = "txtRemarks") + private String txtRemarks; + + /** + * 实名标志:(枚举RealNameAuthFlag) + */ + @Length(max = 1) + @JSONField(name = "realNameAuth") + private String realNameAuth; + + /** + * 付款人姓名:当realNameAuth为1时必填 + */ + @Length(max = 64) + @JSONField(name = "payerName") + private String payerName; + + /** + * 付款人身份证件类型:当realNameAuth为1时必填 + */ + @Length(max = 2) + @JSONField(name = "payerIDType") + private String payerIdType; + + /** + * 付款人身份证件号码:当realNameAuth为1时必填 + */ + @Length(max = 20) + @JSONField(name = "payerID") + private String payerId; + + /** + * 发起方IP地址:支持IPv6格式 + */ + @Length(max = 40) + @JSONField(name = "IP") + private String ip; + + /** + * 终端类型:(枚举DeviceType) + */ + @Length(max = 2) + @JSONField(name = "deviceType") + private String deviceType; + + /** + * 银行卡号 + */ + @JSONField(name = "pan") + private String pan; + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionResponseDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionResponseDto.java new file mode 100644 index 00000000..2b35902b --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/BpcTransactionResponseDto.java @@ -0,0 +1,158 @@ +package com.openhis.web.externalintegration.dto; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; + +/** + * 【BPC】交易回应 + * + * @author GuoRui + * @date 2025-10-16 + */ +@Data +public class BpcTransactionResponseDto { + + /** + * 响应码:(枚举RespCode)00 表示成功,其它表示失败 + */ + @Length(max = 2) + @JSONField(name = "respCode") + private String respCode; + + /** + * 响应码解释信息(需要Base64解密) + */ + @Length(max = 64) + @JSONField(name = "respMsg") + private String respMsg; + + /** + * 交易类型:(枚举TranType) + */ + @Length(max = 1) + @JSONField(name = "tranType") + private String tranType; + + /** + * 交易金额:以分为单位的交易金额(订单总金额,同请求金额一致) + */ + @Length(max = 12) + @JSONField(name = "txnAmt") + private String txnAmt; + + /** + * 支付方式:(枚举PayType) + */ + @Length(max = 4) + @JSONField(name = "payType") + private String payType; + + /** + * 终端流水号:终端号系统跟踪号,同请求报文原值返回,客户端收到应答报文需要验证traceNo字段值,需与请求报文值一致,如果不一致则丢包交易失败 + */ + @Length(max = 6) + @JSONField(name = "traceNo") + private String traceNo; + + /** + * 交易时间:(yyyyMMddHHmmss) + */ + @Length(max = 14) + @JSONField(name = "txnTime") + private String txnTime; + + /** + * 支付订单号:银行返回系统订单号,需要保存该支付交易订单号 + */ + @Length(max = 64) + @JSONField(name = "tradeNo") + private String tradeNo; + + /** + * 第三方支付订单号 + */ + @Length(max = 64) + @JSONField(name = "transNo") + private String transNo; + + /** + * 商户号 + */ + @Length(max = 15) + @JSONField(name = "mid") + private String mid; + + /** + * 商户名称 + */ + @Length(max = 64) + @JSONField(name = "merName") + private String merName; + + /** + * 终端号 + */ + @Length(max = 8) + @JSONField(name = "tid") + private String tid; + + /** + * 商户系统订单号:同请求一致 + */ + @Length(max = 64) + @JSONField(name = "merTradeNo") + private String merTradeNo; + + /** + * 商户系统退款授权单号:同请求一致 + */ + @Length(max = 64) + @JSONField(name = "vfTradeNo") + private String vfTradeNo; + + /** + * 优惠金额 + */ + @Length(max = 12) + @JSONField(name = "discountAmt") + private String discountAmt; + + /** + * 有效时间:二维码本身的有效时间,是相对时间,单位为秒,以接收方收到报文时间为起始点计时。不同类型的订单以及不同的订单状况会对应不同的默认有效时间和最大有效时间(可以为空) + */ + @Length(max = 8) + @JSONField(name = "qrValidTime") + private String qrValidTime; + + /** + * 二维码信息:主扫支付二维码,以二维码形式显示,手机APP扫二维码码消费 + */ + @Length(max = 128) + @JSONField(name = "scanCode") + private String scanCode; + + /** + * 原交易类型:1、订单查询类交易填写原交易类型(被扫交易必填)2、非订单查询填写交易类型与tranType一致(可以为空) + */ + @Length(max = 1) + @JSONField(name = "orgTranType") + private String orgTranType; + + /** + * 原交易名称:订单查询类交易填写原交易名称,非订单查询填写交易名称(被扫交易必填) + */ + @Length(max = 30) + @JSONField(name = "orgTxnName") + private String orgTxnName; + + /** + * 订单数据:当tranType为F时,payType 值为ZFBA或WEIX时支付宝返回的tradeNo 或者微信返回的prepayId + */ + @Length(max = 64) + @JSONField(name = "payData") + private String payData; + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/FaSimplediseaseAddNopwParam.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/FaSimplediseaseAddNopwParam.java new file mode 100644 index 00000000..c7e99d4f --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/dto/FaSimplediseaseAddNopwParam.java @@ -0,0 +1,113 @@ +package com.openhis.web.externalintegration.dto; + +import lombok.Data; + +/** + * 【食源性】跳转页面所需参数 + * + * @author GuoRui + * @date 2025-10-10 + */ +@Data +public class FaSimplediseaseAddNopwParam { + + /** + * 【必填】发病时间:YYYY-MM-DD HH:mm + */ + private String diseaseDate; + + /** + * 【必填】就诊时间:YYYY-MM-DD HH:mm + */ + private String diseaseTreattime; + + /** + * 门诊ID号 + */ + private String outPatientNumber; + + /** + * 【必填】患者姓名 + */ + private String patientName; + + /** + * 【必填】患者性别:0 女 1 男 + */ + private String diseaseSex; + + /** + * 监护人姓名 + */ + private String guarderName; + + /** + * 【必填】是否复诊:0否 1是 + */ + private String diseaseIsreexam; + + /** + * 【必填】是否住院:0否 1是 + */ + private String diseaseIspaint; + + /** + * 住院号:是否住院为是时必填 + */ + private String diseaseHospitalno; + + /** + * 身份证号 + */ + private String identityCard; + + /** + * 【必填】出生日期:YYYY-MM-DD + */ + private String diseaseBirthday; + + /** + * 【必填】联系电话 + */ + private String phoneNumber; + + /** + * 工作单位 + */ + private String workUnit; + + /** + * 死亡时间:YYYY-MM-DD HH:mm + */ + private String deathDate; + + /** + * 接诊医生 + */ + private String fillingDoctorName; + + /** + * 【必填】现住地址省 + */ + private String diseaseProvince; + + /** + * 【必填】现住地址市 + */ + private String diseaseCity; + + /** + * 【必填】现住地址区 + */ + private String diseaseDistrict; + + /** + * 【必填】现住地址具体 + */ + private String diseaseAddress; + + /** + * 【必填】职业:与国家平台编码保持一致 + */ + private Integer diseaseOccupation; +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayType.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayType.java new file mode 100644 index 00000000..ef09f8f0 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayType.java @@ -0,0 +1,59 @@ +package com.openhis.web.externalintegration.enums; + +/** + * 【BPC】支付方式 + * + * @author GuoRui + * @date 2025-10-16 + */ +public enum BpcPayType { + + /** + * 支付宝 + */ + ALIPAY("ZFBA", "支付宝"), + /** + * 微信 + */ + WECHAT("WEIX", "微信"), + /** + * 银联二维码 + */ + UNION_QR("UPAY", "银联二维码"), + /** + * 数字人民币 + */ + DIGITAL_RMB("DCEP", "数字人民币"), + /** + * 银行卡 + */ + BANK_CARD("0001", "银行卡"); + + private final String value; + private final String description; + + BpcPayType(String value, String description) { + this.value = value; + this.description = description; + } + + public String getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static BpcPayType getByValue(String value) { + if (value == null || "".equals(value.trim())) { + return null; + } + for (BpcPayType val : values()) { + if (val.getValue().equals(value)) { + return val; + } + } + return null; + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayerIdType.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayerIdType.java new file mode 100644 index 00000000..85246531 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcPayerIdType.java @@ -0,0 +1,83 @@ +package com.openhis.web.externalintegration.enums; + +/** + * 【BPC】付款人身份证件类型 + * + * @author GuoRui + * @date 2025-10-16 + */ +public enum BpcPayerIdType { + + /** + * 身份证 + */ + ID_CARD("0", "身份证"), + /** + * 护照 + */ + PASSPORT("1", "护照"), + /** + * 军官证 + */ + MILITARY_OFFICER_CERT("2", "军官证"), + /** + * 士兵证 + */ + SOLDIER_CERT("3", "士兵证"), + /** + * 港澳居民来往内地通行证(原名回乡证) + */ + HOME_RETURN_PERMIT("4", "回乡证"), + /** + * 临时身份证 + */ + TEMP_ID_CARD("5", "临时身份证"), + /** + * 户口本 + */ + HOUSEHOLD_REGISTER("6", "户口本"), + /** + * 其他 + */ + OTHER("7", "其他"), + /** + * 警官证 + */ + POLICE_OFFICER_CERT("9", "警官证"), + /** + * 识别证 + */ + IDENTIFICATION_CERT("10", "识别证"), + /** + * 驾驶执照 + */ + DRIVING_LICENSE("11", "驾驶执照"); + + private final String value; + private final String description; + + BpcPayerIdType(String value, String description) { + this.value = value; + this.description = description; + } + + public String getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static BpcPayerIdType getByValue(String value) { + if (value == null || "".equals(value.trim())) { + return null; + } + for (BpcPayerIdType val : values()) { + if (val.getValue().equals(value)) { + return val; + } + } + return null; + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRealNameAuthFlag.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRealNameAuthFlag.java new file mode 100644 index 00000000..aa3b8b85 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRealNameAuthFlag.java @@ -0,0 +1,47 @@ +package com.openhis.web.externalintegration.enums; + +/** + * 【BPC】实名认证标志 + * + * @author GuoRui + * @date 2025-10-16 + */ +public enum BpcRealNameAuthFlag { + + /** + * 或不存在:无需实名认证 + */ + NO_NEED("0", "无需实名认证"), + /** + * 实名支付,支付通道需验证支付账户所有人和以下payerName/payerID/payerIDType信息一致 + */ + NEED("1", "实名支付"); + + private final String value; + private final String description; + + BpcRealNameAuthFlag(String value, String description) { + this.value = value; + this.description = description; + } + + public String getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static BpcRealNameAuthFlag getByValue(String value) { + if (value == null || "".equals(value.trim())) { + return null; + } + for (BpcRealNameAuthFlag val : values()) { + if (val.getValue().equals(value)) { + return val; + } + } + return null; + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRespType.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRespType.java new file mode 100644 index 00000000..4be7f614 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcRespType.java @@ -0,0 +1,55 @@ +package com.openhis.web.externalintegration.enums; + +/** + * 【BPC】交易返回应答码 + * + * @author GuoRui + * @date 2025-10-16 + */ +public enum BpcRespType { + + /** + * 交易成功(终态) + */ + SUCCESS("00", "交易成功"), + /** + * 订单失败(终态) + */ + FAILED("77", "订单失败,无需继续订单查询"), + /** + * 等待付款(需重试查询) + */ + WAITING_PAYMENT("88", "等待付款(输密码),应再次发起订单查询"), + /** + * 交易状态未明(需重试查询) + */ + UNKNOWN("99", "交易状态未明,应再次发起订单查询"); + + private final String value; + private final String description; + + BpcRespType(String value, String description) { + this.value = value; + this.description = description; + } + + public String getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static BpcRespType getByValue(String value) { + if (value == null || "".equals(value.trim())) { + return null; + } + for (BpcRespType val : values()) { + if (val.getValue().equals(value)) { + return val; + } + } + return null; + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcTranType.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcTranType.java new file mode 100644 index 00000000..23c2705a --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/enums/BpcTranType.java @@ -0,0 +1,91 @@ +package com.openhis.web.externalintegration.enums; + +/** + * 【BPC】交易类型 + * + * @author GuoRui + * @date 2025-10-16 + */ +public enum BpcTranType { + + /** + * 被扫消费 + */ + C("C", "被扫消费"), + /** + * 退货 + */ + R("R", "退货"), + /** + * 数字人民币主扫下单 + */ + E("E", "数字人民币主扫下单"), + /** + * 主扫下单(微信/支付宝/云闪付) + */ + F("F", "主扫下单"), + /** + * 关闭订单(部分收单行不支持) + */ + S("S", "关闭订单"), + /** + * 消费撤销(部分收单行不支持) + */ + D("D", "消费撤销"), + /** + * 定金支付(微信、支付宝,部分收单行不支持) + */ + A("A", "定金支付"), + /** + * 退定(微信、支付宝,部分收单行不支持) + */ + V("V", "退定"), + /** + * 定金确认(微信、支付宝,部分收单行不支持) + */ + B("B", "定金确认"), + /** + * 定金确认撤销(微信、支付宝,部分收单行不支持) + */ + W("W", "定金确认撤销"), + /** + * 表示订单支付结果查询、定金支付结果查询 + */ + G("G", "支付结果查询"), + /** + * 表示消费撤销订单查询、定金确认撤销结果查询 + */ + Z("Z", "撤销结果查询"), + /** + * 表示退货结果查询、退定结果查询、定金确认结果查询 + */ + J("J", "退款结果查询"); + + private final String value; + private final String description; + + BpcTranType(String value, String description) { + this.value = value; + this.description = description; + } + + public String getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static BpcTranType getByValue(String value) { + if (value == null || "".equals(value.trim())) { + return null; + } + for (BpcTranType val : values()) { + if (val.getValue().equals(value)) { + return val; + } + } + return null; + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/mapper/FoodborneAcquisitionAppMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/mapper/FoodborneAcquisitionAppMapper.java new file mode 100644 index 00000000..290e206e --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/mapper/FoodborneAcquisitionAppMapper.java @@ -0,0 +1,43 @@ +package com.openhis.web.externalintegration.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import com.openhis.web.externalintegration.dto.FaSimplediseaseAddNopwParam; + +/** + * 食源性疾病病例数据智能采集Mapper + * + * @author GuoRui + * @date 2025-10-10 + */ +@Repository +public interface FoodborneAcquisitionAppMapper { + + /** + * 查询就诊诊断内容列表 + * + * @param encounterId 就诊ID + * @return 就诊诊断内容列表 + */ + List selectEncounterDiagnosisConditionNameList(@Param("encounterId") Long encounterId); + + /** + * 查询食源性疾病病例数据智能采集上报跳转页面所需参数 + * + * @param encounterId 就诊ID + * @param genderEnumMale 性别枚举-男 + * @param genderEnumFemale 性别枚举-女 + * @param firstEnumFollowUp 初复诊标识-复诊 + * @param encounterClassEnumImp 就诊类型-住院 + * @param participantTypeAdmitter 参与者类型-接诊医生 + * @return 所需参数 + */ + FaSimplediseaseAddNopwParam selectSimplediseaseAddNopwParam(@Param("encounterId") Long encounterId, + @Param("genderEnumMale") Integer genderEnumMale, @Param("genderEnumFemale") Integer genderEnumFemale, + @Param("firstEnumFollowUp") Integer firstEnumFollowUp, + @Param("encounterClassEnumImp") Integer encounterClassEnumImp, + @Param("participantTypeAdmitter") String participantTypeAdmitter); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcHttpUtil.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcHttpUtil.java new file mode 100644 index 00000000..c03ced6d --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcHttpUtil.java @@ -0,0 +1,105 @@ +package com.openhis.web.externalintegration.utils; + +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.net.HttpURLConnection; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; +import java.security.SecureRandom; +import java.security.cert.X509Certificate; + +import javax.net.ssl.HttpsURLConnection; +import javax.net.ssl.SSLContext; +import javax.net.ssl.TrustManager; +import javax.net.ssl.X509TrustManager; + +import org.springframework.stereotype.Component; + +import lombok.extern.slf4j.Slf4j; + +/** + * 【BPC】HTTP请求共通方法 + * + * @author GuoRui + * @date 2025-10-16 + */ +@Slf4j +@Component +public class BpcHttpUtil { + + /** + * 发起post请求 + * + * @param jsonData JSON数据 + * @param md5SharedSecret MD5签名密钥 + * @param requestUrl 请求URL + * @return 请求结果 + */ + public static String httpPost(String jsonData, String md5SharedSecret, String requestUrl) throws Exception { + HttpsURLConnection conn = null; + try { + // 生成MD5签名 + String rawData = jsonData + "&" + md5SharedSecret; + MessageDigest md = MessageDigest.getInstance("MD5"); + byte[] digestBytes = md.digest(rawData.getBytes()); + StringBuilder hexString = new StringBuilder(); + for (byte b : digestBytes) { + hexString.append(String.format("%02x", b & 0xff)); + } + String md5Sign = hexString.toString(); + // 发起请求 + URL obj = new URL(requestUrl); + conn = (HttpsURLConnection)obj.openConnection(); + TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager() { + @Override + public X509Certificate[] getAcceptedIssuers() { + return null; + } + + @Override + public void checkClientTrusted(X509Certificate[] certs, String authType) {} + + @Override + public void checkServerTrusted(X509Certificate[] certs, String authType) {} + }}; + SSLContext sslContext = SSLContext.getInstance("TLS"); + sslContext.init(null, trustAllCerts, new SecureRandom()); + conn.setSSLSocketFactory(sslContext.getSocketFactory()); + conn.setHostnameVerifier((hostname, session) -> true); + conn.setRequestMethod("POST"); + conn.setConnectTimeout(30_000); + conn.setReadTimeout(60_000); + conn.setRequestProperty("Content-Type", "application/json; charset=UTF-8"); + conn.setRequestProperty("sign", md5Sign); + conn.setDoOutput(true); + try (OutputStream os = conn.getOutputStream()) { + byte[] input = jsonData.getBytes(StandardCharsets.UTF_8); + os.write(input, 0, input.length); + } + int responseCode = conn.getResponseCode(); + if (responseCode == HttpURLConnection.HTTP_OK) { + try (BufferedReader br = + new BufferedReader(new InputStreamReader(conn.getInputStream(), StandardCharsets.UTF_8))) { + StringBuilder response = new StringBuilder(); + String line; + while ((line = br.readLine()) != null) { + response.append(line); + } + return response.toString(); + } + } else { + throw new RuntimeException("HTTP请求失败,返回" + responseCode); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + throw new Exception("HTTP请求发生未知异常"); + } finally { + if (conn != null) { + conn.disconnect(); + } + } + } + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcTraceNoGenerator.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcTraceNoGenerator.java new file mode 100644 index 00000000..ef3462f1 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/externalintegration/utils/BpcTraceNoGenerator.java @@ -0,0 +1,20 @@ +package com.openhis.web.externalintegration.utils; + +import java.util.concurrent.atomic.AtomicInteger; + +/** + * 【BPC】终端流水号生成器 + * + * @author GuoRui + * @date 2025-10-16 + */ +public class BpcTraceNoGenerator { + private static final AtomicInteger COUNTER = new AtomicInteger(1); + private static final int MAX_VALUE = 999999; + + public static String nextTraceNo() { + int nextValue = COUNTER.getAndUpdate(current -> current >= MAX_VALUE ? 1 : current + 1); + // 补零至6位 + return String.format("%06d", nextValue); + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IAdviceProcessAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IAdviceProcessAppService.java index 85312287..9739acf4 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IAdviceProcessAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IAdviceProcessAppService.java @@ -71,16 +71,16 @@ public interface IAdviceProcessAppService { /** * 医嘱取消执行 * - * @param performInfoList 医嘱信息集合 + * @param adviceExecuteParam 取消执行参数 * @return 操作结果 */ - R adviceCancel(List performInfoList); + R adviceCancel(AdviceExecuteParam adviceExecuteParam); /** * 医嘱不执行 * - * @param performInfoList 医嘱信息集合 + * @param adviceExecuteParam 不执行参数 * @return 操作结果 */ - R adviceVoid(List performInfoList); + R adviceVoid(AdviceExecuteParam adviceExecuteParam); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IInpatientMedicineCollectionAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IMedicineSummaryAppService.java similarity index 95% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IInpatientMedicineCollectionAppService.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IMedicineSummaryAppService.java index 55d1ea60..6d581d5c 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IInpatientMedicineCollectionAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/IMedicineSummaryAppService.java @@ -7,7 +7,6 @@ import javax.servlet.http.HttpServletRequest; import com.core.common.core.domain.R; import com.openhis.web.inhospitalnursestation.dto.InpatientMedicinePrescriptionInfoDto; import com.openhis.web.inhospitalnursestation.dto.InpatientMedicineSearchParam; -import com.openhis.workflow.domain.InventoryItem; /** * 住院领药 应用实现接口 @@ -15,7 +14,7 @@ import com.openhis.workflow.domain.InventoryItem; * @author yuxj * @date 2025/8/18 */ -public interface IInpatientMedicineCollectionAppService { +public interface IMedicineSummaryAppService { /** * 分页查询在科病人列表 diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/AdviceProcessAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/AdviceProcessAppServiceImpl.java index 3a666093..f692f8e7 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/AdviceProcessAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/AdviceProcessAppServiceImpl.java @@ -4,6 +4,10 @@ package com.openhis.web.inhospitalnursestation.appservice.impl; import java.math.BigDecimal; +import java.math.RoundingMode; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -14,13 +18,17 @@ import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.core.common.core.domain.R; import com.core.common.utils.AgeCalculatorUtil; import com.core.common.utils.MessageUtils; import com.core.common.utils.SecurityUtils; import com.core.common.utils.bean.BeanUtils; +import com.openhis.administration.domain.ChargeItem; +import com.openhis.administration.service.IChargeItemService; import com.openhis.administration.service.IEncounterService; +import com.openhis.clinical.domain.Procedure; import com.openhis.clinical.service.IProcedureService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; @@ -28,17 +36,24 @@ import com.openhis.common.enums.*; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.medication.domain.MedicationDefinition; +import com.openhis.medication.domain.MedicationDispense; import com.openhis.medication.domain.MedicationRequest; import com.openhis.medication.service.IMedicationDefinitionService; import com.openhis.medication.service.IMedicationDispenseService; import com.openhis.medication.service.IMedicationRequestService; import com.openhis.web.common.dto.PerformInfoDto; import com.openhis.web.common.dto.PerformRecordDto; +import com.openhis.web.doctorstation.appservice.IDoctorStationAdviceAppService; +import com.openhis.web.doctorstation.dto.AdviceBaseDto; +import com.openhis.web.doctorstation.dto.AdvicePriceDto; +import com.openhis.web.doctorstation.utils.AdviceUtils; import com.openhis.web.inhospitalnursestation.appservice.IAdviceProcessAppService; import com.openhis.web.inhospitalnursestation.dto.*; import com.openhis.web.inhospitalnursestation.mapper.AdviceProcessAppMapper; import com.openhis.web.outpatientmanage.mapper.OutpatientTreatmentAppMapper; +import com.openhis.workflow.domain.DeviceDispense; import com.openhis.workflow.domain.ServiceRequest; +import com.openhis.workflow.service.IDeviceDispenseService; import com.openhis.workflow.service.IServiceRequestService; /** @@ -68,12 +83,24 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService { @Resource private IMedicationDispenseService medicationDispenseService; + @Resource + private IDeviceDispenseService deviceDispenseService; + @Resource private IEncounterService encounterService; @Resource private IMedicationDefinitionService medicationDefinitionService; + @Resource + private IChargeItemService chargeItemService; + + @Resource + private AdviceUtils adviceUtils; + + @Resource + private IDoctorStationAdviceAppService iDoctorStationAdviceAppService; + /** * 住院患者分页列表 * @@ -140,7 +167,6 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService { Arrays.stream(encounterIds.split(CommonConstants.Common.COMMA)).map(Long::parseLong).toList(); queryWrapper.in(CommonConstants.FieldName.EncounterId, encounterIdList); } - // 入院患者分页列表 Page inpatientAdvicePage = adviceProcessAppMapper.selectInpatientAdvicePage(new Page<>(pageNo, pageSize), queryWrapper, @@ -339,65 +365,27 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService { // 诊疗 List activityList = adviceExecuteDetailList.stream() .filter(e -> CommonConstants.TableName.WOR_SERVICE_REQUEST.equals(e.getAdviceTable())).toList(); - // -------------------------------------------整体校验药品库存 + // -------------------------------------------药品 if (!medicineList.isEmpty()) { - // 药品请求id集合 - List medicineRequestIdList = - medicineList.stream().map(AdviceExecuteDetailParam::getRequestId).collect(Collectors.toList()); - // 药品请求集合 - List MedicationRequestList = medicationRequestService - .list(new LambdaQueryWrapper().in(MedicationRequest::getId, medicineRequestIdList)); - // 药品定义id集合 - List medicationDefinitionIdList = - MedicationRequestList.stream().map(MedicationRequest::getMedicationId).collect(Collectors.toList()); - // 药品定义集合 - List medicationDefinitionList = - medicationDefinitionService.list(new LambdaQueryWrapper() - .in(MedicationDefinition::getId, medicationDefinitionIdList)); - // 组装MedicationRequestUseExe数据结构 - List MedUseExeList = MedicationRequestList.stream().map(medicationRequest -> { - // 创建 MedicationRequestUseExe 对象,并复制 MedicationRequest 的属性 - MedicationRequestUseExe useExe = new MedicationRequestUseExe(); - BeanUtils.copyProperties(medicationRequest, useExe); - // 匹配 executeTimes:根据 medicationRequest 的 id 在 medicineList 中查找匹配的 executeTimes - List matchedExecuteTimes = - medicineList.stream().filter(medicine -> medicine.getRequestId().equals(medicationRequest.getId())) - .findFirst().map(AdviceExecuteDetailParam::getExecuteTimes).orElse(null); - useExe.setExecuteTimes(matchedExecuteTimes); - // 计算 executeTimesNum:executeTimes 的集合大小,转换为 BigDecimal - if (matchedExecuteTimes != null) { - useExe.setExecuteTimesNum(BigDecimal.valueOf(matchedExecuteTimes.size())); - } else { - useExe.setExecuteTimesNum(BigDecimal.ZERO); - } - // 匹配 minUnitQuantity:根据 medicationId 在 medicationDefinitionList 中查找匹配的药品定义 - MedicationDefinition matchedDefinition = medicationDefinitionList.stream() - .filter(definition -> definition.getId().equals(medicationRequest.getMedicationId())).findFirst() - .orElse(null); - if (matchedDefinition != null) { - // 判断 minUnitCode 是否等于 unitCode - if (matchedDefinition.getMinUnitCode().equals(medicationRequest.getUnitCode())) { - useExe.setMinUnitQuantity(medicationRequest.getQuantity()); - } else { - // 若不相等,则计算 quantity * partPercent - BigDecimal partPercent = matchedDefinition.getPartPercent(); - if (partPercent == null) { - partPercent = BigDecimal.ONE; // 避免空指针,默认设为1 - } - useExe.setMinUnitQuantity(medicationRequest.getQuantity().multiply(partPercent)); - } - } else { - // 若未找到匹配的药品定义,设为 null 或默认值 - useExe.setMinUnitQuantity(null); + // 组装药品请求用于执行的数据结构 + List medUseExeList = this.assemblyMedication(medicineList); + // 校验药品库存 + if (!medUseExeList.isEmpty()) { + String tipRes = adviceUtils.checkExeMedInventory(medUseExeList); + if (tipRes != null) { + return R.fail(null, tipRes); } - return useExe; - }).toList(); - - // -------------------------------------------处理药品执行 - + } + // 处理药品执行 + this.exeMedication(medUseExeList); + } + // -------------------------------------------诊疗 + if (!activityList.isEmpty()) { + // 组装诊疗请求用于执行的数据结构 + List actUseExeList = this.assemblyActivity(activityList); + // 处理诊疗执行 + this.exeActivity(actUseExeList); } - - // -------------------------------------------处理诊疗执行 return R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00004, new Object[] {"医嘱执行"})); } @@ -405,22 +393,135 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService { /** * 医嘱取消执行 * - * @param performInfoList 医嘱信息集合 + * @param adviceExecuteParam 取消执行参数 * @return 操作结果 */ @Override - public R adviceCancel(List performInfoList) { - return null; + public R adviceCancel(AdviceExecuteParam adviceExecuteParam) { + + // 长期医嘱执行id + List longProcIdList = adviceExecuteParam.getAdviceExecuteDetailList().stream() + .filter(x -> x.getTherapyEnum().equals(TherapyTimeType.LONG_TERM.getValue())) + .map(AdviceExecuteDetailParam::getProcedureId).distinct().toList(); + // 药品临时医嘱执行id + List tempProcIdList = adviceExecuteParam.getAdviceExecuteDetailList().stream() + .filter(x -> x.getTherapyEnum().equals(TherapyTimeType.TEMPORARY.getValue())) + .map(AdviceExecuteDetailParam::getProcedureId).distinct().toList(); + + // 分别处理长期和临时的医嘱 + // 长期已发放药品 + List longMedDispensedList = new ArrayList<>(); + // 长期未发放药品 + List longMedUndispenseList = new ArrayList<>(); + // 长期已发放耗材 + List longDevDispensedList = new ArrayList<>(); + // 长期未发放耗材 + List longDevUndispenseList = new ArrayList<>(); + // 处理长期医嘱 + if (!longProcIdList.isEmpty()) { + // 长期药品 + List longMedDispenseList = + medicationDispenseService.getMedDispenseByProcedureId(longProcIdList); + // 长期耗材 + List longDevDispenseList = + deviceDispenseService.getDevDispenseByProcedureId(longProcIdList); + // 分离已发药发药单和未发药发药单 + for (MedicationDispense medicationDispense : longMedDispenseList) { + if (DispenseStatus.COMPLETED.getValue().equals(medicationDispense.getDispenseEnum())) { + longMedDispensedList.add(medicationDispense); + } else if (DispenseStatus.PREPARATION.getValue().equals(medicationDispense.getDispenseEnum())) { + longMedUndispenseList.add(medicationDispense); + } + } + // 分离已发耗材单和未发耗材单 + for (DeviceDispense deviceDispense : longDevDispenseList) { + if (DispenseStatus.COMPLETED.getValue().equals(deviceDispense.getStatusEnum())) { + longDevDispensedList.add(deviceDispense); + } else if (DispenseStatus.PREPARATION.getValue().equals(deviceDispense.getStatusEnum())) { + longDevUndispenseList.add(deviceDispense); + } + } + // 查询账单 + List chargeItemList = chargeItemService.getChargeItemByProcedureId(longProcIdList); + if (chargeItemList != null && !chargeItemList.isEmpty()) { + for (ChargeItem chargeItem : chargeItemList) { + // 因执行医嘱时创建了账单,取消执行时需要软删除账单 + chargeItemService.removeById(chargeItem); + } + } + } + + // 临时已发放药品 + List tempMedDispensedList = new ArrayList<>(); + // 临时未发放药品 + List tempMedUndispenseList = new ArrayList<>(); + // 临时已发放耗材 + List tempDevDispensedList = new ArrayList<>(); + // 临时未发放耗材 + List tempDevUndispenseList = new ArrayList<>(); + // 处理临时医嘱 + if (!tempProcIdList.isEmpty()) { + // 长期药品 + List tempMedDispenseList = + medicationDispenseService.getMedDispenseByProcedureId(tempProcIdList); + // 长期耗材 + List tempDevDispenseList = + deviceDispenseService.getDevDispenseByProcedureId(tempProcIdList); + // 分离已发药发药单和未发药发药单 + for (MedicationDispense medicationDispense : tempMedDispenseList) { + if (DispenseStatus.COMPLETED.getValue().equals(medicationDispense.getDispenseEnum())) { + tempMedDispensedList.add(medicationDispense); + } else if (DispenseStatus.PREPARATION.getValue().equals(medicationDispense.getDispenseEnum())) { + tempMedUndispenseList.add(medicationDispense); + } + } + // 分离已发耗材单和未发耗材单 + for (DeviceDispense deviceDispense : tempDevDispenseList) { + if (DispenseStatus.COMPLETED.getValue().equals(deviceDispense.getStatusEnum())) { + tempDevDispensedList.add(deviceDispense); + } else if (DispenseStatus.PREPARATION.getValue().equals(deviceDispense.getStatusEnum())) { + tempDevUndispenseList.add(deviceDispense); + } + } + // 查询账单 + List chargeItemList = chargeItemService.getChargeItemByProcedureId(tempProcIdList); + if (chargeItemList != null && !chargeItemList.isEmpty()) { + // 临时医嘱取消执行时,将临时医嘱的收费项目状态改为待收费 + chargeItemService + .updatePlannedChargeStatus(chargeItemList.stream().map(ChargeItem::getProcedureId).toList()); + } + } + // 统一处理已发放药品或耗材 + List medDispensedList = new ArrayList<>(tempMedDispensedList); + medDispensedList.addAll(longMedDispensedList); + // 统一处理已发放药品或耗材 + List devDispensedList = new ArrayList<>(tempDevDispensedList); + devDispensedList.addAll(longDevDispensedList); + // 合并长期和临时的执行记录 + List procedureIdList = new ArrayList<>(longProcIdList); + procedureIdList.addAll(tempProcIdList); + // 查询执行记录 + List procedureList = procedureService.listByIds(procedureIdList); + if (procedureList != null && !procedureList.isEmpty()) { + for (Procedure procedure : procedureList) { + // 根据执行记录新增取消执行记录 + procedureService.addProcedureRecord(procedure.getEncounterId(), procedure.getPatientId(), + procedure.getRequestId(), procedure.getRequestTable(), EventStatus.CANCEL, + ProcedureCategory.INPATIENT_ADVICE, null, procedure.getOccurrenceTime(), procedure.getGroupId(), + procedure.getId()); + } + } + return R.ok("取消执行成功"); } /** * 医嘱不执行 * - * @param performInfoList 医嘱信息集合 + * @param adviceExecuteParam 不执行参数 * @return 操作结果 */ @Override - public R adviceVoid(List performInfoList) { + public R adviceVoid(AdviceExecuteParam adviceExecuteParam) { // 长期临时都可以不执行,长期不执行的是某一时间点,也可以不执行这一整个医嘱(更新serviceRequest状态为7) // 已执行的时间点不能不执行,需要先取消 // 增加不执行记录 @@ -428,4 +529,375 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService { return null; } + /** + * 执行药品医嘱 + * + * @param medUseExeList 药品医嘱 + */ + private void exeMedication(List medUseExeList) { + // 长期医嘱 + List longMedication = medUseExeList.stream() + .filter(e -> TherapyTimeType.LONG_TERM.getValue().equals(e.getTherapyEnum())).collect(Collectors.toList()); + // 临时医嘱 + List tempMedication = medUseExeList.stream() + .filter(e -> TherapyTimeType.TEMPORARY.getValue().equals(e.getTherapyEnum())).collect(Collectors.toList()); + // 药品定义id集合 + List medicationDefinitionIdList = + medUseExeList.stream().map(MedicationRequestUseExe::getMedicationId).collect(Collectors.toList()); + // 医嘱详细信息 + List medicationInfos = iDoctorStationAdviceAppService.getAdviceBaseInfo(null, null, null, + medicationDefinitionIdList, 0L, 1, 500, Whether.NO.getValue(), List.of(1)).getRecords(); + + // 当前时间 + Date curDate = new Date(); + // 参与者id + Long practitionerId = SecurityUtils.getLoginUser().getPractitionerId(); + // 当前登录账号的科室id + Long orgId = SecurityUtils.getLoginUser().getOrgId(); + + // 长期 + MedicationRequest longMedicationRequest; + ChargeItem chargeItem; + for (MedicationRequestUseExe medicationRequestUseExe : longMedication) { + for (String executeTime : medicationRequestUseExe.getExecuteTimes()) { + longMedicationRequest = new MedicationRequest(); + BeanUtils.copyProperties(medicationRequestUseExe, longMedicationRequest); + + // 生成执行记录 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 转换为 LocalDateTime + LocalDateTime localDateTime = LocalDateTime.parse(executeTime, formatter); + // 转换为 Date + Date exeDate = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()); + // 执行记录id + Long procedureId = procedureService.addProcedureRecord(longMedicationRequest.getEncounterId(), + longMedicationRequest.getPatientId(), longMedicationRequest.getId(), + CommonConstants.TableName.MED_MEDICATION_REQUEST, EventStatus.COMPLETED, + ProcedureCategory.INPATIENT_ADVICE, null, exeDate, longMedicationRequest.getGroupId(), null); + + // 生成药品发放 + medicationDispenseService.generateMedicationDispense(longMedicationRequest, procedureId); + + // 生成账单 + chargeItem = new ChargeItem(); + chargeItem.setStatusEnum(ChargeItemStatus.BILLABLE.getValue()); // 收费状态 + chargeItem.setBusNo(AssignSeqEnum.CHARGE_ITEM_NO.getPrefix().concat(longMedicationRequest.getBusNo())); + chargeItem.setPrescriptionNo(longMedicationRequest.getPrescriptionNo()); // 处方号 + chargeItem.setPatientId(longMedicationRequest.getPatientId()); // 患者 + chargeItem.setContextEnum(ChargeItemContext.MEDICATION.getValue()); // 类型 + chargeItem.setEncounterId(longMedicationRequest.getEncounterId()); // 就诊id + chargeItem.setEntererId(practitionerId);// 开立人ID + chargeItem.setRequestingOrgId(orgId); // 开立科室 + chargeItem.setEnteredDate(curDate); // 开立时间 + chargeItem.setServiceTable(CommonConstants.TableName.MED_MEDICATION_REQUEST);// 医疗服务类型 + chargeItem.setServiceId(longMedicationRequest.getId()); // 医疗服务ID + chargeItem.setProductTable(CommonConstants.TableName.MED_MEDICATION_DEFINITION);// 产品所在表 + chargeItem.setProductId(longMedicationRequest.getMedicationId());// 收费项id + chargeItem.setAccountId(medicationRequestUseExe.getAccountId());// 关联账户ID + chargeItem.setConditionId(longMedicationRequest.getConditionId()); // 诊断id + chargeItem.setEncounterDiagnosisId(longMedicationRequest.getEncounterDiagnosisId()); // 就诊诊断id + chargeItem.setProcedureId(procedureId); + // ------------------------------ 匹配定价信息 + // 根据 medicationId 查找对应的医嘱信息 + MedicationRequest finalLongMedicationRequest = longMedicationRequest; + Optional matchedAdvice = medicationInfos.stream() + .filter( + advice -> finalLongMedicationRequest.getMedicationId().equals(advice.getAdviceDefinitionId())) + .findFirst(); + if (!matchedAdvice.isPresent()) { + throw new RuntimeException( + "未找到对应的医嘱信息,medicationId: " + finalLongMedicationRequest.getMedicationId()); + } + AdviceBaseDto advice = matchedAdvice.get(); + // 获取拆零比 + BigDecimal partPercent = advice.getPartPercent(); + + // 在 priceList 中查找匹配的定价信息 + Optional matchedPrice = advice.getPriceList().stream() + .filter(price -> finalLongMedicationRequest.getLotNumber().equals(price.getConditionValue())) + .findFirst(); + if (!matchedPrice.isPresent()) { + throw new RuntimeException("未找到匹配的定价信息,lotNumber: " + finalLongMedicationRequest.getLotNumber()); + } + AdvicePriceDto priceDto = matchedPrice.get(); + // 计算价格 + BigDecimal price; + if (finalLongMedicationRequest.getUnitCode().equals(priceDto.getUnitCode())) { + // unitCode 匹配,直接取 price + price = priceDto.getPrice(); + } else { + // unitCode 不匹配,计算 price / partPercent + price = priceDto.getPrice().divide(partPercent, RoundingMode.HALF_UP); + } + chargeItem.setDefinitionId(priceDto.getDefinitionId()); // 费用定价ID + chargeItem.setDefDetailId(priceDto.getDefinitionDetailId()); // 定价子表主键 + chargeItem.setQuantityValue(longMedicationRequest.getQuantity()); // 数量 + chargeItem.setQuantityUnit(longMedicationRequest.getUnitCode()); // 单位 + chargeItem.setUnitPrice(price); // 单价 + chargeItem.setTotalPrice( + longMedicationRequest.getQuantity().multiply(price).setScale(4, RoundingMode.HALF_UP)); // 总价 + + chargeItemService.saveOrUpdate(chargeItem); + } + } + + // 临时 + MedicationRequest tempMedicationRequest; + for (MedicationRequestUseExe medicationRequestUseExe : tempMedication) { + for (String executeTime : medicationRequestUseExe.getExecuteTimes()) { + tempMedicationRequest = new MedicationRequest(); + BeanUtils.copyProperties(medicationRequestUseExe, tempMedicationRequest); + + // 生成执行记录 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 转换为 LocalDateTime + LocalDateTime localDateTime = LocalDateTime.parse(executeTime, formatter); + // 转换为 Date + Date exeDate = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()); + // 执行记录id + Long procedureId = procedureService.addProcedureRecord(tempMedicationRequest.getEncounterId(), + tempMedicationRequest.getPatientId(), tempMedicationRequest.getId(), + CommonConstants.TableName.MED_MEDICATION_REQUEST, EventStatus.COMPLETED, + ProcedureCategory.INPATIENT_ADVICE, null, exeDate, tempMedicationRequest.getGroupId(), null); + + // 更新药品放发状态 + medicationDispenseService.update(new LambdaUpdateWrapper() + .eq(MedicationDispense::getMedReqId, tempMedicationRequest.getId()) + .set(MedicationDispense::getStatusEnum, DispenseStatus.PREPARATION.getValue())); + + // 更新账单状态 + chargeItemService.update( + new LambdaUpdateWrapper().eq(ChargeItem::getServiceId, tempMedicationRequest.getId()) + .set(ChargeItem::getProcedureId, procedureId) + .set(ChargeItem::getStatusEnum, ChargeItemStatus.BILLABLE.getValue())); + } + } + + } + + /** + * 执行诊疗医嘱 + * + * @param actUseExeList 诊疗医嘱 + */ + private void exeActivity(List actUseExeList) { + // 长期医嘱 + List longActivity = actUseExeList.stream() + .filter(e -> TherapyTimeType.LONG_TERM.getValue().equals(e.getTherapyEnum())).collect(Collectors.toList()); + // 临时医嘱 + List tempActivity = actUseExeList.stream() + .filter(e -> TherapyTimeType.TEMPORARY.getValue().equals(e.getTherapyEnum())).collect(Collectors.toList()); + // 诊疗定义id集合 + List activityDefinitionIdList = + actUseExeList.stream().map(ServiceRequestUseExe::getActivityId).collect(Collectors.toList()); + // 医嘱详细信息 + List activityInfos = iDoctorStationAdviceAppService.getAdviceBaseInfo(null, null, null, + activityDefinitionIdList, 0L, 1, 500, Whether.NO.getValue(), List.of(3)).getRecords(); + + // 当前时间 + Date curDate = new Date(); + // 参与者id + Long practitionerId = SecurityUtils.getLoginUser().getPractitionerId(); + // 当前登录账号的科室id + Long orgId = SecurityUtils.getLoginUser().getOrgId(); + + // 长期 + ServiceRequest longServiceRequest; + ChargeItem chargeItem; + for (ServiceRequestUseExe serviceRequestUseExe : longActivity) { + for (String executeTime : serviceRequestUseExe.getExecuteTimes()) { + longServiceRequest = new ServiceRequest(); + BeanUtils.copyProperties(serviceRequestUseExe, longServiceRequest); + + // 生成执行记录 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 转换为 LocalDateTime + LocalDateTime localDateTime = LocalDateTime.parse(executeTime, formatter); + // 转换为 Date + Date exeDate = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()); + // 执行记录id + Long procedureId = procedureService.addProcedureRecord(longServiceRequest.getEncounterId(), + longServiceRequest.getPatientId(), longServiceRequest.getId(), + CommonConstants.TableName.WOR_SERVICE_REQUEST, EventStatus.COMPLETED, + ProcedureCategory.INPATIENT_ADVICE, null, exeDate, null, null); + + // 生成账单 + chargeItem = new ChargeItem(); + chargeItem.setStatusEnum(ChargeItemStatus.BILLABLE.getValue()); // 收费状态 + chargeItem.setBusNo(AssignSeqEnum.CHARGE_ITEM_NO.getPrefix().concat(longServiceRequest.getBusNo())); + chargeItem.setPatientId(longServiceRequest.getPatientId()); // 患者 + chargeItem.setContextEnum(ChargeItemContext.ACTIVITY.getValue()); // 类型 + chargeItem.setEncounterId(longServiceRequest.getEncounterId()); // 就诊id + chargeItem.setEntererId(practitionerId);// 开立人ID + chargeItem.setRequestingOrgId(orgId); // 开立科室 + chargeItem.setEnteredDate(curDate); // 开立时间 + chargeItem.setServiceTable(CommonConstants.TableName.WOR_SERVICE_REQUEST);// 医疗服务类型 + chargeItem.setServiceId(longServiceRequest.getId()); // 医疗服务ID + chargeItem.setProductTable(CommonConstants.TableName.WOR_ACTIVITY_DEFINITION);// 产品所在表 + chargeItem.setProductId(longServiceRequest.getActivityId());// 收费项id + chargeItem.setAccountId(serviceRequestUseExe.getAccountId());// 关联账户ID + chargeItem.setConditionId(longServiceRequest.getConditionId()); // 诊断id + chargeItem.setEncounterDiagnosisId(longServiceRequest.getEncounterDiagnosisId()); // 就诊诊断id + chargeItem.setProcedureId(procedureId); + // ------------------------------ 匹配定价信息 + // 根据 activityId 查找对应的医嘱信息 + ServiceRequest finalLongServiceRequest = longServiceRequest; + Optional matchedAdvice = activityInfos.stream() + .filter(advice -> finalLongServiceRequest.getActivityId().equals(advice.getAdviceDefinitionId())) + .findFirst(); + if (!matchedAdvice.isPresent()) { + throw new RuntimeException("未找到对应的医嘱信息,activityId: " + finalLongServiceRequest.getActivityId()); + } + // 医嘱信息 + AdviceBaseDto advice = matchedAdvice.get(); + // 定价信息 + AdvicePriceDto priceDto = advice.getPriceList().get(0); + // 计算价格 + BigDecimal price = priceDto.getPrice(); + + chargeItem.setDefinitionId(priceDto.getDefinitionId()); // 费用定价ID + chargeItem.setQuantityValue(longServiceRequest.getQuantity()); // 数量 + chargeItem.setQuantityUnit(longServiceRequest.getUnitCode()); // 单位 + chargeItem.setUnitPrice(price); // 单价 + chargeItem + .setTotalPrice(longServiceRequest.getQuantity().multiply(price).setScale(4, RoundingMode.HALF_UP)); // 总价 + chargeItemService.saveOrUpdate(chargeItem); + } + } + + // 临时 + ServiceRequest tempServiceRequest; + for (ServiceRequestUseExe serviceRequestUseExe : tempActivity) { + for (String executeTime : serviceRequestUseExe.getExecuteTimes()) { + tempServiceRequest = new ServiceRequest(); + BeanUtils.copyProperties(serviceRequestUseExe, tempServiceRequest); + + // 生成执行记录 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 转换为 LocalDateTime + LocalDateTime localDateTime = LocalDateTime.parse(executeTime, formatter); + // 转换为 Date + Date exeDate = Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()); + // 执行记录id + Long procedureId = procedureService.addProcedureRecord(tempServiceRequest.getEncounterId(), + tempServiceRequest.getPatientId(), tempServiceRequest.getId(), + CommonConstants.TableName.WOR_SERVICE_REQUEST, EventStatus.COMPLETED, + ProcedureCategory.INPATIENT_ADVICE, null, exeDate, null, null); + + // 更新账单状态 + chargeItemService.update( + new LambdaUpdateWrapper().eq(ChargeItem::getServiceId, tempServiceRequest.getId()) + .set(ChargeItem::getProcedureId, procedureId) + .set(ChargeItem::getStatusEnum, ChargeItemStatus.BILLABLE.getValue())); + } + } + + } + + /** + * 组装药品请求用于执行的数据结构 + * + * @param medicineList 药品执行参数 + * @return 用于执行的药品请求 + */ + private List assemblyMedication(List medicineList) { + // 药品请求id集合 + List medicineRequestIdList = + medicineList.stream().map(AdviceExecuteDetailParam::getRequestId).collect(Collectors.toList()); + // 药品请求集合 + List medicationRequestList = medicationRequestService + .list(new LambdaQueryWrapper().in(MedicationRequest::getId, medicineRequestIdList)); + // 药品定义id集合 + List medicationDefinitionIdList = + medicationRequestList.stream().map(MedicationRequest::getMedicationId).collect(Collectors.toList()); + // 药品定义集合 + List medicationDefinitionList = medicationDefinitionService.list( + new LambdaQueryWrapper().in(MedicationDefinition::getId, medicationDefinitionIdList)); + // 组装MedicationRequestUseExe数据结构 + List medUseExeList = medicationRequestList.stream().map(medicationRequest -> { + // 创建 MedicationRequestUseExe 对象,并复制 MedicationRequest 的属性 + MedicationRequestUseExe useExe = new MedicationRequestUseExe(); + // 账号id赋值 + AdviceExecuteDetailParam adviceExecuteDetailParam = medicineList.stream() + .filter(param -> medicationRequest.getId().equals(param.getRequestId())).findFirst().orElse(null); + if (adviceExecuteDetailParam != null) { + useExe.setAccountId(adviceExecuteDetailParam.getAccountId()); + } + BeanUtils.copyProperties(medicationRequest, useExe); + // 匹配 executeTimes:根据 medicationRequest 的 id 在 medicineList 中查找匹配的 executeTimes + List matchedExecuteTimes = + medicineList.stream().filter(medicine -> medicine.getRequestId().equals(medicationRequest.getId())) + .findFirst().map(AdviceExecuteDetailParam::getExecuteTimes).orElse(null); + useExe.setExecuteTimes(matchedExecuteTimes); + // 计算 executeTimesNum:executeTimes 的集合大小,转换为 BigDecimal + if (matchedExecuteTimes != null) { + useExe.setExecuteTimesNum(BigDecimal.valueOf(matchedExecuteTimes.size())); + } else { + useExe.setExecuteTimesNum(BigDecimal.ZERO); + } + // 匹配 minUnitQuantity:根据 medicationId 在 medicationDefinitionList 中查找匹配的药品定义 + MedicationDefinition matchedDefinition = medicationDefinitionList.stream() + .filter(definition -> definition.getId().equals(medicationRequest.getMedicationId())).findFirst() + .orElse(null); + if (matchedDefinition != null) { + // 判断 minUnitCode 是否等于 unitCode + if (matchedDefinition.getMinUnitCode().equals(medicationRequest.getUnitCode())) { + useExe.setMinUnitQuantity(medicationRequest.getQuantity()); + } else { + // 若不相等,则计算 quantity * partPercent + BigDecimal partPercent = matchedDefinition.getPartPercent(); + if (partPercent == null) { + partPercent = BigDecimal.ONE; // 避免空指针,默认设为1 + } + useExe.setMinUnitQuantity(medicationRequest.getQuantity().multiply(partPercent)); + } + } else { + // 若未找到匹配的药品定义,设为 null 或默认值 + useExe.setMinUnitQuantity(null); + } + return useExe; + }).toList(); + return medUseExeList; + } + + /** + * 组装诊疗请求用于执行的数据结构 + * + * @param activityList 诊疗执行参数 + * @return 用于执行的诊疗请求 + */ + private List assemblyActivity(List activityList) { + // 诊疗请求id集合 + List activityRequestIdList = + activityList.stream().map(AdviceExecuteDetailParam::getRequestId).collect(Collectors.toList()); + // 诊疗请求集合 + List activityRequestList = serviceRequestService + .list(new LambdaQueryWrapper().in(ServiceRequest::getId, activityRequestIdList)); + // 组装ServiceRequestUseExe数据结构 + List actUseExeList = activityRequestList.stream().map(serviceRequest -> { + // 创建 ServiceRequestUseExe 对象,并复制 ServiceRequest 的属性 + ServiceRequestUseExe useExe = new ServiceRequestUseExe(); + // 账号id赋值 + AdviceExecuteDetailParam adviceExecuteDetailParam = activityList.stream() + .filter(param -> serviceRequest.getId().equals(param.getRequestId())).findFirst().orElse(null); + if (adviceExecuteDetailParam != null) { + useExe.setAccountId(adviceExecuteDetailParam.getAccountId()); + } + BeanUtils.copyProperties(serviceRequest, useExe); + // 匹配 executeTimes:根据 serviceRequest 的 id 在 activityList 中查找匹配的 executeTimes + List matchedExecuteTimes = + activityList.stream().filter(activity -> activity.getRequestId().equals(serviceRequest.getId())) + .findFirst().map(AdviceExecuteDetailParam::getExecuteTimes).orElse(null); + useExe.setExecuteTimes(matchedExecuteTimes); + // 计算 executeTimesNum:executeTimes 的集合大小,转换为 BigDecimal + if (matchedExecuteTimes != null) { + useExe.setExecuteTimesNum(BigDecimal.valueOf(matchedExecuteTimes.size())); + } else { + useExe.setExecuteTimesNum(BigDecimal.ZERO); + } + return useExe; + }).toList(); + return actUseExeList; + } + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/InpatientMedicineCollectionAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/MedicineSummaryAppServiceImpl.java similarity index 97% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/InpatientMedicineCollectionAppServiceImpl.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/MedicineSummaryAppServiceImpl.java index ae559bc0..898a8458 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/InpatientMedicineCollectionAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/appservice/impl/MedicineSummaryAppServiceImpl.java @@ -7,20 +7,15 @@ import java.util.stream.Collectors; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import com.core.common.constant.HttpStatus; -import com.core.common.utils.*; -import com.openhis.web.inhospitalnursestation.appservice.IInpatientMedicineCollectionAppService; -import com.openhis.web.pharmacymanage.dto.InventoryDto; -import com.openhis.workflow.domain.SupplyDelivery; -import com.openhis.workflow.domain.SupplyRequest; -import com.openhis.workflow.service.IDeviceDispenseService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.core.common.constant.HttpStatus; import com.core.common.core.domain.R; import com.core.common.exception.ServiceException; +import com.core.common.utils.*; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.enums.*; @@ -28,10 +23,17 @@ import com.openhis.common.enums.ybenums.YbDrordType; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.medication.service.IMedicationDispenseService; -import com.openhis.web.inhospitalnursestation.dto.*; +import com.openhis.web.inhospitalnursestation.appservice.IMedicineSummaryAppService; +import com.openhis.web.inhospitalnursestation.dto.InpatientMedicineEncounterInfoDto; +import com.openhis.web.inhospitalnursestation.dto.InpatientMedicinePrescriptionInfoDto; +import com.openhis.web.inhospitalnursestation.dto.InpatientMedicineSearchParam; import com.openhis.web.inhospitalnursestation.mapper.InpatientMedicineCollectionMapper; +import com.openhis.web.pharmacymanage.dto.InventoryDto; import com.openhis.web.pharmacymanage.mapper.ReturnMedicineMapper; import com.openhis.workflow.domain.InventoryItem; +import com.openhis.workflow.domain.SupplyDelivery; +import com.openhis.workflow.domain.SupplyRequest; +import com.openhis.workflow.service.IDeviceDispenseService; import com.openhis.workflow.service.ISupplyDeliveryService; import com.openhis.workflow.service.ISupplyRequestService; @@ -42,7 +44,7 @@ import com.openhis.workflow.service.ISupplyRequestService; * @date 2025/8/18 */ @Service -public class InpatientMedicineCollectionAppServiceImpl implements IInpatientMedicineCollectionAppService { +public class MedicineSummaryAppServiceImpl implements IMedicineSummaryAppService { @Resource private AssignSeqUtil assignSeqUtil; diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/AdviceProcessController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/AdviceProcessController.java index c5a1996c..c7703b1e 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/AdviceProcessController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/AdviceProcessController.java @@ -75,7 +75,7 @@ public class AdviceProcessController { * @return 操作结果 */ @PutMapping(value = "/advice-verify") - public R adviceVerify(List performInfoList) { + public R adviceVerify(@RequestBody List performInfoList) { return adviceProcessAppService.adviceVerify(performInfoList); } @@ -86,7 +86,7 @@ public class AdviceProcessController { * @return 操作结果 */ @PutMapping(value = "/advice-reject") - public R adviceReject(List performInfoList) { + public R adviceReject(@RequestBody List performInfoList) { return adviceProcessAppService.adviceReject(performInfoList); } @@ -104,22 +104,22 @@ public class AdviceProcessController { /** * 医嘱取消执行 * - * @param performInfoList 医嘱信息集合 + * @param adviceExecuteParam 取消执行参数 * @return 操作结果 */ @PostMapping(value = "/advice-cancel") - public R adviceCancel(List performInfoList) { - return adviceProcessAppService.adviceCancel(performInfoList); + public R adviceCancel(@RequestBody AdviceExecuteParam adviceExecuteParam) { + return adviceProcessAppService.adviceCancel(adviceExecuteParam); } /** * 医嘱不执行 * - * @param performInfoList 医嘱信息集合 + * @param adviceExecuteParam 不执行参数 * @return 操作结果 */ @PostMapping(value = "/advice-void") - public R adviceVoid(List performInfoList) { - return adviceProcessAppService.adviceVoid(performInfoList); + public R adviceVoid(AdviceExecuteParam adviceExecuteParam) { + return adviceProcessAppService.adviceVoid(adviceExecuteParam); } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/InpatientMedicineCollectionController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/MedicineSummaryController.java similarity index 90% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/InpatientMedicineCollectionController.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/MedicineSummaryController.java index 67261f91..4d8ccd7f 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/InpatientMedicineCollectionController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/controller/MedicineSummaryController.java @@ -5,7 +5,7 @@ import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import com.openhis.web.inhospitalnursestation.appservice.IInpatientMedicineCollectionAppService; +import com.openhis.web.inhospitalnursestation.appservice.IMedicineSummaryAppService; import com.openhis.web.inhospitalnursestation.dto.InpatientMedicinePrescriptionInfoDto; import org.springframework.web.bind.annotation.*; @@ -22,13 +22,13 @@ import lombok.extern.slf4j.Slf4j; * @date 2025/8/18 */ @RestController -@RequestMapping("/nurse-station/inpatient-medicine-collection") +@RequestMapping("/nurse-station/medicine-summary") @Slf4j @AllArgsConstructor -public class InpatientMedicineCollectionController { +public class MedicineSummaryController { @Resource - public IInpatientMedicineCollectionAppService medicineCollectionService; + public IMedicineSummaryAppService medicineCollectionService; /** * 分页查询在科病人列表 @@ -56,7 +56,7 @@ public class InpatientMedicineCollectionController { * @param pageSize 查询条数 * @param request 请求数据 */ - @GetMapping("/prescription-list") + @GetMapping("/advice-list") public R getPatientInfoList(InpatientMedicineSearchParam searchParam, String searchKey, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/AdviceExecuteDetailParam.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/AdviceExecuteDetailParam.java index 63666f44..9a2456fc 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/AdviceExecuteDetailParam.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/AdviceExecuteDetailParam.java @@ -25,6 +25,17 @@ public class AdviceExecuteDetailParam { @JsonSerialize(using = ToStringSerializer.class) private Long requestId; + /** 账号id */ + @JsonSerialize(using = ToStringSerializer.class) + private Long accountId; + + /** 执行id */ + @JsonSerialize(using = ToStringSerializer.class) + private Long procedureId; + + /** 医嘱类型 */ + private Integer therapyEnum; + /** 医嘱请求所在表 */ private String adviceTable; diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceDto.java index f41a05d7..809c9b14 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceDto.java @@ -30,6 +30,10 @@ public class InpatientAdviceDto { @JsonSerialize(using = ToStringSerializer.class) private Long encounterId; + /** 患者id */ + @JsonSerialize(using = ToStringSerializer.class) + private Long patientId; + /** 医嘱所在表 */ private String adviceTable; // 1:药品 , 2: 耗材 , 3:项目 /** @@ -199,7 +203,7 @@ public class InpatientAdviceDto { private String patientName; /** 床位名称 */ - private String badName; + private String bedName; /** 性别 */ private Integer genderEnum; @@ -226,4 +230,16 @@ public class InpatientAdviceDto { /** 余额 */ private BigDecimal balanceAmount; + + /** + * 账号id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long accountId; + + /** + * 校对人id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long performerCheckId; } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceParam.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceParam.java index 3b11a4d8..3a363cc2 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceParam.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/InpatientAdviceParam.java @@ -3,6 +3,8 @@ */ package com.openhis.web.inhospitalnursestation.dto; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import lombok.experimental.Accessors; diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/MedicationRequestUseExe.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/MedicationRequestUseExe.java index 32a6f806..d1f816da 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/MedicationRequestUseExe.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/MedicationRequestUseExe.java @@ -6,6 +6,8 @@ package com.openhis.web.inhospitalnursestation.dto; import java.math.BigDecimal; import java.util.List; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.openhis.medication.domain.MedicationRequest; import lombok.Data; @@ -21,6 +23,12 @@ import lombok.experimental.Accessors; @Accessors(chain = true) public class MedicationRequestUseExe extends MedicationRequest { + /** + * 账号id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long accountId; + /** 执行时间点集合 */ private List executeTimes; diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/ServiceRequestUseExe.java similarity index 36% rename from openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/ServiceRequestUseExe.java index af0f22d7..a71b117b 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inhospitalnursestation/dto/ServiceRequestUseExe.java @@ -1,45 +1,40 @@ /* * Copyright ©2023 CJB-CNIT Team. All rights reserved */ -package com.openhis.yb.dto; +package com.openhis.web.inhospitalnursestation.dto; +import java.math.BigDecimal; import java.util.List; -import javax.validation.constraints.NotEmpty; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.openhis.workflow.domain.ServiceRequest; import lombok.Data; import lombok.experimental.Accessors; /** - * 付款入参 + * 诊疗请求用于执行 * - * @author SunJQ - * @date 2025-03-29 + * @author zwh + * @date 2025-07-28 */ @Data @Accessors(chain = true) -public class PaymentDto { +public class ServiceRequestUseExe extends ServiceRequest { /** - * 付款id + * 账号id */ - private Long id;// paymentId - - /** 就诊ID */ @JsonSerialize(using = ToStringSerializer.class) - private Long encounterId; - - /** 收费项 */ - private List chargeItemIds;// 收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 + private Long accountId; - /** 支付详细 */ - @NotEmpty - private List paymentDetails; + /** 执行时间点集合 */ + private List executeTimes; - private String ybMdtrtCertType;// 社保卡/身份证/电子医保码 + /** + * 执行时间点集合数量 + */ + private BigDecimal executeTimesNum; - private String busiCardInfo;// 社保卡号/身份证号/ecToken } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/LossReportFormAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/LossReportFormAppServiceImpl.java index 8482ad89..b6acee1e 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/LossReportFormAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/LossReportFormAppServiceImpl.java @@ -157,8 +157,8 @@ public class LossReportFormAppServiceImpl implements ILossReportFormAppService { */ private List buildTree(List records) { // 按b_no的层级排序,确保父节点先处理 - List sortedRecords = records.stream() - .sorted(Comparator.comparingInt(r -> r.getBusNo().split("\\.").length)).collect(Collectors.toList()); + List sortedRecords = + records.stream().sorted(Comparator.comparingInt(r -> r.getBusNo().split("\\.").length)).toList(); Map nodeMap = new HashMap<>(); List tree = new ArrayList<>(); @@ -228,8 +228,7 @@ public class LossReportFormAppServiceImpl implements ILossReportFormAppService { List idList = new ArrayList<>(); // 单据号取得 - List busNoList = - lossReportFormDtoList.stream().map(LossReportFormDto::getBusNo).collect(Collectors.toList()); + List busNoList = lossReportFormDtoList.stream().map(LossReportFormDto::getBusNo).toList(); // 请求数据取得 List requestList = supplyRequestService.getSupplyByBusNo(busNoList.get(0)); if (!requestList.isEmpty()) { @@ -245,20 +244,20 @@ public class LossReportFormAppServiceImpl implements ILossReportFormAppService { SupplyRequest supplyRequest = new SupplyRequest(); BeanUtils.copyProperties(lossReportFormDto, supplyRequest); supplyRequest.setPurposeLocationId(lossReportFormDto.getLossLocationId()) - .setPurposeLocationStoreId(lossReportFormDto.getLossLocationStoreId()) - .setPurposeTypeEnum(lossReportFormDto.getLossTypeEnum()).setReason(lossReportFormDto.getLossReason()); + .setPurposeLocationStoreId(lossReportFormDto.getLossLocationStoreId()) + .setPurposeTypeEnum(lossReportFormDto.getLossTypeEnum()).setReason(lossReportFormDto.getLossReason()); // 生成待发送的报损单据 supplyRequest - // id - .setId(null) - // 单据分类:库存供应 - .setCategoryEnum(SupplyCategory.STOCK_SUPPLY.getValue()) - // 单据类型:报损单 - .setTypeEnum(SupplyType.LOSS_REPORT_FORM.getValue()) - // 制单人 - .setApplicantId(SecurityUtils.getLoginUser().getPractitionerId()) - // 制单日期 - .setApplyTime(DateUtils.getNowDate()); + // id + .setId(null) + // 单据分类:库存供应 + .setCategoryEnum(SupplyCategory.STOCK_SUPPLY.getValue()) + // 单据类型:报损单 + .setTypeEnum(SupplyType.LOSS_REPORT_FORM.getValue()) + // 制单人 + .setApplicantId(SecurityUtils.getLoginUser().getPractitionerId()) + // 制单日期 + .setApplyTime(DateUtils.getNowDate()); supplyRequestList.add(supplyRequest); } @@ -269,8 +268,7 @@ public class LossReportFormAppServiceImpl implements ILossReportFormAppService { // 请求id取得 List supplyRequestIdList = supplyRequestService.getSupplyByBusNo(busNoList.get(0)); // 返回请求id列表 - List requestIdList = - supplyRequestIdList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + List requestIdList = supplyRequestIdList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); for (Long list : requestIdList) { idList.add(list.toString()); } @@ -320,6 +318,7 @@ public class LossReportFormAppServiceImpl implements ILossReportFormAppService { return result ? R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00004, null)) : R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + /** * 报损单据详情 * @@ -331,12 +330,14 @@ public class LossReportFormAppServiceImpl implements ILossReportFormAppService { * @return 单据详情 */ @Override - public R getMonthlySettlementDetail(Long locationId, String startTime, String endTime,Integer pageNo, Integer pageSize){ - - Page receiptDetailList = lossReportFormMapper.getMonthlySettlementDetail(new Page<>(pageNo, pageSize), - locationId,startTime, endTime,ItemType.MEDICINE.getValue(), ItemType.DEVICE.getValue(), - CommonConstants.TableName.MED_MEDICATION_DEFINITION, CommonConstants.TableName.ADM_DEVICE_DEFINITION,SupplyType.LOSS_REPORT_FORM.getValue(), - SupplyStatus.AGREE.getValue()); + public R getMonthlySettlementDetail(Long locationId, String startTime, String endTime, Integer pageNo, + Integer pageSize) { + + Page receiptDetailList = + lossReportFormMapper.getMonthlySettlementDetail(new Page<>(pageNo, pageSize), locationId, startTime, + endTime, ItemType.MEDICINE.getValue(), ItemType.DEVICE.getValue(), + CommonConstants.TableName.MED_MEDICATION_DEFINITION, CommonConstants.TableName.ADM_DEVICE_DEFINITION, + SupplyType.LOSS_REPORT_FORM.getValue(), SupplyStatus.AGREE.getValue()); return R.ok(receiptDetailList); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java index bf8c73ae..260b0305 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java @@ -251,7 +251,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService inventoryItemService.updateInventoryQuantity(inventoryItemPurpose.getId(), minQuantity, now); if (!aBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } } } @@ -296,6 +296,14 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (agreedList.isEmpty()) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + // 获取审批通过后的供应请求id列表 + List supplyReqIdList = agreedList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + + // 校验(已经审批通过的单号(发放状态是已完成),不能再重复审批通过) + boolean validation = supplyDeliveryService.supplyDeliveryValidation(supplyReqIdList); + if (validation) { + throw new ServiceException("请勿重复审批"); + } // 根据单据,生成供应发放单 List deliveredList = supplyDeliveryService.createCompletedSupplyDelivery(agreedList, now); if (deliveredList.isEmpty()) { @@ -340,7 +348,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService Boolean aBoolean = inventoryItemService.updateInventoryQuantity(inventoryItem.getId(), minQuantity, now); if (!aBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } } } @@ -385,6 +393,14 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (agreedList.isEmpty()) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + // 获取审批通过后的供应请求id列表 + List supplyReqIdList = agreedList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + + // 校验(已经审批通过的单号(发放状态是已完成),不能再重复审批通过) + boolean validation = supplyDeliveryService.supplyDeliveryValidation(supplyReqIdList); + if (validation) { + throw new ServiceException("请勿重复审批"); + } // 根据单据,发放物品 List deliveredList = supplyDeliveryService.createCompletedSupplyDelivery(agreedList, now); if (deliveredList.isEmpty()) { @@ -418,7 +434,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Inventory.M00002, null)); + throw new ServiceException("操作失败,库存数量不足"); } else { // 源仓库库存-(调拨数量*拆零比) minQuantity = minQuantity.subtract( @@ -427,7 +443,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService } else if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getMinUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Inventory.M00002, null)); + throw new ServiceException("操作失败,库存数量不足"); } else { // 供应申请的物品计量单位与最小单位相同 // 源仓库库存-调拨数量 @@ -438,7 +454,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService Boolean aBoolean = inventoryItemService.updateInventoryQuantity(inventoryItemSource.getId(), minQuantity, now); if (!aBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } // 添加到出库列表 @@ -459,6 +475,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (inventoryItemPurpose == null) { // 供应申请的物品计量单位与最小单位相同 if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getMinUnitCode())) { + //todo:不理解的代码,可能会因为四舍五入影响总价值 // 采购单价=单价*拆零比 supplyItemDetailDto .setPrice(supplyItemDetailDto.getPrice().multiply(supplyItemDetailDto.getPartPercent())); @@ -485,7 +502,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService inventoryItemService.updateInventoryQuantity(inventoryItemPurpose.getId(), minQuantity, now); if (!bBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } } // 添加到入库列表 @@ -526,7 +543,14 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (agreedList.isEmpty()) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + // 获取审批通过后的供应请求id列表 + List supplyReqIdList = agreedList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + // 校验(已经审批通过的单号(发放状态是已完成),不能再重复审批通过) + boolean validation = supplyDeliveryService.supplyDeliveryValidation(supplyReqIdList); + if (validation) { + throw new ServiceException("请勿重复审批"); + } // 根据单据,发放物品 List deliveredList = supplyDeliveryService.createCompletedSupplyDelivery(agreedList, now); if (deliveredList.isEmpty()) { @@ -555,7 +579,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Inventory.M00002, null)); + throw new ServiceException("操作失败,库存数量不足"); } else { // 仓库库存-(退货数量*拆零比) minQuantity = minQuantity.subtract( @@ -564,7 +588,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService } else if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getMinUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Inventory.M00002, null)); + throw new ServiceException("操作失败,库存数量不足"); } else { // 供应申请的物品计量单位与最小单位相同 // 仓库库存-退货数量 @@ -577,7 +601,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService inventoryItemService.updateInventoryQuantity(inventoryItemSource.getId(), minQuantity, now); if (!aBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } // 退货数量等于库存数量时,删除库存数据 @@ -617,6 +641,14 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (agreedList.isEmpty()) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + // 获取审批通过后的供应请求id列表 + List supplyReqIdList = agreedList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + + // 校验(已经审批通过的单号(发放状态是已完成),不能再重复审批通过) + boolean validation = supplyDeliveryService.supplyDeliveryValidation(supplyReqIdList); + if (validation) { + throw new ServiceException("请勿重复审批"); + } // 根据单据,生成供应发放单 List deliveredList = supplyDeliveryService.createCompletedSupplyDelivery(agreedList, now); if (deliveredList.isEmpty()) { @@ -644,7 +676,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail("操作失败,库存数量不足"); + throw new ServiceException("操作失败,库存数量不足"); } else { // 目的仓库库存-(报损数量*拆零比) minQuantity = minQuantity.subtract( @@ -653,7 +685,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService } else if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getMinUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail("操作失败,库存数量不足"); + throw new ServiceException("操作失败,库存数量不足"); } else { // 供应申请的物品计量单位与最小单位相同 // 目的仓库库存-报损数量 @@ -664,7 +696,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService Boolean aBoolean = inventoryItemService.updateInventoryQuantity(inventoryItem.getId(), minQuantity, now); if (!aBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } } } @@ -701,6 +733,14 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (agreedList.isEmpty()) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + // 获取审批通过后的供应请求id列表 + List supplyReqIdList = agreedList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + + // 校验(已经审批通过的单号(发放状态是已完成),不能再重复审批通过) + boolean validation = supplyDeliveryService.supplyDeliveryValidation(supplyReqIdList); + if (validation) { + throw new ServiceException("请勿重复审批"); + } // 根据单据,发放物品 List deliveredList = supplyDeliveryService.createCompletedSupplyDelivery(agreedList, now); if (deliveredList.isEmpty()) { @@ -727,7 +767,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Inventory.M00002, null)); + throw new ServiceException("操作失败,库存数量不足"); } else { // 源仓库库存-(领用数量*拆零比) minQuantity = minQuantity.subtract( @@ -736,7 +776,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService } else if (supplyItemDetailDto.getItemUnit().equals(supplyItemDetailDto.getMinUnitCode())) { if (minQuantity.compareTo(supplyItemDetailDto.getItemQuantity()) < 0) { // 库存数量不足 - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Inventory.M00002, null)); + throw new ServiceException("操作失败,库存数量不足"); } else { // 供应申请的物品计量单位与最小单位相同 // 源仓库库存-领用数量 @@ -786,6 +826,14 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService if (agreedList.isEmpty()) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); } + // 获取审批通过后的供应请求id列表 + List supplyReqIdList = agreedList.stream().map(SupplyRequest::getId).collect(Collectors.toList()); + + // 校验(已经审批通过的单号(发放状态是已完成),不能再重复审批通过) + boolean validation = supplyDeliveryService.supplyDeliveryValidation(supplyReqIdList); + if (validation) { + throw new ServiceException("请勿重复审批"); + } // 根据单据,发放物品 List deliveredList = supplyDeliveryService.createCompletedSupplyDelivery(agreedList, now); if (deliveredList.isEmpty()) { @@ -831,7 +879,7 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService Boolean bBoolean = inventoryItemService.updateInventoryQuantity(inventoryItemPurpose.getId(), minQuantity, now); if (!bBoolean) { - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00007, null)); + throw new ServiceException("系统异常,请稍后重试"); } } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/LossReportFormDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/LossReportFormDto.java index bf0cd94c..ce471351 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/LossReportFormDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/LossReportFormDto.java @@ -6,7 +6,6 @@ package com.openhis.web.inventorymanage.dto; import java.math.BigDecimal; import java.util.Date; -import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import com.baomidou.mybatisplus.annotation.IdType; @@ -43,6 +42,10 @@ public class LossReportFormDto { @NotNull private BigDecimal itemQuantity; + /** 合计数量 */ + @NotNull + private BigDecimal totalQuantity; + /** 物品编码 */ @NotNull private Long itemId; @@ -78,7 +81,7 @@ public class LossReportFormDto { private Date applyTime; /** 审批人 */ - //@NotNull + // @NotNull private Long approverId; /** 审批日期 */ diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptDetailDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptDetailDto.java index 9b202e2f..ca86a906 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptDetailDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptDetailDto.java @@ -12,8 +12,8 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.openhis.common.annotation.Dict; - import com.openhis.web.common.dto.UnitDto; + import lombok.Data; import lombok.experimental.Accessors; @@ -38,6 +38,9 @@ public class ReceiptDetailDto { /** 当前库存总数/实盘数量 */ private BigDecimal totalQuantity; + /** 报损前数量 */ + private BigDecimal oldQuantity; + /** 数量 */ private BigDecimal itemQuantity; diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/IReviewPrescriptionRecordsAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/IReviewPrescriptionRecordsAppService.java index 94cbba12..1efbfbc6 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/IReviewPrescriptionRecordsAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/IReviewPrescriptionRecordsAppService.java @@ -16,4 +16,20 @@ public interface IReviewPrescriptionRecordsAppService { */ R reviewPrescription(ReviewPrescriptionRecordsDto reviewPrescriptionRecordsDto); + /** + * 通过处方号查询审方记录 + * + * @param prescriptionNo 处方号 + * @return 审方记录 + */ + R getReviewByPrescriptionNo(String prescriptionNo); + + /** + * 通过就诊id查询审方记录 + * + * @param encounterId 就诊id + * @return 审方记录 + */ + R getReviewByEncounterId(Long encounterId); + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/impl/ReviewPrescriptionRecordsAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/impl/ReviewPrescriptionRecordsAppServiceImpl.java index f9061cff..ad4d19a3 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/impl/ReviewPrescriptionRecordsAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/appservice/impl/ReviewPrescriptionRecordsAppServiceImpl.java @@ -18,6 +18,7 @@ import com.openhis.administration.domain.ChargeItem; import com.openhis.administration.service.IChargeItemService; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.enums.ChargeItemStatus; +import com.openhis.common.enums.Whether; import com.openhis.jlau.domain.ReviewPrescriptionRecords; import com.openhis.jlau.service.IReviewPrescriptionRecordsService; import com.openhis.web.jlau.appservice.IReviewPrescriptionRecordsAppService; @@ -92,4 +93,30 @@ public class ReviewPrescriptionRecordsAppServiceImpl implements IReviewPrescript return R.ok(null, MessageUtils.createMessage(PromptMsgConstant.Common.M00004, new Object[] {"审核处方"})); } + /** + * 通过处方号查询审方记录 + * + * @param prescriptionNo 处方号 + * @return 审方记录 + */ + @Override + public R getReviewByPrescriptionNo(String prescriptionNo) { + List reviewPrescriptionRecords = + reviewPrescriptionRecordsAppMapper.getReviewPrescriptionRecords(prescriptionNo, null, null); + return R.ok(reviewPrescriptionRecords); + } + + /** + * 通过就诊id查询审方记录 + * + * @param encounterId 就诊id + * @return 审方记录 + */ + @Override + public R getReviewByEncounterId(Long encounterId) { + List reviewPrescriptionRecords = + reviewPrescriptionRecordsAppMapper.getReviewPrescriptionRecords(null, encounterId, Whether.YES.getValue()); + return R.ok(reviewPrescriptionRecords); + } + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/controller/ReviewPrescriptionRecordsController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/controller/ReviewPrescriptionRecordsController.java index 2f13b8d3..e8d9656a 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/controller/ReviewPrescriptionRecordsController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/controller/ReviewPrescriptionRecordsController.java @@ -3,15 +3,11 @@ */ package com.openhis.web.jlau.controller; -import com.core.common.core.domain.R; -import com.openhis.web.jlau.dto.ReviewPrescriptionRecordsDto; -import com.openhis.web.regdoctorstation.dto.NursingOrdersSaveDto; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import com.core.common.core.domain.R; import com.openhis.web.jlau.appservice.IReviewPrescriptionRecordsAppService; +import com.openhis.web.jlau.dto.ReviewPrescriptionRecordsDto; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -38,4 +34,26 @@ public class ReviewPrescriptionRecordsController { return iReviewPrescriptionRecordsAppService.reviewPrescription(reviewPrescriptionRecordsDto); } + /** + * 通过处方号查询审方记录 + * + * @param prescriptionNo 处方号 + * @return 审方记录 + */ + @GetMapping(value = "/review-by-prescription-no") + public R getReviewByPrescriptionNo(@RequestParam(value = "prescriptionNo") String prescriptionNo) { + return iReviewPrescriptionRecordsAppService.getReviewByPrescriptionNo(prescriptionNo); + } + + /** + * 通过就诊id查询审方记录 + * + * @param encounterId 就诊id + * @return 审方记录 + */ + @GetMapping(value = "/review-by-encounter") + public R getReviewByEncounterId(@RequestParam(value = "encounterId") Long encounterId) { + return iReviewPrescriptionRecordsAppService.getReviewByEncounterId(encounterId); + } + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/dto/ReviewPrescriptionRecordsDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/dto/ReviewPrescriptionRecordsDto.java index ea79d4c5..a75bbdd9 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/dto/ReviewPrescriptionRecordsDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/dto/ReviewPrescriptionRecordsDto.java @@ -47,4 +47,9 @@ public class ReviewPrescriptionRecordsDto { */ private String reasonText; + /** + * 审方人 + */ + private String practitionerName; + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/mapper/ReviewPrescriptionRecordsAppMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/mapper/ReviewPrescriptionRecordsAppMapper.java index e5cb7a53..90110016 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/mapper/ReviewPrescriptionRecordsAppMapper.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/jlau/mapper/ReviewPrescriptionRecordsAppMapper.java @@ -1,11 +1,27 @@ package com.openhis.web.jlau.mapper; +import java.util.List; + +import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; +import com.openhis.web.jlau.dto.ReviewPrescriptionRecordsDto; + /** * 农大审方记录 应用Mapper */ @Repository public interface ReviewPrescriptionRecordsAppMapper { + /** + * 查询农大审方记录 + * + * @param prescriptionNo 处方号 + * @param encounterId 就诊id + * @param passFlag 通过标识 + * @return 农大审方记录 + */ + List getReviewPrescriptionRecords(@Param("prescriptionNo") String prescriptionNo, + @Param("encounterId") Long encounterId, @Param("passFlag") Integer passFlag); + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/outpatientmanage/appservice/impl/OutpatientTreatmentAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/outpatientmanage/appservice/impl/OutpatientTreatmentAppServiceImpl.java index cb249bf3..6cc2c89b 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/outpatientmanage/appservice/impl/OutpatientTreatmentAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/outpatientmanage/appservice/impl/OutpatientTreatmentAppServiceImpl.java @@ -306,19 +306,19 @@ public class OutpatientTreatmentAppServiceImpl implements IOutpatientTreatmentAp // 判断该项目是否已经执行了 if (performCount - cancelCount < exeCount) { // 未执行则新增执行记录 - boolean result = procedureService.addProcedureRecord(encounterId, patientId, requestId, + Long procedureId = procedureService.addProcedureRecord(encounterId, patientId, requestId, performInfoDto.getRequestTable(), EventStatus.COMPLETED, - ProcedureCategory.OUTPATIENT_ADVICE, null, groupId, null); - if (!result) { + ProcedureCategory.OUTPATIENT_ADVICE, null, DateUtils.getNowDate(), groupId, null); + if (procedureId == null) { throw new ServiceException("执行失败,请联系管理员"); } } } else { // 新增执行记录 - boolean result = procedureService.addProcedureRecord(encounterId, patientId, requestId, + Long procedureId = procedureService.addProcedureRecord(encounterId, patientId, requestId, performInfoDto.getRequestTable(), EventStatus.COMPLETED, ProcedureCategory.OUTPATIENT_ADVICE, - null, groupId, null); - if (!result) { + null, DateUtils.getNowDate(), groupId, null); + if (procedureId == null) { throw new ServiceException("执行失败,请联系管理员"); } } @@ -469,11 +469,11 @@ public class OutpatientTreatmentAppServiceImpl implements IOutpatientTreatmentAp // 判断该项目是否已经执行了 if (performCount - cancelCount > 0) { // 已执行则新增取消执行记录 - boolean result = procedureService.addProcedureRecord(procedure.getEncounterId(), + Long procedureId = procedureService.addProcedureRecord(procedure.getEncounterId(), procedure.getPatientId(), procedure.getRequestId(), procedure.getRequestTable(), EventStatus.CANCEL, ProcedureCategory.OUTPATIENT_ADVICE, performInfoDto.getLocationId(), - performInfoDto.getGroupId(), null); - if (!result) { + DateUtils.getNowDate(), performInfoDto.getGroupId(), null); + if (procedureId == null) { throw new ServiceException("取消执行失败,请联系管理员"); } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/patientmanage/appservice/impl/PatientInformationServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/patientmanage/appservice/impl/PatientInformationServiceImpl.java index 30313f13..3bb6e966 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/patientmanage/appservice/impl/PatientInformationServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/patientmanage/appservice/impl/PatientInformationServiceImpl.java @@ -166,22 +166,13 @@ public class PatientInformationServiceImpl implements IPatientInformationService public R editPatient(PatientInformationDto patientInformationDto) { // 如果患者没有输入身份证号则根据年龄自动生成 String idCard = patientInformationDto.getIdCard(); - Date birthday = null; -// if (idCard == null || CommonConstants.Common.AREA_CODE.equals(idCard.substring(0, 6))) { -// idCard = IdCardUtil.generateIdByAge(patientInformationDto.getAge()); -// Date birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); -// patientInformationDto.setIdCard(idCard).setBirthDate(birthday); -// } - if (idCard != null && !idCard.isEmpty()) { - birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); - patientInformationDto.setIdCard(idCard).setBirthDate(birthday); + if (idCard == null || CommonConstants.Common.AREA_CODE.equals(idCard.substring(0, 6))) { + if (patientInformationDto.getAge() != null) { + idCard = IdCardUtil.generateIdByAge(patientInformationDto.getAge()); + Date birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); + patientInformationDto.setIdCard(idCard).setBirthDate(birthday); + } } - // if(idCard==null&&patientInformationDto.getAge() != null) -// { -// idCard = IdCardUtil.generateIdByAge(patientInformationDto.getAge()); -// birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); -// patientInformationDto.setIdCard(idCard).setBirthDate(birthday); -// } Patient patient = new Patient(); BeanUtils.copyProperties(patientInformationDto, patient); @@ -232,22 +223,13 @@ public class PatientInformationServiceImpl implements IPatientInformationService public R addPatient(PatientInformationDto patientInformationDto) { // 如果患者没有输入身份证号则根据年龄自动生成 String idCard = patientInformationDto.getIdCard(); - Date birthday = null; -// if (idCard == null || CommonConstants.Common.AREA_CODE.equals(idCard.substring(0, 6))) { -// idCard = IdCardUtil.generateIdByAge(patientInformationDto.getAge()); -// Date birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); -// patientInformationDto.setIdCard(idCard).setBirthDate(birthday); -// } - if (idCard != null && !idCard.isEmpty()) { - birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); - patientInformationDto.setIdCard(idCard).setBirthDate(birthday); + if (idCard == null || CommonConstants.Common.AREA_CODE.equals(idCard.substring(0, 6))) { + if (patientInformationDto.getAge() != null) { + idCard = IdCardUtil.generateIdByAge(patientInformationDto.getAge()); + Date birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); + patientInformationDto.setIdCard(idCard).setBirthDate(birthday); + } } -// if(idCard==null&&patientInformationDto.getAge() != null) -// { -// idCard = IdCardUtil.generateIdByAge(patientInformationDto.getAge()); -// birthday = IdCardUtil.extractBirthdayFromIdCard(idCard); -// patientInformationDto.setIdCard(idCard).setBirthDate(birthday); -// } Patient patient = new Patient(); BeanUtils.copyProperties(patientInformationDto, patient); patient.setBusNo(assignSeqUtil.getSeq(AssignSeqEnum.PATIENT_NUM.getPrefix(), 10)); @@ -269,9 +251,8 @@ public class PatientInformationServiceImpl implements IPatientInformationService .setIdentifierNo(patientInformationDto.getIdentifierNo()) // 标识状态默认:常规 .setStateEnum(IdentifierStatusEnum.USUAL.getValue()); - boolean resPatId = patientIdentifierService.save(patientIdentifier); - - return resPatient && resPatId + boolean result = patientIdentifierService.save(patientIdentifier); + return result ? R.ok(patient, MessageUtils.createMessage(PromptMsgConstant.Common.M00001, new Object[] {"病人信息"})) : R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00003, new Object[] {"病人信息"})); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/IPaymentRecService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/IPaymentRecService.java index 296ae89d..93964438 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/IPaymentRecService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/IPaymentRecService.java @@ -59,7 +59,7 @@ public interface IPaymentRecService { * @param request 请求参数 * @return 结果 */ - IPage getPage(String searchKey, Integer kingEnum, Integer pageNo, Integer pageSize, + IPage getPage(String searchKey, Integer kingEnum,String invoiceNo, Integer pageNo, Integer pageSize, HttpServletRequest request); /** diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/impl/PaymentRecServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/impl/PaymentRecServiceImpl.java index abed2fe8..5a0ddd68 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/impl/PaymentRecServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/appservice/impl/PaymentRecServiceImpl.java @@ -749,16 +749,15 @@ public class PaymentRecServiceImpl implements IPaymentRecService { * @return 结果 */ @Override - public IPage getPage(String searchKey, Integer kingEnum, Integer pageNo, Integer pageSize, + public IPage getPage(String searchKey, Integer kingEnum, String invoiceNo,Integer pageNo, Integer pageSize, HttpServletRequest request) { // 构建查询条件 QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(new PaymentVO(), searchKey, - new HashSet<>(Arrays.asList(CommonConstants.FieldName.EncounterId, CommonConstants.FieldName.ContractNo, - CommonConstants.FieldName.paymentNo)), + new HashSet<>(Arrays.asList(CommonConstants.FieldName.PatientName, CommonConstants.FieldName.paymentNo)), request); // queryWrapper.eq(PaymentVO::getStatusEnum,PaymentStatus.SUCCESS.getValue()).or().eq(PaymentVO::getStatusEnum,PaymentStatus.REFUND_ALL.getValue()); queryWrapper.in("status_enum", PaymentStatus.SUCCESS.getValue(), PaymentStatus.REFUND_ALL.getValue()); - IPage paymentDtoIPage = paymentMapper.getPage(new Page<>(pageNo, pageSize), kingEnum, queryWrapper); + IPage paymentDtoIPage = paymentMapper.getPage(new Page<>(pageNo, pageSize), kingEnum, invoiceNo,queryWrapper); for (PaymentVO record : paymentDtoIPage.getRecords()) { record.setPaymentId(record.getId().toString()); diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/controller/PaymentReconciliationController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/controller/PaymentReconciliationController.java index 856bf949..b97889d7 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/controller/PaymentReconciliationController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/controller/PaymentReconciliationController.java @@ -3,11 +3,13 @@ */ package com.openhis.web.paymentmanage.controller; +import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.validation.Valid; +import com.core.common.utils.SecurityUtils; import com.openhis.web.paymentmanage.dto.CancelPaymentInpatientDto; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; @@ -84,14 +86,18 @@ public class PaymentReconciliationController { if (PaymentReconciliation.class.isAssignableFrom(result.getData().getClass())) { paymentRecon = (PaymentReconciliation)result.getData(); } - R eleResult = eleInvoiceService.invoiceMZMake(paymentRecon.getId(), paymentDto.getEncounterId()); - Map detail = iChargeBillService.getDetail(paymentRecon.getId()); - if (eleResult.getCode() != 200) { - // 因收费成功前端需要关闭弹窗,此处信息仅用于提示所以返回ok - return R.ok(detail, " 收费成功,电子发票开具失败 :" + eleResult.getMsg()); + Map detail=iChargeBillService.getDetail(paymentRecon.getId()); + if("0".equals(SecurityUtils.getLoginUser().getOptionJson().getString("forwardSwitch"))) { + return R.ok(detail); + }else { + R eleResult = eleInvoiceService.invoiceMZMake(paymentRecon.getId(), paymentDto.getEncounterId()); + if (eleResult.getCode() != 200) { + // 因收费成功前端需要关闭弹窗,此处信息仅用于提示所以返回ok + return R.ok(detail, " 收费成功,电子发票开具失败 :" + eleResult.getMsg()); + } } + // Map detail = iChargeBillService.getDetail(paymentRecon.getId()); - return R.ok(detail); } return result; } @@ -110,12 +116,15 @@ public class PaymentReconciliationController { if (PaymentReconciliation.class.isAssignableFrom(result.getData().getClass())) { paymentRecon = (PaymentReconciliation)result.getData(); } - R eleResult = - eleInvoiceService.invoiceWriteoff(paymentRecon.getRelationId(), cancelPaymentDto.getReason()); - if (eleResult.getCode() != 200) { - // 因取消付款成功前端需要关闭弹窗,此处信息仅用于提示所以返回ok - return R.ok(null, " 取消付款成功,电子发票开具失败 :" + eleResult.getMsg()); + if(!"0".equals(SecurityUtils.getLoginUser().getOptionJson().getString("forwardSwitch"))) { + R eleResult = + eleInvoiceService.invoiceWriteoff(paymentRecon.getRelationId(), cancelPaymentDto.getReason()); + if (eleResult.getCode() != 200) { + // 因取消付款成功前端需要关闭弹窗,此处信息仅用于提示所以返回ok + return R.ok(null, " 取消付款成功,电子发票开具失败 :" + eleResult.getMsg()); + } } + } return result; } @@ -132,9 +141,10 @@ public class PaymentReconciliationController { @GetMapping("/page") public R paymentPage(@RequestParam(value = "searchKey", defaultValue = "") String searchKey, @RequestParam(value = "kinsEnum", defaultValue = "") Integer kinsEnum, + @RequestParam(value = "invoiceNo", defaultValue = "") String invoiceNo, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { - return R.ok(paymentReconciliationService.getPage(searchKey, kinsEnum, pageNo, pageSize, request)); + return R.ok(paymentReconciliationService.getPage(searchKey, kinsEnum, invoiceNo,pageNo, pageSize, request)); } /** @@ -168,21 +178,24 @@ public class PaymentReconciliationController { @PostMapping("/reg-pay") public R regPay(@Valid @RequestBody OutpatientRegistrationSettleParam outpatientRegistrationAddParam) { R result = paymentReconciliationService.regPay(outpatientRegistrationAddParam, - outpatientRegistrationAddParam.getChrgBchno(), outpatientRegistrationAddParam.getPaymentDetails()); + outpatientRegistrationAddParam.getChrgBchno(), outpatientRegistrationAddParam.getPaymentDetails()); // 付款成功后,开具发票 if (result.getCode() == 200) { PaymentReconciliation paymentRecon = null; if (PaymentReconciliation.class.isAssignableFrom(result.getData().getClass())) { paymentRecon = (PaymentReconciliation)result.getData(); } - Long encounterId = paymentRecon.getEncounterId(); - R eleResult = eleInvoiceService.invoiceRegMake(paymentRecon.getId(), encounterId); Map detail = iChargeBillService.getDetail(paymentRecon.getId()); - if (eleResult.getCode() != 200) { - // 因收费成功前端需要关闭弹窗,此处信息仅用于提示所以返回ok - return R.ok(detail, " 收费成功,电子发票开具失败 :" + eleResult.getMsg()); + Long encounterId = paymentRecon.getEncounterId(); + if("0".equals(SecurityUtils.getLoginUser().getOptionJson().getString("forwardSwitch"))) { + return R.ok(detail); + }else { + R eleResult = eleInvoiceService.invoiceRegMake(paymentRecon.getId(), encounterId); + if (eleResult.getCode() != 200) { + // 因收费成功前端需要关闭弹窗,此处信息仅用于提示所以返回ok + return R.ok(detail, " 收费成功,电子发票开具失败 :" + eleResult.getMsg()); + } } - return R.ok(detail); } return result; } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/mapper/PaymentMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/mapper/PaymentMapper.java index 3c7dfd3f..ed0bf6e4 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/mapper/PaymentMapper.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/paymentmanage/mapper/PaymentMapper.java @@ -32,7 +32,7 @@ public interface PaymentMapper { * @param queryWrapper * @return */ - IPage getPage(@Param("page") Page page, @Param("kindEnum") Integer kindEnum, + IPage getPage(@Param("page") Page page, @Param("kindEnum") Integer kindEnum, @Param("invoiceNo") String invoiceNo, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); /** diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/IInpatientMedicineSummaryDispenseAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/ISummaryDispenseMedicineAppService.java similarity index 70% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/IInpatientMedicineSummaryDispenseAppService.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/ISummaryDispenseMedicineAppService.java index 3f429999..2c38eaff 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/IInpatientMedicineSummaryDispenseAppService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/ISummaryDispenseMedicineAppService.java @@ -1,11 +1,11 @@ package com.openhis.web.pharmacymanage.appservice; +import java.util.List; + import javax.servlet.http.HttpServletRequest; import com.core.common.core.domain.R; -import com.openhis.web.pharmacymanage.dto.InpatientMedicineSearchParam; - -import java.util.List; +import com.openhis.web.pharmacymanage.dto.MedicineSummarySearchParam; /** * 住院汇总发药 应用实现接口 @@ -13,7 +13,7 @@ import java.util.List; * @author yuxj * @date 2025/6/3 */ -public interface IInpatientMedicineSummaryDispenseAppService { +public interface ISummaryDispenseMedicineAppService { /** * 页面初始化 @@ -31,7 +31,7 @@ public interface IInpatientMedicineSummaryDispenseAppService { * @param pageSize 查询条数 * @param request 请求数据 */ - R getMedicationSummaryInfo(InpatientMedicineSearchParam searchParam, String searchKey, Integer pageNo, + R getMedicationSummaryInfo(MedicineSummarySearchParam searchParam, String searchKey, Integer pageNo, Integer pageSize, HttpServletRequest request); /** @@ -40,7 +40,7 @@ public interface IInpatientMedicineSummaryDispenseAppService { * @param searchParam 条件 * @return 处理结果 */ - R medicineDispense(List searchParam); + R SummaryDispenseMedicine(List searchParam); /** * 作废 @@ -49,5 +49,5 @@ public interface IInpatientMedicineSummaryDispenseAppService { * @param notPerformedReasonEnum 未发原因 * @return 处理结果 */ - R medicineCancel(List deliveryIdList, Integer notPerformedReasonEnum); + R dispenseCancel(List deliveryIdList, Integer notPerformedReasonEnum); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/ReturnMedicineAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/ReturnMedicineAppServiceImpl.java index 2d3ab162..3621e582 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/ReturnMedicineAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/ReturnMedicineAppServiceImpl.java @@ -8,6 +8,9 @@ import java.util.stream.Collectors; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import com.openhis.yb.dto.MedicalInventory3511Output; +import com.openhis.yb.dto.MedicalInventory3511Param; +import com.openhis.yb.service.YbHttpUtils; import org.springframework.stereotype.Service; import com.alibaba.fastjson.JSONArray; @@ -117,6 +120,9 @@ public class ReturnMedicineAppServiceImpl implements IReturnMedicineAppService { @Resource private ReceiptApprovalAppServiceImpl receiptApprovalAppService; + @Resource + private YbHttpUtils ybHttpUtils; + /** * 获取页面初始化信息 * @@ -421,31 +427,43 @@ public class ReturnMedicineAppServiceImpl implements IReturnMedicineAppService { // 调用医保商品销售退货接口 String ybSwitch = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.YB_SWITCH); // 医保开关 if (Whether.YES.getCode().equals(ybSwitch)) { - if (!medicationRefundList.isEmpty() || !devRefundList.isEmpty()) { + List deviceDefinitions = new ArrayList<>(); + List medicationDefinitions = new ArrayList<>(); + if (!medicationRefundList.isEmpty()) { // 设置进销存参数 - List medicationDefinitions = - medicationDefinitionService.listByIds(supplyItemDetailList.stream() - .filter(x -> x.getItemTable().equals(CommonConstants.TableName.MED_MEDICATION_DEFINITION)) - .map(SupplyItemDetailDto::getItemId).collect(Collectors.toList())); - List deviceDefinitions = deviceDefinitionService.listByIds(supplyItemDetailList - .stream().filter(x -> x.getItemTable().equals(CommonConstants.TableName.ADM_DEVICE_DEFINITION)) + medicationDefinitions = medicationDefinitionService.listByIds(supplyItemDetailList.stream() + .filter(x -> x.getItemTable().equals(CommonConstants.TableName.MED_MEDICATION_DEFINITION)) .map(SupplyItemDetailDto::getItemId).collect(Collectors.toList())); + } + if (!devRefundList.isEmpty()) { + deviceDefinitions = deviceDefinitionService.listByIds(supplyItemDetailList.stream() + .filter(x -> x.getItemTable().equals(CommonConstants.TableName.ADM_DEVICE_DEFINITION)) + .map(SupplyItemDetailDto::getItemId).collect(Collectors.toList())); + } - // 用itemId分组 - Map medicationMap = medicationDefinitions.stream() - .collect(Collectors.toMap(MedicationDefinition::getId, Function.identity())); - Map deviceMap = - deviceDefinitions.stream().collect(Collectors.toMap(DeviceDefinition::getId, Function.identity())); + // 创建映射表,添加空集合保护 + Map medicationMap = + medicationDefinitions != null ? medicationDefinitions.stream().filter(Objects::nonNull) + .collect(Collectors.toMap(MedicationDefinition::getId, Function.identity())) : new HashMap<>(); - // 设置库存变更参数 - for (SupplyItemDetailDto dto : supplyItemDetailList) { - if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(dto.getItemTable())) { + Map deviceMap = + deviceDefinitions != null ? deviceDefinitions.stream().filter(Objects::nonNull) + .collect(Collectors.toMap(DeviceDefinition::getId, Function.identity())) : new HashMap<>(); + + // 设置库存变更参数,添加完整判空 + for (SupplyItemDetailDto dto : supplyItemDetailList) { + if (dto == null) + continue; + if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(dto.getItemTable())) { + if (dto.getItemId() != null) { MedicationDefinition med = medicationMap.get(dto.getItemId()); if (med != null) { dto.setItemBusNo(med.getBusNo()).setPartPercent(med.getPartPercent()) .setRxFlag(med.getRxFlag()).setYbNo(med.getYbNo()); } - } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(dto.getItemTable())) { + } + } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(dto.getItemTable())) { + if (dto.getItemId() != null) { DeviceDefinition dev = deviceMap.get(dto.getItemId()); if (dev != null) { dto.setItemBusNo(dev.getBusNo()).setPartPercent(dev.getPartPercent()) @@ -453,14 +471,14 @@ public class ReturnMedicineAppServiceImpl implements IReturnMedicineAppService { } } } - uploadFailedNoList = this.ybReturnIntegrated(medDispenseIdList, devDispenseIdList); - uploadFailedNoList = receiptApprovalAppService.ybInventoryIntegrated(supplyItemDetailList, - YbInvChgType.OTHER_OUT, DateUtils.getNowDate()); - if (uploadFailedNoList != null) { - returnMsg = "3506商品销售退货上传错误,错误项目编码" + uploadFailedNoList; - } else { - returnMsg = "3506商品销售退货上传成功"; - } + } + uploadFailedNoList = this.ybReturnIntegrated(medDispenseIdList, devDispenseIdList); + uploadFailedNoList = receiptApprovalAppService.ybInventoryIntegrated(supplyItemDetailList, + YbInvChgType.OTHER_OUT, DateUtils.getNowDate()); + if (uploadFailedNoList != null) { + returnMsg = "3506商品销售退货上传错误,错误项目编码" + uploadFailedNoList; + } else { + returnMsg = "3506商品销售退货上传成功"; } } // 返回退药成功信息 @@ -618,6 +636,21 @@ public class ReturnMedicineAppServiceImpl implements IReturnMedicineAppService { } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(dispenseInventoryDto.getItemTable())) { medical3506Param.setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION); } + MedicalInventory3511Output medicalInventory3511Output = + ybHttpUtils.querySalesInfo(getMedical3511Param(dispenseInventoryDto)); + medical3506Param.setMedinsProdSelNo(medicalInventory3511Output.getMedinsProdSelNo()); return medical3506Param; } + + private MedicalInventory3511Param getMedical3511Param(DispenseInventoryDto dispenseInventoryDto) { + MedicalInventory3511Param medicalInventory3511Param = new MedicalInventory3511Param(); + + String fixmedinsCode = + SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.FIXMEDINS_CODE); + // TODO + medicalInventory3511Param.setFixmedinsCode(fixmedinsCode).setMedinsListCodg(dispenseInventoryDto.getYbNo()) + .setFixmedinsBchno(dispenseInventoryDto.getLotNumber()).setBegndate(dispenseInventoryDto.getDispenseTime()).setEnddate(dispenseInventoryDto.getDispenseTime()); + + return medicalInventory3511Param; + } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/InpatientMedicineSummaryDispenseAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/SummaryDispenseMedicineAppServiceImpl.java similarity index 89% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/InpatientMedicineSummaryDispenseAppServiceImpl.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/SummaryDispenseMedicineAppServiceImpl.java index f3ddafaa..d1fe464a 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/InpatientMedicineSummaryDispenseAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/SummaryDispenseMedicineAppServiceImpl.java @@ -7,7 +7,6 @@ import java.util.stream.Stream; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import com.openhis.web.pharmacymanage.dto.InpatientMedicineSummaryDto; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -32,12 +31,13 @@ import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.medication.domain.MedicationDispense; import com.openhis.medication.service.IMedicationDispenseService; -import com.openhis.web.inhospitalnursestation.appservice.IInpatientMedicineCollectionAppService; -import com.openhis.web.pharmacymanage.appservice.IInpatientMedicineSummaryDispenseAppService; -import com.openhis.web.pharmacymanage.dto.InpatientMedicineInitDto; -import com.openhis.web.pharmacymanage.dto.InpatientMedicineSearchParam; -import com.openhis.web.pharmacymanage.mapper.InpatientMedicineSummaryDispenseMapper; +import com.openhis.web.inhospitalnursestation.appservice.IMedicineSummaryAppService; +import com.openhis.web.pharmacymanage.appservice.ISummaryDispenseMedicineAppService; +import com.openhis.web.pharmacymanage.dto.MedicineSummaryDto; +import com.openhis.web.pharmacymanage.dto.MedicineSummaryInitDto; +import com.openhis.web.pharmacymanage.dto.MedicineSummarySearchParam; import com.openhis.web.pharmacymanage.mapper.ReturnMedicineMapper; +import com.openhis.web.pharmacymanage.mapper.SummaryDispenseMedicineMapper; import com.openhis.workflow.domain.DeviceDispense; import com.openhis.workflow.domain.InventoryItem; import com.openhis.workflow.domain.SupplyDelivery; @@ -54,7 +54,7 @@ import com.openhis.workflow.service.ISupplyRequestService; * @date 2025/6/3 */ @Service -public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatientMedicineSummaryDispenseAppService { +public class SummaryDispenseMedicineAppServiceImpl implements ISummaryDispenseMedicineAppService { @Autowired private IMedicationDispenseService medicationDispenseService; @@ -66,7 +66,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien private IInventoryItemService iInventoryItemService; @Autowired - private InpatientMedicineSummaryDispenseMapper inpatientMedicineDispenseMapper; + private SummaryDispenseMedicineMapper inpatientMedicineDispenseMapper; @Autowired private ReturnMedicineMapper returnMedicineMapper; @@ -85,7 +85,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien private WesternMedicineDispenseAppServiceImpl westernMedicineDispenseAppServiceImpl; @Autowired - private IInpatientMedicineCollectionAppService inpatientMedicineCollectionAppService; + private IMedicineSummaryAppService inpatientMedicineCollectionAppService; /** * 获取页面初始化信息 @@ -95,7 +95,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien @Override public R init() { - InpatientMedicineInitDto initDto = new InpatientMedicineInitDto(); + MedicineSummaryInitDto initDto = new MedicineSummaryInitDto(); // // 获取科室下拉选列表 todo 前台直接调用共通方法 // List organizationList = organizationService.getList(OrganizationType.DEPARTMENT.getValue(), @@ -105,9 +105,9 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien // organization.getName())).collect(Collectors.toList()); // 未发药原因下拉选列表 - List notPerformedReasonOptions = + List notPerformedReasonOptions = Stream.of(NotPerformedReasonEnum.values()) - .map(notPerformedReason -> new InpatientMedicineInitDto.IntegerOptions(notPerformedReason.getValue(), + .map(notPerformedReason -> new MedicineSummaryInitDto.IntegerOptions(notPerformedReason.getValue(), notPerformedReason.getInfo())) .collect(Collectors.toList()); @@ -115,12 +115,12 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien List applicantList = practitionerService.getList(); // 发药状态 - List dispenseStatusOptions = new ArrayList<>(); - dispenseStatusOptions.add(new InpatientMedicineInitDto.IntegerOptions(DispenseStatus.SUMMARIZED.getValue(), + List dispenseStatusOptions = new ArrayList<>(); + dispenseStatusOptions.add(new MedicineSummaryInitDto.IntegerOptions(DispenseStatus.SUMMARIZED.getValue(), DispenseStatus.SUMMARIZED.getInfo())); - dispenseStatusOptions.add(new InpatientMedicineInitDto.IntegerOptions(DispenseStatus.COMPLETED.getValue(), + dispenseStatusOptions.add(new MedicineSummaryInitDto.IntegerOptions(DispenseStatus.COMPLETED.getValue(), DispenseStatus.COMPLETED.getInfo())); - dispenseStatusOptions.add(new InpatientMedicineInitDto.IntegerOptions(DispenseStatus.DECLINED.getValue(), + dispenseStatusOptions.add(new MedicineSummaryInitDto.IntegerOptions(DispenseStatus.DECLINED.getValue(), DispenseStatus.DECLINED.getInfo())); initDto// .setDepartmentOptions(organizationOptions) @@ -139,37 +139,35 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien * @param request 请求数据 */ @Override - public R getMedicationSummaryInfo(InpatientMedicineSearchParam searchParam, String searchKey, Integer pageNo, + public R getMedicationSummaryInfo(MedicineSummarySearchParam searchParam, String searchKey, Integer pageNo, Integer pageSize, HttpServletRequest request) { // 构建查询条件 - QueryWrapper queryWrapper = + QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(searchParam, searchKey, null, request); queryWrapper.orderByDesc(CommonConstants.FieldName.applyTime); // 查询医嘱详细信息 - Page prescriptionItemInfoPageDto = + Page prescriptionItemInfoPageDto = inpatientMedicineDispenseMapper.selectMedicationSummaryInfo(new Page<>(pageNo, pageSize), queryWrapper, CommonConstants.TableName.MED_MEDICATION_DEFINITION, CommonConstants.TableName.ADM_DEVICE_DEFINITION, SupplyType.DISPENSING_ORDER.getValue(), SupplyCategory.INPATIENT_PATIENT_SUMMARY_DISPENSING.getValue()); - List unitList; + List unitList; // 个别项目设定 - for (InpatientMedicineSummaryDto prescriptionInfoDto : prescriptionItemInfoPageDto - .getRecords()) { + for (MedicineSummaryDto prescriptionInfoDto : prescriptionItemInfoPageDto.getRecords()) { // 状态 prescriptionInfoDto.setStatusEnum_enumText( EnumUtils.getInfoByValue(DispenseStatus.class, prescriptionInfoDto.getStatusEnum())); // 追溯码单位列表 unitList = new ArrayList<>(); - unitList.add(new InpatientMedicineSummaryDto.Option(prescriptionInfoDto.getMaxUnitCode(), + unitList.add(new MedicineSummaryDto.Option(prescriptionInfoDto.getMaxUnitCode(), prescriptionInfoDto.getMaxUnitCode_dictText())); - unitList.add(new InpatientMedicineSummaryDto.Option(prescriptionInfoDto.getMinUnitCode(), + unitList.add(new MedicineSummaryDto.Option(prescriptionInfoDto.getMinUnitCode(), prescriptionInfoDto.getMinUnitCode_dictText())); prescriptionInfoDto.setUnitList(unitList); } ; - return R.ok(prescriptionItemInfoPageDto); } @@ -180,10 +178,10 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien * @return 处理结果 */ @Override - public R medicineDispense(List searchParam) { + public R SummaryDispenseMedicine(List searchParam) { // 构建供应发放Id到追溯码的映射 Map traceNoMap = new HashMap<>(); - for (InpatientMedicineSearchParam param : searchParam) { + for (MedicineSummarySearchParam param : searchParam) { if (param != null && param.getDeliveryId() != null) { traceNoMap.put(param.getDeliveryId(), param.getTraceNo()); } @@ -191,7 +189,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien // 供应发放idList List deliveryIdList = - searchParam.stream().map(InpatientMedicineSearchParam::getDeliveryId).collect(Collectors.toList()); + searchParam.stream().map(MedicineSummarySearchParam::getDeliveryId).collect(Collectors.toList()); // 获取供应发放信息列表 List supplyDeliveryInfoList = supplyDeliveryService.selectByIdList(deliveryIdList); // 供应申请idList @@ -214,7 +212,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien idList = Arrays.stream(idArray).map(String::trim) // 去除每个元素前后的空格 .filter(str -> !str.isEmpty()) // 过滤空字符串(如连续逗号导致的空值) .map(Long::parseLong) // 转换为Long类型 - .collect(Collectors.toList()); // 收集为List + .toList(); // 收集为List // 设置发放ID列表,追溯码映射 if (item.getBasedOnTable().equals(CommonConstants.TableName.MED_MEDICATION_DISPENSE)) { // 耗材发放ID列表 @@ -426,7 +424,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien * @return 处理结果 */ @Override - public R medicineCancel(List deliveryIdList, Integer notPerformedReasonEnum) { + public R dispenseCancel(List deliveryIdList, Integer notPerformedReasonEnum) { // 获取供应发放信息列表 List supplyDeliveryInfoList = supplyDeliveryService.selectByIdList(deliveryIdList); List supplyRequestInfoList; @@ -448,7 +446,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien idList = Arrays.stream(idArray).map(String::trim) // 去除每个元素前后的空格 .filter(str -> !str.isEmpty()) // 过滤空字符串(如连续逗号导致的空值) .map(Long::parseLong) // 转换为Long类型 - .collect(Collectors.toList()); // 收集为List + .toList(); // 收集为List // 设置发放ID列表,追溯码映射 if (item.getBasedOnTable().equals(CommonConstants.TableName.MED_MEDICATION_DISPENSE)) { // 耗材发放ID列表 @@ -482,7 +480,7 @@ public class InpatientMedicineSummaryDispenseAppServiceImpl implements IInpatien } // 获取发耗材单id列表 - List devDispenseInfoList = deviceDispenseService.selectByIdList(devDispenseIdList); + List devDispenseInfoList = deviceDispenseService.listByIds(devDispenseIdList); if (devDispenseInfoList != null) { for (DeviceDispense deviceDispense : devDispenseInfoList) { // 耗材发放状态 diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/InpatientMedicineSummaryDispenseController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/SummaryDispenseMedicineController.java similarity index 63% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/InpatientMedicineSummaryDispenseController.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/SummaryDispenseMedicineController.java index 6ad8a280..4be5f20f 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/InpatientMedicineSummaryDispenseController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/SummaryDispenseMedicineController.java @@ -1,19 +1,19 @@ package com.openhis.web.pharmacymanage.controller; +import java.util.List; + import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.web.bind.annotation.*; import com.core.common.core.domain.R; -import com.openhis.web.pharmacymanage.appservice.IInpatientMedicineSummaryDispenseAppService; -import com.openhis.web.pharmacymanage.dto.InpatientMedicineSearchParam; +import com.openhis.web.pharmacymanage.appservice.ISummaryDispenseMedicineAppService; +import com.openhis.web.pharmacymanage.dto.MedicineSummarySearchParam; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; -import java.util.List; - /** * 住院汇总发药 * @@ -21,13 +21,13 @@ import java.util.List; * @date 2025/6/3 */ @RestController -@RequestMapping("/pharmacy-manage/inpatient-medicine-summary-dispense") +@RequestMapping("/pharmacy-manage/summary-dispense-medicine") @Slf4j @AllArgsConstructor -public class InpatientMedicineSummaryDispenseController { +public class SummaryDispenseMedicineController { @Resource - public IInpatientMedicineSummaryDispenseAppService medicineSummaryDispenseService; + public ISummaryDispenseMedicineAppService medicineSummaryDispenseService; /** * 获取页面初始化信息 @@ -48,8 +48,8 @@ public class InpatientMedicineSummaryDispenseController { * @param pageSize 查询条数 * @param request 请求数据 */ - @GetMapping("/medicationSummary-list") - public R getMedicationSummaryInfo(InpatientMedicineSearchParam searchParam, String searchKey, + @GetMapping("/medication_summary-list") + public R getMedicationSummaryInfo(MedicineSummarySearchParam searchParam, String searchKey, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { return medicineSummaryDispenseService.getMedicationSummaryInfo(searchParam, searchKey, pageNo, pageSize, @@ -57,14 +57,14 @@ public class InpatientMedicineSummaryDispenseController { } /** - * 核对发药 + * 汇总发药 * * @param searchParam 条件 * @return 处理结果 */ - @PutMapping("/medicine-dispense") - public R medicineDispense(@RequestBody List searchParam) { - return medicineSummaryDispenseService.medicineDispense(searchParam); + @PutMapping("/summary-dispense-medicine") + public R SummaryDispenseMedicine(@RequestBody List searchParam) { + return medicineSummaryDispenseService.SummaryDispenseMedicine(searchParam); } /** @@ -74,9 +74,9 @@ public class InpatientMedicineSummaryDispenseController { * @param notPerformedReasonEnum 未发原因 * @return 处理结果 */ - @PutMapping("/medicine-cancel") - public R medicineCancel(@RequestBody List deliveryIdList, Integer notPerformedReasonEnum) { - return medicineSummaryDispenseService.medicineCancel(deliveryIdList, notPerformedReasonEnum); + @PutMapping("/dispense-cancel") + public R dispenseCancel(@RequestBody List deliveryIdList, Integer notPerformedReasonEnum) { + return medicineSummaryDispenseService.dispenseCancel(deliveryIdList, notPerformedReasonEnum); } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineSummaryDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummaryDto.java similarity index 96% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineSummaryDto.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummaryDto.java index 9f5c83dd..9ade4172 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineSummaryDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummaryDto.java @@ -21,7 +21,7 @@ import lombok.experimental.Accessors; */ @Data @Accessors(chain = true) -public class InpatientMedicineSummaryDto { +public class MedicineSummaryDto { /** * 单据号 @@ -110,7 +110,7 @@ public class InpatientMedicineSummaryDto { /** * 单位列表 */ - private List unitList; + private List unitList; @Data public static class Option { diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineInitDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummaryInitDto.java similarity index 97% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineInitDto.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummaryInitDto.java index 576b3924..a894e0a5 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineInitDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummaryInitDto.java @@ -20,7 +20,7 @@ import lombok.experimental.Accessors; */ @Data @Accessors(chain = true) -public class InpatientMedicineInitDto { +public class MedicineSummaryInitDto { /** 科室列表 */ private List departmentOptions; diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineSearchParam.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummarySearchParam.java similarity index 86% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineSearchParam.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummarySearchParam.java index 4297dd64..6d5e13ad 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/InpatientMedicineSearchParam.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/MedicineSummarySearchParam.java @@ -4,12 +4,10 @@ package com.openhis.web.pharmacymanage.dto; import java.io.Serializable; -import java.util.List; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.openhis.common.annotation.Dict; import lombok.Data; import lombok.experimental.Accessors; @@ -21,7 +19,7 @@ import lombok.experimental.Accessors; */ @Data @Accessors(chain = true) -public class InpatientMedicineSearchParam implements Serializable { +public class MedicineSummarySearchParam implements Serializable { /** 科室 */ @JsonSerialize(using = ToStringSerializer.class) diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/InpatientMedicineSummaryDispenseMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/SummaryDispenseMedicineMapper.java similarity index 40% rename from openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/InpatientMedicineSummaryDispenseMapper.java rename to openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/SummaryDispenseMedicineMapper.java index 74a622d1..838b4cbc 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/InpatientMedicineSummaryDispenseMapper.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/mapper/SummaryDispenseMedicineMapper.java @@ -3,31 +3,29 @@ */ package com.openhis.web.pharmacymanage.mapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.openhis.web.inhospitalnursestation.dto.InpatientMedicinePrescriptionInfoDto; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.openhis.web.pharmacymanage.dto.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.openhis.web.pharmacymanage.dto.MedicineSummaryDto; +import com.openhis.web.pharmacymanage.dto.MedicineSummarySearchParam; @Repository -public interface InpatientMedicineSummaryDispenseMapper { +public interface SummaryDispenseMedicineMapper { /** - * 医嘱列表查询 + * 汇总药品信息列表查询 * - * @param page 分页 - * @param queryWrapper 查询条件 + * @param page 分页 + * @param queryWrapper 查询条件 * @param medicationDefinition 药品定义 * @param deviceDefinition 耗材定义 - * @return 医嘱信息 + * @return 汇总药品信息 */ - Page selectMedicationSummaryInfo( - @Param("page") Page page, - @Param(Constants.WRAPPER) QueryWrapper queryWrapper, - @Param("medicationDefinition") String medicationDefinition, - @Param("deviceDefinition") String deviceDefinition, @Param("typeEnum") Integer typeEnum,@Param("categoryEnum") Integer categoryEnum - ); + Page selectMedicationSummaryInfo(@Param("page") Page page, + @Param(Constants.WRAPPER) QueryWrapper queryWrapper, + @Param("medicationDefinition") String medicationDefinition, @Param("deviceDefinition") String deviceDefinition, + @Param("typeEnum") Integer typeEnum, @Param("categoryEnum") Integer categoryEnum); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/regdoctorstation/appservice/impl/AdviceManageAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/regdoctorstation/appservice/impl/AdviceManageAppServiceImpl.java index f60180b1..8bc51a18 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/regdoctorstation/appservice/impl/AdviceManageAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/regdoctorstation/appservice/impl/AdviceManageAppServiceImpl.java @@ -260,9 +260,9 @@ public class AdviceManageAppServiceImpl implements IAdviceManageAppService { longMedicationRequest.setEffectiveDoseStart(startTime); // 医嘱开始时间 longMedicationRequest .setBusNo(assignSeqUtil.getSeqByDay(AssignSeqEnum.MEDICATION_RES_NO.getPrefix(), 4)); - longMedicationRequest.setQuantity(regAdviceSaveDto.getDose()); // 请求数量 | 长期医嘱保持和单次剂量一致 + longMedicationRequest.setQuantity(regAdviceSaveDto.getQuantity()); // 请求数量 longMedicationRequest.setExecuteNum(regAdviceSaveDto.getExecuteNum()); // 执行次数 - longMedicationRequest.setUnitCode(regAdviceSaveDto.getDoseUnitCode()); // 请求单位编码 | 长期医嘱保持和单次剂量一致 + longMedicationRequest.setUnitCode(regAdviceSaveDto.getUnitCode()); // 请求单位编码 longMedicationRequest.setLotNumber(regAdviceSaveDto.getLotNumber()); // 产品批号 longMedicationRequest.setCategoryEnum(regAdviceSaveDto.getCategoryEnum()); // 请求类型 longMedicationRequest.setMedicationId(regAdviceSaveDto.getAdviceDefinitionId());// 医嘱定义id @@ -553,7 +553,12 @@ public class AdviceManageAppServiceImpl implements IAdviceManageAppService { List regRequestBaseInfo = adviceManageAppMapper.getRegRequestBaseInfo(encounterId, null, CommonConstants.TableName.MED_MEDICATION_REQUEST, CommonConstants.TableName.WOR_DEVICE_REQUEST, CommonConstants.TableName.WOR_SERVICE_REQUEST, practitionerId, Whether.NO.getCode()); - for (RegRequestBaseDto regRequestBaseDto : regRequestBaseInfo) { + // 根据 requestId 过滤重复医嘱信息 + List distinctList = regRequestBaseInfo.stream() + .collect(Collectors.toMap(RegRequestBaseDto::getRequestId, dto -> dto, (existing, replacement) -> existing // 如果key冲突,保留已存在的(第一条) + )).values().stream().collect(Collectors.toList()); + + for (RegRequestBaseDto regRequestBaseDto : distinctList) { // 请求状态 regRequestBaseDto.setStatusEnum_enumText( EnumUtils.getInfoByValue(RequestStatus.class, regRequestBaseDto.getStatusEnum())); @@ -570,7 +575,7 @@ public class AdviceManageAppServiceImpl implements IAdviceManageAppService { regRequestBaseDto.setTherapyEnum_enumText( EnumUtils.getInfoByValue(TherapyTimeType.class, regRequestBaseDto.getTherapyEnum())); } - return R.ok(regRequestBaseInfo); + return R.ok(distinctList); } /** diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IDepartmentRevenueStatisticsAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IDepartmentRevenueStatisticsAppService.java new file mode 100644 index 00000000..9fe10c9b --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IDepartmentRevenueStatisticsAppService.java @@ -0,0 +1,30 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.appservice; + +import javax.servlet.http.HttpServletRequest; + +import com.core.common.core.domain.R; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementSearchParam; + +/** + * 科室收入统计 controller + * + * @author yuxj + * @date 2025-09-23 + */ +public interface IDepartmentRevenueStatisticsAppService { + + /** + * 药品用量明细列表 + * + * @param pageNo 当前页码 + * @param pageSize 查询条数 + * @param searchKey 模糊查询关键字 + * @param request 请求数据 + * @return + */ + R getPage( Integer pageNo, Integer pageSize, + String searchKey, HttpServletRequest request); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IReportStatisticsAppService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IReportStatisticsAppService.java new file mode 100644 index 00000000..a7ad0924 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/IReportStatisticsAppService.java @@ -0,0 +1,36 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.appservice; + +import javax.servlet.http.HttpServletRequest; + +import com.core.common.core.domain.R; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 报表统计 controller + * + * @author yuxj + * @date 2025-09-23 + */ +public interface IReportStatisticsAppService { + + /** + * 月报明细列表 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + R getDailyReport(String startTime, String endTime); + + /** + * 年报明细列表 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + R getAnnualRreport(String startTime, String endTime); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/DepartmentRevenueStatisticsAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/DepartmentRevenueStatisticsAppServiceImpl.java new file mode 100644 index 00000000..2be6f79c --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/DepartmentRevenueStatisticsAppServiceImpl.java @@ -0,0 +1,60 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.appservice.impl; + +import javax.servlet.http.HttpServletRequest; + +import com.openhis.web.reportmanage.appservice.IDepartmentRevenueStatisticsAppService; +import com.openhis.web.reportmanage.dto.DepartmentRevenueStatisticsPageDto; +import com.openhis.web.reportmanage.mapper.DepartmentRevenueStatisticsMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.core.common.core.domain.R; +import com.openhis.common.enums.DispenseStatus; +import com.openhis.common.enums.RequestStatus; +import com.openhis.common.utils.HisQueryUtils; +import com.openhis.web.reportmanage.appservice.IDrugDosageSettlementAppService; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementPageDto; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementSearchParam; +import com.openhis.web.reportmanage.mapper.DrugDosageSettlementMapper; + +/** + * 科室收入统计 controller + * + * @author yuxj + * @date 2025-09-23 + */ +@Service +public class DepartmentRevenueStatisticsAppServiceImpl implements IDepartmentRevenueStatisticsAppService { + + @Autowired + private DepartmentRevenueStatisticsMapper departmentRevenueStatisticsMapper; + + /** + * 科室收入统计 + * + * @param pageNo 当前页码 + * @param pageSize 查询条数 + * @param searchKey 模糊查询关键字 + * @param request 请求数据 + * @return + */ + @Override + public R getPage(Integer pageNo, Integer pageSize, + String searchKey, HttpServletRequest request) { + + // 构建查询条件 + QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper( + null, searchKey, null, request); + + Page drugDosageReportPage = + departmentRevenueStatisticsMapper.selectPage(new Page<>(pageNo, pageSize), queryWrapper, + DispenseStatus.COMPLETED.getValue(), RequestStatus.COMPLETED.getValue()); + + return R.ok(drugDosageReportPage); + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/ReportStatisticsAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/ReportStatisticsAppServiceImpl.java new file mode 100644 index 00000000..424d72eb --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/appservice/impl/ReportStatisticsAppServiceImpl.java @@ -0,0 +1,156 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.appservice.impl; + +import javax.servlet.http.HttpServletRequest; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.core.common.utils.bean.BeanUtils; +import com.openhis.common.enums.*; +import com.openhis.common.enums.ybenums.YbMedChrgItmType; +import com.openhis.common.utils.HisQueryUtils; +import com.openhis.web.reportmanage.dto.AnnualReportStatisticsPageDto; +import com.openhis.web.reportmanage.dto.DailyReportStatisticsPageDto; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementSearchParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.core.common.core.domain.R; +import com.openhis.web.reportmanage.appservice.IReportStatisticsAppService; +import com.openhis.web.reportmanage.mapper.ReportStatisticsMapper; + +/** + * 科室收入统计 controller + * + * @author yuxj + * @date 2025-09-23 + */ +@Service +public class ReportStatisticsAppServiceImpl implements IReportStatisticsAppService { + + @Autowired + private ReportStatisticsMapper reportStatisticsMapper; + + /** + * 月报明细列表 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + @Override + public R getDailyReport(String startTime, String endTime) { + + DailyReportStatisticsPageDto dailyReport = new DailyReportStatisticsPageDto(); + // -------------------------- 1. 卫生技术人员统计 -------------------------- + // todo 中医执业(助理)医师数 没查询 人员没有添加时间条件,查询的都是当前的状态 + DailyReportStatisticsPageDto.StaffStatDTO staffStat = + reportStatisticsMapper.getStaffStat(PractitionerRoles.DOCTOR.getCode(), PractitionerRoles.NURSE.getCode()); + dailyReport.setStaffStat(staffStat); + // -------------------------- 2. 床位与床日统计 -------------------------- + // TODO 实际开放总床日数、实际占用总床日数、出院者占用总床日数 没查询 床位没有添加时间条件,查询的都是当前的状态 + DailyReportStatisticsPageDto.BedStatDTO bedStat = + reportStatisticsMapper.getBedStat(LocationForm.BED.getValue()); + dailyReport.setBedStat(bedStat); + // -------------------------- 3. 收入统计(单位:千元) -------------------------- + // todo 疫苗收入给0 、结算差额给0 时间筛选用的update_time,不确定对不对 + DailyReportStatisticsPageDto.RevenueStatDTO revenueStat = this.getRevenueStat(startTime,endTime); + dailyReport.setRevenueStat(revenueStat); + // -------------------------- 4. 费用统计(单位:千元) -------------------------- + // todo 费用的查询没写 + // DailyReportStatisticsPageDto.ExpenseStatDTO expenseStat=reportStatisticsMapper + // dailyReport.setExpenseStat(expenseStat); + // -------------------------- 5. 诊疗与服务量统计 -------------------------- + // todo 只查了门诊人次数,系统里应该不存在急诊 + DailyReportStatisticsPageDto.TreatmentStatDTO treatmentStat = + reportStatisticsMapper.getTreatmentStat(EncounterClass.AMB.getValue(), startTime, endTime); + dailyReport.setTreatmentStat(treatmentStat); + // -------------------------- 6. 死亡人数统计 -------------------------- + // todo 死亡人数没写 + // DailyReportStatisticsPageDto.DeathStatDTO deathStat=reportStatisticsMapper + // dailyReport.setDeathStat(deathStat); + // -------------------------- 7. 健康检查统计 -------------------------- + // todo 健康检查统计的查询没写,给0了 + // Integer healthCheckCount=reportStatisticsMapper + dailyReport.setHealthCheckCount(0); + + return R.ok(dailyReport); + } + + /** + * 年报明细列表 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + @Override + public R getAnnualRreport(String startTime, String endTime) { + AnnualReportStatisticsPageDto annualReportStatistics = new AnnualReportStatisticsPageDto(); + // 6.1 总收入相关字段 + // 6.1.2 事业收入 + // 6.1.2.1 医疗收入 + //todo 只写了 总收入相关字段>事业收入>医疗收入 + AnnualReportStatisticsPageDto.MedicalIncomeDTO medicalIncome = + new AnnualReportStatisticsPageDto.MedicalIncomeDTO(); + DailyReportStatisticsPageDto.RevenueStatDTO revenueStat = this.getRevenueStat(startTime,endTime); + BeanUtils.copyProperties(revenueStat, medicalIncome); + annualReportStatistics.getTotalIncome().getUndertakingIncome().setMedicalIncome(medicalIncome); + // 6.2 总费用相关字段 + // todo 费用的查询没写 + // 8 诊疗人次数相关字段 + // todo 人次的查询没写 + + + return R.ok(annualReportStatistics); + } + + /** + * 医疗收入 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + public DailyReportStatisticsPageDto.RevenueStatDTO getRevenueStat(String startTime, String endTime) { + + DailyReportStatisticsPageDto.RevenueStatDTO revenueStat = + reportStatisticsMapper.getRevenueStat(ChargeItemStatus.BILLED.getValue(), EncounterClass.IMP.getValue(), + EncounterClass.AMB.getValue(), YbMedChrgItmType.REGISTRATION_FEE.getValue(), + YbMedChrgItmType.DIAGNOSTIC_FEE.getValue(), YbMedChrgItmType.CHECK_FEE.getValue(), + YbMedChrgItmType.DIAGNOSTIC_TEST_FEE.getValue(), YbMedChrgItmType.MEDICAL_EXPENSE_FEE.getValue(), + YbMedChrgItmType.OPERATION_FEE.getValue(), YbMedChrgItmType.SANITARY_MATERIALS_FEE.getValue(), + YbMedChrgItmType.WEST_MEDICINE.getValue(), YbMedChrgItmType.CHINESE_MEDICINE_FEE.getValue(), + YbMedChrgItmType.CHINESE_MEDICINE_SLICES_FEE.getValue(), YbMedChrgItmType.OTHER_FEE.getValue(), + YbMedChrgItmType.BED_FEE.getValue(), YbMedChrgItmType.NURSING_FEE.getValue(), startTime, endTime); + // ----总收入 = 医疗收入 = 门急诊收入 + 住院收入 + 结算差额 + // ----药品收入合计 = 西药收入 + 中成药收入 + 中药饮片收入 + // 药品收入合计 + revenueStat.setOutpatientTotalDrugRevenue( + revenueStat.getOutpatientTotalWesternDrugRevenue().add(revenueStat.getOutpatientChinesePatentDrugRevenue()) + .add(revenueStat.getOutpatientChineseHerbRevenue())); + // 门急诊收入合计 + revenueStat.setTotalOutpatientRevenue(revenueStat.getOutpatientRegistrationRevenue() + .add(revenueStat.getOutpatientConsultationRevenue()).add(revenueStat.getOutpatientInspectionRevenue()) + .add(revenueStat.getOutpatientLabTestRevenue()).add(revenueStat.getOutpatientTreatmentRevenue()) + .add(revenueStat.getOutpatientSurgeryRevenue()).add(revenueStat.getOutpatientMedicalMaterialRevenue()) + .add(revenueStat.getOutpatientTotalDrugRevenue()).add(revenueStat.getOtherOutpatientRevenue())); + // 药品收入合计 + revenueStat.setInpatientTotalDrugRevenue(revenueStat.getInpatientTotalWesternDrugRevenue() + .add(revenueStat.getInpatientChinesePatentDrugRevenue()).add(revenueStat.getInpatientChineseHerbRevenue())); + // 住院收入合计 + revenueStat.setTotalInpatientRevenue( + revenueStat.getInpatientBedRevenue().add(revenueStat.getInpatientConsultationRevenue()) + .add(revenueStat.getInpatientInspectionRevenue()).add(revenueStat.getInpatientLabTestRevenue()) + .add(revenueStat.getInpatientTreatmentRevenue()).add(revenueStat.getInpatientSurgeryRevenue()) + .add(revenueStat.getInpatientNursingRevenue()).add(revenueStat.getInpatientMedicalMaterialRevenue()) + .add(revenueStat.getInpatientTotalDrugRevenue()).add(revenueStat.getOtherInpatientRevenue())); + // 医疗收入合计 + revenueStat.setTotalMedicalRevenue( + revenueStat.getTotalOutpatientRevenue().add(revenueStat.getTotalInpatientRevenue())); + // 总收入 + revenueStat.setTotalRevenue(revenueStat.getTotalMedicalRevenue()); + return revenueStat; + } + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/DepartmentRevenueStatisticsController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/DepartmentRevenueStatisticsController.java new file mode 100644 index 00000000..556b64d5 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/DepartmentRevenueStatisticsController.java @@ -0,0 +1,51 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.controller; + +import javax.servlet.http.HttpServletRequest; + +import com.openhis.web.reportmanage.appservice.IDepartmentRevenueStatisticsAppService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import com.core.common.core.domain.R; +import com.openhis.web.reportmanage.appservice.IDrugDosageSettlementAppService; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementSearchParam; + +import lombok.extern.slf4j.Slf4j; + +/** + * 科室收入统计 controller + * + * @author yuxj + * @date 2025-09-23 + */ +@RestController +@RequestMapping("/report-manage/department-revenue-statistics") +@Slf4j +public class DepartmentRevenueStatisticsController { + + @Autowired + private IDepartmentRevenueStatisticsAppService departmentRevenueStatisticsAppService; + + /** + * 收入明细明细列表 todo 还没写 + * + * @param pageNo 当前页码 + * @param pageSize 查询条数 + * @param searchKey 模糊查询关键字 + * @param request 请求数据 + * @return + */ + @GetMapping(value = "/page") + public R getPage( + @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "searchKey", required = false) String searchKey, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { + return departmentRevenueStatisticsAppService.getPage(pageNo, pageSize, searchKey, request); + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/MedicationDeviceReportController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/MedicationDeviceReportController.java index 7f25a1f8..5c22f9ea 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/MedicationDeviceReportController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/MedicationDeviceReportController.java @@ -3,6 +3,8 @@ */ package com.openhis.web.reportmanage.controller; +import javax.servlet.http.HttpServletResponse; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -14,9 +16,6 @@ import com.openhis.web.reportmanage.appservice.IMedicationDeviceReportAppService import lombok.extern.slf4j.Slf4j; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - /** * 药品耗材统计查询用 controller * @@ -60,8 +59,8 @@ public class MedicationDeviceReportController { @RequestParam String dispenseDateETime, @RequestParam(name = "name", required = false) String name, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { - return R - .ok(medicationDeviceReportAppService.selectMedDdevInfo(orgId, name, dispenseDateSTime, dispenseDateETime,pageNo,pageSize)); + return R.ok(medicationDeviceReportAppService.selectMedDdevInfo(orgId, name, dispenseDateSTime, + dispenseDateETime, pageNo, pageSize)); } /** @@ -79,11 +78,9 @@ public class MedicationDeviceReportController { public void makeExcelFile(@RequestParam Long orgId, @RequestParam String dispenseDateSTime, @RequestParam String dispenseDateETime, @RequestParam(name = "name", required = false) String name, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, - @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, - HttpServletResponse response) { - medicationDeviceReportAppService.makeExcelFile(orgId, name, dispenseDateSTime, dispenseDateETime,pageNo,pageSize, - response); + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletResponse response) { + medicationDeviceReportAppService.makeExcelFile(orgId, name, dispenseDateSTime, dispenseDateETime, pageNo, + pageSize, response); } - } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/ReportStatisticsController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/ReportStatisticsController.java new file mode 100644 index 00000000..b7094007 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/controller/ReportStatisticsController.java @@ -0,0 +1,56 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.controller; + +import javax.servlet.http.HttpServletRequest; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import com.core.common.core.domain.R; +import com.openhis.web.reportmanage.appservice.IReportStatisticsAppService; + +import lombok.extern.slf4j.Slf4j; + +/** + * 报表统计 controller + * + * @author yuxj + * @date 2025-09-23 + */ +@RestController +@RequestMapping("/report-manage/report-statistics") +@Slf4j +public class ReportStatisticsController { + + @Autowired + private IReportStatisticsAppService reportStatisticsAppService; + + /** + * 月报明细列表 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + @GetMapping(value = "/daily-report") + public R getDailyReport(@RequestParam String startTime, @RequestParam String endTime) { + return reportStatisticsAppService.getDailyReport(startTime,endTime); + } + + /** + * 年报明细列表 + * + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + @GetMapping(value = "/annual-report") + public R getAnnualRreport(@RequestParam String startTime, @RequestParam String endTime) { + return reportStatisticsAppService.getAnnualRreport(startTime,endTime); + } +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/AnnualReportStatisticsPageDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/AnnualReportStatisticsPageDto.java new file mode 100644 index 00000000..87f1ccaf --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/AnnualReportStatisticsPageDto.java @@ -0,0 +1,625 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.dto; + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 报表统计 dto + * + * @author yuxj + * @date 2025-09-23 + */ +@Data +@Accessors(chain = true) +public class AnnualReportStatisticsPageDto { + // 6.1 总收入相关字段 + private TotalIncomeDTO totalIncome; + + // 6.2 总费用相关字段 + private TotalExpenseDTO totalExpense; + + // 8 诊疗人次数相关字段 + private MedicalTreatmentDTO medicalTreatment; + /** + * 6.1 总收入DTO + */ + @Data + @Accessors(chain = true) + public static class TotalIncomeDTO { + private BigDecimal total; // 总收入合计 + + // 6.1.1 财政拨款收入 + private FinancialAppropriationIncomeDTO financialAppropriationIncome; + + // 6.1.2 事业收入 + private UndertakingIncomeDTO undertakingIncome; + + // 6.1.3 上级补助收入 + private BigDecimal superiorSubsidyIncome; + + // 6.1.4 附属单位上缴收入 + private BigDecimal affiliatedUnitTurnoverIncome; + + // 6.1.5 经营收入 + private BigDecimal operatingIncome; + + // 6.1.6 非同级财政拨款收入 + private BigDecimal nonSameLevelFinancialAppropriationIncome; + + // 6.1.7 投资收益 + private BigDecimal investmentIncome; + + // 6.1.8 捐赠收入 + private BigDecimal donationIncome; + + // 6.1.9 利息收入 + private BigDecimal interestIncome; + + // 6.1.10 租金收入 + private BigDecimal rentIncome; + + // 6.1.11 其他收入 + private BigDecimal otherIncome; + + // 6.1.12 总收入中:来源于职工基本医疗保险基金的收入 + private BigDecimal employeeMedicalInsuranceFundIncome; + + // 6.1.13 来源于城乡居民基本医疗保险基金的收入 + private BigDecimal residentMedicalInsuranceFundIncome; + + // 6.1.14 来源于其他医疗保险的收入 + private BigDecimal otherMedicalInsuranceIncome; + } + + /** + * 6.1.1 财政拨款收入DTO + */ + @Data + @Accessors(chain = true) + public static class FinancialAppropriationIncomeDTO { + private BigDecimal total; // 财政拨款收入合计 + + // 6.1.1.1 其中:财政基本拨款收入 + private BigDecimal basicFinancialAppropriationIncome; + + // 6.1.1.2 财政项目拨款收入 + private BigDecimal projectFinancialAppropriationIncome; + } + + /** + * 6.1.2 事业收入DTO + */ + @Data + @Accessors(chain = true) + public static class UndertakingIncomeDTO { + private BigDecimal total; // 事业收入合计 + + // 6.1.2.1 医疗收入 + private MedicalIncomeDTO medicalIncome; + + // 6.1.2.2 科教收入 + private BigDecimal scienceEducationIncome; + + // 6.1.2.3 非同级财政拨款收入 + private BigDecimal nonSameLevelFinancialAppropriationIncome; + + // 6.1.2.9 门诊和住院药品收入中:基本药物收入 + private BigDecimal essentialDrugsIncome; + } + + /** + * 6.1.2.1 医疗收入DTO + */ + @Data + @Accessors(chain = true) + public static class MedicalIncomeDTO { + /** 医疗收入合计 */ + private BigDecimal totalMedicalRevenue; + + // 门急诊收入细分 + /** 门急诊收入合计 */ + private BigDecimal totalOutpatientRevenue; + /** 挂号收入 */ + private BigDecimal outpatientRegistrationRevenue; + /** 诊察收入(门急诊) */ + private BigDecimal outpatientConsultationRevenue; + /** 检查收入(门急诊) */ + private BigDecimal outpatientInspectionRevenue; + /** 化验收入(门急诊) */ + private BigDecimal outpatientLabTestRevenue; + /** 治疗收入(门急诊) */ + private BigDecimal outpatientTreatmentRevenue; + /** 手术收入(门急诊) */ + private BigDecimal outpatientSurgeryRevenue; + /** 卫生材料收入(门急诊) */ + private BigDecimal outpatientMedicalMaterialRevenue; + // 药品收入细分 + /** 药品收入合计 */ + private BigDecimal outpatientTotalDrugRevenue; + /** 西药收入合计 */ + private BigDecimal outpatientTotalWesternDrugRevenue; + /** 疫苗收入(西药下) */ + private BigDecimal outpatientVaccineRevenue; + /** 中成药收入 */ + private BigDecimal outpatientChinesePatentDrugRevenue; + /** 中药饮片收入 */ + private BigDecimal outpatientChineseHerbRevenue; + /** 其他门诊收入 */ + private BigDecimal otherOutpatientRevenue; + // 住院收入细分 + /** 住院收入合计 */ + private BigDecimal totalInpatientRevenue; + /** 床位收入(住院) */ + private BigDecimal inpatientBedRevenue; + /** 诊察收入(住院) */ + private BigDecimal inpatientConsultationRevenue; + /** 检查收入(住院) */ + private BigDecimal inpatientInspectionRevenue; + /** 化验收入(住院) */ + private BigDecimal inpatientLabTestRevenue; + /** 治疗收入(住院) */ + private BigDecimal inpatientTreatmentRevenue; + /** 手术收入(住院) */ + private BigDecimal inpatientSurgeryRevenue; + /** 护理收入(住院) */ + private BigDecimal inpatientNursingRevenue; + /** 卫生材料收入(住院) */ + private BigDecimal inpatientMedicalMaterialRevenue; + // 药品收入细分(门急诊+住院共用统计维度,无单独区分则合并) + /** 药品收入合计 */ + private BigDecimal inpatientTotalDrugRevenue; + /** 西药收入合计 */ + private BigDecimal inpatientTotalWesternDrugRevenue; + /** 疫苗收入(西药下) */ + private BigDecimal inpatientVaccineRevenue; + /** 中成药收入 */ + private BigDecimal inpatientChinesePatentDrugRevenue; + /** 中药饮片收入 */ + private BigDecimal inpatientChineseHerbRevenue; + /** 其他住院收入 */ + private BigDecimal otherInpatientRevenue; + /** 结算差额 */ + private BigDecimal settlementDifference; + } + + /** + * 6.2 总费用DTO + */ + @Data + @Accessors(chain = true) + public static class TotalExpenseDTO { + private BigDecimal total; // 总费用合计 + + // 6.2.1 业务活动费用 + private BusinessActivityExpenseDTO businessActivityExpense; + + // 6.2.2 单位管理费用 + private UnitManagementExpenseDTO unitManagementExpense; + + // 6.2.3 经营费用 + private BigDecimal operatingExpense; + + // 6.2.4 资产处置费用 + private BigDecimal assetDisposalExpense; + + // 6.2.5 上缴上级费用 + private BigDecimal paymentToSuperiorExpense; + + // 6.2.6 对附属单位补助费用 + private BigDecimal subsidyToAffiliatedUnitsExpense; + + // 6.2.7 所得税费用 + private BigDecimal incomeTaxExpense; + + // 6.2.8 其他费用 + private BigDecimal otherExpense; + } + + /** + * 6.2.1 业务活动费用DTO + */ + @Data + @Accessors(chain = true) + public static class BusinessActivityExpenseDTO { + private BigDecimal total; // 业务活动费用合计 + + // 6.2.1.1 财政基本拨款经费 + private BigDecimal basicFinancialAppropriationFund; + + // 6.2.1.2 财政项目拨款经费 + private BigDecimal projectFinancialAppropriationFund; + + // 6.2.1.3 科教经费 + private BigDecimal scienceEducationFund; + + // 6.2.1.4 其他经费 + private BigDecimal otherFund; + + // 6.2.1.5 业务活动费用中:人员经费 + private PersonnelExpenseDTO personnelExpense; + + // 6.2.1.6 固定资产折旧费 + private BigDecimal fixedAssetDepreciation; + + // 6.2.1.7 卫生材料费 + private BigDecimal healthMaterialsExpense; + + // 6.2.1.8 药品费 + // 药品费合计 + private BigDecimal totalDrugExpense; + + // 其中:基本药物费用 + private BigDecimal essentialDrugsExpense; + } + + /** + * 人员经费DTO(包含业务活动和单位管理) + */ + @Data + @Accessors(chain = true) + public static class PersonnelExpenseDTO { + private BigDecimal total; // 人员经费合计 + + // 工资福利费用 + // 工资福利费用合计 + private BigDecimal totalSalaryWelfareExpense; + + // 其中:卫生技术人员人均工资性收入 + private HealthTechnicalPersonnelSalaryDTO healthTechnicalPersonnelSalary; + + // 对个人和家庭的补助费用 + private BigDecimal subsidyToIndividualsAndFamilies; + + } + + /** + * 卫生技术人员工资DTO + */ + @Data + @Accessors(chain = true) + public static class HealthTechnicalPersonnelSalaryDTO { + private BigDecimal average; // 平均工资 + + // 其中:执业(助理)医师 + private PracticingPhysicianSalaryDTO practicingPhysicianSalary; + + // 注册护士 + private RegisteredNurseSalaryDTO registeredNurseSalary; + + // 药师(士) + private BigDecimal pharmacistSalary; + + // 技师(士) + private BigDecimal technicianSalary; + + } + + /** + * 执业(助理)医师工资DTO + */ + @Data + @Accessors(chain = true) + public static class PracticingPhysicianSalaryDTO { + private BigDecimal total; // 合计 + + // 其中:主任医师 + private BigDecimal chiefPhysician; + + // 副主任医师 + private BigDecimal associateChiefPhysician; + + // 主治医师 + private BigDecimal attendingPhysician; + + // 医师(士) + private BigDecimal physician; + + } + + /** + * 注册护士工资DTO + */ + @Data + @Accessors(chain = true) + public static class RegisteredNurseSalaryDTO { + private BigDecimal total; // 合计 + + // 其中:主任护师 + private BigDecimal chiefNurse; + + // 副主任护师 + private BigDecimal associateChiefNurse; + + // 主管护师 + private BigDecimal chargeNurse; + + // 护师(士) + private BigDecimal nurse; + } + + /** + * 6.2.2 单位管理费用DTO + */ + @Data + @Accessors(chain = true) + public static class UnitManagementExpenseDTO { + private BigDecimal total; // 单位管理费用合计 + + // 6.2.2.1 财政基本拨款经费 + private BigDecimal basicFinancialAppropriationFund; + + // 6.2.2.2 财政项目拨款经费 + private BigDecimal projectFinancialAppropriationFund; + + // 6.2.2.3 科教经费 + private BigDecimal scienceEducationFund; + + // 6.2.2.4 其他经费 + private BigDecimal otherFund; + + // 6.2.2.5 单位管理费用中:人员经费 + private PersonnelExpenseDTO personnelExpense; + + // 6.2.2.6 固定资产折旧费 + private BigDecimal fixedAssetDepreciation; + + // 6.2.2.7 卫生材料费 + private BigDecimal healthMaterialsExpense; + + // 6.2.2.8 药品费 + // 药品费合计 + private BigDecimal totalDrugExpense; + + // 其中:基本药物费用 + private BigDecimal essentialDrugsExpense; + } + + /** + * 8 诊疗人次数相关DTO + */ + @Data + @Accessors(chain = true) + public static class MedicalTreatmentDTO { + // 8.1 总诊疗人次数 + private TotalDiagnosisTreatmentsDTO totalDiagnosisTreatments; + + // 8.2 X线电子计算机断层扫描装置检查人次数 + private Long ctScanCount; + + // 8.3 医用磁共振成像设备(核磁)检查人次数 + private Long mriScanCount; + + // 8.4 X线正电子发射断层扫描仪(PET/CT)检查人次数 + private Long petCtScanCount; + + // 8.5 心理咨询人次数 + // 心理咨询人次数合计 + private Long totalPsychologicalConsultation; + + // 8.5.1 其中:门诊人次数 + private Long outpatientPsychologicalConsultationCount; + + // 8.6 体重管理咨询人次数 + // 体重管理咨询人次数合计 + private Long totalWeightManagementConsultation; + + // 8.6.1 其中:门诊人次数 + private Long outpatientWeightManagementConsultationCount; + + // 8.7 多学科会诊(MDT)人次数 + private Long mdtConsultationCount; + + // 8.8 互联网诊疗服务人次数 + private Long internetDiagnosisCount; + + // 8.9 远程医疗服务人次数 + private Long telemedicineServiceCount; + + // 8.10 观察室留观病例数 + // 观察室留观病例数合计 + private Long totalObservationCase; + + // 8.10.1 其中: 死亡人数 + private Long deathCount; + + // 8.11 健康检查人次数 + private Long healthExaminationCount; + + // 8.12 入院人次数 + private Long admissionCount; + + // 8.13 出院人次数 + private DischargeCountDTO dischargeCount; + + // 8.14 住院病人手术人次数 + private InpatientSurgeryCountDTO inpatientSurgeryCount; + + // 8.15 门诊处方总数 + private OutpatientPrescriptionDTO outpatientPrescription; + + // 8.16 医疗纠纷例数 + private Long medicalDisputeCount; + + // 8.17 参与家庭医生签约服务的执业(助理)医师数 + private Long familyDoctorCount; + + // 8.18 家庭医生团队签约人数 + private Long familyDoctorContractCount; + + // 8.19 家庭医生团队服务人次数 + private Long familyDoctorServiceCount; + + // 8.20 当年门诊诊疗过程中开具健康教育处方人次数 + private Long healthEducationPrescriptionCount; + + // 8.21 当年开展住院患者健康教育干预人次数 + private Long inpatientHealthEducationCount; + + // 8.22 举办健康教育讲座次数 + private Long healthLectureCount; + + // 8.23 健康教育讲座参加人数 + private Long healthLectureParticipantCount; + + // 8.24 举办健康教育咨询活动次数 + private Long healthConsultationActivityCount; + + // 8.25 健康教育咨询活动参加人数 + private Long healthConsultationParticipantCount; + + // 8.26 年内举办各类健康主题宣传活动次数 + private Long healthPromotionActivityCount; + } + + /** + * 8.1 总诊疗人次数DTO + */ + @Data + @Accessors(chain = true) + public static class TotalDiagnosisTreatmentsDTO { + private Long total; // 总诊疗人次数合计 + + // 8.1.1 其中:门诊人次数 + private OutpatientVisitDTO outpatientVisit; + + // 8.1.2 急诊人次数 + private EmergencyVisitDTO emergencyVisit; + + // 8.1.3 家庭医疗服务人次数 + private Long homeMedicalServiceCount; + + // 8.1.4 其中:预约诊疗人次数 + private Long appointmentDiagnosisCount; + + // 8.1.5 港澳台居民诊疗人次数 + private Long hongKongTaiwanMacaoPatientCount; + + // 8.1.6 外籍患者诊疗人次数 + private Long foreignPatientCount; + } + + /** + * 8.1.1 门诊人次数DTO + */ + @Data + @Accessors(chain = true) + public static class OutpatientVisitDTO { + private Long totalL; // 门诊人次数合计 + + // 8.1.1.1 其中:普通门诊人次数 + private Long generalOutpatientCountL; + + // 8.1.1.2 专家门诊人次数 + // 专家门诊人次数合计 + private Long totalExpertOutpatientL; + + // 8.1.1.2.1 其中:知名专家门诊人次数 + private Long renownedExpertOutpatientCountL; + + // 8.1.1.3 其中:外请专家门诊人次数 + private Long externalExpertOutpatientCountL; + + // 8.1.1.4 其中:应用中药饮片人次数 + private Long chineseHerbalMedicineUsageCountL; + + // 8.1.1.5 使用中医非药物疗法总人次数 + private Long tcmNonDrugTherapyCountL; + + // 8.1.1.6 应用中成药人次数 + private Long chinesePatentMedicineUsageCountL; + + // 8.1.1.7 药学门诊人次数 + private Long pharmacyClinicCountL; + } + + /** + * 8.1.2 急诊人次数DTO + */ + @Data + @Accessors(chain = true) + public static class EmergencyVisitDTO { + private Long total; // 急诊人次数合计 + + // 8.1.2.1 其中:急危患者(Ⅰ级)人次数 + private Long emergencyLevel1Count; + + // 8.1.2.2 急重患者(Ⅱ级)人次数 + private Long emergencyLevel2Count; + + // 8.1.2.3 急症患者(Ⅲ级)人次数 + private Long emergencyLevel3Count; + + // 8.1.2.4 亚急症或非亚急症患者(Ⅳ级)人次数 + private Long emergencyLevel4Count; + + // 8.1.2.5 其中:急诊人次中死亡人数 + private Long emergencyDeathCount; + } + + /** + * 8.13 出院人次数DTO + */ + @Data + @Accessors(chain = true) + public static class DischargeCountDTO { + private Long total; // 出院人次数合计 + + // 8.13.1 其中:转往基层医疗卫生机构人次数 + private Long transferredToPrimaryCareCount; + + // 8.13.2 日间手术人次数 + private Long daySurgeryCount; + + // 8.13.3 住院分娩人次数 + private Long inpatientDeliveryCount; + + // 8.13.4 死亡人数 + private Long deathCount; + } + + /** + * 8.14 住院病人手术人次数DTO + */ + @Data + @Accessors(chain = true) + public static class InpatientSurgeryCountDTO { + private Long total; // 住院病人手术人次数合计 + + // 8.14.1 其中:手术室手术人次数 + private Long operatingRoomSurgeryCount; + + // 8.14.2 介入室手术人次数 + private Long interventionalSurgeryCount; + + // 8.14.3 内镜室手术人次数 + private Long endoscopySurgeryCount; + } + + /** + * 8.15 门诊处方总数DTO + */ + @Data + @Accessors(chain = true) + public static class OutpatientPrescriptionDTO { + private Long total; // 门诊处方总数合计 + + // 8.15.1 其中:使用抗菌药物的处方数 + private Long antibioticPrescriptionCount; + + // 8.15.2 中医处方数 + // 中医处方数合计 + private Long totalTcmPrescription; + + // 8.15.2.1 中药饮片处方数 + private Long chineseHerbalPrescriptionCount; + + // 8.15.2.2 中成药处方数 + private Long chinesePatentMedicinePrescriptionCount; + } + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DailyReportStatisticsPageDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DailyReportStatisticsPageDto.java new file mode 100644 index 00000000..5f70e7fe --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DailyReportStatisticsPageDto.java @@ -0,0 +1,216 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.dto; + +import java.math.BigDecimal; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 报表统计 dto + * + * @author yuxj + * @date 2025-09-23 + */ +@Data +@Accessors(chain = true) +public class DailyReportStatisticsPageDto { + // -------------------------- 1. 卫生技术人员统计 -------------------------- + private StaffStatDTO staffStat; + + // -------------------------- 2. 床位与床日统计 -------------------------- + private BedStatDTO bedStat; + + // -------------------------- 3. 收入统计(单位:千元) -------------------------- + private RevenueStatDTO revenueStat; + + // -------------------------- 4. 费用统计(单位:千元) -------------------------- + private ExpenseStatDTO expenseStat; + + // -------------------------- 5. 诊疗与服务量统计 -------------------------- + private TreatmentStatDTO treatmentStat; + + // -------------------------- 6. 死亡人数统计 -------------------------- + private DeathStatDTO deathStat; + + // -------------------------- 7. 健康检查统计 -------------------------- + /** 健康检查人次数 */ + private Integer healthCheckCount; + + // ======================== 1. 卫生技术人员统计(单位:人) ======================== + @Data + @Accessors(chain = true) + public static class StaffStatDTO { + /** + * 卫生技术人员总数 + */ + private Integer totalMedicalStaff; + /** + * 执业(助理)医师总数 + */ + private Integer totalPracticingDoctor; + /** + * 中医执业(助理)医师数 + */ + private Integer tcmPracticingDoctor; + /** + * 注册护士数 + */ + private Integer registeredNurse; + } + + // ======================== 2. 床位与床日统计 ======================== + @Data + @Accessors(chain = true) + public static class BedStatDTO { + /** 实有床位(单位:张) */ + private Integer actualBedCount; + /** 实际开放总床日数 */ + private Integer totalOpenBedDays; + /** 实际占用总床日数 */ + private Integer totalOccupiedBedDays; + /** 出院者占用总床日数 */ + private Integer dischargedBedDays; + } + + // ======================== 3. 收入统计(单位:千元) ======================== + @Data + @Accessors(chain = true) + public static class RevenueStatDTO { + /** 总收入 */ + private BigDecimal totalRevenue; + /** 医疗收入合计 */ + private BigDecimal totalMedicalRevenue; + // 门急诊收入细分 + /** 门急诊收入合计 */ + private BigDecimal totalOutpatientRevenue; + /** 挂号收入 */ + private BigDecimal outpatientRegistrationRevenue; + /** 诊察收入(门急诊) */ + private BigDecimal outpatientConsultationRevenue; + /** 检查收入(门急诊) */ + private BigDecimal outpatientInspectionRevenue; + /** 化验收入(门急诊) */ + private BigDecimal outpatientLabTestRevenue; + /** 治疗收入(门急诊) */ + private BigDecimal outpatientTreatmentRevenue; + /** 手术收入(门急诊) */ + private BigDecimal outpatientSurgeryRevenue; + /** 卫生材料收入(门急诊) */ + private BigDecimal outpatientMedicalMaterialRevenue; + // 药品收入细分 + /** 药品收入合计 */ + private BigDecimal outpatientTotalDrugRevenue; + /** 西药收入合计 */ + private BigDecimal outpatientTotalWesternDrugRevenue; + /** 疫苗收入(西药下) */ + private BigDecimal outpatientVaccineRevenue; + /** 中成药收入 */ + private BigDecimal outpatientChinesePatentDrugRevenue; + /** 中药饮片收入 */ + private BigDecimal outpatientChineseHerbRevenue; + /** 其他门诊收入 */ + private BigDecimal otherOutpatientRevenue; + // 住院收入细分 + /** 住院收入合计 */ + private BigDecimal totalInpatientRevenue; + /** 床位收入(住院) */ + private BigDecimal inpatientBedRevenue; + /** 诊察收入(住院) */ + private BigDecimal inpatientConsultationRevenue; + /** 检查收入(住院) */ + private BigDecimal inpatientInspectionRevenue; + /** 化验收入(住院) */ + private BigDecimal inpatientLabTestRevenue; + /** 治疗收入(住院) */ + private BigDecimal inpatientTreatmentRevenue; + /** 手术收入(住院) */ + private BigDecimal inpatientSurgeryRevenue; + /** 护理收入(住院) */ + private BigDecimal inpatientNursingRevenue; + /** 卫生材料收入(住院) */ + private BigDecimal inpatientMedicalMaterialRevenue; + // 药品收入细分(门急诊+住院共用统计维度,无单独区分则合并) + /** 药品收入合计 */ + private BigDecimal inpatientTotalDrugRevenue; + /** 西药收入合计 */ + private BigDecimal inpatientTotalWesternDrugRevenue; + /** 疫苗收入(西药下) */ + private BigDecimal inpatientVaccineRevenue; + /** 中成药收入 */ + private BigDecimal inpatientChinesePatentDrugRevenue; + /** 中药饮片收入 */ + private BigDecimal inpatientChineseHerbRevenue; + /** 其他住院收入 */ + private BigDecimal otherInpatientRevenue; + /** 结算差额 */ + private BigDecimal settlementDifference; + } + + // ======================== 4. 费用统计(单位:千元) ======================== + @Data + @Accessors(chain = true) + public static class ExpenseStatDTO { + /** 总费用 */ + private BigDecimal totalExpense; + /** 业务活动费用合计 */ + private BigDecimal totalBusinessActivityExpense; + /** 药品费合计(业务活动费用下) */ + private BigDecimal totalDrugExpense; + /** 中药饮片费用(药品费下) */ + private BigDecimal chineseHerbExpense; + /** 卫生材料费(业务活动费用下) */ + private BigDecimal medicalMaterialExpense; + /** 单位管理费用 */ + private BigDecimal unitManagementExpense; + /** 其他费用 */ + private BigDecimal otherExpense; + /** 公共卫生支出 */ + private BigDecimal publicHealthExpense; + } + + // ======================== 5. 诊疗与服务量统计 ======================== + @Data + @Accessors(chain = true) + public static class TreatmentStatDTO { + /** 总诊疗人次数 */ + private Integer totalTreatmentCount; + /** 门诊和急诊人次数合计 */ + private Integer totalOutpatientEmergencyCount; + /** 预约门诊人次数 */ + private Integer reservedOutpatientCount; + /** 网上预约门诊人次数 */ + private Integer onlineReservedOutpatientCount; + /** 普通门诊人次数 */ + private Integer generalOutpatientCount; + /** 中医诊疗人次数 */ + private Integer tcmTreatmentCount; + /** 急诊人次数 */ + private Integer emergencyCount; + /** 发热门诊人次数 */ + private Integer feverClinicCount; + /** 互联网诊疗服务人次数 */ + private Integer internetTreatmentCount; + /** 远程医疗服务人次数 */ + private Integer telemedicineCount; + /** 出院人次数 */ + private Integer dischargedCount; + } + + // ======================== 6. 死亡人数统计 ======================== + @Data + @Accessors(chain = true) + public static class DeathStatDTO { + /** 总死亡人数 */ + private Integer totalDeathCount; + /** 急诊死亡人数 */ + private Integer emergencyDeathCount; + /** 住院死亡人数 */ + private Integer inpatientDeathCount; + /** 观察室死亡人数 */ + private Integer observationRoomDeathCount; + } + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DepartmentRevenueStatisticsPageDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DepartmentRevenueStatisticsPageDto.java new file mode 100644 index 00000000..0a61f1a4 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/dto/DepartmentRevenueStatisticsPageDto.java @@ -0,0 +1,46 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 科室收入统计 dto + * + * @author yuxj + * @date 2025-09-23 + */ +@Data +@Accessors(chain = true) +public class DepartmentRevenueStatisticsPageDto { + + /** 发药日期 */ + private Date dispenseTime; + /** 药品项目 */ + private String medicationName; + + /** 项目编码 */ + private String busNo; + + /** 规格 */ + private String totalVolume; + + /** 发药单位 */ + @Dict(dictCode = "unit_code") + private String unitCode; + private String unitCode_dictText; + + /** 发药数量 */ + private Integer dispenseQuantity; + + /** 发药金额 */ + private BigDecimal dispensePrice; + +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/DepartmentRevenueStatisticsMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/DepartmentRevenueStatisticsMapper.java new file mode 100644 index 00000000..4c203f78 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/DepartmentRevenueStatisticsMapper.java @@ -0,0 +1,38 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.mapper; + +import com.openhis.web.reportmanage.dto.DepartmentRevenueStatisticsPageDto; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementPageDto; +import com.openhis.web.reportmanage.dto.DrugDosageSettlementSearchParam; + +/** + * 科室收入统计 mapper + * + * @author yuxj + * @date 2025-09-23 + */ +@Repository +public interface DepartmentRevenueStatisticsMapper { + + /** + * 查询药品用量明细 + * + * @param page 分页 + * @param queryWrapper 查询条件 + * @param disCompleted 发药状态:已发放 + * @param reqCompleted 请求状态:已完成 + * @param antibioticFlg 抗生素flg + * @return 药品用量明细 + */ + Page selectPage(@Param("page") Page page, + @Param(Constants.WRAPPER) QueryWrapper queryWrapper, + @Param("disCompleted") Integer disCompleted, @Param("reqCompleted") Integer reqCompleted); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/ReportStatisticsMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/ReportStatisticsMapper.java new file mode 100644 index 00000000..a414aa3f --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/reportmanage/mapper/ReportStatisticsMapper.java @@ -0,0 +1,78 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.reportmanage.mapper; + +import com.openhis.web.reportmanage.dto.DailyReportStatisticsPageDto; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +/** + * 报表统计 mapper + * + * @author yuxj + * @date 2025-09-23 + */ +@Repository +public interface ReportStatisticsMapper { + + /** + * 卫生技术人员统计 + * + * @param doctor 医生 + * @param nurse 护士 + * @return + */ + DailyReportStatisticsPageDto.StaffStatDTO getStaffStat(@Param("doctor") String doctor, + @Param("nurse") String nurse); + + /** + * 床位与床日统计 + * + * @param bed 病床 + * @return + */ + DailyReportStatisticsPageDto.BedStatDTO getBedStat(@Param("bed") Integer bed); + + /** + * 收入统计 + * + * @param billed 已收费 + * @param imp 住院 + * @param amb 门诊 + * @param registrationFee 挂号费 + * @param diagnosticFee 诊察费 + * @param checkFee 检查费 + * @param diagnosticTestFee 化验费 + * @param medicalExpenseFee 治疗费 + * @param operationFee 手术费 + * @param sanitaryMaterialsFee 卫生材料费 + * @param westMedicine 西药费 + * @param chineseMedicineFee 中成药费 + * @param chineseMedicineSlicesFee 中药饮片费 + * @param otherFee 其他门诊 费 + * @param bedFee 床位费 + * @param nursingFee 护理费 + * @param startTime 开始日期 + * @param endTime 结束日期 + * @return + */ + DailyReportStatisticsPageDto.RevenueStatDTO getRevenueStat(@Param("billed") Integer billed, + @Param("imp") Integer imp, @Param("amb") Integer amb, @Param("registrationFee") String registrationFee, + @Param("diagnosticFee") String diagnosticFee, @Param("checkFee") String checkFee, + @Param("diagnosticTestFee") String diagnosticTestFee, @Param("medicalExpenseFee") String medicalExpenseFee, + @Param("operationFee") String operationFee, @Param("sanitaryMaterialsFee") String sanitaryMaterialsFee, + @Param("westMedicine") String westMedicine, @Param("chineseMedicineFee") String chineseMedicineFee, + @Param("chineseMedicineSlicesFee") String chineseMedicineSlicesFee, @Param("otherFee") String otherFee, + @Param("bedFee") String bedFee, @Param("nursingFee") String nursingFee, @Param("startTime") String startTime, + @Param("endTime") String endTime); + + /** + * 诊疗与服务量统计 + * + * @param amb 门诊 + * @return + */ + DailyReportStatisticsPageDto.TreatmentStatDTO getTreatmentStat(@Param("amb") Integer amb, + @Param("startTime") String startTime, @Param("endTime") String endTime); +} diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/controller/YbElepController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/controller/YbElepController.java index 57dcec66..384a5c7d 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/controller/YbElepController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/controller/YbElepController.java @@ -3,18 +3,21 @@ */ package com.openhis.web.ybmanage.controller; +import java.rmi.ServerException; +import java.util.Date; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.web.bind.annotation.*; + import com.core.common.core.domain.R; import com.openhis.web.ybmanage.dto.VeriPrescriptionParam; import com.openhis.web.ybmanage.service.IYbEleBaseService; import com.openhis.web.ybmanage.service.IYbEleHttpService; import com.openhis.ybelep.domain.*; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.format.annotation.DateTimeFormat; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; -import java.util.Date; -import java.util.Map; /** * 医保电子处方业务接口 @@ -36,17 +39,17 @@ public class YbElepController { * 医保电子处方查询 * * @param veriPrescriptionParam 查询条件 - * @param searchKey 模糊查询关键字 - * @param pageNo 当前页 - * @param pageSize 每页多少条 - * @param request 请求数据 + * @param searchKey 模糊查询关键字 + * @param pageNo 当前页 + * @param pageSize 每页多少条 + * @param request 请求数据 * @return 处方信息 */ @GetMapping(value = "/get-PrescriptionInfo") public R getVeriPrescriptionInfo(VeriPrescriptionParam veriPrescriptionParam, - @RequestParam(value = "searchKey", defaultValue = "") String searchKey, - @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, - @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { + @RequestParam(value = "searchKey", defaultValue = "") String searchKey, + @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { return ybEleBaseService.getVeriPrescriptionInfo(veriPrescriptionParam, searchKey, pageNo, pageSize, request); } @@ -87,7 +90,7 @@ public class YbElepController { * 医保电子处方状态更新(撤销) * * @param prescriptionNo 处方号 - * @param quashReason 撤销原因 + * @param quashReason 撤销原因 * @return 处方信息 */ @PutMapping(value = "/quashPrescriptionStatus") @@ -99,28 +102,30 @@ public class YbElepController { * 电子处方上传预核验 * * @param prescriptionNo 处方信息 - * @param authNo 电子凭证线上身份核验流水号 - * @param ecToken 电子凭证令牌 - * @param tenantId 租户Id + * @param authNo 电子凭证线上身份核验流水号 + * @param ecToken 电子凭证令牌 + * @param tenantId 租户Id * @return */ @GetMapping("/pre-verification") - public R preVerification(String prescriptionNo, String ecToken, String authNo, Integer tenantId) { + public R preVerification(String prescriptionNo, String ecToken, String authNo, Integer tenantId) throws ServerException { + PreCheckPrescription pcp = ybEleBaseService.makePreCheckPrescription(prescriptionNo, tenantId); - //查类型和审核医生名称 - Map map = ybEleBaseService.getMedTypeAndDoctorName(prescriptionNo, tenantId); - R result = ybEleHttpService.preCheck(pcp,map.get("medType"),map.get("doctorName")); + // 查类型和审核医生名称 + Map map = ybEleBaseService.getMedTypeAndDoctorName(prescriptionNo, tenantId); + + R result = ybEleHttpService.preCheck(pcp, map.get("medType"), map.get("doctorName")); // 入参和出参 保存 if (pcp != null) { pcp.getMdtrtinfo().setPrescriptionNo(prescriptionNo); ybEleBaseService.savePreCheckPrescription(pcp); } - //成功时保存出参 + // 成功时保存出参 if (result.getCode() == 200) { ElepVeriPrescriptionOutput pcpResult = null; if (ElepVeriPrescriptionOutput.class.isAssignableFrom(result.getData().getClass())) { - pcpResult = (ElepVeriPrescriptionOutput) result.getData(); + pcpResult = (ElepVeriPrescriptionOutput)result.getData(); pcpResult.setPrescriptionNo(prescriptionNo); ybEleBaseService.saveEleVeriPrescriptionOutput(pcpResult); return R.ok(pcpResult); @@ -132,30 +137,30 @@ public class YbElepController { /** * 电子处方医保电子签名 * - * @param hiRxno 医保处方编号 + * @param hiRxno 医保处方编号 * @param practitionerId 审方药师Id - * @param checkDate 审方时间 - * @param tenantId 租户Id + * @param checkDate 审方时间 + * @param tenantId 租户Id * @return */ @GetMapping("/pre-signature") public R eleSignature(String hiRxno, Long practitionerId, - @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date checkDate, Integer tenantId) { + @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date checkDate, Integer tenantId) { ElepSignatureInput eleSignature = - ybEleBaseService.makeEleSignature(hiRxno, practitionerId, checkDate, tenantId); - R result = ybEleHttpService.eleSign(eleSignature); + ybEleBaseService.makeEleSignature(hiRxno, practitionerId, checkDate, tenantId); + R result = ybEleHttpService.eleSign(eleSignature); // 入参和出参都保存 if (eleSignature != null) { eleSignature.setHiRxno(hiRxno); ybEleBaseService.saveEleSignature(eleSignature); } - //成功时保存出参 + // 成功时保存出参 if (result.getCode() == 200) { ElepSignatureOutput esResult = null; if (ElepSignatureOutput.class.isAssignableFrom(result.getData().getClass())) { - esResult = (ElepSignatureOutput) result.getData(); + esResult = (ElepSignatureOutput)result.getData(); esResult.setHiRxno(hiRxno); ybEleBaseService.saveEleSignatureOutput(esResult); return R.ok(esResult); @@ -167,28 +172,28 @@ public class YbElepController { /** * 电子处方上传 * - * @param hiRxno 医保处方编号 + * @param hiRxno 医保处方编号 * @param practitionerId 审方药师Id - * @param checkDate 审方时间 - * @param tenantId 租户Id + * @param checkDate 审方时间 + * @param tenantId 租户Id * @return */ @GetMapping("/pre-upload") public R uploadElePrescription(String hiRxno, Long practitionerId, - @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date checkDate, Integer tenantId) { - ElepUploadInput eleUploadInput = - ybEleBaseService.makeEleUploadInput(hiRxno, practitionerId, checkDate, tenantId); - R result = ybEleHttpService.uploadElePre(eleUploadInput); + @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date checkDate, Integer tenantId) { + ElepUploadInput eleUploadInput = + ybEleBaseService.makeEleUploadInput(hiRxno, practitionerId, checkDate, tenantId); + R result = ybEleHttpService.uploadElePre(eleUploadInput); // 入参和出参都保存 if (eleUploadInput != null) { ybEleBaseService.saveEleUploadInput(eleUploadInput); } - //成功时保存出参 + // 成功时保存出参 if (result.getCode() == 200) { ElepUploadOutput euResult = null; if (ElepUploadOutput.class.isAssignableFrom(result.getData().getClass())) { - euResult = (ElepUploadOutput) result.getData(); + euResult = (ElepUploadOutput)result.getData(); ybEleBaseService.saveEleUploadOutput(euResult); return R.ok(euResult); } @@ -199,28 +204,28 @@ public class YbElepController { /** * 电子处方撤销 * - * @param hiRxno 医保处方编号 + * @param hiRxno 医保处方编号 * @param practitionerId 撤销医师Id - * @param description 撤销原因 - * @param revokeDate 撤销时间 - * @param tenantId 租户Id + * @param description 撤销原因 + * @param revokeDate 撤销时间 + * @param tenantId 租户Id * @return */ @GetMapping("/pre-revoke") public R revokePrescription(String hiRxno, Long practitionerId, String description, - @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date revokeDate, Integer tenantId) { + @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date revokeDate, Integer tenantId) { ElepRevokeInput eleRevokeInput = - ybEleBaseService.makeEleRevokeInput(hiRxno, practitionerId, description, revokeDate, tenantId); // 入参和出参都保存 - R result = ybEleHttpService.revokePre(eleRevokeInput); + ybEleBaseService.makeEleRevokeInput(hiRxno, practitionerId, description, revokeDate, tenantId); // 入参和出参都保存 + R result = ybEleHttpService.revokePre(eleRevokeInput); if (eleRevokeInput != null) { ybEleBaseService.saveEleRevokeInput(eleRevokeInput); } - //成功时保存出参 + // 成功时保存出参 if (result.getCode() == 200) { ElepRevokeOutput ereResult = null; if (ElepRevokeOutput.class.isAssignableFrom(result.getData().getClass())) { - ereResult = (ElepRevokeOutput) result.getData(); + ereResult = (ElepRevokeOutput)result.getData(); ybEleBaseService.saveEleRevokeOutput(ereResult); return R.ok(ereResult); } @@ -243,11 +248,11 @@ public class YbElepController { if (eleQueryPreResultInput != null) { ybEleBaseService.saveEleQueryPrescriptionInput(eleQueryPreResultInput); } - //成功时保存出参 + // 成功时保存出参 if (result.getCode() == 200) { QueryPrescription emrResult = null; if (QueryPrescription.class.isAssignableFrom(result.getData().getClass())) { - emrResult = (QueryPrescription) result.getData(); + emrResult = (QueryPrescription)result.getData(); ybEleBaseService.saveEleMedResultOut(emrResult); return R.ok(emrResult); } @@ -264,16 +269,16 @@ public class YbElepController { @GetMapping("/med-query") public R queryMedPrescription(String hiRxno) { - ElepMedresultInput eleMedInput = ybEleBaseService.makeEleMedResultInput(hiRxno); // 入参和出参都保存 + ElepMedresultInput eleMedInput = ybEleBaseService.makeEleMedResultInput(hiRxno); // 入参和出参都保存 R result = ybEleHttpService.queryMedPre(eleMedInput); if (eleMedInput != null) { ybEleBaseService.saveEleMedResultInput(eleMedInput); } - //成功时保存出参 + // 成功时保存出参 if (result.getCode() == 200) { MedicationResultInquiry medResult = null; if (MedicationResultInquiry.class.isAssignableFrom(result.getData().getClass())) { - medResult = (MedicationResultInquiry) result.getData(); + medResult = (MedicationResultInquiry)result.getData(); ybEleBaseService.saveMedicationResultInquiry(medResult); return R.ok(medResult); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/IYbEleBaseService.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/IYbEleBaseService.java index b96e2bad..8801def4 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/IYbEleBaseService.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/IYbEleBaseService.java @@ -3,17 +3,16 @@ */ package com.openhis.web.ybmanage.service; +import java.rmi.ServerException; import java.util.Date; import java.util.Map; -import com.baomidou.mybatisplus.core.metadata.IPage; +import javax.servlet.http.HttpServletRequest; + import com.core.common.core.domain.R; -import com.openhis.web.doctorstation.dto.AdviceBaseDto; import com.openhis.web.ybmanage.dto.VeriPrescriptionParam; import com.openhis.ybelep.domain.*; -import javax.servlet.http.HttpServletRequest; - /** * * @author yuxj @@ -31,8 +30,8 @@ public interface IYbEleBaseService { * @param request 请求数据 * @return 处方信息 */ - R getVeriPrescriptionInfo(VeriPrescriptionParam veriPrescriptionParam, String searchKey, - Integer pageNo, Integer pageSize, HttpServletRequest request); + R getVeriPrescriptionInfo(VeriPrescriptionParam veriPrescriptionParam, String searchKey, Integer pageNo, + Integer pageSize, HttpServletRequest request); /** * 医保电子处方查看 @@ -65,7 +64,7 @@ public interface IYbEleBaseService { * @param quashReason 撤销原因 * @return 处方信息 */ - R quashPrescriptionStatus(String prescriptionNo,String quashReason); + R quashPrescriptionStatus(String prescriptionNo, String quashReason); /** * 做成电子处方上传预核验入参信息 @@ -74,8 +73,7 @@ public interface IYbEleBaseService { * @param tenantId 租户Id * @return 处方信息 */ - PreCheckPrescription makePreCheckPrescription(String prescriptionNo, - Integer tenantId); + PreCheckPrescription makePreCheckPrescription(String prescriptionNo, Integer tenantId) throws ServerException; /** * 电子处方上传预核验信息保存 @@ -157,7 +155,8 @@ public interface IYbEleBaseService { * @param tenantId 租户Id * @return 电子处方撤销入参 */ - ElepRevokeInput makeEleRevokeInput(String hiRxno, Long practitionerId,String description, Date checkDate, Integer tenantId); + ElepRevokeInput makeEleRevokeInput(String hiRxno, Long practitionerId, String description, Date checkDate, + Integer tenantId); /** * 保存电子处方撤销入参 @@ -223,5 +222,13 @@ public interface IYbEleBaseService { */ void saveMedicationResultInquiry(MedicationResultInquiry medResInquiry); - Map getMedTypeAndDoctorName(String prescriptionNo, Integer tenantId); + /** + * 查类型和审核医生名称 + * + * @param prescriptionNo 处方号 + * @param tenantId 租户 + * @return 结果 + */ + Map getMedTypeAndDoctorName(String prescriptionNo, Integer tenantId); + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbEleHttpServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbEleHttpServiceImpl.java index 5ad26d5e..7e9cabb8 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbEleHttpServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbEleHttpServiceImpl.java @@ -3,12 +3,8 @@ */ package com.openhis.web.ybmanage.service.impl; -import com.core.common.core.domain.R; -import com.core.common.exception.ServiceException; -import com.core.common.utils.SecurityUtils; -import com.openhis.yb.dto.BaseInfo; -import com.openhis.yb.dto.BaseParam; -import com.openhis.yb.util.YbParamBuilderUtil; +import java.io.IOException; + import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; @@ -21,14 +17,18 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.alibaba.fastjson2.JSON; +import com.core.common.core.domain.R; +import com.core.common.exception.ServiceException; +import com.core.common.utils.SecurityUtils; import com.fasterxml.jackson.databind.ObjectMapper; import com.openhis.web.ybmanage.config.YbServiceConfig; import com.openhis.web.ybmanage.dto.Result; import com.openhis.web.ybmanage.service.IYbEleHttpService; +import com.openhis.yb.dto.BaseInfo; +import com.openhis.yb.dto.BaseParam; +import com.openhis.yb.util.YbParamBuilderUtil; import com.openhis.ybelep.domain.*; -import java.io.IOException; - /** * http请求接口 * @@ -43,6 +43,7 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { @Autowired YbParamBuilderUtil ybParamBuilderUtil; + /** * 采用HTTP协议中的 POST 方法,发送医保电子处方注册预核验请求,并处理响应结果 * @@ -50,11 +51,12 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { * @return 医保电子处方注册预核验响应出参实体 */ @Override - public R preCheck(PreCheckPrescription pcp, String medType , String dutyDoctorName) { + public R preCheck(PreCheckPrescription pcp, String medType, String dutyDoctorName) { ElepVeriPrescriptionOutput pcpResult = new ElepVeriPrescriptionOutput(); BaseInfo baseInfo = ybParamBuilderUtil.getBaseInfo(medType, dutyDoctorName); // 发送请求 - String s = httpPost( SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/preCheckPrescription", pcp,baseInfo); + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/preCheckPrescription", + pcp, baseInfo); // 参数处理 ObjectMapper mapper = new ObjectMapper(); Result result = null; @@ -66,9 +68,9 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { if (result != null && result.isSuccess()) { pcpResult = JSON.parseObject(JSON.toJSONString(result.getResult()), ElepVeriPrescriptionOutput.class);; pcpResult.setPrescriptionNo(pcp.getHospRxno()); - return R.ok(pcpResult); - }else{ - return R.fail(result.getMessage()); + return R.ok(pcpResult); + } else { + return R.fail(result.getMessage()); } } @@ -82,7 +84,8 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { ElepSignatureOutput esResult = new ElepSignatureOutput(); // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/signature", eleSign,ybParamBuilderUtil.getBaseInfo("","")); + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/signature", eleSign, + ybParamBuilderUtil.getBaseInfo("", "")); // 参数处理 ObjectMapper mapper = new ObjectMapper(); Result result = null; @@ -93,9 +96,9 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { } if (result != null && result.isSuccess()) { esResult = JSON.parseObject(JSON.toJSONString(result.getResult()), ElepSignatureOutput.class); - return R.ok(esResult); - }else{ - return R.fail(result.getMessage()); + return R.ok(esResult); + } else { + return R.fail(result.getMessage()); } } @@ -110,7 +113,8 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { ElepUploadOutput euResult = new ElepUploadOutput(); // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/upload", eleUploadInput,ybParamBuilderUtil.getBaseInfo("","")); + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/upload", + eleUploadInput, ybParamBuilderUtil.getBaseInfo("", "")); // 参数处理 ObjectMapper mapper = new ObjectMapper(); Result result = null; @@ -121,9 +125,9 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { } if (result != null && result.isSuccess()) { euResult = JSON.parseObject(JSON.toJSONString(result.getResult()), ElepUploadOutput.class); - return R.ok(euResult); - }else{ - return R.fail(result.getMessage()); + return R.ok(euResult); + } else { + return R.fail(result.getMessage()); } } @@ -138,7 +142,8 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { ElepRevokeOutput ereResult = new ElepRevokeOutput(); // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/revoke", eleRevokeInput,ybParamBuilderUtil.getBaseInfo("","")); + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/revoke", + eleRevokeInput, ybParamBuilderUtil.getBaseInfo("", "")); // 参数处理 ObjectMapper mapper = new ObjectMapper(); Result result = null; @@ -149,9 +154,9 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { } if (result != null && result.isSuccess()) { ereResult = JSON.parseObject(JSON.toJSONString(result.getResult()), ElepRevokeOutput.class); - return R.ok(ereResult); - }else{ - return R.fail(result.getMessage()); + return R.ok(ereResult); + } else { + return R.fail(result.getMessage()); } } @@ -163,14 +168,14 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { */ @Override public R queryPre(ElepQuerPrescriptionInput eleQueryPreInput) { - //拼参数 -// BaseParam baseParam = new BaseParam(); -// baseParam.setBaseInfo(ybParamBuilderUtil.getBaseInfo()).setData(eleQueryPreInput); -// baseParam.setBaseInfo(ybParamBuilderUtil.getBaseInfo()).setData(o); + // 拼参数 + // BaseParam baseParam = new BaseParam(); + // baseParam.setBaseInfo(ybParamBuilderUtil.getBaseInfo()).setData(eleQueryPreInput); + // baseParam.setBaseInfo(ybParamBuilderUtil.getBaseInfo()).setData(o); QueryPrescription emrResult = new QueryPrescription(); // 发送请求 - String s = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/querPrescription", eleQueryPreInput,ybParamBuilderUtil.getBaseInfo("","")); + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/querPrescription", + eleQueryPreInput, ybParamBuilderUtil.getBaseInfo("", "")); // 参数处理 ObjectMapper mapper = new ObjectMapper(); Result result = null; @@ -181,9 +186,9 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { } if (result != null && result.isSuccess()) { emrResult = JSON.parseObject(JSON.toJSONString(result.getResult()), QueryPrescription.class); - return R.ok(emrResult); - }else{ - return R.fail(result.getMessage()); + return R.ok(emrResult); + } else { + return R.fail(result.getMessage()); } } @@ -193,12 +198,12 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { * @param eleMedInput 电子处方取药结果查询入参实体 * @return 电子处方取药结果查询出参实体 */ - public R queryMedPre(ElepMedresultInput eleMedInput){ + public R queryMedPre(ElepMedresultInput eleMedInput) { MedicationResultInquiry medResult = new MedicationResultInquiry(); // 发送请求 - String s = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/medresult", eleMedInput,ybParamBuilderUtil.getBaseInfo("","")); + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("eleUrl") + "/medresult", + eleMedInput, ybParamBuilderUtil.getBaseInfo("", "")); // 参数处理 ObjectMapper mapper = new ObjectMapper(); Result result = null; @@ -209,28 +214,30 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { } if (result != null && result.isSuccess()) { medResult = JSON.parseObject(JSON.toJSONString(result.getResult()), MedicationResultInquiry.class); - return R.ok(medResult); - }else{ - return R.fail(result.getMessage()); + return R.ok(medResult); + } else { + return R.fail(result.getMessage()); } } + /** * 发送http请求(2025/05/02经测试,若以自带的工具类发送请求失败,故使用原peis系统中成功调用的写法重新封装) + * * @param url 路径 * @param o 参数 * @return */ - private String httpPost(String url, Object o, BaseInfo baseInfo){ + private String httpPost(String url, Object o, BaseInfo baseInfo) { String resultString = ""; -// //拼参数 + //拼参数 BaseParam baseParam = new BaseParam(); baseParam.setBaseInfo(baseInfo).setData(o); - //创建Http请求 - RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000) - .setSocketTimeout(30000).build(); + // 创建Http请求(2025/10/13 师大会超时故此由30000-》60000) + RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(90000).setConnectionRequestTimeout(90000) + .setSocketTimeout(90000).build(); CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig).build(); CloseableHttpResponse response = null; - //发送请求 + // 发送请求 try { HttpPost httpPost = new HttpPost(url); StringEntity stringEntity = new StringEntity(JSON.toJSONString(baseParam), ContentType.APPLICATION_JSON); @@ -238,12 +245,10 @@ public class YbEleHttpServiceImpl implements IYbEleHttpService { // 执行http请求 response = httpClient.execute(httpPost); resultString = EntityUtils.toString(response.getEntity(), "utf-8"); - } - catch (Exception e) { + } catch (Exception e) { e.printStackTrace(); throw new ServiceException("Http请求异常,请稍后再试。"); - } - finally { + } finally { try { response.close(); } catch (IOException e) { diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbElepBaseServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbElepBaseServiceImpl.java index 68ea55c4..c8b6dd9b 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbElepBaseServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/service/impl/YbElepBaseServiceImpl.java @@ -3,8 +3,18 @@ */ package com.openhis.web.ybmanage.service.impl; +import java.rmi.ServerException; import java.util.*; +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; + +import com.openhis.common.enums.ybenums.YbMedType; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -19,37 +29,36 @@ import com.openhis.administration.domain.Practitioner; import com.openhis.administration.service.IEncounterService; import com.openhis.administration.service.IPatientService; import com.openhis.administration.service.IPractitionerService; +import com.openhis.clinical.domain.ConditionDefinition; +import com.openhis.clinical.service.IConditionDefinitionService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.constant.YbCommonConstants; import com.openhis.common.enums.PrescriptionType; import com.openhis.common.enums.RequestStatus; +import com.openhis.common.enums.Whether; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; -import com.openhis.financial.domain.Contract; import com.openhis.financial.service.IContractService; import com.openhis.web.ybmanage.dto.VeriPrescriptionDetailInfoDto; import com.openhis.web.ybmanage.dto.VeriPrescriptionInfoDto; import com.openhis.web.ybmanage.dto.VeriPrescriptionParam; import com.openhis.web.ybmanage.mapper.YbElepMapper; -import com.openhis.workflow.domain.ElepMedicationRequest; -import com.openhis.workflow.service.IElepMedicationRequestService; -import com.openhis.yb.service.IPerinfoService; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.openhis.web.ybmanage.service.IYbEleBaseService; import com.openhis.web.ybmanage.util.YbEleParamBuilderUtil; +import com.openhis.workflow.domain.ElepMedicationRequest; +import com.openhis.workflow.service.IElepMedicationRequestService; import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.dto.Clinic2203DiseInfoParam; +import com.openhis.yb.dto.Clinic2203MedicalParam; +import com.openhis.yb.service.IPerinfoService; import com.openhis.yb.service.IRegService; +import com.openhis.yb.service.YbHttpUtils; +import com.openhis.ybcatalog.domain.CatalogSpecialInsuranceDisease; +import com.openhis.ybcatalog.service.ICatalogSpecialDiseaseService; import com.openhis.ybelep.domain.*; import com.openhis.ybelep.service.*; -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; - /** * 医保表的增删改查接口 * @@ -62,6 +71,12 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { @Autowired IRegService iRegService; @Autowired + YbHttpUtils ybHttpUtils; + @Autowired + ICatalogSpecialDiseaseService catalogSpecialDiseaseService; + @Autowired + IConditionDefinitionService conditionDefinitionService; + @Autowired IPerinfoService perinfoService; @Autowired IContractService contractService; @@ -124,29 +139,29 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { * 医保电子处方查询 * * @param veriPrescriptionParam 查询条件 - * @param searchKey 模糊查询关键字 - * @param pageNo 当前页 - * @param pageSize 每页多少条 - * @param request 请求数据 + * @param searchKey 模糊查询关键字 + * @param pageNo 当前页 + * @param pageSize 每页多少条 + * @param request 请求数据 * @return 处方信息 */ @Override public R getVeriPrescriptionInfo(VeriPrescriptionParam veriPrescriptionParam, String searchKey, Integer pageNo, - Integer pageSize, HttpServletRequest request) { + Integer pageSize, HttpServletRequest request) { // 构建查询条件 QueryWrapper queryWrapper = - HisQueryUtils.buildQueryWrapper(veriPrescriptionParam, searchKey, - new HashSet<>(Arrays.asList(CommonConstants.FieldName.PatientName, CommonConstants.FieldName.IptOtpNo)), - request); + HisQueryUtils.buildQueryWrapper(veriPrescriptionParam, searchKey, + new HashSet<>(Arrays.asList(CommonConstants.FieldName.PatientName, CommonConstants.FieldName.IptOtpNo)), + request); // 医保电子处方查询 IPage veriPrescriptionInfo = - ybElepMapper.getVeriPrescriptionInfo(new Page<>(pageNo, pageSize), queryWrapper); + ybElepMapper.getVeriPrescriptionInfo(new Page<>(pageNo, pageSize), queryWrapper); // 状态转换 veriPrescriptionInfo.getRecords().forEach(prescriptionInfoDto -> { prescriptionInfoDto.setStatusEnum_enumText( - EnumUtils.getInfoByValue(RequestStatus.class, prescriptionInfoDto.getStatusEnum())); + EnumUtils.getInfoByValue(RequestStatus.class, prescriptionInfoDto.getStatusEnum())); }); return R.ok(veriPrescriptionInfo); @@ -162,7 +177,7 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { public R getPrescriptionDetailInfo(String prescriptionNo) { // 处方详细查询 List prescriptionDetailInfo = - ybElepMapper.getVeriPrescriptionDetailInfo(prescriptionNo); + ybElepMapper.getVeriPrescriptionDetailInfo(prescriptionNo); // 状态转换 for (VeriPrescriptionDetailInfoDto item : prescriptionDetailInfo) { item.setStatusEnum_enumText(EnumUtils.getInfoByValue(RequestStatus.class, item.getStatusEnum())); @@ -186,15 +201,15 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { Date now = DateUtils.getNowDate(); // 获取医保处方号 List prescriptionOutput = - elePresOutputService.list(new LambdaQueryWrapper() - .eq(ElepVeriPrescriptionOutput::getPrescriptionNo, prescriptionNo) - .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + elePresOutputService.list(new LambdaQueryWrapper() + .eq(ElepVeriPrescriptionOutput::getPrescriptionNo, prescriptionNo) + .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (prescriptionOutput == null) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00010, null)); } // 获取电子处方信息 List elepMedicationRequest = - elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionNo); + elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionNo); if (elepMedicationRequest == null) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00010, null)); } @@ -235,7 +250,7 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { Date now = DateUtils.getNowDate(); // 获取电子处方信息 List elepMedicationRequest = - elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionNo); + elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionNo); if (elepMedicationRequest == null) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00010, null)); } @@ -257,7 +272,7 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { * 医保电子处方状态更新(撤销) * * @param prescriptionNo 处方号 - * @param quashReason 撤销原因 + * @param quashReason 撤销原因 * @return 处方信息 */ @Override @@ -269,7 +284,7 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { Date now = DateUtils.getNowDate(); // 获取电子处方信息 List elepMedicationRequest = - elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionNo); + elepMedicationRequestService.selectElepMedicationRequestByPrescriptionNo(prescriptionNo); if (elepMedicationRequest == null) { return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00010, null)); } @@ -297,17 +312,16 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { * 做成电子处方上传预核验入参信息 * * @param prescriptionNo 处方号 - * @param tenantId 租户Id + * @param tenantId 租户Id * @return 处方信息 */ @Override - public PreCheckPrescription makePreCheckPrescription(String prescriptionNo, - Integer tenantId) { + public PreCheckPrescription makePreCheckPrescription(String prescriptionNo, Integer tenantId) throws ServerException { // 获取药品请求信息(处方表) List medicationRequestList = elepMedicationRequestService.list( - new LambdaQueryWrapper().eq(ElepMedicationRequest::getPrescriptionNo, prescriptionNo) - .eq(ElepMedicationRequest::getTenantId, tenantId)); + new LambdaQueryWrapper().eq(ElepMedicationRequest::getPrescriptionNo, prescriptionNo) + .eq(ElepMedicationRequest::getTenantId, tenantId)); if (medicationRequestList == null) { return null; } @@ -315,9 +329,9 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { // 就诊信息 Encounter encounter = encounterService.getById(medicationRequest.getEncounterId()); - //患者信息 + // 患者信息 Patient patient = patientService.getById(encounter.getPatientId()); - // 获取医保挂号信息 todo clinicReg可能改成一对多 + // 获取医保挂号信息 todo clinicReg可能改成一对多 ClinicReg clinicReg = iRegService.getByBusNo(encounter.getBusNo()); if (clinicReg == null) { return null; @@ -325,19 +339,26 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { // 获取处方信息 PreCheckPrescription prescriptionInfo = - ybEleUtil.getEleVeriPrescriptionInfo(medicationRequest, patient, tenantId); + ybEleUtil.getEleVeriPrescriptionInfo(medicationRequest, patient, tenantId); // 获取处方明细信息 List rxdrugdetail = - ybEleUtil.getEleVeriPrescriptionDetail(prescriptionNo, tenantId); + ybEleUtil.getEleVeriPrescriptionDetail(prescriptionNo, tenantId); // 获取就诊信息和诊断信息 PreCheckPrescription eleVisAndDisInfo = - ybEleUtil.getEleVeriVisitAndDiagnosisInfo(medicationRequest, clinicReg, tenantId); + ybEleUtil.getEleVeriVisitAndDiagnosisInfo(medicationRequest, clinicReg, tenantId); + if(eleVisAndDisInfo==null){ + throw new ServerException("未查询到就诊或诊断信息"); + } // 电子处方上传预核验实体赋值 + prescriptionInfo.setRxdrugdetail(rxdrugdetail).setMdtrtinfo(eleVisAndDisInfo.getMdtrtinfo()) + .setDiseinfo(eleVisAndDisInfo.getDiseinfo()); + + // 需要先进行2203接口上传就诊信息 + this.upload2203(prescriptionInfo, medicationRequest, clinicReg); - prescriptionInfo.setRxdrugdetail(rxdrugdetail) - .setMdtrtinfo(eleVisAndDisInfo.getMdtrtinfo()).setDiseinfo(eleVisAndDisInfo.getDiseinfo()); + iRegService.updateById(clinicReg); return prescriptionInfo; } @@ -351,7 +372,7 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { @Override public void savePreCheckPrescription(PreCheckPrescription pcpResult) { - //todo dto和表的字段类型不一致 + // todo dto和表的字段类型不一致 ElepVeriPrescriptionInfo prescriptionInfo = new ElepVeriPrescriptionInfo(); BeanUtils.copyProperties(pcpResult, prescriptionInfo); @@ -365,7 +386,6 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { eleVeriDiagnosisInfoService.save(pcpResult.getDiseinfo()); } - /** * 电子处方上传预核验响应出参信息保存 * @@ -380,18 +400,18 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { /** * 做成电子处方医保电子签名入参 * - * @param hiRxno 医保处方编号 + * @param hiRxno 医保处方编号 * @param practitionerId 审方药师Id - * @param checkDate 审方时间 - * @param tenantId 租户Id + * @param checkDate 审方时间 + * @param tenantId 租户Id * @return 处方信息 */ @Override public ElepSignatureInput makeEleSignature(String hiRxno, Long practitionerId, Date checkDate, Integer tenantId) { - List pcpResult = elePresOutputService.list( - new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) - .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + List pcpResult = elePresOutputService + .list(new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) + .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (pcpResult == null) { return null; } @@ -423,22 +443,22 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { /** * 做成电子处方上传入参 * - * @param hiRxno 医保处方编号 + * @param hiRxno 医保处方编号 * @param practitionerId 审方药师Id - * @param checkDate 审方时间 - * @param tenantId 租户Id + * @param checkDate 审方时间 + * @param tenantId 租户Id * @return 电子处方上传入参 */ @Override public ElepUploadInput makeEleUploadInput(String hiRxno, Long practitionerId, Date checkDate, Integer tenantId) { - List pcpResult = elePresOutputService.list( - new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) - .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + List pcpResult = elePresOutputService + .list(new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) + .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); List esResult = eleSignOutService - .list(new LambdaQueryWrapper().eq(ElepSignatureOutput::getHiRxno, hiRxno) - .orderByDesc(ElepSignatureOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + .list(new LambdaQueryWrapper().eq(ElepSignatureOutput::getHiRxno, hiRxno) + .orderByDesc(ElepSignatureOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (pcpResult == null || esResult == null) { return null; @@ -471,32 +491,33 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { /** * 做成电子处方撤销入参 * - * @param hiRxno 医保处方编号 + * @param hiRxno 医保处方编号 * @param practitionerId 撤销药师Id - * @param description 撤销原因 - * @param revokeDate 撤销时间 - * @param tenantId 租户Id + * @param description 撤销原因 + * @param revokeDate 撤销时间 + * @param tenantId 租户Id * @return 电子处方撤销入参 */ @Override public ElepRevokeInput makeEleRevokeInput(String hiRxno, Long practitionerId, String description, Date revokeDate, - Integer tenantId) { + Integer tenantId) { - List pcpResult = elePresOutputService.list( - new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) - .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + List pcpResult = elePresOutputService + .list(new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) + .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (pcpResult == null) { return null; } - List euResult = eleUploadOutputService - .list(new LambdaQueryWrapper().eq(ElepUploadOutput::getHiRxno, pcpResult.get(0).getHiRxno()) - .orderByDesc(ElepUploadOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + List euResult = eleUploadOutputService.list( + new LambdaQueryWrapper().eq(ElepUploadOutput::getHiRxno, pcpResult.get(0).getHiRxno()) + .orderByDesc(ElepUploadOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (euResult == null) { return null; } - return ybEleUtil.getElepRevokeInput(pcpResult.get(0), euResult.get(0), practitionerId, description, revokeDate, tenantId); + return ybEleUtil.getElepRevokeInput(pcpResult.get(0), euResult.get(0), practitionerId, description, revokeDate, + tenantId); } /** @@ -531,9 +552,9 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { @Override public ElepQuerPrescriptionInput makeEleQueryPrescriptionInput(String hiRxno) { - List pcpResult = elePresOutputService.list( - new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) - .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + List pcpResult = elePresOutputService + .list(new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) + .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (pcpResult == null) { return null; @@ -584,9 +605,9 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { @Override public ElepMedresultInput makeEleMedResultInput(String hiRxno) { - List pcpResult = elePresOutputService.list( - new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) - .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + List pcpResult = elePresOutputService + .list(new LambdaQueryWrapper().eq(ElepVeriPrescriptionOutput::getHiRxno, hiRxno) + .orderByDesc(ElepVeriPrescriptionOutput::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (pcpResult == null) { return null; @@ -628,8 +649,8 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { HashMap map = new HashMap<>(); // 获取药品请求信息(处方表) List medicationRequestList = elepMedicationRequestService.list( - new LambdaQueryWrapper().eq(ElepMedicationRequest::getPrescriptionNo, prescriptionNo) - .eq(ElepMedicationRequest::getTenantId, tenantId)); + new LambdaQueryWrapper().eq(ElepMedicationRequest::getPrescriptionNo, prescriptionNo) + .eq(ElepMedicationRequest::getTenantId, tenantId)); if (medicationRequestList == null) { return null; } @@ -637,9 +658,9 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { // 就诊信息 Encounter encounter = encounterService.getById(medicationRequest.getEncounterId()); - //患者信息 + // 患者信息 Patient patient = patientService.getById(encounter.getPatientId()); - // 获取医保挂号信息 todo clinicReg可能改成一对多 + // 获取医保挂号信息 todo clinicReg可能改成一对多 ClinicReg clinicReg = iRegService.getByBusNo(encounter.getBusNo()); if (clinicReg == null) { return null; @@ -647,19 +668,19 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { String medicalContractName = ""; String insuplcAdmdvs = clinicReg.getInsuplcAdmdvs(); - if (insuplcAdmdvs.equals("229900") ) { + if (insuplcAdmdvs.equals("229900")) { medicalContractName = "省"; } else if (insuplcAdmdvs.startsWith("2201")) { medicalContractName = "市"; } else { medicalContractName = "省异地"; } -// List contractListByYb = contractService.getContractListByYb(); -// for (Contract contract : contractListByYb) { -// if(insuplcAdmdvs.equals(contract.getAdmVs())){ -// medicalContractName = contract.getContractName(); -// } -// } + // List contractListByYb = contractService.getContractListByYb(); + // for (Contract contract : contractListByYb) { + // if(insuplcAdmdvs.equals(contract.getAdmVs())){ + // medicalContractName = contract.getContractName(); + // } + // } String insutype = clinicReg.getInsutype(); @@ -698,4 +719,51 @@ public class YbElepBaseServiceImpl implements IYbEleBaseService { return map; } + + /** + * 上传2203 + * + * @param prescription 处方信息 + */ + private void upload2203(PreCheckPrescription prescription, ElepMedicationRequest medicationRequest, + ClinicReg clinicReg) throws ServerException { + + // 查询慢病目录 + CatalogSpecialInsuranceDisease catalogSpecialInsuranceDisease = + catalogSpecialDiseaseService.getOne(new LambdaQueryWrapper() + .eq(CatalogSpecialInsuranceDisease::getDiseaseCode, medicationRequest.getOpspDiseCode())); + if (catalogSpecialInsuranceDisease == null) { + return; + } + + // 查询诊断定义 + ConditionDefinition conditionDefinition = + conditionDefinitionService.getConditionDefinitionListById(medicationRequest.getConditionDefId()); + if (conditionDefinition == null) { + throw new ServerException("未查询到诊断定义"); + } + List diseinfos = new ArrayList(); + ElepVeriDiagnosisInfo diseinfo = prescription.getDiseinfo(); + + Clinic2203DiseInfoParam diseinfo2203 = new Clinic2203DiseInfoParam(); + diseinfo2203.setDiagCode(conditionDefinition.getYbNo()).setDiagName(conditionDefinition.getName()) + .setDiagDept(diseinfo.getDiagDept()).setDiseDorName(diseinfo.getDiagDrName()) + .setDiseDorNo(diseinfo.getDiagDrNo()).setDiagTime(diseinfo.getDiagTime()) + .setValiFlag(Whether.YES.getValue().toString()).setDiagType(diseinfo.getDiagType()) + .setDiagSrtNo(diseinfo.getDiagSrtNo()); + + diseinfos.add(diseinfo2203); + + Clinic2203MedicalParam medical2203Param = new Clinic2203MedicalParam(); + + medical2203Param.setMdtrtId(clinicReg.getMdtrtId()).setPsnNo(clinicReg.getPsnNo()) + .setBegntime(clinicReg.getBegntime()).setMedType(YbMedType.CHRONIC_DISEASE_OUTPATIENT.getValue()) + .setMainCondDscr(conditionDefinition.getName()).setInsuplcAdmdvs(clinicReg.getInsuplcAdmdvs()) + .setDiseCodg(medicationRequest.getOpspDiseCode()).setDiseName(conditionDefinition.getName()) + .setDiseinfoList(diseinfos); + clinicReg.setMedType(YbMedType.CHRONIC_DISEASE_OUTPATIENT.getValue()); + prescription.getMdtrtinfo().setDiseCodg(medicationRequest.getOpspDiseCode()); + ybHttpUtils.upload2203Record(medical2203Param, null); + + } } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/util/YbEleParamBuilderUtil.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/util/YbEleParamBuilderUtil.java index 0cf769e4..ba64c494 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/util/YbEleParamBuilderUtil.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/ybmanage/util/YbEleParamBuilderUtil.java @@ -7,6 +7,7 @@ import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.math.BigDecimal; +import java.rmi.ServerException; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.Period; @@ -14,34 +15,34 @@ import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.util.*; -import com.core.common.enums.DeleteFlag; -import com.core.common.utils.SecurityUtils; -import com.openhis.common.constant.CommonConstants; -import com.openhis.common.constant.YbCommonConstants; -import com.openhis.workflow.domain.ElepMedicationRequest; -import com.openhis.workflow.service.IElepMedicationRequestService; -import com.openhis.ybcatalog.domain.CatalogDrugInfo; -import com.openhis.ybcatalog.service.ICatalogDrugInfoService; +import com.core.common.exception.ServiceException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.core.common.utils.DateUtils; +import com.core.common.utils.SecurityUtils; import com.openhis.administration.domain.*; import com.openhis.administration.service.*; import com.openhis.clinical.domain.Condition; import com.openhis.clinical.domain.ConditionDefinition; import com.openhis.clinical.service.IConditionDefinitionService; import com.openhis.clinical.service.IConditionService; -import com.openhis.common.enums.*; +import com.openhis.common.constant.CommonConstants; +import com.openhis.common.constant.YbCommonConstants; +import com.openhis.common.enums.AccountType; +import com.openhis.common.enums.AdministrativeGender; +import com.openhis.common.enums.EncounterClass; +import com.openhis.common.enums.Whether; import com.openhis.common.enums.ybenums.*; -import com.openhis.medication.domain.Medication; -import com.openhis.medication.domain.MedicationDefinition; import com.openhis.medication.service.IMedicationDefinitionService; -import com.openhis.medication.service.IMedicationService; +import com.openhis.workflow.domain.ElepMedicationRequest; +import com.openhis.workflow.service.IElepMedicationRequestService; import com.openhis.yb.domain.ClinicReg; import com.openhis.yb.service.IRegService; +import com.openhis.ybcatalog.domain.CatalogDrugInfo; +import com.openhis.ybcatalog.service.ICatalogDrugInfoService; import com.openhis.ybelep.domain.*; import com.openhis.ybelep.service.IElepVeriPrescriptionInfoService; import com.openhis.ybelep.service.IElepVeriVisitInfoService; @@ -94,36 +95,104 @@ public class YbEleParamBuilderUtil { @Autowired IElepVeriVisitInfoService eleVerVisInfoService; + /** + * 获取BigDecimal类型的年龄 + * + * @param birthDate 出生日期 + * @param beginTime 计算起始日期 + * @return 年龄 + */ + public static BigDecimal calculateAge(Date birthDate, Date beginTime) { + // 验证输入参数是否为空 + if (Objects.isNull(birthDate)) { + System.out.println("出生年月日不能为空!"); + return null; + } + // 验证输入参数是否为空 + if (Objects.isNull(beginTime)) { + beginTime = DateUtils.getNowDate(); + } + + // 将 Date 转换为 LocalDate + LocalDate localBirthDate = birthDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); + LocalDate localBeginTime = beginTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); + + // 计算出生日期到起始日期之间的年份差异 + Period period = Period.between(localBirthDate, localBeginTime); + + int years = period.getYears(); + + // 检查是否已经过了生日,如果没有过,则年份减一 + boolean hasBirthdayPassed = !localBirthDate.plusYears(years).isAfter(localBeginTime); + if (!hasBirthdayPassed) { + years--; + } + + return BigDecimal.valueOf(years); + } + + /** + * 读取文件内容并获取其 Base64 字符值 + * + * @param filePath 文件路径 + * @return 文件内容的 Base64 字符值 + */ + public static String fileToBase64(String filePath) { + File file = new File(filePath); + if (!file.exists()) { + System.out.println("文件不存在!"); + return null; + } + + FileInputStream fileInputStream = null; + try { + fileInputStream = new FileInputStream(file); + byte[] fileContent = new byte[(int)file.length()]; + fileInputStream.read(fileContent); + return Base64.getEncoder().encodeToString(fileContent); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (fileInputStream != null) { + try { + fileInputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return null; + } + /** * 获取处方信息 * * @param medicationRequest 处方信息 - * @param patient 患者信息 - * @param tenantId 租户Id + * @param patient 患者信息 + * @param tenantId 租户Id * @return 处方信息 */ public PreCheckPrescription getEleVeriPrescriptionInfo(ElepMedicationRequest medicationRequest, Patient patient, - Integer tenantId) { + Integer tenantId) { // 声明处方信息对象 PreCheckPrescription elepVeriPrescriptionInfo = new PreCheckPrescription(); - elepVeriPrescriptionInfo.setMdtrtCertType("02") - .setMdtrtCertNo(patient.getIdCard()) - // 01-定点医疗机构就诊 - .setBizTypeCode("01").setHospRxno(medicationRequest.getPrescriptionNo()) - .setRxTypeCode(medicationRequest.getRxTypeCode().toString()).setPrscTime(medicationRequest.getIssueTime()) - // 处方有效天数 - .setValiDays(medicationRequest.getValidityDays().toString()) - // 计算截止时间 - .setValiEndTime(DateUtils.addDays(medicationRequest.getIssueTime(), medicationRequest.getValidityDays())); + elepVeriPrescriptionInfo.setMdtrtCertType("02").setMdtrtCertNo(patient.getIdCard()) + // 01-定点医疗机构就诊 + .setBizTypeCode("01").setHospRxno(medicationRequest.getPrescriptionNo()) + .setRxTypeCode(medicationRequest.getRxTypeCode().toString()).setPrscTime(medicationRequest.getIssueTime()) + // 处方有效天数 + .setValiDays(medicationRequest.getValidityDays().toString()) + // 计算截止时间 + .setValiEndTime(DateUtils.addDays(medicationRequest.getIssueTime(), medicationRequest.getValidityDays())); // 就诊凭证类型为03”时,填写社会保障卡卡号 if (elepVeriPrescriptionInfo.getMdtrtCertType() == YbMdtrtCertType.MDTRT_CERT_TYPE03.getValue()) { Account account = accountService.getOne( - new LambdaQueryWrapper().eq(Account::getEncounterId, medicationRequest.getEncounterId()) - .eq(Account::getTypeCode, AccountType.SOCIAL_SECURITY_CARD.getValue()) - .eq(Account::getTenantId, tenantId)); + new LambdaQueryWrapper().eq(Account::getEncounterId, medicationRequest.getEncounterId()) + .eq(Account::getTypeCode, AccountType.SOCIAL_SECURITY_CARD.getValue()) + .eq(Account::getTenantId, tenantId)); if (account == null) { return null; } @@ -139,11 +208,11 @@ public class YbEleParamBuilderUtil { // 调用 count 方法 Long countWesternOrChinese = elepMedicationRequestService - .selectWesternOrChineseCount(medicationRequest.getPrescriptionNo(), westernOrChineseList, tenantId); + .selectWesternOrChineseCount(medicationRequest.getPrescriptionNo(), westernOrChineseList, tenantId); // 西药、中成药时为药品的类目数量 elepVeriPrescriptionInfo.setRxDrugCnt(countWesternOrChinese.toString()) - .setRxUsedWayCodg(medicationRequest.getMedRoute()) - .setRxUsedWayName(YbDrugMedWay.getByValue(medicationRequest.getMedRoute()).getDescription()); + .setRxUsedWayCodg(medicationRequest.getMedRoute()) + .setRxUsedWayName(YbDrugMedWay.getByValue(medicationRequest.getMedRoute()).getDescription()); return elepVeriPrescriptionInfo; } @@ -152,14 +221,15 @@ public class YbEleParamBuilderUtil { * 获取处方明细信息 * * @param prescriptionNo 处方号 - * @param tenantId 租户Id + * @param tenantId 租户Id * @return 处方明细信息 */ public List getEleVeriPrescriptionDetail(String prescriptionNo, Integer tenantId) { // 查询该处方所有中药饮片 - List materialObjs = elepMedicationRequestService.list(new LambdaQueryWrapper() - .eq(ElepMedicationRequest::getPrescriptionNo, prescriptionNo).eq(ElepMedicationRequest::getTenantId, tenantId)); + List materialObjs = elepMedicationRequestService.list( + new LambdaQueryWrapper().eq(ElepMedicationRequest::getPrescriptionNo, prescriptionNo) + .eq(ElepMedicationRequest::getTenantId, tenantId)); // 未查到返回空 if (materialObjs == null) { return null; @@ -170,30 +240,30 @@ public class YbEleParamBuilderUtil { // 遍历 materialObjs 列表 for (ElepMedicationRequest materialObj : materialObjs) { CatalogDrugInfo mObj = catalogDrugInfoService.getOne(new LambdaQueryWrapper() - .eq(CatalogDrugInfo::getMedicalCatalogCode, materialObj.getMedicationId()).orderByDesc(CatalogDrugInfo::getCreatedAt).last("LIMIT 1")); + .eq(CatalogDrugInfo::getMedicalCatalogCode, materialObj.getMedicationId()) + .orderByDesc(CatalogDrugInfo::getCreatedAt).last("LIMIT 1")); // 未查到返回空 if (mObj == null) { return null; } ElepVeriPrescriptionDetail eleObj = new ElepVeriPrescriptionDetail(); - eleObj.setMedListCodg(mObj.getMedicalCatalogCode()) - .setDrugGenname(mObj.getRegisteredName()).setDrugDosform(mObj.getDrugForm()) - .setDrugSpec(mObj.getDrugSpecification()).setMedcBegntime(materialObj.getEffectiveDoseStart()) - .setMedcEndtime(materialObj.getEffectiveDoseEnd()) - .setMedcDays(materialObj.getDispensePerDuration().toString()) - .setDrugDosunt(materialObj.getUnitCode()).setDrugCnt(materialObj.getQuantity().toString()) - // todo 医院审批标志,配合目录的限制使用标志使用(目前吉林省不启用),暂时先写死 - .setHospApprFlag("0") - // 院内内部处方号 - .setPrescriptionNo(prescriptionNo) - .setRxItemTypeCode(materialObj.getRxItemTypeCode().toString()) - .setRxItemTypeName(YbRxItemTypeCode.getByValue(materialObj.getRxItemTypeCode().toString()).getDescription()) - .setMedcWayCodg(materialObj.getMedRoute()) - .setMedcWayDscr(YbDrugMedWay.getByValue(materialObj.getMedRoute()).getDescription()) - .setSinDoscnt(materialObj.getMedDosage().stripTrailingZeros().toPlainString()).setSinDosunt(materialObj.getMedDosageUnitCode()) - .setUsedFrquCodg(materialObj.getMedFrequency()) - .setUsedFrquName(YbUsedFrqu.getByValue(materialObj.getMedFrequency()).getDescription()); + eleObj.setMedListCodg(mObj.getMedicalCatalogCode()).setDrugGenname(mObj.getRegisteredName()) + .setDrugDosform(mObj.getDrugForm()).setDrugSpec(mObj.getDrugSpecification()) + .setMedcBegntime(materialObj.getEffectiveDoseStart()).setMedcEndtime(materialObj.getEffectiveDoseEnd()) + .setMedcDays(materialObj.getDispensePerDuration().toString()).setDrugDosunt(materialObj.getUnitCode()) + .setDrugCnt(materialObj.getQuantity().toString()) + // todo 医院审批标志,配合目录的限制使用标志使用(目前吉林省不启用),暂时先写死 + .setHospApprFlag("0") + // 院内内部处方号 + .setPrescriptionNo(prescriptionNo).setRxItemTypeCode(materialObj.getRxItemTypeCode().toString()) + .setRxItemTypeName( + YbRxItemTypeCode.getByValue(materialObj.getRxItemTypeCode().toString()).getDescription()) + .setMedcWayCodg(materialObj.getMedRoute()) + .setMedcWayDscr(YbDrugMedWay.getByValue(materialObj.getMedRoute()).getDescription()) + .setSinDoscnt(materialObj.getMedDosage().stripTrailingZeros().toPlainString()) + .setSinDosunt(materialObj.getMedDosageUnitCode()).setUsedFrquCodg(materialObj.getMedFrequency()) + .setUsedFrquName(YbUsedFrqu.getByValue(materialObj.getMedFrequency()).getDescription()); eleDetList.add(eleObj); } @@ -205,45 +275,47 @@ public class YbEleParamBuilderUtil { * 获取就诊信息和诊断信息 * * @param medicationRequest 处方信息 - * @param clinicReg 医保挂号保存的信息 - * @param tenantId 租户Id + * @param clinicReg 医保挂号保存的信息 + * @param tenantId 租户Id * @return 处方明细信息 */ public PreCheckPrescription getEleVeriVisitAndDiagnosisInfo(ElepMedicationRequest medicationRequest, - ClinicReg clinicReg, Integer tenantId) { + ClinicReg clinicReg, Integer tenantId) { // 电子处方上传预核验信息 PreCheckPrescription preCheckPrescription = new PreCheckPrescription(); // 获取就诊诊断信息 - EncounterDiagnosis encDiagObjs = - encounterDiagnosisService.getOne(new LambdaQueryWrapper() - .eq(EncounterDiagnosis::getEncounterId, medicationRequest.getEncounterId()) - .eq(EncounterDiagnosis::getTenantId, tenantId).eq(EncounterDiagnosis::getConditionId,medicationRequest.getConditionId()) - .eq(EncounterDiagnosis::getDeleteFlag, DeleteFlag.NOT_DELETED.getCode())); + // EncounterDiagnosis encDiagObjs = encounterDiagnosisService.getOne(new + // LambdaQueryWrapper() + // .eq(EncounterDiagnosis::getEncounterId, medicationRequest.getEncounterId()) + // .eq(EncounterDiagnosis::getTenantId, tenantId) + // .eq(EncounterDiagnosis::getConditionId, medicationRequest.getConditionId()) + // .eq(EncounterDiagnosis::getDeleteFlag, DeleteFlag.NOT_DELETED.getCode())); + EncounterDiagnosis encDiagObjs = encounterDiagnosisService.getEncounterDiagnosisByEncounterConDefId( + medicationRequest.getEncounterId(), medicationRequest.getConditionDefId(), tenantId); // 就诊管理 - Encounter encounter = encounterService.getOne(new LambdaQueryWrapper() - .eq(Encounter::getId, medicationRequest.getEncounterId())); + Encounter encounter = encounterService + .getOne(new LambdaQueryWrapper().eq(Encounter::getId, medicationRequest.getEncounterId())); // 患者信息 Patient patient = patientService.getOne(new LambdaQueryWrapper() - .eq(Patient::getId, encounter.getPatientId()).eq(Patient::getTenantId, tenantId)); + .eq(Patient::getId, encounter.getPatientId()).eq(Patient::getTenantId, tenantId)); // 医生所属科室 Organization organization = organizationService.getOne(new LambdaQueryWrapper() - .eq(Organization::getId, medicationRequest.getOrgId()).eq(Organization::getTenantId, tenantId)); + .eq(Organization::getId, medicationRequest.getOrgId()).eq(Organization::getTenantId, tenantId)); // 就诊诊断所属科室 Organization orgDis = organizationService.getOne(new LambdaQueryWrapper() - .eq(Organization::getId, encounter.getOrganizationId()).eq(Organization::getTenantId, tenantId)); + .eq(Organization::getId, encounter.getOrganizationId()).eq(Organization::getTenantId, tenantId)); // 医生信息 Practitioner practitioner = practitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getId, medicationRequest.getPrescribingDrId()).eq(Practitioner::getTenantId, tenantId)); + .eq(Practitioner::getId, medicationRequest.getPrescribingDrId()).eq(Practitioner::getTenantId, tenantId)); // 医生详细信息 Practitioner praRole = practitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getId, medicationRequest.getPrescribingDrId()) - .eq(Practitioner::getTenantId, tenantId)); + .eq(Practitioner::getId, medicationRequest.getPrescribingDrId()).eq(Practitioner::getTenantId, tenantId)); // 医生所属科室信息 Organization orgDor = organizationService.getOne(new LambdaQueryWrapper() - .eq(Organization::getId, praRole.getOrgId()).eq(Organization::getTenantId, tenantId)); + .eq(Organization::getId, praRole.getOrgId()).eq(Organization::getTenantId, tenantId)); if (encDiagObjs == null || encounter == null || patient == null || organization == null || orgDis == null - || practitioner == null || praRole == null || orgDor == null) { + || practitioner == null || praRole == null || orgDor == null) { return null; } // 门诊/住院判断 @@ -254,17 +326,19 @@ public class YbEleParamBuilderUtil { otpIptFlag = YbEncounterClass.IMP.getValue(); } - String fixmedinsCode = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.FIXMEDINS_CODE); - String fixmedinsName = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.FIXMEDINS_NAME); + String fixmedinsCode = + SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.FIXMEDINS_CODE); + String fixmedinsName = + SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.FIXMEDINS_NAME); // 1-输入-就诊信息 ElepVeriVisitInfo eleInfo = new ElepVeriVisitInfo(); // 诊断信息 Condition condition = conditionService.getOne(new LambdaQueryWrapper() - .eq(Condition::getId, encDiagObjs.getConditionId()).eq(Condition::getTenantId, tenantId)); + .eq(Condition::getId, encDiagObjs.getConditionId()).eq(Condition::getTenantId, tenantId)); // 诊断定义 - ConditionDefinition cdObj = conditionDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ConditionDefinition::getId, condition.getDefinitionId()) + ConditionDefinition cdObj = conditionDefinitionService.getOne( + new LambdaQueryWrapper().eq(ConditionDefinition::getId, condition.getDefinitionId()) .eq(ConditionDefinition::getTenantId, tenantId)); if (condition == null || cdObj == null) { return null; @@ -272,17 +346,17 @@ public class YbEleParamBuilderUtil { // 以挂号时间为截至时间,计算年龄 BigDecimal age = calculateAge(patient.getBirthDate(), clinicReg.getBegntime()); eleInfo.setFixmedinsCode(fixmedinsCode).setFixmedinsName(fixmedinsName).setMdtrtId(clinicReg.getMdtrtId()) - .setIptOtpNo(clinicReg.getIptOtpNo()).setOtpIptFlag(otpIptFlag) - .setPsnNo(clinicReg.getPsnNo()).setPatnName(patient.getName()).setCertno(patient.getIdCard()) - // todo 目前默认都是身份证:01 - .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setPatnAge(age.toString()) - .setPrscDeptName(organization.getName()).setPrscDeptCode(organization.getYbNo()) - .setDrCode(practitioner.getYbNo()).setPrscDrName(praRole.getName()) - .setDrProfttlCodg(practitioner.getDrProfttlCode()) - .setDrProfttlName(YbDoctorTitle.getByValue(practitioner.getDrProfttlCode()).getDescription()) - .setDrDeptCode(orgDor.getYbNo()).setDrDeptName(orgDor.getName()).setMdtrtTime(encounter.getReceptionTime()) - // 院内内部处方号 - .setPrescriptionNo(medicationRequest.getPrescriptionNo()); + .setIptOtpNo(clinicReg.getIptOtpNo()).setOtpIptFlag(otpIptFlag).setPsnNo(clinicReg.getPsnNo()) + .setPatnName(patient.getName()).setCertno(patient.getIdCard()) + // todo 目前默认都是身份证:01 + .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setPatnAge(age.toString()) + .setPrscDeptName(organization.getName()).setPrscDeptCode(organization.getYbNo()) + .setDrCode(practitioner.getYbNo()).setPrscDrName(praRole.getName()) + .setDrProfttlCodg(practitioner.getDrProfttlCode()) + .setDrProfttlName(YbDoctorTitle.getByValue(practitioner.getDrProfttlCode()).getDescription()) + .setDrDeptCode(orgDor.getYbNo()).setDrDeptName(orgDor.getName()).setMdtrtTime(encounter.getReceptionTime()) + // 院内内部处方号 + .setPrescriptionNo(medicationRequest.getPrescriptionNo()); if (clinicReg.getMedType() == null) { eleInfo.setMedType("11"); } else { @@ -305,25 +379,25 @@ public class YbEleParamBuilderUtil { eleInfo.setSpDiseFlag(Whether.NO.getCode()); } // 主诊断标记 -// if (encDiagObjs.getMaindiseFlag() == Whether.YES.getValue()) { - eleInfo.setMaindiagCode(cdObj.getYbNo()).setMaindiagName(cdObj.getName()); -// } + // if (encDiagObjs.getMaindiseFlag() == Whether.YES.getValue()) { + eleInfo.setMaindiagCode(cdObj.getYbNo()).setMaindiagName(cdObj.getName()); + // } // 2-输入-诊断信息 ElepVeriDiagnosisInfo eleVerDisInfo = new ElepVeriDiagnosisInfo(); eleVerDisInfo.setDiagType(cdObj.getTypeCode()).setDiagSrtNo(encDiagObjs.getDiagSrtNo().toString()) - .setDiagCode(cdObj.getYbNo()).setDiagName(cdObj.getName()).setDiagDept(orgDis.getName()) - .setDiagDrNo(practitioner.getYbNo()).setDiagDrName(praRole.getName()) - .setDiagTime(encounter.getReceptionTime()) - // 院内内部处方号 - .setPrescriptionNo(medicationRequest.getPrescriptionNo()); + .setDiagCode(cdObj.getYbNo()).setDiagName(cdObj.getName()).setDiagDept(orgDis.getName()) + .setDiagDrNo(practitioner.getYbNo()).setDiagDrName(praRole.getName()) + .setDiagTime(encounter.getReceptionTime()) + // 院内内部处方号 + .setPrescriptionNo(medicationRequest.getPrescriptionNo()); // 主诊断标记 -// if (encDiagObjs.getMaindiseFlag() == Whether.YES.getValue()) { + // if (encDiagObjs.getMaindiseFlag() == Whether.YES.getValue()) { eleVerDisInfo.setMaindiagFlag(Whether.YES.getValue().toString()); -// } else { -// eleVerDisInfo.setMaindiagFlag(Whether.NO.getValue().toString()); -// } + // } else { + // eleVerDisInfo.setMaindiagFlag(Whether.NO.getValue().toString()); + // } preCheckPrescription.setMdtrtinfo(eleInfo).setDiseinfo(eleVerDisInfo); @@ -334,14 +408,14 @@ public class YbEleParamBuilderUtil { /** * 做成电子处方医保电子签名入参 * - * @param pcpResult 电子处方上传预核验的相响应参数 + * @param pcpResult 电子处方上传预核验的相响应参数 * @param practitionerId 审方药师Id - * @param checkDate 审方时间 - * @param tenantId 租户Id + * @param checkDate 审方时间 + * @param tenantId 租户Id * @return 处方信息 */ public ElepSignatureInput getEleSignatureInput(ElepVeriPrescriptionOutput pcpResult, Long practitionerId, - Date checkDate, Integer tenantId) { + Date checkDate, Integer tenantId) { SimpleDateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String targetDateStr = targetFormat.format(checkDate); @@ -353,15 +427,15 @@ public class YbEleParamBuilderUtil { // 审方药师信息 Practitioner practitioner = practitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, practitionerId).eq(Practitioner::getTenantId, tenantId)); + .eq(Practitioner::getUserId, practitionerId).eq(Practitioner::getTenantId, tenantId)); // 审方药师所属科室信息 Organization orgDor = organizationService.getOne(new LambdaQueryWrapper() - .eq(Organization::getId, practitioner.getOrgId()).eq(Organization::getTenantId, tenantId)); + .eq(Organization::getId, practitioner.getOrgId()).eq(Organization::getTenantId, tenantId)); // 电子处方上传预核验-输入-输入-就诊信息 List eleVerVisInfo = eleVerVisInfoService.list(new LambdaQueryWrapper() - .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) - .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) + .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (practitioner == null || orgDor == null || eleVerVisInfo == null) { return null; @@ -396,7 +470,7 @@ public class YbEleParamBuilderUtil { cpdata.put("pharProfttlCodg", practitioner.getDrProfttlCode() == null ? "" : practitioner.getDrProfttlCode()); // 14 pharProfttlName 审方药师职称名称 字符型 20 cpdata.put("pharProfttlName", practitioner.getDrProfttlCode() == null ? "" - : YbPharmacistTitle.getByValue(practitioner.getDrProfttlCode()).getDescription()); + : YbPharmacistTitle.getByValue(practitioner.getDrProfttlCode()).getDescription()); // 15 pharCode 审方医保药师代码 字符型 20 Y cpdata.put("pharCode", practitioner.getYbNo()); // 16 pharCertType 审方药师证件类型 字符型 6 Y N @@ -430,7 +504,6 @@ public class YbEleParamBuilderUtil { // 格式化日期 String formattedDate = currentDate.format(formatter); - String folderPath = outputPath + formattedDate + "\\"; // Windows 绝对路径,注意末尾的反斜杠 String fileName = pcpResult.getPrescriptionNo() + ".pdf"; // 文件名由处方号拼接而成 // 拼接完整的文件路径 @@ -440,8 +513,8 @@ public class YbEleParamBuilderUtil { ElepSignatureInput eleSinIn = new ElepSignatureInput(); eleSinIn.setFixmedinsCode(fixmedinsCode).setOriginalValue(base64EncodedString).setOriginalRxFile(base64Content) - // 医保处方编号 - .setHiRxno(pcpResult.getHiRxno()).setPrescriptionNo(pcpResult.getPrescriptionNo()); + // 医保处方编号 + .setHiRxno(pcpResult.getHiRxno()).setPrescriptionNo(pcpResult.getPrescriptionNo()); return eleSinIn; @@ -450,29 +523,29 @@ public class YbEleParamBuilderUtil { /** * 做成电子处方上传入参 * - * @param pcpResult 电子处方上传预核验的相响应参数 - * @param esResult 电子处方医保电子签名响应出参 + * @param pcpResult 电子处方上传预核验的相响应参数 + * @param esResult 电子处方医保电子签名响应出参 * @param practitionerId 审方药师Id - * @param checkDate 审方时间 - * @param tenantId 租户Id + * @param checkDate 审方时间 + * @param tenantId 租户Id * @return 电子处方上传入参 */ public ElepUploadInput getEleUploadInput(ElepVeriPrescriptionOutput pcpResult, ElepSignatureOutput esResult, - Long practitionerId, Date checkDate, Integer tenantId) { + Long practitionerId, Date checkDate, Integer tenantId) { SimpleDateFormat targetFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String targetDateStr = targetFormat.format(checkDate); // 审方药师信息 Practitioner practitioner = practitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, practitionerId).eq(Practitioner::getTenantId, tenantId)); + .eq(Practitioner::getUserId, practitionerId).eq(Practitioner::getTenantId, tenantId)); // 审方药师所属科室信息 Organization orgDor = organizationService.getOne(new LambdaQueryWrapper() - .eq(Organization::getId, practitioner.getOrgId()).eq(Organization::getTenantId, tenantId)); + .eq(Organization::getId, practitioner.getOrgId()).eq(Organization::getTenantId, tenantId)); // 电子处方上传预核验-输入-输入-就诊信息 List eleVerVisInfo = eleVerVisInfoService.list(new LambdaQueryWrapper() - .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) - .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) + .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (practitioner == null || orgDor == null || eleVerVisInfo == null) { return null; @@ -480,14 +553,16 @@ public class YbEleParamBuilderUtil { ElepUploadInput eleUploadInput = new ElepUploadInput(); eleUploadInput.setRxTraceCode(pcpResult.getRxTraceCode()).setHiRxno(pcpResult.getHiRxno()) - .setMdtrtId(eleVerVisInfo.get(0).getMdtrtId()).setPatnName(eleVerVisInfo.get(0).getPatnName()) - // todo 默认身份类型是身份证:01 - .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setCertno(eleVerVisInfo.get(0).getCertno()).setPatnName(eleVerVisInfo.get(0).getPatnName()) - .setFixmedinsCode(eleVerVisInfo.get(0).getFixmedinsCode()).setFixmedinsName(eleVerVisInfo.get(0).getFixmedinsName()) - .setDrCode(eleVerVisInfo.get(0).getDrCode()).setPrscDrName(eleVerVisInfo.get(0).getPrscDrName()) - .setPharDeptCode(orgDor.getYbNo()).setPharDeptName(orgDor.getName()).setPharCode(practitioner.getYbNo()) - .setPharName(practitioner.getName()).setPharChkTime(targetDateStr).setRxFile(esResult.getRxFile()) - .setSignDigest(esResult.getSignDigest()).setPharProfttlCodg(practitioner.getDrProfttlCode()).setPharProfttlName(YbPharmacistTitle.getByValue(practitioner.getDrProfttlCode()).getDescription()); + .setMdtrtId(eleVerVisInfo.get(0).getMdtrtId()).setPatnName(eleVerVisInfo.get(0).getPatnName()) + // todo 默认身份类型是身份证:01 + .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setCertno(eleVerVisInfo.get(0).getCertno()) + .setPatnName(eleVerVisInfo.get(0).getPatnName()).setFixmedinsCode(eleVerVisInfo.get(0).getFixmedinsCode()) + .setFixmedinsName(eleVerVisInfo.get(0).getFixmedinsName()).setDrCode(eleVerVisInfo.get(0).getDrCode()) + .setPrscDrName(eleVerVisInfo.get(0).getPrscDrName()).setPharDeptCode(orgDor.getYbNo()) + .setPharDeptName(orgDor.getName()).setPharCode(practitioner.getYbNo()).setPharName(practitioner.getName()) + .setPharChkTime(targetDateStr).setRxFile(esResult.getRxFile()).setSignDigest(esResult.getSignDigest()) + .setPharProfttlCodg(practitioner.getDrProfttlCode()) + .setPharProfttlName(YbPharmacistTitle.getByValue(practitioner.getDrProfttlCode()).getDescription()); return eleUploadInput; @@ -496,28 +571,33 @@ public class YbEleParamBuilderUtil { /** * 做成电子处方撤销入参 * - * @param pcpResult 电子处方上传预核验的相响应参数 - * @param euResult 电子处方上传响应出参 + * @param pcpResult 电子处方上传预核验的相响应参数 + * @param euResult 电子处方上传响应出参 * @param practitionerId 撤销药师Id - * @param description 撤销原因 - * @param revokeDate 撤销时间 - * @param tenantId 租户Id + * @param description 撤销原因 + * @param revokeDate 撤销时间 + * @param tenantId 租户Id * @return 电子处方撤销入参 */ public ElepRevokeInput getElepRevokeInput(ElepVeriPrescriptionOutput pcpResult, ElepUploadOutput euResult, - Long practitionerId, String description, Date revokeDate, Integer tenantId) { + Long practitionerId, String description, Date revokeDate, Integer tenantId) { + //查询原医师信息 + List list = elepMedicationRequestService.list(new LambdaQueryWrapper().eq(ElepMedicationRequest::getPrescriptionNo, pcpResult.getPrescriptionNo())); + if(list==null||list.isEmpty()){ + throw new ServiceException("未查询到处方流转信息"); + } // 撤销时药师信息 Practitioner practitioner = practitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, practitionerId).eq(Practitioner::getTenantId, tenantId)); + .eq(Practitioner::getId, list.get(0).getPrescribingDrId()).eq(Practitioner::getTenantId, tenantId)); // 撤销时药师所属科室信息 Organization orgDor = organizationService.getOne(new LambdaQueryWrapper() - .eq(Organization::getId, practitioner.getOrgId()).eq(Organization::getTenantId, tenantId)); + .eq(Organization::getId, practitioner.getOrgId()).eq(Organization::getTenantId, tenantId)); // 电子处方上传预核验-输入-输入-就诊信息 List eleVerVisInfo = eleVerVisInfoService.list(new LambdaQueryWrapper() - .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) - .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) + .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (practitioner == null || orgDor == null || eleVerVisInfo == null) { return null; @@ -525,10 +605,11 @@ public class YbEleParamBuilderUtil { ElepRevokeInput eleRevokeInput = new ElepRevokeInput(); eleRevokeInput.setHiRxno(pcpResult.getHiRxno()).setFixmedinsCode(eleVerVisInfo.get(0).getFixmedinsCode()) - .setDrCode(practitioner.getYbNo()).setUndoDrName(practitioner.getName()) - // todo 默认身份类型是身份证:01 - .setUndoDrCertno(practitioner.getPharPracCertNo()) - .setUndoDrCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setUndoRea(description).setUndoTime(revokeDate); + .setDrCode(practitioner.getYbNo()).setUndoDrName(practitioner.getName()) + // todo 默认身份类型是身份证:01 + .setUndoDrCertno(practitioner.getPharPracCertNo()) + .setUndoDrCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setUndoRea(description) + .setUndoTime(revokeDate); return eleRevokeInput; } @@ -543,8 +624,8 @@ public class YbEleParamBuilderUtil { // 电子处方上传预核验-输入-输入-就诊信息 List eleVerVisInfo = eleVerVisInfoService.list(new LambdaQueryWrapper() - .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) - .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) + .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (eleVerVisInfo == null) { return null; @@ -552,9 +633,9 @@ public class YbEleParamBuilderUtil { ElepQuerPrescriptionInput eleQueryPreObj = new ElepQuerPrescriptionInput(); eleQueryPreObj.setFixmedinsCode(eleVerVisInfo.get(0).getFixmedinsCode()).setHiRxno(pcpResult.getHiRxno()) - .setMdtrtId(eleVerVisInfo.get(0).getMdtrtId()).setPsnName(eleVerVisInfo.get(0).getPatnName()) - // todo 默认身份类型是身份证:01 - .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setCertno(eleVerVisInfo.get(0).getCertno()); + .setMdtrtId(eleVerVisInfo.get(0).getMdtrtId()).setPsnName(eleVerVisInfo.get(0).getPatnName()) + // todo 默认身份类型是身份证:01 + .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setCertno(eleVerVisInfo.get(0).getCertno()); return eleQueryPreObj; } @@ -569,8 +650,8 @@ public class YbEleParamBuilderUtil { // 电子处方上传预核验-输入-输入-就诊信息 List eleVerVisInfo = eleVerVisInfoService.list(new LambdaQueryWrapper() - .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) - .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + .eq(ElepVeriVisitInfo::getPrescriptionNo, pcpResult.getPrescriptionNo()) + .orderByDesc(ElepVeriVisitInfo::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); if (eleVerVisInfo == null) { return null; @@ -578,80 +659,11 @@ public class YbEleParamBuilderUtil { ElepMedresultInput eleQueryPreObj = new ElepMedresultInput(); eleQueryPreObj.setHiRxno(pcpResult.getHiRxno()).setFixmedinsCode(eleVerVisInfo.get(0).getFixmedinsCode()) - .setMdtrtId(eleVerVisInfo.get(0).getMdtrtId()).setPsnName(eleVerVisInfo.get(0).getPatnName()) - // todo 默认身份类型是身份证:01 - .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setCertno(eleVerVisInfo.get(0).getCertno()); + .setMdtrtId(eleVerVisInfo.get(0).getMdtrtId()).setPsnName(eleVerVisInfo.get(0).getPatnName()) + // todo 默认身份类型是身份证:01 + .setPsnCertType(YbIdDocumentType.RESIDENT_ID_CARD.getValue()).setCertno(eleVerVisInfo.get(0).getCertno()); return eleQueryPreObj; } - /** - * 获取BigDecimal类型的年龄 - * - * @param birthDate 出生日期 - * @param beginTime 计算起始日期 - * @return 年龄 - */ - public static BigDecimal calculateAge(Date birthDate, Date beginTime) { - // 验证输入参数是否为空 - if (Objects.isNull(birthDate)) { - System.out.println("出生年月日不能为空!"); - return null; - } - // 验证输入参数是否为空 - if (Objects.isNull(beginTime)) { - beginTime = DateUtils.getNowDate(); - } - - // 将 Date 转换为 LocalDate - LocalDate localBirthDate = birthDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); - LocalDate localBeginTime = beginTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); - - // 计算出生日期到起始日期之间的年份差异 - Period period = Period.between(localBirthDate, localBeginTime); - - int years = period.getYears(); - - // 检查是否已经过了生日,如果没有过,则年份减一 - boolean hasBirthdayPassed = !localBirthDate.plusYears(years).isAfter(localBeginTime); - if (!hasBirthdayPassed) { - years--; - } - - return BigDecimal.valueOf(years); - } - - /** - * 读取文件内容并获取其 Base64 字符值 - * - * @param filePath 文件路径 - * @return 文件内容的 Base64 字符值 - */ - public static String fileToBase64(String filePath) { - File file = new File(filePath); - if (!file.exists()) { - System.out.println("文件不存在!"); - return null; - } - - FileInputStream fileInputStream = null; - try { - fileInputStream = new FileInputStream(file); - byte[] fileContent = new byte[(int) file.length()]; - fileInputStream.read(fileContent); - return Base64.getEncoder().encodeToString(fileContent); - } catch (IOException e) { - e.printStackTrace(); - } finally { - if (fileInputStream != null) { - try { - fileInputStream.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - return null; - } - } diff --git a/openhis-server-new/openhis-application/src/main/resources/application-local.yml b/openhis-server-new/openhis-application/src/main/resources/application-local.yml index 3584ae64..04c623fc 100644 --- a/openhis-server-new/openhis-application/src/main/resources/application-local.yml +++ b/openhis-server-new/openhis-application/src/main/resources/application-local.yml @@ -6,7 +6,7 @@ spring: druid: # 主库数据源 master: - url: jdbc:postgresql://kocalhost:5432/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 + url: jdbc:postgresql://localhost:5432/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 username: postgres password: root # 从库数据源 diff --git a/openhis-server-new/openhis-application/src/main/resources/application.yml b/openhis-server-new/openhis-application/src/main/resources/application.yml index c2477556..4fd26eb3 100644 --- a/openhis-server-new/openhis-application/src/main/resources/application.yml +++ b/openhis-server-new/openhis-application/src/main/resources/application.yml @@ -54,7 +54,7 @@ spring: # 国际化资源文件路径 basename: i18n/messages profiles: - active: local # (天翼云)cloud (本地测试)test (本地)local (生产)prod (农大) nd (长大) cd (师大)sd + active: local #(本地)local (生产)prod (农大) # 文件上传 servlet: multipart: diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/LossReportFormMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/LossReportFormMapper.xml index 4ffcc1aa..10f0043e 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/LossReportFormMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/LossReportFormMapper.xml @@ -76,7 +76,8 @@ T1.end_time, -- 结束时间 T1.supplier_id, -- 供应商id T9."name" AS supplier_name, -- 供应商名称 - T2.part_percent --拆零比 + T2.part_percent, --拆零比 + T1.total_quantity AS old_quantity --报损前数量 FROM wor_supply_request T1 LEFT JOIN med_medication_definition T2 ON T1.item_id = T2.id @@ -137,7 +138,8 @@ T1.end_time, -- 结束时间 T1.supplier_id, -- 供应商id T9."name" AS supplier_name, -- 供应商名称 - T7.part_percent --拆零比 + T7.part_percent, --拆零比 + T1.total_quantity AS old_quantity --报损前数量 FROM wor_supply_request T1 LEFT JOIN adm_device_definition T7 ON T1.item_id = T7.id diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/ProductTransferMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/ProductTransferMapper.xml index 7ecee531..20d24838 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/ProductTransferMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/Inventorymanage/ProductTransferMapper.xml @@ -235,6 +235,7 @@ AND T1.source_location_id = T9.location_id AND T9.lot_number = T1.lot_number AND T9.delete_flag = '0' + AND T9.inventory_status_enum != 3 LEFT JOIN adm_charge_item_definition AS T10 ON T10.instance_id = T9.item_id AND T10.delete_flag = '0' @@ -248,6 +249,7 @@ AND T1.purpose_location_id = T12.location_id AND T12.lot_number = T1.lot_number AND T12.delete_flag = '0' + AND T12.inventory_status_enum != 3 WHERE T1.bus_no = #{busNo} AND T1.item_table = #{medicationTableName} AND T1.delete_flag = '0' @@ -305,6 +307,7 @@ AND T1.source_location_id = T9.location_id AND T9.lot_number = T1.lot_number AND T9.delete_flag = '0' + AND T9.inventory_status_enum != 3 LEFT JOIN adm_charge_item_definition AS T10 ON T10.instance_id = T9.item_id AND T10.delete_flag = '0' @@ -318,6 +321,7 @@ AND T1.purpose_location_id = T12.location_id AND T12.lot_number = T1.lot_number AND T12.delete_flag = '0' + AND T12.inventory_status_enum != 3 WHERE T1.bus_no = #{busNo} AND T1.item_table = #{deviceTableName} AND T1.delete_flag = '0' diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/adjustprice/SupplyMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/adjustprice/SupplyMapper.xml new file mode 100644 index 00000000..edc0a494 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/adjustprice/SupplyMapper.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/chargemanage/OutpatientChargeAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/chargemanage/OutpatientChargeAppMapper.xml index c318fb49..6ce5ac7e 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/chargemanage/OutpatientChargeAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/chargemanage/OutpatientChargeAppMapper.xml @@ -140,4 +140,5 @@ AND T1.context_enum != #{register} AND T1.delete_flag = '0' + \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/common/CommonAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/common/CommonAppMapper.xml index 2bc6a499..ece486d1 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/common/CommonAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/common/CommonAppMapper.xml @@ -196,6 +196,7 @@ + SELECT T3."name" + FROM adm_encounter_diagnosis T1 + INNER JOIN cli_condition T2 + ON T2.id = T1.condition_id + INNER JOIN cli_condition_definition T3 + ON T3.id = T2.definition_id + WHERE T1.encounter_id = #{encounterId} + + + + + \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/inhospitalnursestation/AdviceProcessAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/inhospitalnursestation/AdviceProcessAppMapper.xml index 9d4c0ca3..84b1e6f5 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/inhospitalnursestation/AdviceProcessAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/inhospitalnursestation/AdviceProcessAppMapper.xml @@ -136,13 +136,16 @@ ii.day_times, ii.bus_no, ii."patient_name" AS patient_name, - ii."bad_name" AS bad_name, + ii."bed_name" AS bed_name, ii.gender_enum , ii.birth_date , + ii.patient_id, ii.contract_name , ii.condition_names, ii.admitting_doctor_name AS admitting_doctor_name, - ii.balance_amount AS balance_amount + ii.balance_amount AS balance_amount, + ii.account_id AS account_id, + ii.performer_check_id FROM (( SELECT T1.encounter_id, T1.tenant_id, #{medMedicationRequest} AS advice_table, @@ -154,6 +157,7 @@ T1.skin_test_flag AS skin_test_flag, T1.infusion_flag AS inject_flag, T1.group_id AS group_id, + T1.performer_check_id, T2."name" AS advice_name, T2.id AS item_id, T3.total_volume AS volume, @@ -176,13 +180,15 @@ af.day_times, ae.bus_no, ap."name" AS patient_name, - al2."name" AS bad_name, + al2."name" AS bed_name, ap.gender_enum , ap.birth_date , + ap.id AS patient_id, fc.contract_name , diagnosis.condition_names, pra."name" AS admitting_doctor_name, - personal_account.balance_amount + personal_account.balance_amount, + personal_account.id AS account_id FROM med_medication_request AS T1 LEFT JOIN med_medication_definition AS T2 ON T2.id = T1.medication_id @@ -245,7 +251,8 @@ LEFT JOIN adm_practitioner pra ON aep.practitioner_id = pra.id AND pra.delete_flag = '0' - LEFT JOIN ( SELECT aa.encounter_id, + LEFT JOIN ( SELECT aa.id, + aa.encounter_id, (aa.balance_amount - COALESCE(SUM(CASE WHEN aci.status_enum IN (#{billed}, #{billable}) THEN aci.total_price ELSE 0 END), 0) + @@ -257,7 +264,8 @@ AND aa.delete_flag = '0' WHERE aa.type_code = #{personalCashAccount} AND aa.delete_flag = '0' - GROUP BY aa.encounter_id, + GROUP BY aa.id, + aa.encounter_id, aa.balance_amount ) AS personal_account ON personal_account.encounter_id = ae.id @@ -281,6 +289,7 @@ NULL AS skin_test_flag, NULL AS inject_flag, NULL AS group_id, + T1.performer_check_id, T2."name" AS advice_name, T2.id AS item_id, NULL AS volume, @@ -303,13 +312,15 @@ af.day_times, ae.bus_no, ap."name" AS patient_name, - al2."name" AS bad_name, + al2."name" AS bed_name, ap.gender_enum , ap.birth_date , + ap.id AS patient_id, fc.contract_name , diagnosis.condition_names, pra."name" AS admitting_doctor_name, - personal_account.balance_amount + personal_account.balance_amount, + personal_account.id AS account_id FROM wor_service_request AS T1 LEFT JOIN wor_activity_definition AS T2 ON T2.id = T1.activity_id @@ -367,7 +378,8 @@ LEFT JOIN adm_practitioner pra ON aep.practitioner_id = pra.id AND pra.delete_flag = '0' - LEFT JOIN ( SELECT aa.encounter_id, + LEFT JOIN ( SELECT aa.id, + aa.encounter_id, (aa.balance_amount - COALESCE(SUM(CASE WHEN aci.status_enum IN (#{billed}, #{billable}) THEN aci.total_price ELSE 0 END), 0) + @@ -379,7 +391,8 @@ AND aa.delete_flag = '0' WHERE aa.type_code = #{personalCashAccount} AND aa.delete_flag = '0' - GROUP BY aa.encounter_id, + GROUP BY aa.id, + aa.encounter_id, aa.balance_amount ) AS personal_account ON personal_account.encounter_id = ae.id @@ -395,5 +408,4 @@ ) AS ii ${ew.customSqlSegment} - \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/jlau/ReviewPrescriptionRecordsAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/jlau/ReviewPrescriptionRecordsAppMapper.xml index 42cbdf31..297dfd11 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/jlau/ReviewPrescriptionRecordsAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/jlau/ReviewPrescriptionRecordsAppMapper.xml @@ -4,5 +4,27 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/paymentmanage/PaymentMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/paymentmanage/PaymentMapper.xml index 06a2e9fb..a0b6bf02 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/paymentmanage/PaymentMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/paymentmanage/PaymentMapper.xml @@ -56,6 +56,9 @@ WHERE 1 = 1 AND t.delete_flag = '0' AND t.kind_enum = #{kindEnum} + + AND invoice.bill_no = #{invoiceNo} + ORDER BY t.create_time DESC) as T1 ${ew.customSqlSegment} diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/InpatientMedicineSummaryDispenseMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/SummaryDispenseMedicineMapper.xml similarity index 99% rename from openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/InpatientMedicineSummaryDispenseMapper.xml rename to openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/SummaryDispenseMedicineMapper.xml index 9433688a..cc5c866e 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/InpatientMedicineSummaryDispenseMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/SummaryDispenseMedicineMapper.xml @@ -1,7 +1,7 @@ - - SELECT ii.tenant_id, ii.bus_no,--单据号 ii.request_id,--供应请求id diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/DepartmentRevenueStatisticsMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/DepartmentRevenueStatisticsMapper.xml new file mode 100644 index 00000000..7d74857c --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/DepartmentRevenueStatisticsMapper.xml @@ -0,0 +1,67 @@ + + + + + + \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/ReportStatisticsMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/ReportStatisticsMapper.xml new file mode 100644 index 00000000..a04ffca6 --- /dev/null +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/reportmanage/ReportStatisticsMapper.xml @@ -0,0 +1,101 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/openhis-server-new/openhis-common/pom.xml b/openhis-server-new/openhis-common/pom.xml index ddc5cc7d..89b8d7b5 100644 --- a/openhis-server-new/openhis-common/pom.xml +++ b/openhis-server-new/openhis-common/pom.xml @@ -16,6 +16,10 @@ + + org.apache.httpcomponents + httpclient + diff --git a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/aspectj/DictAspect.java b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/aspectj/DictAspect.java index d884700d..23c80725 100644 --- a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/aspectj/DictAspect.java +++ b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/aspectj/DictAspect.java @@ -109,6 +109,8 @@ public class DictAspect { e.printStackTrace(); } } + } else { + processDict(fieldValue); // 递归处理 Dto 中的每个元素 } } } diff --git a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/constant/CommonConstants.java b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/constant/CommonConstants.java index 68df9bab..02d2c155 100644 --- a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/constant/CommonConstants.java +++ b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/constant/CommonConstants.java @@ -335,6 +335,10 @@ public class CommonConstants { */ String applyTime = "apply_time"; + /** + * 校对人Id + */ + String PerformerCheckId = "performer_check_id"; } /** diff --git a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/AssignSeqEnum.java b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/AssignSeqEnum.java index db82a797..1b3e061e 100644 --- a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/AssignSeqEnum.java +++ b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/AssignSeqEnum.java @@ -307,7 +307,11 @@ public enum AssignSeqEnum { * b * 病历文书 */ - PURCHASE_DOCUMENT("63", "病历文书", "DOC"); + PURCHASE_DOCUMENT("63", "病历文书", "DOC"), + /** + * 调价单 + */ + CHANGE_PRICE_BUZ("64", "调整零售价", "CPB"); private final String code; private final String info; private final String prefix; diff --git a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/utils/CommonUtil.java b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/utils/CommonUtil.java index 24f0b660..0231c873 100644 --- a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/utils/CommonUtil.java +++ b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/utils/CommonUtil.java @@ -1,5 +1,23 @@ package com.openhis.common.utils; +import java.io.IOException; +import java.security.KeyManagementException; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.security.cert.X509Certificate; +import java.util.List; + +import javax.net.ssl.SSLContext; +import javax.net.ssl.TrustManager; +import javax.net.ssl.X509TrustManager; + +import org.apache.http.conn.ssl.NoopHostnameVerifier; +import org.apache.http.conn.ssl.SSLConnectionSocketFactory; +import org.springframework.web.multipart.MultipartFile; + +import com.core.common.core.domain.R; +import com.core.common.utils.poi.ExcelUtil; + /** * 共通工具类 * @@ -7,4 +25,69 @@ package com.openhis.common.utils; */ public class CommonUtil { + /** + * 尝试转化为int + * + * @param intStr int字符串 + * @return int值 + */ + public static Integer tryParseInt(String intStr) { + try { + return Integer.parseInt(intStr); + } catch (Exception e) { + return null; + } + } + + /** + * 读取导入的Excel文件 + * + * @param file 文件 + * @param clazz 转换的Class + * @return 转换后的实体列表 + */ + public static R> readImportedExcelFile(MultipartFile file, Class clazz) { + ExcelUtil util = new ExcelUtil<>(clazz); + List importDtoList; + try { + importDtoList = util.importExcel(file.getInputStream()); + } catch (IOException e) { + return R.fail("导入失败!文件读取异常"); + } + if (importDtoList.isEmpty()) { + return R.fail("导入失败!文件不能为空"); + } + return R.ok(importDtoList); + } + + /** + * 创建无视SSL验证的SSLSocketFactory + */ + public static SSLConnectionSocketFactory createIgnoreSslSocketFactory() { + try { + // 创建信任所有证书的TrustManager + X509TrustManager trustAllCert = new X509TrustManager() { + @Override + public void checkClientTrusted(X509Certificate[] chain, String authType) {} + + @Override + public void checkServerTrusted(X509Certificate[] chain, String authType) {} + + @Override + public X509Certificate[] getAcceptedIssuers() { + return new X509Certificate[0]; + } + }; + + // 初始化SSLContext + SSLContext sslContext = SSLContext.getInstance("SSL"); + sslContext.init(null, new TrustManager[] {trustAllCert}, new SecureRandom()); + + // 创建不验证主机名的SocketFactory + return new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE // 关键:禁用主机名验证 + ); + } catch (NoSuchAlgorithmException | KeyManagementException e) { + throw new RuntimeException("SSL配置失败", e); + } + } } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/ChargeItem.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/ChargeItem.java index 20ecc8d7..7a35e522 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/ChargeItem.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/ChargeItem.java @@ -152,4 +152,6 @@ public class ChargeItem extends HisBaseEntity { */ private Integer tcmFlag; + /** 执行id */ + private Long procedureId; } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/mapper/EncounterDiagnosisMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/mapper/EncounterDiagnosisMapper.java index 9b1dd12e..0e8a2acc 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/mapper/EncounterDiagnosisMapper.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/mapper/EncounterDiagnosisMapper.java @@ -29,4 +29,14 @@ public interface EncounterDiagnosisMapper extends BaseMapper */ void deleteTcmByEncounterId(@Param("encounterId") Long encounterId); + /** + * 根据就诊id定义id等查询就诊诊断 + * + * @param encounterId 就诊id + * @param conditionDefId 定义id + * @param tenantId 租户 + * @return 查询结果 + */ + EncounterDiagnosis getEncounterDiagnosisByEncounterConDefId(@Param("encounterId") Long encounterId, + @Param("conditionDefId") Long conditionDefId, @Param("tenantId") Integer tenantId); } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IChargeItemDefinitionService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IChargeItemDefinitionService.java index 8e7dabbc..90787307 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IChargeItemDefinitionService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IChargeItemDefinitionService.java @@ -1,5 +1,7 @@ package com.openhis.administration.service; +import java.math.BigDecimal; + import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.openhis.administration.domain.ChargeItemDefinition; @@ -17,8 +19,8 @@ public interface IChargeItemDefinitionService extends IService getPage(ChargeItemDefinition chargeItemDefinition, Integer pageNo, Integer pageSize); @@ -42,11 +44,28 @@ public interface IChargeItemDefinitionService extends IService { */ List getChargeItemDefInfoByIds(List chargeItemIds); + /** + * 根据执行id查询收费项目信息 + * + * @param procedureIdList 执行id列表 + * @return 收费项目信息 + */ + List getChargeItemByProcedureId(List procedureIdList); + + /** + * 根据执行id列表更新账单状态为:待收费 + * + * @param procedureIdList 执行id列表 + */ + void updatePlannedChargeStatus(List procedureIdList); + } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IEncounterDiagnosisService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IEncounterDiagnosisService.java index 77233c22..16cf5d5b 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IEncounterDiagnosisService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/IEncounterDiagnosisService.java @@ -1,11 +1,11 @@ package com.openhis.administration.service; +import java.util.List; + import com.baomidou.mybatisplus.extension.service.IService; import com.openhis.administration.domain.EncounterDiagnosis; import com.openhis.common.enums.ybenums.YbIptDiseTypeCode; -import java.util.List; - /** * 就诊诊断管理Service接口 * @@ -68,4 +68,15 @@ public interface IEncounterDiagnosisService extends IService * @return 主诊断 */ EncounterDiagnosis getMainDiagnosis(List list); + + /** + * 根据就诊id定义id等查询就诊诊断 + * + * @param encounterId 就诊id + * @param conditionDefId 定义id + * @param tenantId 租户 + * @return 查询结果 + */ + EncounterDiagnosis getEncounterDiagnosisByEncounterConDefId(Long encounterId, Long conditionDefId, + Integer tenantId); } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemDefinitionServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemDefinitionServiceImpl.java index 472e5507..a17e3c05 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemDefinitionServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemDefinitionServiceImpl.java @@ -1,16 +1,27 @@ package com.openhis.administration.service.impl; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.core.common.utils.DateUtils; +import com.openhis.administration.domain.ChargeItemDefDetail; import com.openhis.administration.domain.ChargeItemDefinition; import com.openhis.administration.domain.HealthcareService; import com.openhis.administration.mapper.ChargeItemDefinitionMapper; +import com.openhis.administration.service.IChargeItemDefDetailService; import com.openhis.administration.service.IChargeItemDefinitionService; import com.openhis.common.constant.CommonConstants; +import com.openhis.common.enums.ConditionCode; import com.openhis.common.enums.DelFlag; +import com.openhis.common.enums.PublicationStatus; +import com.openhis.common.enums.Whether; /** * 费用定价管理Service业务层处理 @@ -22,6 +33,9 @@ import com.openhis.common.enums.DelFlag; public class ChargeItemDefinitionServiceImpl extends ServiceImpl implements IChargeItemDefinitionService { + @Autowired + private IChargeItemDefDetailService chargeItemDefDetailService; + /** * 获取分页列表 * @@ -96,4 +110,48 @@ public class ChargeItemDefinitionServiceImpl extends ServiceImpl chargeItemDefDetailList = new ArrayList<>(); + // 购入价子表(购入价不一定存在) + if (purchasePrice != null) { + ChargeItemDefDetail defDetailPurchase = + new ChargeItemDefDetail().setDefinitionId(chargeItemDefinition.getId()) + .setConditionCode(ConditionCode.PURCHASE.getCode()).setAmount(purchasePrice); + chargeItemDefDetailList.add(defDetailPurchase); + } + // 零售价子表 + ChargeItemDefDetail defDetailRetail = new ChargeItemDefDetail().setDefinitionId(chargeItemDefinition.getId()) + .setConditionCode(ConditionCode.UNIT.getCode()).setConditionValue(unitCode).setAmount(retailPrice); + chargeItemDefDetailList.add(defDetailRetail); + // 最高零售价子表 + ChargeItemDefDetail defDetailMaximumRetail = + new ChargeItemDefDetail().setDefinitionId(chargeItemDefinition.getId()) + .setConditionCode(ConditionCode.LIMIT.getCode()).setAmount(maximumRetailPrice); + chargeItemDefDetailList.add(defDetailMaximumRetail); + chargeItemDefDetailService.saveBatch(chargeItemDefDetailList); + } + } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemServiceImpl.java index 763fc865..2bfded66 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/ChargeItemServiceImpl.java @@ -94,7 +94,8 @@ public class ChargeItemServiceImpl extends ServiceImpl chargeItemIdList) { baseMapper.update(new ChargeItem().setStatusEnum(ChargeItemStatus.REFUNDING.getValue()), - new LambdaUpdateWrapper().in(ChargeItem::getId, chargeItemIdList)); + new LambdaUpdateWrapper().in(ChargeItem::getId, chargeItemIdList).eq(ChargeItem::getDeleteFlag, + DelFlag.NO.getCode())); } /** @@ -107,7 +108,8 @@ public class ChargeItemServiceImpl extends ServiceImpl chargeItemIdList, Integer value) { baseMapper.update( new ChargeItem().setStatusEnum(value).setPerformerId(SecurityUtils.getLoginUser().getPractitionerId()), - new LambdaUpdateWrapper().in(ChargeItem::getId, chargeItemIdList)); + new LambdaUpdateWrapper().in(ChargeItem::getId, chargeItemIdList).eq(ChargeItem::getDeleteFlag, + DelFlag.NO.getCode())); } /** @@ -149,7 +151,8 @@ public class ChargeItemServiceImpl extends ServiceImpl getChargeItemInfoByReqId(List requestIdList) { - return baseMapper.selectList(new LambdaQueryWrapper().in(ChargeItem::getServiceId, requestIdList)); + return baseMapper.selectList(new LambdaQueryWrapper().in(ChargeItem::getServiceId, requestIdList) + .eq(ChargeItem::getDeleteFlag, DelFlag.NO.getCode())); } /** @@ -173,4 +176,30 @@ public class ChargeItemServiceImpl extends ServiceImpl getChargeItemDefInfoByIds(List chargeItemIds) { return baseMapper.getChargeItemDefInfoByIds(chargeItemIds); } + + /** + * 根据执行id查询收费项目信息 + * + * @param procedureIdList 执行id列表 + * @return 收费项目信息 + */ + @Override + public List getChargeItemByProcedureId(List procedureIdList) { + return baseMapper.selectList(new LambdaQueryWrapper() + .in(ChargeItem::getProcedureId, procedureIdList).eq(ChargeItem::getDeleteFlag, DelFlag.NO.getCode())); + } + + /** + * 根据执行id列表更新账单状态为:待收费 + * + * @param procedureIdList 执行id列表 + */ + @Override + public void updatePlannedChargeStatus(List procedureIdList) { + for (Long procedureId : procedureIdList) { + baseMapper.update(new ChargeItem().setStatusEnum(ChargeItemStatus.PLANNED.getValue()), + new LambdaUpdateWrapper().eq(ChargeItem::getProcedureId, procedureId) + .eq(ChargeItem::getDeleteFlag, DelFlag.NO.getCode())); + } + } } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/EncounterDiagnosisServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/EncounterDiagnosisServiceImpl.java index 8e685346..dfa8b5ba 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/EncounterDiagnosisServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/service/impl/EncounterDiagnosisServiceImpl.java @@ -6,8 +6,6 @@ import java.util.stream.Collectors; import javax.annotation.Resource; -import com.openhis.common.enums.Whether; -import com.openhis.common.enums.ybenums.YbIptDiseTypeCode; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -16,6 +14,8 @@ import com.openhis.administration.domain.EncounterDiagnosis; import com.openhis.administration.mapper.EncounterDiagnosisMapper; import com.openhis.administration.service.IEncounterDiagnosisService; import com.openhis.clinical.mapper.ConditionMapper; +import com.openhis.common.enums.Whether; +import com.openhis.common.enums.ybenums.YbIptDiseTypeCode; /** * 就诊诊断管理Service业务层处理 @@ -86,6 +86,7 @@ public class EncounterDiagnosisServiceImpl extends ServiceImpl getDiagnosisList(Long encounterId, YbIptDiseTypeCode ybIptDiseTypeCode) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper().eq(EncounterDiagnosis::getEncounterId, encounterId); - if(ybIptDiseTypeCode!=null){ - queryWrapper.eq(EncounterDiagnosis::getIptDiseTypeCode,ybIptDiseTypeCode.getValue()); + LambdaQueryWrapper queryWrapper = + new LambdaQueryWrapper().eq(EncounterDiagnosis::getEncounterId, encounterId); + if (ybIptDiseTypeCode != null) { + queryWrapper.eq(EncounterDiagnosis::getIptDiseTypeCode, ybIptDiseTypeCode.getValue()); } return baseMapper.selectList(queryWrapper); } /** * 在诊断中筛选主诊断 + * * @param list 诊断集合 * @return 主诊断 */ @Override public EncounterDiagnosis getMainDiagnosis(List list) { for (EncounterDiagnosis encounterDiagnosis : list) { - if(Whether.YES.getValue()==encounterDiagnosis.getMaindiseFlag()){ + if (Whether.YES.getValue() == encounterDiagnosis.getMaindiseFlag()) { return encounterDiagnosis; } } return null; } + + /** + * 根据就诊id定义id等查询就诊诊断 + * + * @param encounterId 就诊id + * @param conditionDefId 定义id + * @param tenantId 租户 + * @return 查询结果 + */ + @Override + public EncounterDiagnosis getEncounterDiagnosisByEncounterConDefId(Long encounterId, Long conditionDefId, + Integer tenantId) { + return baseMapper.getEncounterDiagnosisByEncounterConDefId(encounterId, conditionDefId, tenantId); + } } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IConditionDefinitionService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IConditionDefinitionService.java index 62aaaabc..944593bd 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IConditionDefinitionService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IConditionDefinitionService.java @@ -1,10 +1,12 @@ package com.openhis.clinical.service; +import java.util.List; + +import javax.servlet.http.HttpServletRequest; + import com.baomidou.mybatisplus.extension.service.IService; import com.openhis.clinical.domain.ConditionDefinition; -import java.util.List; - /** * 诊断定义管理Service接口 * @@ -36,4 +38,21 @@ public interface IConditionDefinitionService extends IService getConditionDefinitionListByIds(List collect); + + /** + * 根据名称查询诊断定义 + * + * @param searchKey 目标字符 + * @return 诊断定义集合 + */ + List getConditionDefinitionListBySearchKey(String searchKey, HttpServletRequest request); + + /** + * 诊断定义查询 + * + * @param conditionDefId 诊断定义id + * @return 查询结果 + */ + ConditionDefinition getConditionDefinitionListById(Long conditionDefId); + } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IProcedureService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IProcedureService.java index d41c5c4b..0e52a285 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IProcedureService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/IProcedureService.java @@ -1,5 +1,6 @@ package com.openhis.clinical.service; +import java.util.Date; import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; @@ -35,12 +36,14 @@ public interface IProcedureService extends IService { * @param eventStatus 执行状态 * @param procedureCategory 执行种类 * @param locationId 执行位置 + * @param exeDate 执行时间 * @param groupId 组号 * @param refundId 取消执行id - * @return 是否成功 + * @return 执行id */ - boolean addProcedureRecord(Long encounterId, Long patientId, Long requestId, String requestTable, - EventStatus eventStatus, ProcedureCategory procedureCategory, Long locationId, Long groupId, Long refundId); + Long addProcedureRecord(Long encounterId, Long patientId, Long requestId, String requestTable, + EventStatus eventStatus, ProcedureCategory procedureCategory, Long locationId, Date exeDate, Long groupId, + Long refundId); /** * 添加药品执行记录 diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ConditionDefinitionServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ConditionDefinitionServiceImpl.java index b496412a..4005a35e 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ConditionDefinitionServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ConditionDefinitionServiceImpl.java @@ -1,16 +1,22 @@ package com.openhis.clinical.service.impl; +import java.util.Arrays; +import java.util.HashSet; import java.util.List; -import com.openhis.common.enums.DelFlag; +import javax.servlet.http.HttpServletRequest; + import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.openhis.clinical.domain.ConditionDefinition; import com.openhis.clinical.mapper.ConditionDefinitionMapper; import com.openhis.clinical.service.IConditionDefinitionService; +import com.openhis.common.enums.DelFlag; +import com.openhis.common.utils.HisQueryUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -72,4 +78,31 @@ public class ConditionDefinitionServiceImpl extends ServiceImpl() .in(ConditionDefinition::getId, collect).eq(ConditionDefinition::getDescription, DelFlag.NO.getCode())); } + + /** + * 根据名称查询诊断定义 + * + * @param searchKey 目标字符 + * @return 诊断定义集合 + */ + @Override + public List getConditionDefinitionListBySearchKey(String searchKey, + HttpServletRequest request) { + // 构建查询条件 + QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(null, searchKey, + new HashSet<>(Arrays.asList("condition_code", "name", "py_str", "wb_str")), request); + return baseMapper.selectList(queryWrapper); + } + + /** + * 诊断定义查询 + * + * @param conditionDefId 诊断定义id + * @return 查询结果 + */ + @Override + public ConditionDefinition getConditionDefinitionListById(Long conditionDefId) { + return baseMapper + .selectOne(new LambdaQueryWrapper().eq(ConditionDefinition::getId, conditionDefId)); + } } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ProcedureServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ProcedureServiceImpl.java index 141218a2..65138da0 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ProcedureServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/clinical/service/impl/ProcedureServiceImpl.java @@ -60,14 +60,15 @@ public class ProcedureServiceImpl extends ServiceImpl 0) { // 添加执行人子表 - return procedurePerformerService.addPerformRecord(procedure.getId(), now); + boolean performerResult = procedurePerformerService.addPerformRecord(procedure.getId(), exeDate); + if (!performerResult) { + return null; + } } else { - return false; + return null; } + return procedure.getId(); } /** diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/crosssystem/utils/CrossSystemSendApplyUtil.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/crosssystem/utils/CrossSystemSendApplyUtil.java index 9317d37f..5c0bf240 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/crosssystem/utils/CrossSystemSendApplyUtil.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/crosssystem/utils/CrossSystemSendApplyUtil.java @@ -1,23 +1,13 @@ package com.openhis.crosssystem.utils; import java.io.IOException; -import java.security.KeyManagementException; -import java.security.NoSuchAlgorithmException; -import java.security.SecureRandom; -import java.security.cert.X509Certificate; import java.util.HashMap; import java.util.Map; import java.util.stream.Collectors; -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; - import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; -import org.apache.http.conn.ssl.NoopHostnameVerifier; -import org.apache.http.conn.ssl.SSLConnectionSocketFactory; import org.apache.http.entity.ContentType; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; @@ -32,6 +22,7 @@ import com.core.common.exception.ServiceException; import com.core.common.utils.DateUtils; import com.core.common.utils.StringUtils; import com.core.web.util.TenantOptionUtil; +import com.openhis.common.utils.CommonUtil; import com.openhis.crosssystem.dto.*; import com.openhis.crosssystem.enums.LisAgeUnit; import com.openhis.crosssystem.enums.PacsAgeUnit; @@ -119,7 +110,7 @@ public class CrossSystemSendApplyUtil { .setSocketTimeout(30000).build(); // 创建无视SSL验证的HttpClient CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig) - .setSSLSocketFactory(createIgnoreSslSocketFactory()).build(); + .setSSLSocketFactory(CommonUtil.createIgnoreSslSocketFactory()).build(); CloseableHttpResponse response = null; // 发起HTTP请求 try { @@ -221,7 +212,7 @@ public class CrossSystemSendApplyUtil { .setSocketTimeout(30000).build(); // 创建无视SSL验证的HttpClient CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig) - .setSSLSocketFactory(createIgnoreSslSocketFactory()).build(); + .setSSLSocketFactory(CommonUtil.createIgnoreSslSocketFactory()).build(); CloseableHttpResponse response = null; // 发起HTTP请求 try { @@ -255,35 +246,4 @@ public class CrossSystemSendApplyUtil { } } - /** - * 创建无视SSL验证的SSLSocketFactory - */ - private static SSLConnectionSocketFactory createIgnoreSslSocketFactory() { - try { - // 创建信任所有证书的TrustManager - X509TrustManager trustAllCert = new X509TrustManager() { - @Override - public void checkClientTrusted(X509Certificate[] chain, String authType) {} - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) {} - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[0]; - } - }; - - // 初始化SSLContext - SSLContext sslContext = SSLContext.getInstance("SSL"); - sslContext.init(null, new TrustManager[] {trustAllCert}, new SecureRandom()); - - // 创建不验证主机名的SocketFactory - return new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE // 关键:禁用主机名验证 - ); - } catch (NoSuchAlgorithmException | KeyManagementException e) { - throw new RuntimeException("SSL配置失败", e); - } - } - } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinition.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinition.java index 02b5d9c9..62688f32 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinition.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinition.java @@ -45,5 +45,10 @@ public class DocStatisticsDefinition extends HisBaseEntity { 单位 */ private String unit; + /** 字典名称 */ + private String dictName; + + /** 字典类型 */ + private String dictType; } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinitionOption.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinitionOption.java index 07aaabbd..5cd737c9 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinitionOption.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/document/domain/DocStatisticsDefinitionOption.java @@ -10,6 +10,9 @@ import lombok.experimental.Accessors; @TableName("doc_statistics_definition_option") @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) +/** + * 统计定义选项 已作废 + */ public class DocStatisticsDefinitionOption extends HisBaseEntity { private Long id; /* diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationDispense.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationDispense.java index 290d49d2..6361ae29 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationDispense.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationDispense.java @@ -123,4 +123,7 @@ public class MedicationDispense extends HisBaseEntity { /** 追溯码 */ private String traceNo; + + /** 执行id */ + private Long procedureId; } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationRequest.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationRequest.java index abcb27f0..2248a82d 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationRequest.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/domain/MedicationRequest.java @@ -233,4 +233,10 @@ public class MedicationRequest extends HisBaseEntity { * 签发编码 */ private String signCode; + + /** 请求基于什么 */ + private String basedOnTable; + + /** 请求基于什么的ID */ + private Long basedOnId; } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/IMedicationDispenseService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/IMedicationDispenseService.java index 182e5329..3937ef98 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/IMedicationDispenseService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/IMedicationDispenseService.java @@ -2,11 +2,11 @@ package com.openhis.medication.service; import java.util.List; +import org.apache.ibatis.annotations.Param; + import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.administration.domain.Practitioner; import com.openhis.medication.domain.MedicationDispense; import com.openhis.medication.domain.MedicationRequest; -import org.apache.ibatis.annotations.Param; /** * 药品发放管理Service接口 @@ -24,6 +24,14 @@ public interface IMedicationDispenseService extends IService */ void handleMedicationDispense(MedicationRequest medicationRequest, String dbOpType); + /** + * 医嘱执行生成药品发放,状态为待配药 + * + * @param medicationRequest 药品医嘱请求 + * @param procedureId 执行记录id + */ + void generateMedicationDispense(MedicationRequest medicationRequest,Long procedureId); + /** * 删除药品发放信息 * @@ -68,6 +76,7 @@ public interface IMedicationDispenseService extends IService * @return 发放信息 */ List selectByRequestIdList(List requestIdList); + /** * 通过id获取药品发放信息 * @@ -82,4 +91,12 @@ public interface IMedicationDispenseService extends IService * @param medDispenseId 发放id列表 */ void updateDispenseStatusSummarized(List medDispenseId); + + /** + * 通过执行id获取药品发放信息 + * + * @param procedureIdList 执行id列表 + * @return 发放信息 + */ + List getMedDispenseByProcedureId(List procedureIdList); } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/impl/MedicationDispenseServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/impl/MedicationDispenseServiceImpl.java index 418aed20..f801953c 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/impl/MedicationDispenseServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/medication/service/impl/MedicationDispenseServiceImpl.java @@ -105,6 +105,69 @@ public class MedicationDispenseServiceImpl extends ServiceImpl getMedDispenseByProcedureId(List procedureIdList) { + return baseMapper.selectList( + new LambdaQueryWrapper().in(MedicationDispense::getProcedureId, procedureIdList) + .eq(MedicationDispense::getDeleteFlag, DelFlag.NO.getCode())); + } } \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceDispense.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceDispense.java index d7e01ee2..301e2322 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceDispense.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceDispense.java @@ -1,16 +1,17 @@ package com.openhis.workflow.domain; +import java.math.BigDecimal; +import java.util.Date; + import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.core.common.core.domain.HisBaseEntity; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; -import java.math.BigDecimal; -import java.util.Date; - /** * 器材发放管理Entity实体 * @@ -36,9 +37,10 @@ public class DeviceDispense extends HisBaseEntity { /** 器材发放状态 */ private Integer statusEnum; + // 暂时不要用 /** 请求基于什么 */ private String basedOnTable; - + // 暂时不要用 /** 请求基于什么的ID */ private Long basedOnId; @@ -111,4 +113,6 @@ public class DeviceDispense extends HisBaseEntity { /** 追溯码 */ private String traceNo; + /** 执行id */ + private Long procedureId; } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceRequest.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceRequest.java index e12de642..1047ca14 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceRequest.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/DeviceRequest.java @@ -165,4 +165,9 @@ public class DeviceRequest extends HisBaseEntity { */ private Long encounterDiagnosisId; + /** 请求基于什么 */ + private String basedOnTable; + + /** 请求基于什么的ID */ + private Long basedOnId; } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/ElepMedicationRequest.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/ElepMedicationRequest.java index bead6e3d..c897f118 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/ElepMedicationRequest.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/domain/ElepMedicationRequest.java @@ -6,9 +6,8 @@ import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; - import com.core.common.core.domain.HisBaseEntity; -import com.openhis.common.annotation.Dict; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; @@ -71,6 +70,12 @@ public class ElepMedicationRequest extends HisBaseEntity { /** 诊断id */ private Long conditionId; + /** 诊断id */ + private Long conditionDefId; + + /** 慢病字段 */ + private String opspDiseCode; + /** 有效天数 */ private Integer validityDays; @@ -100,7 +105,7 @@ public class ElepMedicationRequest extends HisBaseEntity { /** 调配药师 */ private Long dispensingDrId; - /** 发药药师*/ + /** 发药药师 */ private Long issuingDrId; /** 延长原因 */ diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/IDeviceDispenseService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/IDeviceDispenseService.java index 0bf43470..9aad1df1 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/IDeviceDispenseService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/IDeviceDispenseService.java @@ -5,14 +5,9 @@ import java.util.Date; import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; -import com.core.common.core.domain.model.LoginUser; import com.openhis.administration.domain.Practitioner; -import com.openhis.medication.domain.MedicationDispense; -import com.openhis.medication.domain.MedicationRequest; import com.openhis.workflow.domain.DeviceDispense; import com.openhis.workflow.domain.DeviceRequest; -import com.openhis.workflow.domain.ServiceRequest; -import org.apache.ibatis.annotations.Param; /** * 器材发放管理Service接口 @@ -48,9 +43,10 @@ public interface IDeviceDispenseService extends IService { /** * 获取执行过的器材数据 * - * @param basedOnId 请求基于什么的ID + * @param procedureIdList 执行id列表 + * @return 操作结果 */ - List selectDeviceDispenseByBasedOnId(Long basedOnId); + List getDevDispenseByProcedureId(List procedureIdList); /** * 执行器材发放 @@ -111,12 +107,4 @@ public interface IDeviceDispenseService extends IService { * @param devDispenseId 发放id列表 */ void updateDispenseStatusSummarized(List devDispenseId); - - /** - * 通过id获取耗材发放信息 - * - * @param idList 发放id - * @return 发放信息 - */ - List selectByIdList(@Param("idList") List idList); } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/DeviceDispenseServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/DeviceDispenseServiceImpl.java index d30d3a92..ca139269 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/DeviceDispenseServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/DeviceDispenseServiceImpl.java @@ -8,10 +8,6 @@ import java.util.List; import javax.annotation.Resource; -import com.core.common.utils.DateUtils; -import com.openhis.common.enums.DelFlag; -import com.openhis.medication.domain.MedicationDispense; -import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -19,9 +15,9 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.core.common.utils.AssignSeqUtil; import com.openhis.administration.domain.Practitioner; -import com.openhis.common.constant.CommonConstants; import com.openhis.common.enums.AssignSeqEnum; import com.openhis.common.enums.DbOpType; +import com.openhis.common.enums.DelFlag; import com.openhis.common.enums.DispenseStatus; import com.openhis.workflow.domain.DeviceDispense; import com.openhis.workflow.domain.DeviceRequest; @@ -124,13 +120,14 @@ public class DeviceDispenseServiceImpl extends ServiceImpl selectDeviceDispenseByBasedOnId(Long basedOnId) { - return (baseMapper - .selectList(new LambdaQueryWrapper().eq(DeviceDispense::getBasedOnId, basedOnId) - .eq(DeviceDispense::getStatusEnum, DispenseStatus.COMPLETED.getValue()))); + public List getDevDispenseByProcedureId(List procedureIdList) { + return baseMapper + .selectList(new LambdaQueryWrapper().in(DeviceDispense::getProcedureId, procedureIdList) + .eq(DeviceDispense::getDeleteFlag, DelFlag.NO.getCode())); } /** @@ -147,10 +144,10 @@ public class DeviceDispenseServiceImpl extends ServiceImpl selectByIdList(@Param("idList") List idList) { - return baseMapper.selectList(new LambdaQueryWrapper().in(DeviceDispense::getId, idList) - .eq(DeviceDispense::getDeleteFlag, DelFlag.NO.getCode())); - } - } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyDeliveryServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyDeliveryServiceImpl.java index eed67d6c..f4bbe82c 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyDeliveryServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyDeliveryServiceImpl.java @@ -3,17 +3,15 @@ package com.openhis.workflow.service.impl; import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.stream.Collectors; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.core.common.utils.DateUtils; -import com.core.common.utils.SecurityUtils; -import com.openhis.common.enums.DelFlag; -import com.openhis.common.enums.EventStatus; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.core.common.utils.DateUtils; +import com.core.common.utils.SecurityUtils; +import com.openhis.common.enums.DelFlag; import com.openhis.common.enums.DispenseStatus; import com.openhis.workflow.domain.SupplyDelivery; import com.openhis.workflow.domain.SupplyRequest; @@ -93,11 +91,10 @@ public class SupplyDeliveryServiceImpl extends ServiceImpl supplyReqIdList) { // 根据请求id查询发放状态 - List deliveryList = baseMapper - .selectList(new LambdaQueryWrapper().in(SupplyDelivery::getRequestId, supplyReqIdList)); + List deliveryList = baseMapper.selectList(new LambdaQueryWrapper() + .eq(SupplyDelivery::getDeleteFlag, DelFlag.NO.getCode()).in(SupplyDelivery::getRequestId, supplyReqIdList)); if (!deliveryList.isEmpty()) { - List deliveryStatusList = - deliveryList.stream().map(SupplyDelivery::getStatusEnum).collect(Collectors.toList()); + List deliveryStatusList = deliveryList.stream().map(SupplyDelivery::getStatusEnum).toList(); return deliveryStatusList.stream().anyMatch(x -> x.equals(DispenseStatus.COMPLETED.getValue())); } return false; diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java index e192d14e..406ff3b1 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java @@ -4,7 +4,6 @@ import java.util.Date; import java.util.List; import java.util.stream.Collectors; -import com.openhis.medication.domain.MedicationDispense; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -41,7 +40,8 @@ public class SupplyRequestServiceImpl extends ServiceImpl getSupplyByBusNo(String busNo) { - return baseMapper.selectList(new LambdaQueryWrapper().eq(SupplyRequest::getBusNo, busNo)); + return baseMapper.selectList(new LambdaQueryWrapper().eq(SupplyRequest::getBusNo, busNo) + .eq(SupplyRequest::getDeleteFlag, DelFlag.NO.getCode())); } /** @@ -51,9 +51,11 @@ public class SupplyRequestServiceImpl extends ServiceImpl getSupplyByOriginalBusNo(String originalBusNo){ - return baseMapper.selectList(new LambdaQueryWrapper().eq(SupplyRequest::getOriginalBusNo, originalBusNo)); + public List getSupplyByOriginalBusNo(String originalBusNo) { + return baseMapper + .selectList(new LambdaQueryWrapper().eq(SupplyRequest::getOriginalBusNo, originalBusNo)); } + /** * 同意申请 * @@ -81,14 +83,14 @@ public class SupplyRequestServiceImpl extends ServiceImpl addOriginalBusNo(String busNo,String originalBusNo){ + public List addOriginalBusNo(String busNo, String originalBusNo) { // 更新单据状态 - baseMapper.update(null, - new LambdaUpdateWrapper().eq(SupplyRequest::getBusNo, busNo) - .set(SupplyRequest::getOriginalBusNo, originalBusNo)); + baseMapper.update(null, new LambdaUpdateWrapper().eq(SupplyRequest::getBusNo, busNo) + .set(SupplyRequest::getOriginalBusNo, originalBusNo)); // 返回单据详情 return this.getSupplyByBusNo(busNo); } + /** * 将原始单据号信息的原始单据号删除 * @@ -97,9 +99,8 @@ public class SupplyRequestServiceImpl extends ServiceImpl().eq(SupplyRequest::getBusNo, busNo) - .set(SupplyRequest::getOriginalBusNo, "")); + int updateCount = baseMapper.update(null, new LambdaUpdateWrapper() + .eq(SupplyRequest::getBusNo, busNo).set(SupplyRequest::getOriginalBusNo, "")); return updateCount > 0; } @@ -110,12 +111,13 @@ public class SupplyRequestServiceImpl extends ServiceImpl().eq(SupplyRequest::getBusNo, busNo) + public boolean updateStatusEnumByBusNo(String busNo) { + int updateCount = + baseMapper.update(null, new LambdaUpdateWrapper().eq(SupplyRequest::getBusNo, busNo) .set(SupplyRequest::getStatusEnum, SupplyStatus.EXPIRED_INVALIDATED.getValue())); return updateCount > 0; } + /** * 提交审批 * @@ -145,6 +147,7 @@ public class SupplyRequestServiceImpl extends ServiceImpl 0; } + /** * 删除单据 * @@ -152,12 +155,12 @@ public class SupplyRequestServiceImpl extends ServiceImpl().eq(SupplyRequest::getBusNo, busNo) - .set(SupplyRequest::getDeleteFlag,DelFlag.YES.getCode() )); + public boolean removeByBusNo(String busNo) { + int updateCount = baseMapper.update(null, new LambdaUpdateWrapper() + .eq(SupplyRequest::getBusNo, busNo).set(SupplyRequest::getDeleteFlag, DelFlag.YES.getCode())); return updateCount > 0; } + /** * 驳回申请 * @@ -234,7 +237,8 @@ public class SupplyRequestServiceImpl extends ServiceImpl().eq(SupplyRequest::getBusNo, busNo)); @@ -246,19 +250,22 @@ public class SupplyRequestServiceImpl extends ServiceImpl supplyRequestIdList) { + @Override + public void updateCompletedStatusBatch(List supplyRequestIdList) { baseMapper.update(new SupplyRequest().setStatusEnum(SupplyStatus.AGREE.getValue()) - .setApproverId(SecurityUtils.getLoginUser().getPractitionerId()).setApprovalTime(DateUtils.getNowDate()), + .setApproverId(SecurityUtils.getLoginUser().getPractitionerId()).setApprovalTime(DateUtils.getNowDate()), new LambdaUpdateWrapper().in(SupplyRequest::getId, supplyRequestIdList)); } + /** * 根据id,获取供应申请列表 * * @param requestIdList id列表 * @return 供应发放列表 */ - @Override public List selectByIdList(List requestIdList){ - return baseMapper.selectList( new LambdaQueryWrapper().in(SupplyRequest::getId, requestIdList) + @Override + public List selectByIdList(List requestIdList) { + return baseMapper.selectList(new LambdaQueryWrapper().in(SupplyRequest::getId, requestIdList) .eq(SupplyRequest::getDeleteFlag, DelFlag.NO.getCode())); } } diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java deleted file mode 100644 index 9425c687..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.io.Serializable; - -/** - * 【2206】医保预结算实体 - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@TableName("yb_clinc_pre_settle") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ClinicPreSettle extends HisBaseEntity implements Serializable { - - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - - //内部就诊ID - @JSONField(serialize=false) - private String regId; - - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - - //结算批次号 - @JSONField(name="chrg_bchno") - private String chrgBchno;//对应payment的显示用流水 - - private String param2203; - - private String result2203; - - private String param2204; - - private String result2204; - - private String param2206; - - private String result2206; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java deleted file mode 100644 index 69ea4795..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.io.Serializable; -import java.util.Date; - -/** - *【2201】【2202】挂号 退号 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@TableName("yb_clinc_reg") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ClinicReg extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - //参保地医保区划 - @JSONField(name="insuplc_admdvs") - private String insuplcAdmdvs; - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - //险种类型 - @Dict(dictCode = "insutype") - @JSONField(name="insutype") - private String insutype; - //医疗类别 - @Dict(dictCode = "med_type") - @JSONField(serialize=false) - private String medType; - //挂号时间 - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(name="begntime") - private Date begntime; - //就诊凭证类型 - @JSONField(name="mdtrt_cert_type") - private String mdtrtCertType; - //就诊凭证编号 - @JSONField(name="mdtrt_cert_no") - private String mdtrtCertNo; - //证件加密串 - @JSONField(serialize=false) - @TableField(exist = false) - private String busiCardInfo; - //住院/门诊号 - @JSONField(name="ipt_otp_no") - private String iptOtpNo; - //医师编码 - @JSONField(name="atddr_no") - private String atddrNo; - //医师姓名 - @JSONField(name="dr_name") - private String drName; - //科室编码 - @JSONField(name="dept_code") - private String deptCode; - //科室名称 - @JSONField(name="dept_name") - private String deptName; - //科别 - @JSONField(name="caty") - private String caty; - //挂号费 - @JSONField(serialize=false) - private Double regFee; - //检查费 - @JSONField(serialize=false) - private Double checkFee; - //应收金额 - @JSONField(serialize=false) - private Double totalFee; - //状态,0-挂号,1-看诊,2-费用明细,3-预结算,4-结算 - @JSONField(serialize=false) - private String status; - @JSONField(name="psn_cert_type") - @TableField(exist = false) - private String psnCertType; - @JSONField(name="certno") - @TableField(exist = false) - private String certno; - @JSONField(name="psn_type") - @TableField(exist = false) - private String psnType; - @JSONField(name="psn_name") - @TableField(exist = false) - private String psnName; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java deleted file mode 100644 index c13484b4..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【2207结算记录】 - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@TableName("yb_clinc_settle") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ClinicSettle { - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - - private String setlId;//结算id - - private String mdtrtId; // 就诊ID - - private String psnName; // 人员姓名 - - private String psnCertType; // 人员证件类型 - - private String certno; // 证件号码 - - private String insutype; // 险种类型 - - private String psnType; // 人员类别 - - private String cvlservFlag; // 公务员标志 - - private Date setlTime; // 结算时间 - - private String mdtrtCertType; // 就诊凭证类型 - - private String medType; // 医疗类别 - - private BigDecimal medfeeSumamt; // 医疗费总额 - - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - private BigDecimal preselfpayAmt; // 先行自付金额 - - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - private BigDecimal actPayDedc; // 实际支付起付线 - - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - private BigDecimal mafPay; // 医疗救助基金支出 - - private BigDecimal othPay; // 其他支出 - - private BigDecimal fundPaySumamt; // 基金支付总额 - - private BigDecimal psnPartAmt; // 个人负担总金额 - - private BigDecimal acctPay; // 个人账户支出 - - private BigDecimal psnCashPay; // 个人现金支出 - - private BigDecimal hospPartAmt; // 医院负担金额 - - private BigDecimal balc; // 余额 - - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - private String medinsSetlId; // 医药机构结算ID - - private String clrOptins; // 清算经办机构 - - private String clrWay; // 清算方式 - - private String clrType; // 清算类别 - - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - private String paymentNo;//结算业务流水号 Payment与ClinicSettle是1:N - - private String param2207; - - private String result2207; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java deleted file mode 100644 index 975bfe52..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * 【2202】挂号撤销 - * - * @author SunJQ - * @date 2025-04-21 - */ -@Data -@TableName("yb_clinc_un_reg") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ClinicUnReg { - - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - - //住院/门诊号 - @JSONField(name="ipt_otp_no") - private String iptOtpNo; - - //取消挂号时间 - private Date unRegTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java deleted file mode 100644 index d4a2e15b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【2208结算撤销】 - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@TableName("yb_clinc_un_settle") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ClinicUnSettle extends HisBaseEntity { - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - - private String mdtrtId; // 就诊ID - - private String psnName; // 人员姓名 - - private String psnCertType; // 人员证件类型 - - private String certno; // 证件号码 - - private String insutype; // 险种类型 - - private String psnType; // 人员类别 - - private String cvlservFlag; // 公务员标志 - - private Date setlTime; // 结算时间 - - private String mdtrtCertType; // 就诊凭证类型 - - private String medType; // 医疗类别 - - private BigDecimal medfeeSumamt; // 医疗费总额 - - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - private BigDecimal preselfpayAmt; // 先行自付金额 - - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - private BigDecimal actPayDedc; // 实际支付起付线 - - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - private BigDecimal mafPay; // 医疗救助基金支出 - - private BigDecimal othPay; // 其他支出 - - private BigDecimal fundPaySumamt; // 基金支付总额 - - private BigDecimal psnPartAmt; // 个人负担总金额 - - private BigDecimal acctPay; // 个人账户支出 - - private BigDecimal psnCashPay; // 个人现金支出 - - private BigDecimal hospPartAmt; // 医院负担金额 - - private BigDecimal balc; // 余额 - - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - private String medinsSetlId; // 医药机构结算ID - - private String clrOptins; // 清算经办机构 - - private String clrWay; // 清算方式 - - private String clrType; // 清算类别 - - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - private String param2208; - - private String result2208; - - private String settleId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java deleted file mode 100644 index dca97849..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.openhis.yb.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3301、3302】医保目录对照历史表 - * - * @author SunJQ - * @date 2025-04-27 - */ -@Data -@TableName("yb_directory_check_record") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class DirectoryCheckRecord extends HisBaseEntity { - - /** 主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 3301/3302 */ - private Integer type; - - /** 表名 */ - private String tableName; - - /** 业务表主键 */ - private Long tableId; - - /** 组织机构id */ - private Long orgId; - - /** 参数 */ - private String param; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java deleted file mode 100644 index df2445a5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * 【9101】【9102】公用 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class File { - - // 文件查询号 - private String fileQuryNo; - - // 文件名称 - private String filename; - - // 下载截止时间 - private Date dldEndtime; - - // 文件数据 - private byte[] fileData; - - // 医药机构编号 - private String fixmedinsCode; - - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java deleted file mode 100644 index ddec6451..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.data.redis.core.index.PathBasedRedisIndexDefinition; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【3203】清算申请记录 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_financial_apply_record") -@EqualsAndHashCode(callSuper = false) -public class FinancialApplyRecord { - //主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - //医院id - private Long orgId; - - //开始时间 - private Date begndate; - - //结束时间 - private Date enddate; - - //清算类别 - private String clrType; - - //医疗费总额 - private BigDecimal medfeeSumamt; - - //医保认可费用总额 - private BigDecimal medSumfee; - - //基金申报总额 - private BigDecimal fundAppySum; - - //现金支付金额 - private BigDecimal cashPayamt; - - //个人账户支出 - private BigDecimal acctPay; - - //申请人 - private Long praId; - - //入参 - private String param; - - //医保输出参数:申请清算id - private String outResult; - - //申请状态 - private String status; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java deleted file mode 100644 index 3b2eb85b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.annotation.Excel; -import com.core.common.core.domain.HisBaseEntity; -import com.openhis.common.annotation.Dict; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * [3201]对账记录 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -@Accessors(chain = true) -@TableName("yb_financial_reconcile_record") -@EqualsAndHashCode(callSuper = false) -public class FinancialReconcileRecord extends HisBaseEntity { - //主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - //定点医药机构编号 - private String fixmedinsCode; - //定点医药机构名称 - private String fixmedinsName; - //医保区划 - private String admvs; - //险种 - private String insutype; - //清算类别 - private String clrType; - //结算经办机构 - private String setlOptins; - //对账开始日期 - private String stmtBegndate; - //对账结束日期 - private String stmtEnddate; - //医疗费总额 - private Double medfeeSumamt; - //基金支付总额 - private Double fundPaySumamt; - //个人账户支付金额 - private Double acctPay; - //定点医药机构结算笔数 - private Integer fixmedinsSetlCnt; - //对账结果 - private String stmtRslt; - //对账结果说明 - private String stmtRsltDscr; - - //医院id - private Long orgId; - - //入参 - private String param; - - // - private String result; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java deleted file mode 100644 index 610a3470..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import com.openhis.yb.dto.Info5301SpecialConditionResult; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【1101】获取身份信息 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@TableName("yb_pub_perinfo") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InfoPerson extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - //人员证件类型 - @JSONField(name="psn_cert_type") - private String psnCertType; - //证件号码 - @JSONField(name="certno") - private String certno; - //人员姓名 - @JSONField(name="psn_name") - private String psnName; - //性别 - @JSONField(name="gend") - private String gend; - //民族 - @JSONField(name="naty") - private String naty; - //出生日期 - @JSONField(name="brdy") - private Date brdy; - //年龄 - @JSONField(name="age") - private Double age; - //参保地医保区划 - @JSONField(serialize = false) - private String insuplcAdmdvs; - //险种类型 - @JSONField(serialize = false) - private String insutype; - //余额 - @JSONField(serialize = false) - private String balc; - - private String param1101; - - private String result1101; - - //人员类别 - private String psnType; - - //人员参保状态 - private String psnInsuStas; - - //个人参保日期 - private String psnInsuDate; - - //公务员标志 - private String cvlservFlag; - - //单位名称 - private String empName; - - //特慢病 - @TableField(exist = false) - private List feedetail; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java deleted file mode 100644 index eef815b6..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java +++ /dev/null @@ -1,180 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2402】出院办理 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_discharge") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientDischarge extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 险种类型 - */ - @JSONField(name = "insutype") - private String insutype; - - /** - * 结束时间(出院时间,格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") - private Date endtime; - - /** - * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) - */ - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 病种名称 - */ - @JSONField(name = "dise_name") - private String diseName; - - /** - * 手术操作代码(日间手术病种时必填) - */ - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 手术操作名称 - */ - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 计划生育服务证号 - */ - @JSONField(name = "fpsc_no") - private String fpscNo; - - /** - * 生育类别 - */ - @JSONField(name = "matn_type") - private String matnType; - - /** - * 计划生育手术类别 - */ - @JSONField(name = "birctrl_type") - private String birctrlType; - - /** - * 晚育标志 - */ - @JSONField(name = "latechb_flag") - private String latechbFlag; - - /** - * 孕周数 - */ - @JSONField(name = "esso_val") - private Integer essoVal; - - /** - * 胎次 - */ - @JSONField(name = "fetts") - private Integer fetts; - - /** - * 胎儿数 - */ - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - /** - * 早产标志 - */ - @JSONField(name = "pret_flag") - private String pretFlag; - - /** - * 计划生育手术或生育日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") - private Date birctrlMatnDate; - - /** - * 伴有并发症标志 - */ - @JSONField(name = "cop_flag") - private String copFlag; - - /** - * 出院科室编码 - */ - @JSONField(name = "dscg_dept_codg") - private String dscgDeptCodg; - - /** - * 出院科室名称 - */ - @JSONField(name = "dscg_dept_name") - private String dscgDeptName; - - /** - * 出院床位 - */ - @JSONField(name = "dscg_bed") - private String dscgBed; - - /** - * 离院方式 - */ - @JSONField(name = "dscg_way") - private String dscgWay; - - /** - * 死亡日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "die_date", format = "yyyy-MM-dd") - private Date dieDate; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java deleted file mode 100644 index 2a7aeccd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java +++ /dev/null @@ -1,227 +0,0 @@ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2301】费用明细上传 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_fee_detail") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientFeeDetail extends HisBaseEntity implements Serializable { - - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - /** - * 费用明细流水号 单次就诊内唯一(对应chargeItem的busNo) - */ - @JsonProperty("feedetl_sn") - private String feedetlSn; - - /** - * 原费用流水号 退单时传入被退单的费用明细流水号 - */ - @JsonProperty("init_feedetl_sn") - private String initFeedetlSn; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 医嘱号 - */ - @JsonProperty("drord_no") - private String drordNo; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 医疗类别 - */ - @JsonProperty("med_type") - private String medType; - - /** - * 费用发生时间 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("fee_ocur_time") - private Date feeOcurTime; - - /** - * 医保目录编码 - */ - @JsonProperty("med_list_codg") - private String medListCodg; - - /** - * 医药机构目录编码 - */ - @JsonProperty("medins_list_codg") - private String medinsListCodg; - - /** - * 明细项目费用总额 - */ - @JsonProperty("det_item_fee_sumamt") - private BigDecimal detItemFeeSumamt; - - /** - * 数量 退单时数量填写负数 - */ - @JsonProperty("cnt") - private BigDecimal cnt; - - /** - * 单价 - */ - @JsonProperty("pric") - private BigDecimal pric; - - /** - * 开单科室编码 - */ - @JsonProperty("bilg_dept_codg") - private String bilgDeptCodg; - - /** - * 开单科室名称 - */ - @JsonProperty("bilg_dept_name") - private String bilgDeptName; - - /** - * 开单医生编码 - */ - @JsonProperty("bilg_dr_codg") - private String bilgDrCodg; - - /** - * 开单医师姓名 - */ - @JsonProperty("bilg_dr_name") - private String bilgDrName; - - /** - * 定价上限金额 - */ - @JsonProperty("pric_uplmt_amt") - private BigDecimal pricUplmtAmt; - - /** - * 自付比例 - */ - @JsonProperty("selfpay_prop") - private BigDecimal selfpayProp; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价金额 - */ - @JsonProperty("overlmt_amt") - private BigDecimal overlmtAmt; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 收费项目等级 - */ - @JsonProperty("chrgitm_lv") - private String chrgitmLv; - - /** - * 医疗收费项目类别 - */ - @JsonProperty("med_chrgitm_type") - private String medChrgitmType; - - /** - * 基本药物标志 - */ - @JsonProperty("bas_medn_flag") - private String basMednFlag; - - /** - * 医保谈判药品标志 - */ - @JsonProperty("hi_nego_drug_flag") - private String hiNegoDrugFlag; - - /** - * 儿童用药标志 - */ - @JsonProperty("chld_medc_flag") - private String chldMedcFlag; - - /** - * 目录特项标志 - */ - @JsonProperty("list_sp_item_flag") - private String listSpItemFlag; - - /** - * 限制使用标志 - */ - @JsonProperty("lmt_used_flag") - private String lmtUsedFlag; - - /** - * 直报标志 - */ - @JsonProperty("drt_reim_flag") - private String drtReimFlag; - - /** - * 关联就诊id - */ - private String encounterId; - - private String inputParam; - - private String outputResult; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java deleted file mode 100644 index 0426d6bb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java +++ /dev/null @@ -1,338 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2303】住院预结算 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_pre_settle") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientPreSettle extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 就诊凭证类型 - */ - @JsonProperty("mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 就诊凭证编号 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 - */ - @JsonProperty("mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 个人结算方式 - */ - @JsonProperty("psn_setlway") - private String psnSetlway; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 个人账户使用标志 - */ - @JsonProperty("acct_used_flag") - private String acctUsedFlag; - - /** - * 险种类型 - */ - @JsonProperty("insutype") - private String insutype; - - /** - * 参保地医保区划 - */ - @JsonProperty("insuplc_admdvs") - private String insuplcAdmdvs; - - /** - * 就医地医保区划 - */ - @JsonProperty("mdtrtarea_admvs") - private String mdtrtareaAdmvs; - - /** - * 发票号 - */ - @JsonProperty("invono") - private String invono; - - /** - * 中途结算标志 - */ - @JsonProperty("mid_setl_flag") - private String midSetlFlag; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价金额 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 出院时间 格式:yyyy-MM-dd - */ - @JsonProperty("dscgTime") - private Date dscgTime; - - /** - * 人员姓名 - */ - @JsonProperty("psn_name") - private String psnName; - - /** - * 人员证件类型 - */ - @JsonProperty("psn_cert_type") - private String psnCertType; - - /** - * 证件号码 - */ - @JsonProperty("certno") - private String certno; - - /** - * 性别 - */ - @JsonProperty("gend") - private String gend; - - /** - * 民族 - */ - @JsonProperty("naty") - private String naty; - - /** - * 出生日期 格式:yyyy-MM-dd - */ - @JsonProperty("brdy") - private Date brdy; - - /** - * 年龄 - */ - @JsonProperty("age") - private BigDecimal age; - - /** - * 人员类别 - */ - @JsonProperty("psn_type") - private String psnType; - - /** - * 公务员标志 - */ - @JsonProperty("cvlserv_flag") - private String cvlservFlag; - - /** - * 结算时间 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("setl_time") - private Date setlTime; - - /** - * 医疗类别 - */ - @JsonProperty("med_type") - private String medType; - - /** - * 实际支付起付线 - */ - @JsonProperty("act_pay_dedc") - private BigDecimal actPayDedc; - - /** - * 基本医疗保险统筹基金支出 - */ - @JsonProperty("hifp_pay") - private BigDecimal hifpPay; - - /** - * 基本医疗保险统筹基金支付比例 - */ - @JsonProperty("pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - /** - * 公务员医疗补助资金支出 - */ - @JsonProperty("cvlserv_pay") - private BigDecimal cvlservPay; - - /** - * 企业补充医疗保险基金支出 - */ - @JsonProperty("hifes_pay") - private BigDecimal hifesPay; - - /** - * 居民大病保险资金支出 - */ - @JsonProperty("hifmi_pay") - private BigDecimal hifmiPay; - - /** - * 职工大额医疗费用补助基金支出 - */ - @JsonProperty("hifob_pay") - private BigDecimal hifobPay; - - /** - * 医疗救助基金支出 - */ - @JsonProperty("maf_pay") - private BigDecimal mafPay; - - /** - * 其他支出 - */ - @JsonProperty("oth_pay") - private BigDecimal othPay; - - /** - * 基金支付总额 - */ - @JsonProperty("fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - /** - * 个人负担总金额 - */ - @JsonProperty("psn_part_amt") - private BigDecimal psnPartAmt; - - /** - * 个人账户支出 - */ - @JsonProperty("acct_pay") - private BigDecimal acctPay; - - /** - * 个人现金支出 - */ - @JsonProperty("psn_cash_pay") - private BigDecimal psnCashPay; - - /** - * 医院负担金额 - */ - @JsonProperty("hosp_part_amt") - private BigDecimal hospPartAmt; - - /** - * 余额 - */ - @JsonProperty("balc") - private BigDecimal balc; - - /** - * 个人账户共济支付金额 - */ - @JsonProperty("acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - /** - * 医药机构结算ID 存放发送方报文ID - */ - @JsonProperty("medins_setl_id") - private String medinsSetlId; - - /** - * 清算经办机构 - */ - @JsonProperty("clr_optins") - private String clrOptins; - - /** - * 清算方式 - */ - @JsonProperty("clr_way") - private String clrWay; - - /** - * 清算类别 - */ - @JsonProperty("clr_type") - private String clrType; - - /** - * 伤残人员医疗保障基金支出 1.5.4新增 - */ - @JsonProperty("hifdm_pay") - private BigDecimal hifdmPay; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java deleted file mode 100644 index 6bf53db0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java +++ /dev/null @@ -1,262 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2401】入院办理 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_reg") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientReg extends HisBaseEntity implements Serializable { - - private static final long serialVersionUID = 1L; - - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 险种类型 - */ - @JSONField(name = "insutype") - private String insutype; - - /** - * 联系人姓名 - */ - @JSONField(name = "coner_name") - private String conerName; - - /** - * 联系电话 - */ - @JSONField(name = "tel") - private String tel; - - /** - * 开始时间(入院时间,格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") - private Date begntime; - - /** - * 就诊凭证类型 - */ - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 就诊凭证编号(就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号) - */ - @JSONField(name = "mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 医疗类别 - */ - @JSONField(name = "med_type") - private String medType; - - /** - * 住院号(院内就诊流水号) - */ - @JSONField(name = "ipt_no") - private String iptNo; - - /** - * 病历号 - */ - @JSONField(name = "medrcdno") - private String medrcdno; - - /** - * 主治医生编码 - */ - @JSONField(name = "atddr_no") - private String atddrNo; - - /** - * 主诊医师姓名 - */ - @JSONField(name = "chfpdr_name") - private String chfpdrName; - - /** - * 入院诊断描述 - */ - @JSONField(name = "adm_diag_dscr") - private String admDiagDscr; - - /** - * 入院科室编码 - */ - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - /** - * 入院科室名称 - */ - @JSONField(name = "adm_dept_name") - private String admDeptName; - - /** - * 入院床位 - */ - @JSONField(name = "adm_bed") - private String admBed; - - /** - * 住院主诊断代码 - */ - @JSONField(name = "dscg_maindiag_code") - private String dscgMaindiagCode; - - /** - * 住院主诊断名称 - */ - @JSONField(name = "dscg_maindiag_name") - private String dscgMaindiagName; - - /** - * 主要病情描述 - */ - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - - /** - * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) - */ - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 病种名称 - */ - @JSONField(name = "dise_name") - private String diseName; - - /** - * 手术操作代码(日间手术病种时必填) - */ - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 手术操作名称 - */ - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 计划生育服务证号 - */ - @JSONField(name = "fpsc_no") - private String fpscNo; - - /** - * 生育类别 - */ - @JSONField(name = "matn_type") - private String matnType; - - /** - * 计划生育手术类别 - */ - @JSONField(name = "birctrl_type") - private String birctrlType; - - /** - * 晚育标志 - */ - @JSONField(name = "latechb_flag") - private String latechbFlag; - - /** - * 孕周数 - */ - @JSONField(name = "geso_val") - private Integer gesoVal; - - /** - * 胎次 - */ - @JSONField(name = "fetts") - private Integer fetts; - - /** - * 胎儿数 - */ - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - /** - * 早产标志 - */ - @JSONField(name = "pret_flag") - private String pretFlag; - - /** - * 计划生育手术或生育日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") - private Date birctrlMatnDate; - - /** - * 病种类型 - */ - @JSONField(name = "dise_type_code") - private String diseTypeCode; - - /** - * 字段扩展 - */ - @JSONField(name = "exp_content") - private String expContent; - - /** - * 参保地医保区划 - */ - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; - - /** - * 就医地医保区划 - */ - @JSONField(name = "mdtrtarea_admvs") - private String mdtrtareaAdmvs; - - /** - * 就诊id - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java deleted file mode 100644 index 6de3b953..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java +++ /dev/null @@ -1,241 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2403】住院信息变更 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_info_recorde") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientRegInfoUpdateRecorde extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 联系人姓名 - */ - @JSONField(name = "coner_name") - private String conerName; - - /** - * 联系电话 - */ - @JSONField(name = "tel") - private String tel; - - /** - * 开始时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") - private Date begntime; - - /** - * 结束时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") - private Date endtime; - - /** - * 就诊凭证类型 - */ - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 医疗类别 - */ - @JSONField(name = "med_type") - private String medType; - - /** - * 住院/门诊号 - */ - @JSONField(name = "ipt_otp_no") - private String iptOtpNo; - - /** - * 病历号 - */ - @JSONField(name = "medrcdno") - private String medrcdno; - - /** - * 主治医生编码 - */ - @JSONField(name = "atddr_no") - private String atddrNo; - - /** - * 主诊医师姓名 - */ - @JSONField(name = "chfpdr_name") - private String chfpdrName; - - /** - * 入院诊断描述 - */ - @JSONField(name = "adm_diag_dscr") - private String admDiagDscr; - - /** - * 入院科室编码 - */ - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - /** - * 入院科室名称 - */ - @JSONField(name = "adm_dept_name") - private String admDeptName; - - /** - * 入院床位 - */ - @JSONField(name = "adm_bed") - private String admBed; - - /** - * 住院主诊断代码 - */ - @JSONField(name = "dscg_maindiag_code") - private String dscgMaindiagCode; - - /** - * 住院主诊断名称 - */ - @JSONField(name = "dscg_maindiag_name") - private String dscgMaindiagName; - - /** - * 主要病情描述 - */ - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - - /** - * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) - */ - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 病种名称 - */ - @JSONField(name = "dise_name") - private String diseName; - - /** - * 手术操作代码(日间手术病种时必填) - */ - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 手术操作名称 - */ - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 计划生育服务证号 - */ - @JSONField(name = "fpsc_no") - private String fpscNo; - - /** - * 生育类别 - */ - @JSONField(name = "matn_type") - private String matnType; - - /** - * 计划生育手术类别 - */ - @JSONField(name = "birctrl_type") - private String birctrlType; - - /** - * 晚育标志 - */ - @JSONField(name = "latechb_flag") - private String latechbFlag; - - /** - * 孕周数 - */ - @JSONField(name = "esso_val") - private Integer essoVal; - - /** - * 胎次 - */ - @JSONField(name = "fetts") - private Integer fetts; - - /** - * 胎儿数 - */ - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - /** - * 早产标志 - */ - @JSONField(name = "pret_flag") - private String pretFlag; - - /** - * 计划生育手术或生育日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") - private Date birctrlMatnDate; - - /** - * 病种编号 - */ - @JSONField(name = "dise_type_code") - private String diseTypeCode; - - private String inputParam; - - private String outputResult; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java deleted file mode 100644 index 4333dad1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java +++ /dev/null @@ -1,319 +0,0 @@ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【2304】住院结算 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_settle") -@Accessors(chain = true) -public class InpatientSettle extends HisBaseEntity implements Serializable { - - private static final long serialVersionUID = 1L; - - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 人员编号 - */ - private String psnNo; - - /** - * 就诊凭证类型 - */ - private String mdtrtCertType; - - /** - * 就诊凭证编号 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 - */ - private String mdtrtCertNo; - - /** - * 医疗费总额 - */ - private BigDecimal medfeeSumamt; - - /** - * 个人结算方式 - */ - private String psnSetlway; - - /** - * 就诊ID - */ - private String mdtrtId; - - /** - * 结算ID - */ - private String setlId; - - /** - * 个人账户使用标志 - */ - private String acctUsedFlag; - - /** - * 险种类型 - */ - private String insutype; - - /** - * 参保地医保区划 - */ - private String insuplcAdmdvs; - - /** - * 就医地医保区划 - */ - private String mdtrtareaAdmvs; - - /** - * 发票号 - */ - private String invono; - - /** - * 中途结算标志 - */ - private String midSetlFlag; - - /** - * 全自费金额 - */ - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价金额 - */ - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - private BigDecimal inscpScpAmt; - - /** - * 出院时间 格式:yyyy-MM-dd - */ - private Date dscgTime; - - /** - * 人员姓名 - */ - @JsonProperty("psn_name") - private String psnName; - - /** - * 人员证件类型 - */ - @JsonProperty("psn_cert_type") - private String psnCertType; - - /** - * 证件号码 - */ - @JsonProperty("certno") - private String certno; - - /** - * 性别 - */ - @JsonProperty("gend") - private String gend; - - /** - * 民族 - */ - @JsonProperty("naty") - private String naty; - - /** - * 出生日期 格式:yyyy-MM-dd - */ - @JsonProperty("brdy") - private Date brdy; - - /** - * 年龄 - */ - @JsonProperty("age") - private BigDecimal age; - - /** - * 人员类别 - */ - @JsonProperty("psn_type") - private String psnType; - - /** - * 公务员标志 - */ - @JsonProperty("cvlserv_flag") - private String cvlservFlag; - - /** - * 结算时间 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("setl_time") - private Date setlTime; - - /** - * 医疗类别 - */ - @JsonProperty("med_type") - private String medType; - - /** - * 实际支付起付线 - */ - @JsonProperty("act_pay_dedc") - private BigDecimal actPayDedc; - - /** - * 基本医疗保险统筹基金支出 - */ - @JsonProperty("hifp_pay") - private BigDecimal hifpPay; - - /** - * 基本医疗保险统筹基金支付比例 - */ - @JsonProperty("pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - /** - * 公务员医疗补助资金支出 - */ - @JsonProperty("cvlserv_pay") - private BigDecimal cvlservPay; - - /** - * 企业补充医疗保险基金支出 - */ - @JsonProperty("hifes_pay") - private BigDecimal hifesPay; - - /** - * 居民大病保险资金支出 - */ - @JsonProperty("hifmi_pay") - private BigDecimal hifmiPay; - - /** - * 职工大额医疗费用补助基金支出 - */ - @JsonProperty("hifob_pay") - private BigDecimal hifobPay; - - /** - * 医疗救助基金支出 - */ - @JsonProperty("maf_pay") - private BigDecimal mafPay; - - /** - * 其他支出 - */ - @JsonProperty("oth_pay") - private BigDecimal othPay; - - /** - * 基金支付总额 - */ - @JsonProperty("fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - /** - * 个人负担总金额 - */ - @JsonProperty("psn_part_amt") - private BigDecimal psnPartAmt; - - /** - * 个人账户支出 - */ - @JsonProperty("acct_pay") - private BigDecimal acctPay; - - /** - * 个人现金支出 - */ - @JsonProperty("psn_cash_pay") - private BigDecimal psnCashPay; - - /** - * 医院负担金额 - */ - @JsonProperty("hosp_part_amt") - private BigDecimal hospPartAmt; - - /** - * 余额 - */ - @JsonProperty("balc") - private BigDecimal balc; - - /** - * 个人账户共济支付金额 - */ - @JsonProperty("acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - /** - * 医药机构结算ID 存放发送方报文ID - */ - @JsonProperty("medins_setl_id") - private String medinsSetlId; - - /** - * 清算经办机构 - */ - @JsonProperty("clr_optins") - private String clrOptins; - - /** - * 清算方式 - */ - @JsonProperty("clr_way") - private String clrWay; - - /** - * 清算类别 - */ - @JsonProperty("clr_type") - private String clrType; - - /** - * 伤残人员医疗保障基金支出 1.5.4新增 - */ - @JsonProperty("hifdm_pay") - private BigDecimal hifdmPay; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java deleted file mode 100644 index 6ac8a764..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2405】撤销出院记录 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_un_discharge") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientUnDischarge extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java deleted file mode 100644 index af48ca81..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2404】【】 入院撤销 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_un_reg") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientUnReg extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java deleted file mode 100644 index bf03617c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java +++ /dev/null @@ -1,258 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【2305】住院结算策撤销 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_un_settle") -@Accessors(chain = true) -public class InpatientUnSettle extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 结算ID - */ - @JsonProperty("setl_Id") - private String setlId; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 清算经办机构 - */ - @JsonProperty("clr_optins") - private String clrOptins; - - /** - * 结算时间 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("setl_time") - private Date setlTime; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价自费费用 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 实际支付起付线 - */ - @JsonProperty("act_pay_dedc") - private BigDecimal actPayDedc; - - /** - * 基本医疗保险统筹基金支出 - */ - @JsonProperty("hifp_pay") - private BigDecimal hifpPay; - - /** - * 基本医疗保险统筹基金支付比例 - */ - @JsonProperty("pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - /** - * 公务员医疗补助资金支出 - */ - @JsonProperty("cvlserv_pay") - private BigDecimal cvlservPay; - - /** - * 企业补充医疗保险基金支出 - */ - @JsonProperty("hifes_pay") - private BigDecimal hifesPay; - - /** - * 居民大病保险资金支出 - */ - @JsonProperty("hifmi_pay") - private BigDecimal hifmiPay; - - /** - * 职工大额医疗费用补助基金支出 - */ - @JsonProperty("hifob_pay") - private BigDecimal hifobPay; - - /** - * 医疗救助基金支出 - */ - @JsonProperty("maf_pay") - private BigDecimal mafPay; - - /** - * 其他支出 - */ - @JsonProperty("oth_pay") - private BigDecimal othPay; - - /** - * 基金支付总额 - */ - @JsonProperty("fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - /** - * 个人负担总金额 - */ - @JsonProperty("psn_part_amt") - private BigDecimal psnPartAmt; - - /** - * 个人账户支出 - */ - @JsonProperty("acct_pay") - private BigDecimal acctPay; - - /** - * 个人现金支出 - */ - @JsonProperty("psn_cash_pay") - private BigDecimal psnCashPay; - - /** - * 医院负担金额 - */ - @JsonProperty("hosp_part_amt") - private BigDecimal hospPartAmt; - - /** - * 余额 - */ - @JsonProperty("balc") - private BigDecimal balc; - - /** - * 个人账户共济支付金额 - */ - @JsonProperty("acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - /** - * 医药机构结算ID 存放发送方报文ID - */ - @JsonProperty("medins_setl_id") - private String medinsSetlId; - - /** - * 伤残人员医疗保障基金支出 - */ - @JsonProperty("hifdm_pay") - private BigDecimal hifdmPay; - - /** - * 人员参保关系ID - */ - @JsonProperty("psn_insu_rlts_id") - private String psnInsuRltsId; - - /** - * 参保机构行政区划 - */ - @JsonProperty("insu_admdvs") - private String insuAdmdvs; - - /** - * 开始日期 - */ - @JsonProperty("begndate") - private Date begndate; - - /** - * 结算日期 - */ - @JsonProperty("enddate") - private Date enddate; - - /** - * 就诊凭证编号 - */ - @JsonProperty("mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 结算类别 - */ - @JsonProperty("setl_type") - private String setlType; - - /** - * 本次起付线 - */ - @JsonProperty("crt_dedc") - private BigDecimal crtDedc; - - /** - * 发票号 - */ - @JsonProperty("invono") - private String invono; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java deleted file mode 100644 index d78ff89f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.io.Serializable; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -@TableName("yb_inpatient_cancel_fee_detail") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InpatientcancelFeeDetail extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - /** - * id - */ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize = false) - private Long id; - - /** - * 费用明细流水号 单次就诊内唯一 - */ - @JsonProperty("feedetl_sn") - private String feedetlSn; - - /** - * 人员编号 退单时传入被退单的费用明细流水号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 字段扩展 - */ - @JsonProperty("exp_content") - private String expContent; - - private String inputParam; - - private String outputResult; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java deleted file mode 100644 index f18bddca..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.yb.dto.MedicalTraceNoDto; - -import liquibase.pro.packaged.S; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3502】库存信息变更 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_change_record") -@EqualsAndHashCode(callSuper = false) -public class InventoryChangeRecord { - // 主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - // 入参 - private String param; - - // 出参 - private String result; - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 库存变更类型(字符型,6位,必填) - @JSONField(name = "inv_chg_type") - private String invChgType; - - // 3. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 4. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 5. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 6. 单价(数值型,16位含6位小数,必填) - @JSONField(name = "pric") - private BigDecimal pric; - - // 7. 数量(数值型,16位含4位小数,必填) - @JSONField(name = "cnt") - private BigDecimal cnt; - - // 8. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 9. 库存变更时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "inv_chg_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date invChgTime; - - // 10. 库存变更经办人姓名(字符型,50位,非必填) - @JSONField(name = "inv_chg_opter_name") - private String invChgOpterName; - - // 11. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 12. 拆零标志(字符型,2位,必填) - @JSONField(name = "trdn_flag") - private String trdnFlag; - - // 13. 溯源码节点信息(字符型,长度未明确) - @JSONField(name = "drugtracinfo") - private String drugtracinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java deleted file mode 100644 index c834506c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import liquibase.pro.packaged.D; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【3502】库存信息变更 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_check_record") -@EqualsAndHashCode(callSuper = false) -public class InventoryCheckRecord { - //主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - //入参 - private String param; - - //出参 - private String result; - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 5. 盘存日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "invdate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date invdate; - - // 6. 库存数量(数值型,16位含2位小数,必填) - @JSONField(name = "inv_cnt") - private BigDecimal invCnt; - - // 7. 生产批号(字符型,30位,非必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 8. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 9. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 10. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java deleted file mode 100644 index bbca2f96..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3507】 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_del_record") -@EqualsAndHashCode(callSuper = false) -public class InventoryDelRecord { - //主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - //入参 - private String param; - - //出参 - private String outResult; - - // 定点医药机构批次流水号 - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 进销存数据类型 - @JSONField(name = "inv_data_type") - private String invDataType; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java deleted file mode 100644 index 7cb616b8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【3503】 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_purchase_record") -@EqualsAndHashCode(callSuper = false) -public class InventoryPurchaseRecord { - //主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - //入参 - private String param; - - //出参 - private String outResult; - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 随货单号(字符型,50位,非必填) - @JSONField(name = "dynt_no") - private String dyntNo; - - // 5. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 6. 供应商名称(字符型,200位,必填) - @JSONField(name = "spler_name") - private String splerName; - - // 7. 供应商许可证号(字符型,50位,非必填) - @JSONField(name = "spler_pmtno") - private String splerPmtno; - - // 8. 生产批号(字符型,30位,必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 9. 生产厂家名称(字符型,200位,必填) - @JSONField(name = "prodentp_name") - private String prodentpName; - - // 10. 批准文号(字符型,100位,必填) - @JSONField(name = "aprvno") - private String aprvno; - - // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 13. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 14. 采购/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "purc_retn_cnt") - private BigDecimal purcRetnCnt; - - // 15. 采购发票编码(字符型,50位,非必填) - @JSONField(name = "purc_invo_codg") - private String purcInvoCodg; - - // 16. 采购发票号(字符型,50位,非必填) - @JSONField(name = "purc_invo_no") - private String purcInvoNo; - - // 17. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 18. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "purc_retn_stoin_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date purcRetnStoinTime; - - // 19. 采购/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "purc_retn_opter_name") - private String purcRetnOpterName; - - // 20. 商品赠送标志(字符型,3位,必填) - @JSONField(name = "prod_geay_flag") - private String prodGeayFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java deleted file mode 100644 index efb15c04..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【3504】 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_purchase_return_record") -@EqualsAndHashCode(callSuper = false) -public class InventoryPurchaseReturnRecord { - //主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - //入参 - private String param; - - //出参 - private String outResult; - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 5. 供应商名称(字符型,200位,必填) - @JSONField(name = "spler_name") - private String splerName; - - // 6. 供应商许可证号(字符型,50位,非必填) - @JSONField(name = "spler_pmtno") - private String splerPmtno; - - // 7. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 8. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 9. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 10. 采购/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "purc_retn_cnt") - private BigDecimal purcRetnCnt; - - // 11. 采购发票编码(字符型,50位,非必填) - @JSONField(name = "purc_invo_codg") - private String purcInvoCodg; - - // 12. 采购发票号(字符型,50位,必填) - @JSONField(name = "purc_invo_no") - private String purcInvoNo; - - // 13. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 14. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "purc_retn_stoin_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date purcRetnStoinTime; - - // 15. 采购/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "purc_retn_opter_name") - private String purcRetnOpterName; - - // 16. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 20. 商品采购流水号(字符型,50位,非必填) - @JSONField(name = "medins_prod_purc_no") - private String medinsProdPurcNo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java deleted file mode 100644 index ca8db93a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.yb.dto.MedicalTraceNoDto; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3505】 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_sale_record") -@EqualsAndHashCode(callSuper = false) -public class InventorySaleRecord { - // 主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - // 入参 - private String param; - - // 出参 - private String outResult; - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 5. 开方医师证件类型(字符型,6位,非必填) - @JSONField(name = "prsc_dr_cert_type") - private String prscDrCertType; - - // 6. 开方医师证件号码(字符型,50位,非必填) - @JSONField(name = "prsc_dr_certno") - private String prscDrCertno; - - // 7. 开方医师姓名(字符型,50位,必填) - @JSONField(name = "prsc_dr_name") - private String prscDrName; - - // 8. 药师证件类型(字符型,6位,非必填) - @JSONField(name = "phar_cert_type") - private String pharCertType; - - // 9. 药师证件号码(字符型,50位,非必填) - @JSONField(name = "phar_certno") - private String pharCertno; - - // 10. 药师姓名(字符型,50位,必填) - @JSONField(name = "phar_name") - private String pharName; - - // 11. 药师执业资格证号(字符型,50位,必填) - @JSONField(name = "phar_prac_cert_no") - private String pharPracCertNo; - - // 12. 医保费用结算类型(字符型,6位,必填) - @JSONField(name = "hi_feesetl_type") - private String hiFeesetlType; - - // 13. 结算ID(字符型,30位,非必填) - @JSONField(name = "setl_id") - private String setlId; - - // 14. 就医流水号(字符型,30位,必填) - @JSONField(name = "mdtrt_sn") - private String mdtrtSn; - - // 15. 人员编号(字符型,30位,非必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 16. 人员证件类型(字符型,6位,必填) - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 17. 证件号码(字符型,50位,非必填) - @JSONField(name = "certno") - private String certno; - - // 18. 人员姓名(字符型,50位,非必填) - @JSONField(name = "psn_name") - private String psnName; - - // 19. 生产批号(字符型,30位,必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 20. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 21. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 22. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 23. 拆零标志(字符型,3位,必填) - @JSONField(name = "trdn_flag") - private String trdnFlag; - - // 24. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 25. 处方号(字符型,40位,非必填) - @JSONField(name = "rxno") - private String rxno; - - // 26. 外购处方标志(字符型,3位,必填) - @JSONField(name = "rx_circ_flag") - private String rxCircFlag; - - // 27. 零售单据号(字符型,40位,必填) - @JSONField(name = "rtal_docno") - private String rtalDocno; - - // 29. 销售出库单据号(字符型,40位,非必填) - @JSONField(name = "stoout_no") - private String stooutNo; - - // 30. 批次号(字符型,30位,非必填) - @JSONField(name = "bchno") - private String bchno; - - // 32. 药品条形码(字符型,30位,非必填) - @JSONField(name = "drug_prod_barc") - private String drugProdBarc; - - // 33. 货架位(字符型,20位,非必填) - @JSONField(name = "shelf_posi") - private String shelfPosi; - - // 34. 销售/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "sel_retn_cnt") - private BigDecimal selRetnCnt; - - // 35. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "sel_retn_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date selRetnTime; - - // 36. 销售/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "sel_retn_opter_name") - private String selRetnOpterName; - - // 37. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 38. 就诊结算类型(字符型,6位,非必填) - @JSONField(name = "mdtrt_setl_type") - private String mdtrtSetlType; - - // 39. 溯源码节点信息(字符型,长度未明确,暂定500位) - @JSONField(name = "drugtracinfo") - private String drugtracinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java deleted file mode 100644 index 25eaaf86..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.domain; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.yb.dto.MedicalTraceNoDto; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3506】 - * - * @author SunJQ - * @date 2025-04-30 - */ -@Data -@Accessors(chain = true) -@TableName("yb_inventory_sale_return_record") -@EqualsAndHashCode(callSuper = false) -public class InventorySaleReturnRecord { - // 主键 - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - // 入参 - private String param; - - // 出参 - private String outResult; - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 5. 结算ID(字符型,30位,非必填) - @JSONField(name = "setl_id") - private String setlId; - - // 6. 人员编号(字符型,30位,非必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 7. 人员证件类型(字符型,6位,必填) - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 8. 证件号码(字符型,50位,非必填) - @JSONField(name = "certno") - private String certno; - - // 9. 人员姓名(字符型,50位,非必填) - @JSONField(name = "psn_name") - private String psnName; - - // 10. 生产批号(字符型,30位,必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 13. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 14. 拆零标志(字符型,3位,必填) - @JSONField(name = "trdn_flag") - private String trdnFlag; - - // 15. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 16. 销售/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "sel_retn_cnt") - private BigDecimal selRetnCnt; - - // 17. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "sel_retn_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date selRetnTime; - - // 18. 销售/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "sel_retn_opter_name") - private String selRetnOpterName; - - // 19. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 20. 商品销售流水号(字符型,50位,非必填) - @JSONField(name = "medins_prod_sel_no") - private String medinsProdSelNo; - - // 21. 就医流水号(字符型,30位,必填) - @JSONField(name = "mdtrt_sn") - private String mdtrtSn; - - // 22. 溯源码节点信息(字符型,长度未明确,暂定500位) - @JSONField(name = "drugtracinfo") - private String drugtracinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java deleted file mode 100644 index c8cfe9bd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.openhis.yb.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.io.Serializable; - -/** - *【9001】【9002】签到 签退 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@TableName("yb_pub_sign") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Sign extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - /**主键*/ - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private Long id; - /**操作员编号*/ - @JSONField(name="opter_no") - private String opterNo; - /**签到编号*/ - @JSONField(name="sign_no") - private String signNo; - /**签到时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(serialize=false) - private java.util.Date signTime; - /**签退时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(serialize=false) - private java.util.Date signOutTime; - /**状态,0-新建,1-签到,2-签退*/ - @JSONField(serialize=false) - private String status; - /** 签到MAC地址 */ - @JSONField(name="mac") - @TableField(exist = false) - private String mac; - /** 签到IP地址 */ - @JSONField(name="ip") - @TableField(exist = false) - private String ip; -// /**创建人*/ -// private String createBy; -// /**创建日期*/ -// @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") -// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") -// private java.util.Date createTime; -// /**更新人*/ -// private String updateBy; -// /**更新日期*/ -// @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") -// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") -// private java.util.Date updateTime; -// /**所属部门*/ -// private String sysOrgCode; -// /**租户ID*/ -// private String tenantId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java deleted file mode 100644 index 56c5ec8d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.sun.jna.platform.win32.Winspool; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 医保所需要的基础信息,如医生信息或者医院信息,目的是为医保服务提供数据信息 - * - * @author SunJQ - * @date 2025-05-04 - */ -@Data -@Accessors(chain = true) -public class BaseInfo { - /******************医保机构信息******************/ - - - /********************医院信息********************/ - - /** (必填)统筹区号 */ - private String admvs;// - - /** (必填)定点医药机构编号 */ - private String fixmedinsCode; - - /** (必填)定点医药机构名称 */ - private String fixmedinsName; - - /** (必填)医保app的Controller路径 */ - private String ybUrl; - - /** (必填)客戶端id */ - private String ybClientId;//医保用 2025/05/21 无人解答医保与电子处方的这些信息是否一致,防止修改某一变量导致另一个功能失效,分开保存 - - /** (必填)客戶端安全码 */ - private String ybClientSecret;//医保用 - - /** (必填)医保服务平台账号 */ - private String ybUsername;//医保用 - - /** (必填)医保服务平台密码 */ - private String ybPassword;//医保用 - - /** (必填)终端授权类型 */ - private String ybGrantType;//医保用 - - /** (必填)终端授权范围 */ - private String ybScope;//医保用 - - /** (必填)秘钥 */ - private String ybCliPrvKey;//医保用 - - /********************医护信息********************/ - - /** (必填) 用户id */ - private Long UserId; - - /** (必填)登录人名字 */ - private String realname; - - /********************患者信息********************/ - - /** 参保地医保区划 */ - private String insuplcAdmdvs;//如果交易输入中含有人员编号,此项必填,可通过【1101】人员信息获取交易取得 2025/05/20 经测试发现2201-2208几个接口没传psn_no但是也要传这个 - - /********************电子处方********************/ - //电子处方 - private String cliPrvKey; - private String cliPubKey; - private String clientId; - private String eleAddress; - private String username; - private String password; - private String scope; - private String grantType; - private String clientSecret; - private String time; - private String preAppId; - private String preAppSecret; - private String prePrvKey; - private String prePubKey; - private String templatePath; - private String outputPath; - private String hospitalSealPath; - private String medType; - private String dutyDoctorName; - - /********************共通参数********************/ - //是否解密 - private String decryptFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java deleted file mode 100644 index 4e4121cf..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.dto; - -import com.core.common.core.domain.model.LoginUser; -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class BaseParam { - - Object data; - - BaseInfo baseInfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java deleted file mode 100644 index af3e117c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import lombok.Data; -import lombok.experimental.Accessors; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import java.math.BigDecimal; -import java.util.List; - -/** - * 退费入参 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class CancelPaymentDto { - /** - * id - */ - private Long id; - - /** 收款员 */ - private Long entererId; - - /** 支付的患者ID */ - @NotNull - private Long patientId; - - /** 应收金额 */ - private BigDecimal tenderedAmount; - - /** 找零金额 */ - private BigDecimal returnedAmount; - - /** 付款总额 */ - private BigDecimal displayAmount; - - /** 就诊ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long encounterId; - - /** 收费项 */ - private List chargeItemIds;//收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 - - /** 支付详细 */ - @NotEmpty - private List paymentDetails; - - /** 支付批次号 */ - private String chrgBchno;//医保预结算时返回,医保结算时必传,否则结算时一直预结算 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java deleted file mode 100644 index 45d33755..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import lombok.Data; -import lombok.experimental.Accessors; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import java.math.BigDecimal; -import java.util.List; - -@Data -@Accessors(chain = true) -public class CancelRegPaymentDto { - /** - * id - */ - private Long id; - - /** 收款员 */ - private Long entererId; - - /** 支付的患者ID */ - @NotNull - private Long patientId; - - /** 应收金额 */ - private BigDecimal tenderedAmount; - - /** 找零金额 */ - private BigDecimal returnedAmount; - - /** 付款总额 */ - private BigDecimal displayAmount; - - /** 就诊ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long encounterId; - - /** 收费项 */ - private List chargeItemIds;//收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 - - /** 支付详细 */ - @NotEmpty - private List paymentDetails; - - /** 支付批次号 */ - private String chrgBchno;//医保预结算时返回,医保结算时必传,否则结算时一直预结算 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java deleted file mode 100644 index 628da1f1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.openhis.yb.dto; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.io.Serializable; -import java.util.Date; - -/** - * 【1312】医保目录信息查询 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Catalogue1312Output extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - // 医保目录编码 - private String hilistCode; - - // 医保目录名称 - private String hilistName; - - // 参保机构医保区划 - private String insuAdmdvs; - - // 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date begndate; - - // 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date enddate; - - // 医疗收费项目类别 - private String medChrgitmType; - - // 收费项目等级 - private String chrgitmLv; - - // 限制使用标志 - private String lmtUsedFlag; - - // 目录类别 - private String listType; - - // 医疗使用标志 - private String medUseFlag; - - // 生育使用标志 - private String matnUsedFlag; - - // 医保目录使用类别 - private String hilistUseType; - - // 限复方使用类型 - private String lmtCpndType; - - // 五笔助记码 - private String wubi; - - // 拼音助记码 - private String pinyin; - - // 备注 - private String memo; - - // 有效标志 - private String valiFlag; - - // 唯一记录号 - private String rid; - - // 更新时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date updtTime; - - // 创建人 - private String crterId; - - // 创建人姓名 - private String crterName; - - // 创建时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date crteTime; - - // 创建机构 - private String crteOptinsNo; - - // 经办人 - private String opterId; - - // 经办人姓名 - private String opterName; - - // 经办时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date optTime; - - // 经办机构 - private String optinsNo; - - // 统筹区 - private String poolareaNo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java deleted file mode 100644 index f9ce40b3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【1312】医保目录信息查询 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Catalogue1312QueryParam { - - // 医保目录编码 - @JSONField(name = "hilist_code") - private String hilistCode; - - // 参保地区编码 - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; - // 更新时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "updt_time") - private Date updtTime; - - // 页数 - @JSONField(name = "page_num") - private Integer pageNum; - // 当前页面查询数量 - @JSONField(name = "page_size") - private Integer pageSize; - - // 解密标记 - @JSONField(name = "decrypt_flag") - private String decryptFlag; - - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java deleted file mode 100644 index eee435e7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.openhis.yb.dto; - -import com.openhis.administration.domain.ChargeItem; -import com.openhis.common.annotation.Dict; -import lombok.Data; - -@Data -public class ChargeItemDetailVO extends ChargeItem { - - @Dict(dictCode = "chrgitm_lv") - private String dirClass;//医保等级 - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java deleted file mode 100644 index e3891518..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.openhis.administration.domain.ChargeItem; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 收费项目 - * - * @author SunJQ - * @date 2025-03-31 - */ -@Data -@Accessors(chain = true) -public class ChargeItemDto extends ChargeItem { - - private String typeCode; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java deleted file mode 100644 index 124ce546..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.openhis.administration.domain.ChargeItem; -import com.openhis.financial.domain.Contract; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.List; - -/** - * chargeItem分组 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class ChargeItemGroupDto { - /** - * 合同 - */ - Contract contract; - /** - * 收费项 - */ - List chargeItemList; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java deleted file mode 100644 index 696a69b5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3204A】清算申请撤销(吉林省) - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clearing3204AParam { - - // 机构清算申请事件ID - @JSONField(name = "clr_apply_evt_id") - private String clrApplyEvtId; - - // 清算机构 - @JSONField(name = "clr_optins") - private String clrOptins; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java deleted file mode 100644 index c02df05e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3205A】清算申请状态查询(吉林省) - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clearing3205AParma extends Financial3203AParam { - - // 清算机构 - @JSONField(name = "clr_optins") - private String clrOptins; - - // 清算状态 - @JSONField(name = "clr_stas") - private String clrStas; - - // 清算月份 - @JSONField(name = "clr_ym") - private String clrYm; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java deleted file mode 100644 index 261498ad..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3205A】清算申请状态查询(吉林省) - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clearing3205AResult { - // 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 清算状态 - @JSONField(name = "clr_stas") - private String clrStas; - - // 经办时间 - @JSONField(name = "opt_time") - private Date optTime; - - // 医疗费总额 - @JSONField(name = "medfee_Sumamt") - private BigDecimal medfeeSumamt; - - // 医保费用总额 - @JSONField(name = "hi_agre_sumfee") - private BigDecimal hiAgreSumfee; - - // 基金申报总额 - @JSONField(name = "fund_appy_sum") - private BigDecimal fundAppySum; - - // 现金支付金额 - @JSONField(name = "cash_payamt") - private BigDecimal cashPayamt; - - // 个人账户支出 - @JSONField(name = "acct_pay") - private BigDecimal acctPay; - - // 开始日期 - @JSONField(name = "begndate") - private Date begndate; - - // 结束日期 - @JSONField(name = "enddate") - private Date enddate; - - // 清算年月 - @JSONField(name = "clr_ym") - private String clrYm; - - // 清算经办机构 - @JSONField(name = "clr_optins") - private String clrOptins; - - // 经办人 - @JSONField(name = "opter_id") - private String opterId; - - // 经办人姓名 - @JSONField(name = "opter_name") - private String opterName; - - // 经办机构 - @JSONField(name = "optins_no") - private String optinsNo; - - // 机构清算申请事件ID - @JSONField(name = "clr_appy_evt_id") - private String clrAppyEvtId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java deleted file mode 100644 index f26b672d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; - -import javax.validation.constraints.NotNull; - -/** - * 【3205A】前端入参 - * - * @author SunJQ - * @date 2025-04-17 - */ -@Data -public class Clearing3205AWebParma { - // 清算机构 - @NotNull - private String clrOptins; - - // 清算状态 - private String clrStas; - - // 清算月份 例如:202310 - private String clrYm; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java deleted file mode 100644 index 7b3c69e8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3206A】清算机构查询(吉林省) - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clearing3206AParam { - - //定点编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - //页数 - @JSONField(name = "page_num") - private Integer pageNum = 1; - - //当前页面 - @JSONField(name = "page_size") - private Integer pageSize; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java deleted file mode 100644 index 7d229903..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3206A】清算机构查询(吉林省) - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clearing3206AResult { - //总页数 - @JSONField(name = "pages") - private Integer pages; - //清算机构(明细) - @JSONField(name = "clr_optins") - private String clrOptins; - //页数 - @JSONField(name = "page_num") - private Integer pageNum; - //当前页面查询数量 - @JSONField(name = "page_size") - private Integer pageSize; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java deleted file mode 100644 index 0546e6d4..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.annotation.Excel; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - *【2203】门诊就诊信息上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -public class Clinic2203DiseInfoParam extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - //就诊ID内部 - @Excel(name = "就诊ID内部", width = 15) - @JSONField(serialize=false) - private String encounterId; - //定点医药机构编号 - @JSONField(serialize=false) - private String fixmedinsCode; - - //定点医药机构名称 - @JSONField(serialize=false) - private String fixmedinsName; - // 就医地医保区划 - @JSONField(serialize=false) - private String mdtrtareaAdmvs; - // 参保地医保区划 - @JSONField(serialize=false) - private String insuplcAdmdvs; - // 就诊ID - @Excel(name = "就诊ID", width = 15) - @JSONField(serialize=false) - private String mdtrtId; - // 就诊信息ID - @JSONField(serialize=false) - private String medicalId; - // 诊断类别 - @JSONField(name="diag_type") - private String diagType; - // 诊断排序号 - @JSONField(name="diag_srt_no") - private String diagSrtNo; - // 诊断代码 - @JSONField(name="diag_code") - private String diagCode; - // 诊断名称 - @JSONField(name="diag_name") - private String diagName; - // 诊断科室 - @JSONField(name="diag_dept") - private String diagDept; - // 诊断医生编码 - @JSONField(name="dise_dor_no") - private String diseDorNo; - // 诊断医生姓名 - @JSONField(name="dise_dor_name") - private String diseDorName; - // 诊断时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name="diag_time") - private Date diagTime; - // 有效标志 - @JSONField(name="vali_flag") - private String valiFlag; -// // 创建人 -// @JSONField(serialize=false) -// private String createBy; -// // 创建日期 -// @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") -// @DateTimeFormat(pattern = "yyyy-MM-dd") -// @JSONField(serialize=false) -// private Date createTime; -// // 更新人 -// @JSONField(serialize=false) -// private String updateBy; -// // 更新日期 -// @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") -// @DateTimeFormat(pattern = "yyyy-MM-dd") -// @JSONField(serialize=false) -// private Date updateTime; - // 所属部门 -// @JSONField(serialize=false) -// private String sysOrgCode; -// // 租户编码 -// @JSONField(serialize=false) -// private String tenantId; -// @JSONField(serialize=false) -// private String district; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java deleted file mode 100644 index 7794d814..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - *【2203】门诊就诊信息上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -public class Clinic2203Medical extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - // 主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - // 就诊ID内部 - @JSONField(serialize=false) - private String regId; - // 定点医药机构编号 - @JSONField(serialize=false) - private String fixmedinsCode; - // 定点医药机构名称 - @JSONField(serialize=false) - private String fixmedinsName; - // 就医地医保区划 - @JSONField(serialize=false) - private String mdtrtareaAdmvs; - // 参保地医保区划 - @JSONField(serialize=false) - private String insuplcAdmdvs; - // 就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - // 人员编号 - @JSONField(name="psn_no") - private String psnNo; - // 医疗类别 - @Dict(dictCode = "med_type") - @JSONField(name="med_type") - private String medType; - // 诊断时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name="begntime") - private Date begntime; - // 主要病情描述 - @JSONField(name="main_cond_dscr") - private String mainCondDscr; - // 病种编码 - @JSONField(name="dise_codg") - private String diseCodg; - // 病种名称 - @JSONField(name="dise_name") - private String diseName; - // 计划生育手术类别 - @Dict(dictCode = "birctrl_type") - @JSONField(name="birctrl_type") - private String birctrlType; - // 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name="birctrl_matn_date") - private Date birctrlMatnDate; - @JSONField(serialize=false) - private String district; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java deleted file mode 100644 index feccd6d7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson2.annotation.JSONField; -import org.springframework.format.annotation.DateTimeFormat; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2203】门诊就诊信息上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clinic2203MedicalParam { - // 主键 - @JSONField(serialize = false) - private String id; - // 就诊ID内部 - @JSONField(serialize = false) - private String regId; - // 定点医药机构编号 - @JSONField(serialize = false) - private String fixmedinsCode; - // 定点医药机构名称 - @JSONField(serialize = false) - private String fixmedinsName; - // 就医地医保区划 - @JSONField(serialize = false) - private String mdtrtareaAdmvs; - // 参保地医保区划 - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; - // 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - // 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - // 医疗类别 - @Dict(dictCode = "med_type") - @JSONField(name = "med_type") - private String medType; - // 诊断时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "begntime") - private Date begntime; - // 主要病情描述 - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - // 病种编码 - @JSONField(name = "dise_codg") - private String diseCodg; - // 病种名称 - @JSONField(name = "dise_name") - private String diseName; - // 计划生育手术类别 - @Dict(dictCode = "birctrl_type") - @JSONField(name = "birctrl_type") - private String birctrlType; - // 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - @JSONField(name = "diseinfo") - private List diseinfoList; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java deleted file mode 100644 index 6fe32f31..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java +++ /dev/null @@ -1,242 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.annotation.Excel; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - *【2204】门诊费用明细信息上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -public class Clinic2204FeeDetailParam extends HisBaseEntity implements Serializable { - - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - //就诊ID内部 - @JSONField(serialize=false) - private String regId; - //订单主键 - @JSONField(serialize=false) - private String orderId; - //定点医药机构编号 - @JSONField(serialize=false) - private String fixmedinsCode; - //定点医药机构名称 - @JSONField(serialize=false) - private String fixmedinsName; - //就医地医保区划 - @JSONField(serialize=false) - private String mdtrtareaAdmvs; - //参保地医保区划 - @JSONField(serialize=false) - private String insuplcAdmdvs; - //病历号 - @JSONField(serialize=false) - private String medicalNo; - //费用明细流水号 - @JSONField(name="feedetl_sn") - private String feedetlSn; - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - //收费批次号 - @JSONField(name="chrg_bchno") - private String chrgBchno; - //病种编码 - @JSONField(name="dise_codg") - private String diseCodg; - //处方号 - @JSONField(name="rxno") - private String rxno; - //外购处方标志 - @Dict(dictCode = "rx_circ_flag") - @JSONField(name="rx_circ_flag") - private String rxCircFlag; - //费用发生时间 - @Excel(name = "费用发生时间", width = 20, dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(name="fee_ocur_time") - private Date feeOcurTime; - //商品名 - @Excel(name = "商品名", width = 15) - private String tradename; - //药品类别 - @Dict(dictCode = "list_type") - private String drugtype; - //剂型 - @Dict(dictCode = "drug_dosform") - private String dosemodel; - //项目等级 - @Dict(dictCode = "chrgitm_lv") - private String feegrade; - //处方标志 - @Dict(dictCode = "rx_flag") - private String rxflag; - //生产厂家 - @Excel(name = "生产厂家", width = 15) - private String producingarea; - //医疗目录编码 - @Excel(name = "医疗目录编码", width = 15) - @JSONField(name="med_list_codg") - private String medListCodg; - //医药机构目录编码 - @Excel(name = "医药机构目录编码", width = 15) - @JSONField(name="medins_list_codg") - private String medinsListCodg; - //明细项目费用总额 - @Excel(name = "明细项目费用总额", width = 15) - @JSONField(name="det_item_fee_sumamt") - private Double detItemFeeSumamt; - //数量 - @Excel(name = "数量", width = 15) - @JSONField(name="cnt") - private Double cnt; - //单价 - @JSONField(name="pric") - private Double pric; - //单次剂量描述 - @JSONField(name="sin_dos_dscr") - private String sinDosDscr; - //使用频次描述 - @JSONField(name="used_frqu_dscr") - private String usedFrquDscr; - //周期天数 - @JSONField(name="prd_days") - private String prdDays; - //用药途径描述 - @JSONField(name="medc_way_dscr") - private String medcWayDscr; - //开单科室编码 - @JSONField(name="bilg_dept_codg") - private String bilgDeptCodg; - //开单科室名称 - @JSONField(name="bilg_dept_name") - private String bilgDeptName; - //开单医生编码 - @JSONField(name="bilg_dr_codg") - private String bilgDrCodg; - //开单医师姓名 - @JSONField(name="bilg_dr_name") - private String bilgDrName; - //受单科室编码 - @JSONField(name="acord_dept_codg") - private String acordDeptCodg; - //受单科室名称 - @JSONField(name="acord_dept_name") - private String acordDeptName; - //受单医生编码 - @JSONField(name="orders_dr_code") - private String ordersDrCode; - //受单医生姓名 - @JSONField(name="orders_dr_name") - private String ordersDrName; - //医院审批标志 - @Dict(dictCode = "hosp_appr_flag") - @JSONField(name="hosp_appr_flag") - private String hospApprFlag; - //中药使用方式 - @Dict(dictCode = "tcmdrug_used_way") - @JSONField(name="tcmdrug_used_way") - private String tcmdrugUsedWay; - //外检标志 - @Dict(dictCode = "etip_flag") - @JSONField(name="etip_flag") - private String etipFlag; - //外检医院编码 - @JSONField(name="etip_hosp_code") - private String etipHospCode; - //出院带药标志 - @Dict(dictCode = "dscg_tkdrug_flag") - @JSONField(name="dscg_tkdrug_flag") - private String dscgTkdrugFlag; - //生育费用标志 - @Dict(dictCode = "matn_fee_flag") - @JSONField(name="matn_fee_flag") - private String matnFeeFlag; - //定价上限金额 - @JSONField(name="pric_uplmt_amt") - private Double pricUplmtAmt; - //自付比例 - @JSONField(name="selfpay_prop") - private Double selfpayProp; - //全自费金额 - @JSONField(name="fulamt_ownpay_amt") - private Double fulamtOwnpayAmt; - //超限价金额 - @JSONField(name="overlmt_amt") - private Double overlmtAmt; - //先行自付金额 - @JSONField(name="preselfpay_amt") - private Double preselfpayAmt; - //符合政策范围金额 - @JSONField(name="inscp_scp_amt") - private Double inscpScpAmt; - //收费项目等级 - @Dict(dictCode = "chrgitm_lv") - @JSONField(name="chrgitm_lv") - private String chrgitmLv; - //医疗收费项目类别 - @Dict(dictCode = "med_chrgitm_type") - @JSONField(name="med_chrgitm_type") - private String medChrgitmType; - //基本药物标志 - @Dict(dictCode = "bas_medn_flag") - @JSONField(name="bas_medn_flag") - private String basMednFlag; - //医保谈判药品标志 - @Dict(dictCode = "hi_nego_drug_flag") - @JSONField(name="hi_nego_drug_flag") - private String hiNegoDrugFlag; - //儿童用药标志 - @Dict(dictCode = "chld_medc_flag") - @JSONField(name="chld_medc_flag") - private String chldMedcFlag; - //目录特项标志 - @Dict(dictCode = "list_sp_item_flag") - @JSONField(name="list_sp_item_flag") - private String listSpItemFlag; - //限制使用标志 - @Dict(dictCode = "lmt_used_flag") - @JSONField(name="lmt_used_flag") - private String lmtUsedFlag; - //直报标志 - @Dict(dictCode = "drt_reim_flag") - @JSONField(name="drt_reim_flag") - private String drtReimFlag; - //备注 - @JSONField(name="memo") - private String memo; - //上报状态,0-未上报,1-已上报 - @JSONField(serialize=false) - private String status; - private String district; - @TableField(exist = false) - private String setlTimeStart; - @TableField(exist = false) - private String setlTimeEnd; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java deleted file mode 100644 index 8986a4f0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【2204】接口返回参数 - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@Accessors(chain = true) -public class Clinic2204FeeDetailResult { - // 主键字段(根据Y标识判断) - private String feedetlSn; // 费用明细流水号 - - // 数值型字段使用BigDecimal保证精度 - private BigDecimal detItemFeeSumamt; // 明细项目费用总额 - - private BigDecimal cnt; // 数量 - - private BigDecimal pric; // 单价 - - private BigDecimal pricUplmtAmt; // 定价上限金额 - - private BigDecimal selfpayProp; // 自付比例 - - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - private BigDecimal overlmtAmt; // 超限价金额 - - private BigDecimal preselfpayAmt; // 先行自付金额 - - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - // 字符型字段 - private String chrgitmLv; // 收费项目等级 - - private String medChrgitmType; // 医疗收费项目类别 - - private String basMednFlag; // 基本药物标志 - - private String hiNegoDrugFlag; // 医保谈判药品标志 - - private String chldMedcFlag; // 儿童用药标志 - - private String listSpItemFlag; // 目录特项标志 - - private String lmtUsedFlag; // 限制使用标志 - - private String drtReimFlag; // 直报标志 - - private String memo; // 备注 - - private String expContent; // 字段扩展 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java deleted file mode 100644 index 6ae4a654..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson2.annotation.JSONField; -import org.springframework.format.annotation.DateTimeFormat; - -import com.core.common.annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2204】门诊费用明细信息上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clinic2204OrderParam { - // 就医地医保区划 - @JSONField(serialize = false) - private String mdtrtareaAdmvs; - // 参保地医保区划 - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; - @JSONField(serialize = false) - private String chrgBchno; - @JSONField(name = "feedetail") - private List feedetail; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java deleted file mode 100644 index 20d511fa..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.List; - -/** - *【2204】门诊费用明细信息上传 - * - * @author SunJQ - * @date 2025-04-20 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Clinic2204OrderResult { - //2204门诊费用明细信息上传输出 - @JSONField(name = "result") - List result; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java deleted file mode 100644 index 7f634fc6..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 就诊明细撤销 - * - * @author SunJQ - * @date 2025-05-07 - */ -@Data -@Accessors(chain = true) -public class Clinic2205OrderParam { - - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - - //收费批次号 - @JSONField(name="chrg_bchno") - private String chrgBchno; - - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - - //人员编号 - @JSONField(name="exp_content") - private String expContent; - - // 参保地医保区划 - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java deleted file mode 100644 index 86155328..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 【2206】医保基金支付详情(【2207】【23系列】住院结算接口共用,后续考虑全局改类名) - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@Accessors(chain = true) -public class Clinic2206FundPaymentResult { - // 主键字段(根据Y标识判断) - //@JSONField(name = "fund_pay_type") - private String fundPayType; // 基金支付类型 - - // 数值型字段使用BigDecimal保证精度 - //@JSONField(name = "inscp_scp_amt") - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - //@JSONField(name = "crt_payb_lmt_amt") - private BigDecimal crtPaybLmtAmt; // 本次可支付限额金额 - - //@JSONField(name = "fund_payamt") - private BigDecimal fundPayamt; // 基金支付金额 - - // 字符型字段 - //@JSONField(name = "fund_pay_type_name") - private String fundPayTypeName; // 基金支付类型名称 - - //@JSONField(name = "setl_proc_info") - private String setlProcInfo; // 结算过程信息 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java deleted file mode 100644 index dc820975..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【2206】医保预结算的输出参数 - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@Accessors(chain = true) -public class Clinic2206OrderOutput { - // 主键字段 - private String mdtrtId; // 就诊ID - - private String psnNo; // 人员编号 - - private String psnName; // 人员姓名 - - private String psnCertType; // 人员证件类型 - - private String certno; // 证件号码 - - private String gend; // 性别 - - private String naty; // 民族 - - private Date brdy; // 出生日期 - - private BigDecimal age; // 年龄 - - private String insutype; // 险种类型 - - private String psnType; // 人员类别 - - private String cvlservFlag; // 公务员标志 - - private Date setlTime; // 结算时间 - - private String mdtrtCertType; // 就诊凭证类型 - - private String medType; // 医疗类别 - - private BigDecimal medfeeSumamt; // 医疗费总额 - - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - private BigDecimal preselfpayAmt; // 先行自付金额 - - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - private BigDecimal actPayDedc; // 实际支付起付线 - - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - private BigDecimal mafPay; // 医疗救助基金支出 - - private BigDecimal othPay; // 其他支出 - - private BigDecimal fundPaySumamt; // 基金支付总额 - - private BigDecimal psnPartAmt; // 个人负担总金额 - - private BigDecimal acctPay; // 个人账户支出 - - private BigDecimal psnCashPay; // 个人现金支出 - - private BigDecimal hospPartAmt; // 医院负担金额 - - private BigDecimal balc; // 余额 - - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID - - private String clrOptins; // 清算经办机构 - - private String clrWay; // 清算方式 - - private String clrType; // 清算类别 - - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - private String expContent; // 字段扩展 - - private List setldetail;// 结算详细信息 - - private String mdtrtCertNo; // 就诊凭证编号 - - private String chrgBchno; // 收费批次号 - - private String busNo; // 挂号采访码 - - // 构造方法:初始化所有字段为0.0 - public Clinic2206OrderOutput() { - this.medfeeSumamt = new BigDecimal("0.0"); - this.fulamtOwnpayAmt = new BigDecimal("0.0"); - this.overlmtSelfpay = new BigDecimal("0.0"); - this.preselfpayAmt = new BigDecimal("0.0"); - this.inscpScpAmt = new BigDecimal("0.0"); - this.actPayDedc = new BigDecimal("0.0"); - this.hifpPay = new BigDecimal("0.0"); - this.poolPropSelfpay = new BigDecimal("0.0"); - this.cvlservPay = new BigDecimal("0.0"); - this.hifesPay = new BigDecimal("0.0"); - this.hifmiPay = new BigDecimal("0.0"); - this.hifobPay = new BigDecimal("0.00"); - this.mafPay = new BigDecimal("0.0"); - this.othPay = new BigDecimal("0.0"); - this.fundPaySumamt = new BigDecimal("0.0"); - this.psnPartAmt = new BigDecimal("0.0"); - this.acctPay = new BigDecimal("0.0"); - this.psnCashPay = new BigDecimal("0.0"); - this.hospPartAmt = new BigDecimal("0.0"); - this.balc = new BigDecimal("0.0"); - this.acctMulaidPay = new BigDecimal("0.0"); - this.hifdmPay = new BigDecimal("0.0"); - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java deleted file mode 100644 index 36631e7b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - *【2206】门诊预结算 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -public class Clinic2206OrderParam extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - //内部就诊ID - @JSONField(serialize=false) - private String regId; - //人员姓名 - @JSONField(serialize=false) - private String name; - //性别 - @Dict(dictCode = "sex") - @JSONField(serialize=false) - private String sex; - //民族 - @Dict(dictCode = "naty") - @JSONField(serialize=false) - private String naty; - //出生日期 - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern="yyyy-MM-dd") - @JSONField(serialize=false) - private Date brdy; - //年龄 - @JSONField(serialize=false) - private Double age; - //定点医药机构编号 - @JSONField(serialize=false) - private String fixmedinsCode; - //定点医药机构名称 - @JSONField(serialize=false) - private String fixmedinsName; - //就医地医保区划 - @JSONField(serialize=false) - private String mdtrtareaAdmvs; - //参保地医保区划 - @JSONField(name="insuplc_admdvs") - private String insuplcAdmdvs; - //病历号 - @JSONField(serialize=false) - private String medicalNo; - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - //就诊凭证类型 - @Dict(dictCode = "mdtrt_cert_type") - @JSONField(name="mdtrt_cert_type") - private String mdtrtCertType; - //就诊凭证编号 - @JSONField(name="mdtrt_cert_no") - private String mdtrtCertNo; - //就诊凭证加密 - @TableField(exist = false) - @JSONField(serialize=false) - private String mdtrtCertNoEncrypt; - //医疗类别 - @Dict(dictCode = "med_type") - @JSONField(name="med_type") - private String medType; - //医疗费总额 - @JSONField(name="medfee_sumamt") - private Double medfeeSumamt; - //个人结算方式 - @Dict(dictCode = "psn_setlway") - @JSONField(name="psn_setlway") - private String psnSetlway; - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - //收费批次号 - @JSONField(name="chrg_bchno") - private String chrgBchno; - //险种类型 - @Dict(dictCode = "insutype") - @JSONField(name="insutype") - private String insutype; - //个人账户使用标志 - @Dict(dictCode = "acct_used_flag") - @JSONField(name="acct_used_flag") - private String acctUsedFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java deleted file mode 100644 index 6aa14ca1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 【2206】医保预结算的输出参数 - * - * @author SunJQ - * @date 2025-04-19 - */ -@Data -@Accessors(chain = true) -public class Clinic2206OrderResult { - // 主键字段 - @JSONField(name = "mdtrt_id") - private String mdtrtId; // 就诊ID - - @JSONField(name = "psn_no") - private String psnNo; // 人员编号 - - @JSONField(name = "psn_name") - private String psnName; // 人员姓名 - - @JSONField(name = "psn_cert_type") - private String psnCertType; // 人员证件类型 - - @JSONField(name = "certno") - private String certno; // 证件号码 - - @JSONField(name = "gend") - private String gend; // 性别 - - @JSONField(name = "naty") - private String naty; // 民族 - - @JSONField(name = "brdy") - private Date brdy; // 出生日期 - - @JSONField(name = "age") - private BigDecimal age; // 年龄 - - @JSONField(name = "insutype") - private String insutype; // 险种类型 - - @JSONField(name = "psn_type") - private String psnType; // 人员类别 - - @JSONField(name = "cvlserv_flag") - private String cvlservFlag; // 公务员标志 - - @JSONField(name = "setl_time") - private Date setlTime; // 结算时间 - - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; // 就诊凭证类型 - - @JSONField(name = "med_type") - private String medType; // 医疗类别 - - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; // 医疗费总额 - - @JSONField(name = "fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - @JSONField(name = "overlmt_selfpay") - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - @JSONField(name = "preselfpay_amt") - private BigDecimal preselfpayAmt; // 先行自付金额 - - @JSONField(name = "inscp_scp_amt") - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - @JSONField(name = "act_pay_dedc") - private BigDecimal actPayDedc; // 实际支付起付线 - - @JSONField(name = "hifp_pay") - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - @JSONField(name = "pool_prop_selfpay") - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - @JSONField(name = "cvlserv_pay") - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - @JSONField(name = "hifes_pay") - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - @JSONField(name = "hifmi_pay") - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - @JSONField(name = "hifob_pay") - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - @JSONField(name = "maf_pay") - private BigDecimal mafPay; // 医疗救助基金支出 - - @JSONField(name = "oth_pay") - private BigDecimal othPay; // 其他支出 - - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; // 基金支付总额 - - @JSONField(name = "psn_part_amt") - private BigDecimal psnPartAmt; // 个人负担总金额 - - @JSONField(name = "acct_pay") - private BigDecimal acctPay; // 个人账户支出 - - @JSONField(name = "psn_cash_pay") - private BigDecimal psnCashPay; // 个人现金支出 - - @JSONField(name = "hosp_part_amt") - private BigDecimal hospPartAmt; // 医院负担金额 - - @JSONField(name = "balc") - private BigDecimal balc; // 余额 - - @JSONField(name = "acct_mulaid_pay") - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - @JSONField(name = "medins_setl_id") - private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID - - @JSONField(name = "clr_optins") - private String clrOptins; // 清算经办机构 - - @JSONField(name = "clr_way") - private String clrWay; // 清算方式 - - @JSONField(name = "clr_type") - private String clrType; // 清算类别 - - @JSONField(name = "hifdm_pay") - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - @JSONField(name = "exp_content") - private String expContent; // 字段扩展 - - @JSONField(name = "setldetail") - private List setldetail;// 结算详细信息 - - @JSONField(name = "mdtrt_cert_no") - private String mdtrtCertNo; // 就诊凭证编号 - - @JSONField(serialize = false) - private String chrgBchno; // 收费批次号 - - @JSONField(serialize = false) - private String busNo; // 挂号 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java deleted file mode 100644 index 34b5d135..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 预结算结果集 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class Clinic2206OrderResultDto { - - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; // 医疗费总额 - - @JSONField(name = "fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - @JSONField(name = "overlmt_selfpay") - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - @JSONField(name = "preselfpay_amt") - private BigDecimal preselfpayAmt; // 先行自付金额 - - @JSONField(name = "inscp_scp_amt") - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - @JSONField(name = "act_pay_dedc") - private BigDecimal actPayDedc; // 实际支付起付线 - - @JSONField(name = "hifp_pay") - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - @JSONField(name = "pool_prop_selfpay") - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - @JSONField(name = "cvlserv_pay") - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - @JSONField(name = "hifes_pay") - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - @JSONField(name = "hifmi_pay") - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - @JSONField(name = "hifob_pay") - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - @JSONField(name = "maf_pay") - private BigDecimal mafPay; // 医疗救助基金支出 - - @JSONField(name = "oth_pay") - private BigDecimal othPay; // 其他支出 - - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; // 基金支付总额 - - @JSONField(name = "psn_part_amt") - private BigDecimal psnPartAmt; // 个人负担总金额 - - @JSONField(name = "acct_pay") - private BigDecimal acctPay; // 个人账户支出 - - @JSONField(name = "psn_cash_pay") - private BigDecimal psnCashPay; // 个人现金支出 - - @JSONField(name = "hosp_part_amt") - private BigDecimal hospPartAmt; // 医院负担金额 - - @JSONField(name = "hifdm_pay") - private BigDecimal hifdmPay; - - @JSONField(name = "acct_mulaid_pay") - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - private String chrgBchno;//收费批次号 - - private Long accountId;//账户id - - private String medType;//医疗类型 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java deleted file mode 100644 index 6a98f44b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.annotation.Excel; -import com.core.common.core.domain.HisBaseEntity; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - *【2206】门诊预结算-输出参数 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -public class Clinic2206SetldetaiResult extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - //结算清单主键 - @Excel(name = "结算清单主键", width = 15) - @JSONField(serialize=false) - private String orderId; - //结算信息主键 - @JSONField(serialize=false) - private String setlinfoId; - //内部就诊ID - @JSONField(serialize=false) - private String regId; - //基金支付类型 - @JSONField(name="fund_pay_type") - @Dict(dictCode = "fund_pay_type") - private String fundPayType; - //符合政策范围金额 - @JSONField(name="inscp_scp_amt") - private Double inscpScpAmt; - //本次可支付限额金额 - @JSONField(name="crt_payb_lmt_amt") - private Double crtPaybLmtAmt; - //基金支付金额 - @JSONField(name="fund_payamt") - private Double fundPayamt; - //基金支付类型名称 - @JSONField(name="fund_pay_type_name") - private String fundPayTypeName; - //结算过程信息 - @JSONField(name="setl_proc_info") - private String setlProcInfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java deleted file mode 100644 index 8bc9eea1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 【2207】医保预结算的输出参数 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class Clinic2207OrderResult { - // 主键字段 - @JSONField(name = "mdtrt_id") - private String mdtrtId; // 就诊ID - - @JSONField(name = "setl_id") - private String setlId;// 结算id 2207时有值 2206无值 - - @JSONField(name = "psn_no") - private String psnNo; // 人员编号 - - @JSONField(name = "psn_name") - private String psnName; // 人员姓名 - - @JSONField(name = "psn_cert_type") - private String psnCertType; // 人员证件类型 - - @JSONField(name = "certno") - private String certno; // 证件号码 - - @JSONField(name = "gend") - private String gend; // 性别 - - @JSONField(name = "naty") - private String naty; // 民族 - - @JSONField(name = "brdy") - private Date brdy; // 出生日期 - - @JSONField(name = "age") - private BigDecimal age; // 年龄 - - @JSONField(name = "insutype") - private String insutype; // 险种类型 - - @JSONField(name = "psn_type") - private String psnType; // 人员类别 - - @JSONField(name = "cvlserv_flag") - private String cvlservFlag; // 公务员标志 - - @JSONField(name = "setl_time") - private Date setlTime; // 结算时间 - - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; // 就诊凭证类型 - - @JSONField(name = "med_type") - private String medType; // 医疗类别 - - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; // 医疗费总额 - - @JSONField(name = "fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - @JSONField(name = "overlmt_selfpay") - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - @JSONField(name = "preselfpay_amt") - private BigDecimal preselfpayAmt; // 先行自付金额 - - @JSONField(name = "inscp_scp_amt") - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - @JSONField(name = "act_pay_dedc") - private BigDecimal actPayDedc; // 实际支付起付线 - - @JSONField(name = "hifp_pay") - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - @JSONField(name = "pool_prop_selfpay") - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - @JSONField(name = "cvlserv_pay") - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - @JSONField(name = "hifes_pay") - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - @JSONField(name = "hifmi_pay") - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - @JSONField(name = "hifob_pay") - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - @JSONField(name = "maf_pay") - private BigDecimal mafPay; // 医疗救助基金支出 - - @JSONField(name = "oth_pay") - private BigDecimal othPay; // 其他支出 - - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; // 基金支付总额 - - @JSONField(name = "psn_part_amt") - private BigDecimal psnPartAmt; // 个人负担总金额 - - @JSONField(name = "acct_pay") - private BigDecimal acctPay; // 个人账户支出 - - @JSONField(name = "psn_cash_pay") - private BigDecimal psnCashPay; // 个人现金支出 - - @JSONField(name = "hosp_part_amt") - private BigDecimal hospPartAmt; // 医院负担金额 - - @JSONField(name = "balc") - private BigDecimal balc; // 余额 - - @JSONField(name = "acct_mulaid_pay") - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - @JSONField(name = "medins_setl_id") - private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID - - @JSONField(name = "clr_optins") - private String clrOptins; // 清算经办机构 - - @JSONField(name = "clr_way") - private String clrWay; // 清算方式 - - @JSONField(name = "clr_type") - private String clrType; // 清算类别 - - @JSONField(name = "hifdm_pay") - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - @JSONField(name = "exp_content") - private String expContent; // 字段扩展 - - @JSONField(name = "setldetail") - private List setldetail;// 结算详细信息 - - @JSONField(serialize = false) - private String chrgBchno; // 收费批次号 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java deleted file mode 100644 index f2a73884..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.dto; - -import lombok.Getter; -import lombok.Setter; -import lombok.experimental.Accessors; - -@Getter -@Setter -@Accessors(chain = true) -public class Clinic2207OrderResultDto extends Clinic2207OrderResult { - - private Long accountId; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java deleted file mode 100644 index 56f4bded..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 结算基础信息 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class Clinic2207OrderResultInfoDto { - // 主键字段 - @JSONField(name = "mdtrt_id") - private String mdtrtId; // 就诊ID - - @JSONField(name = "psn_no") - private String psnNo; // 人员编号 - - @JSONField(name = "psn_name") - private String psnName; // 人员姓名 - - @JSONField(name = "psn_cert_type") - private String psnCertType; // 人员证件类型 - - @JSONField(name = "certno") - private String certno; // 证件号码 - - @JSONField(name = "gend") - private String gend; // 性别 - - @JSONField(name = "naty") - private String naty; // 民族 - - @JSONField(name = "brdy") - private Date brdy; // 出生日期 - - @JSONField(name = "age") - private BigDecimal age; // 年龄 - - @JSONField(name = "insutype") - private String insutype; // 险种类型 - - @JSONField(name = "psn_type") - private String psnType; // 人员类别 - - @JSONField(name = "cvlserv_flag") - private String cvlservFlag; // 公务员标志 - - @JSONField(name = "setl_time") - private Date setlTime; // 结算时间 - - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; // 就诊凭证类型 - - @JSONField(name = "med_type") - private String medType; // 医疗类别 - - @JSONField(name = "medins_setl_id") - private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID - - @JSONField(name = "setldetail") - private List setldetail;// 结算详细信息 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java deleted file mode 100644 index f939c07b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 【2208】门诊结算撤销 - * - * @author SunJQ - * @date 2025-04-21 - */ -@Data -@Accessors(chain = true) -public class Clinic2208UnSetlInfoOutput { - - // 1. 就诊ID(字符型,30位,必填) - private String mdtrtId; - - // 2. 结算ID(字符型,30位,必填) - private String setlId; - - // 3. 清算经办机构(字符型,6位) - private String clrOptins; - - // 4. 结算时间(日期时间型,格式:yyyy-MM-dd HH:mm:ss,必填) - private Date setlTime; - - // 5. 医疗费总额(数值型,16位含2位小数,必填) - private BigDecimal medfeeSumamt; - - // 6. 全自费金额(数值型,16位含2位小数,必填) - private BigDecimal fulamtOwnpayAmt; - - // 7. 超限价自费费用(数值型,16位含2位小数,必填) - private BigDecimal overlmtSelfpay; - - // 8. 先行自付金额(数值型,16位含2位小数,必填) - private BigDecimal preselfpayAmt; - - // 9. 符合政策范围金额(数值型,16位含2位小数,必填) - private BigDecimal inscpScpAmt; - - // 10. 实际支付起付线(数值型,16位含2位小数) - private BigDecimal actPayDedc; - - // 11. 基本医疗保险统筹基金支出(数值型,16位含2位小数,必填) - private BigDecimal hifpPay; - - // 12. 统筹基金支付比例(数值型,5位含4位小数,必填) - private BigDecimal poolPropSelfpay; - - // 13. 公务员医疗补助支出(数值型,16位含2位小数,必填) - private BigDecimal cvlservPay; - - // 14. 企业补充医保支出(数值型,16位含2位小数,必填) - private BigDecimal hifesPay; - - // 15. 居民大病保险支出(数值型,16位含2位小数,必填) - private BigDecimal hifmiPay; - - // 16. 职工大额医疗补助支出(数值型,16位含2位小数,必填) - private BigDecimal hifobPay; - - // 17. 医疗救助基金支出(数值型,16位含2位小数,必填) - private BigDecimal mafPay; - - // 18. 其他支出(数值型,16位含2位小数,必填) - private BigDecimal othPay; - - // 19. 基金支付总额(数值型,16位含2位小数,必填) - private BigDecimal fundPaySumamt; - - // 20. 个人负担总金额(数值型,16位含2位小数,必填) - private BigDecimal psnPartAmt; - - // 21. 个人账户支出(数值型,16位含2位小数,必填) - private BigDecimal acctPay; - - // 22. 余额(数值型,16位含2位小数,必填) - private BigDecimal balc; - - // 23. 个人账户共济支付(数值型,16位含2位小数,必填) - private BigDecimal acctMulaidPay; - - // 24. 医院负担金额(数值型,16位含2位小数,必填) - private BigDecimal hospPartAmt; - - // 25. 医药机构结算ID(字符型,30位,必填) - private String medinsSetlId; - - // 26. 个人现金支出(数值型,16位含2位小数,必填) - private BigDecimal pdnCashPay; - - // 27. 伤残人员医疗补助支出(数值型,16位含2位小数,必填) - private BigDecimal hifdmPay; - - //结算详细信息 - private List setldetail;//结算详细信息 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java deleted file mode 100644 index 403951dc..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - *【2208】门诊结算撤销 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -public class Clinic2208UnSetlInfoParam extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - //结算ID - @JSONField(name="setl_id") - private String setlId; - //参保地医保区划 - @JSONField(name="insuplc_admdvs") - private String insuplcAdmdvs; - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java deleted file mode 100644 index c6139412..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java +++ /dev/null @@ -1,137 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 【2208】门诊结算撤销 - * - * @author SunJQ - * @date 2025-04-21 - */ -@Data -@Accessors(chain = true) -public class Clinic2208UnSetlInfoResult { - - // 1. 就诊ID(字符型,30位,必填) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 结算ID(字符型,30位,必填) - @JSONField(name = "setl_id") - private String setlId; - - // 3. 清算经办机构(字符型,6位) - @JSONField(name = "clr_optins") - private String clrOptins; - - // 4. 结算时间(日期时间型,格式:yyyy-MM-dd HH:mm:ss,必填) - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "setl_time") - private Date setlTime; - - // 5. 医疗费总额(数值型,16位含2位小数,必填) - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 6. 全自费金额(数值型,16位含2位小数,必填) - @JSONField(name = "fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - // 7. 超限价自费费用(数值型,16位含2位小数,必填) - @JSONField(name = "overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - // 8. 先行自付金额(数值型,16位含2位小数,必填) - @JSONField(name = "preselfpay_amt") - private BigDecimal preselfpayAmt; - - // 9. 符合政策范围金额(数值型,16位含2位小数,必填) - @JSONField(name = "inscp_scp_amt") - private BigDecimal inscpScpAmt; - - // 10. 实际支付起付线(数值型,16位含2位小数) - @JSONField(name = "act_pay_dedc") - private BigDecimal actPayDedc; - - // 11. 基本医疗保险统筹基金支出(数值型,16位含2位小数,必填) - @JSONField(name = "hifp_pay") - private BigDecimal hifpPay; - - // 12. 统筹基金支付比例(数值型,5位含4位小数,必填) - @JSONField(name = "pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - // 13. 公务员医疗补助支出(数值型,16位含2位小数,必填) - @JSONField(name = "cvlserv_pay") - private BigDecimal cvlservPay; - - // 14. 企业补充医保支出(数值型,16位含2位小数,必填) - @JSONField(name = "hifes_pay") - private BigDecimal hifesPay; - - // 15. 居民大病保险支出(数值型,16位含2位小数,必填) - @JSONField(name = "hifmi_pay") - private BigDecimal hifmiPay; - - // 16. 职工大额医疗补助支出(数值型,16位含2位小数,必填) - @JSONField(name = "hifob_pay") - private BigDecimal hifobPay; - - // 17. 医疗救助基金支出(数值型,16位含2位小数,必填) - @JSONField(name = "maf_pay") - private BigDecimal mafPay; - - // 18. 其他支出(数值型,16位含2位小数,必填) - @JSONField(name = "oth_pay") - private BigDecimal othPay; - - // 19. 基金支付总额(数值型,16位含2位小数,必填) - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - // 20. 个人负担总金额(数值型,16位含2位小数,必填) - @JSONField(name = "psn_part_amt") - private BigDecimal psnPartAmt; - - // 21. 个人账户支出(数值型,16位含2位小数,必填) - @JSONField(name = "acct_pay") - private BigDecimal acctPay; - - // 22. 余额(数值型,16位含2位小数,必填) - @JSONField(name = "balc") - private BigDecimal balc; - - // 23. 个人账户共济支付(数值型,16位含2位小数,必填) - @JSONField(name = "acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - // 24. 医院负担金额(数值型,16位含2位小数,必填) - @JSONField(name = "hosp_part_amt") - private BigDecimal hospPartAmt; - - // 25. 医药机构结算ID(字符型,30位,必填) - @JSONField(name = "medins_setl_id") - private String medinsSetlId; - - // 26. 个人现金支出(数值型,16位含2位小数,必填) - @JSONField(name = "pdn_cash_pay") - private BigDecimal pdnCashPay; - - // 27. 伤残人员医疗补助支出(数值型,16位含2位小数,必填) - @JSONField(name = "hifdm_pay") - private BigDecimal hifdmPay; - - //结算详细信息 - @JSONField(name = "setldetail") - private List setldetail;//结算详细信息 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java deleted file mode 100644 index 1bd684e9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【2201】【2202】挂号 退号 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ClinicReg extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - //就诊ID - @JSONField(name="mdtrt_id") - private String mdtrtId; - //参保地医保区划 - @JSONField(serialize=false) - private String insuplcAdmdvs; - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - //险种类型 - //@Dict(dictCode = "insutype") - @JSONField(name="insutype") - private String insutype; - //医疗类别 - //@Dict(dictCode = "med_type") - @JSONField(serialize=false) - private String medType; - //挂号时间 - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(name="begntime") - private Date begntime; - //就诊凭证类型 - @Dict(dictCode = "mdtrt_cert_type") - @JSONField(name="mdtrt_cert_type") - private String mdtrtCertType; - //就诊凭证编号 - @JSONField(name="mdtrt_cert_no") - private String mdtrtCertNo; -// //证件加密串 -// @JSONField(serialize=false) -// @TableField(exist = false) -// private String mdtrtCertNoEncrypt; - //住院/门诊号 - @JSONField(name="ipt_otp_no") - private String iptOtpNo;//使用bus_no - //医师编码 - //@Dict(dictTable = "business_pub_medicalstaff", dictText = "name", dictCode = "id") - @JSONField(name="atddr_no") - private String atddrNo; - //医师姓名 - @JSONField(name="dr_name") - private String drName; - //科室编码 - //@Dict(dictTable = "business_pub_dept", dictText = "hosp_dept_name", dictCode = "id") - @JSONField(name="dept_code") - private String deptCode; - //科室名称 - @JSONField(name="dept_name") - private String deptName; - //科别 - @Dict(dictCode = "dept") - @JSONField(name="caty") - private String caty; - //挂号费 - @JSONField(serialize=false) - private Double regFee; - //检查费 - @JSONField(serialize=false) - private Double checkFee; - //应收金额 - @JSONField(serialize=false) - private Double totalFee; - //状态,0-挂号,1-看诊,2-费用明细,3-预结算,4-结算 - @JSONField(serialize=false) - @Dict(dictCode = "clinc_status") - private String status; - - @JSONField(name="psn_cert_type") - @TableField(exist = false) - private String psnCertType; - @JSONField(name="certno") - @TableField(exist = false) - private String certno; - @JSONField(name="psn_type") - @TableField(exist = false) - private String psnType; - @JSONField(name="psn_name") - @TableField(exist = false) - private String psnName; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java deleted file mode 100644 index 8e215ea8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.util.Date; - -@Data -@Accessors(chain = true) -public class ClinicReg2201Output { - private static final long serialVersionUID = 1L; - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - //就诊ID - private String mdtrtId; - //参保地医保区划 - @JSONField(serialize=false) - private String insuplcAdmdvs; - //人员编号 - private String psnNo; - //险种类型 - private String insutype; - //医疗类别 - @JSONField(serialize=false) - private String medType; - //挂号时间 - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date begntime; - //就诊凭证类型 - private String mdtrtCertType; - //就诊凭证编号 - private String mdtrtCertNo; - //证件加密串 - @JSONField(serialize=false) - @TableField(exist = false) - private String mdtrtCertNoEncrypt; - //住院/门诊号 - private String iptOtpNo; - //医师编码 - private String atddrNo; - //医师姓名 - private String drName; - //科室编码 - private String deptCode; - //科室名称 - private String deptName; - //科别 - private String caty; - //挂号费 - private Double regFee; - //检查费 - private Double checkFee; - //应收金额 - private Double totalFee; - //状态,0-挂号,1-看诊,2-费用明细,3-预结算,4-结算 - private String status; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java deleted file mode 100644 index 3a8a7472..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 药品发放和库存表连接信息 - * - * @author wangyang - * @date 2025-03-14 - */ -@Data -@Accessors(chain = true) -public class DispenseInventory3505Dto { - - /** 药品发放表主键ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long dispenseId; - - /** 就诊id */ - @JsonSerialize(using = ToStringSerializer.class) - private Long encounterId; - - /** 药品请求表主键ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long medReqId; - - /** 病人id */ - @JsonSerialize(using = ToStringSerializer.class) - private Long patientId; - - /** 请求单位编码 */ - private String dispenseUnitCode; - - /** 请求数量 */ - private Integer dispenseQuantity; - - /** 发放数量 */ - private Integer dispenseStatus; - - /** 库存项目表主键ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long inventoryId; - - /** 拆零单位 */ - private String inventoryUnitCode; - - /** 当前库存数量(拆零单位) */ - private BigDecimal inventoryQuantity; - - /** 拆零比 */ - private BigDecimal partPercent; - - /** 批号 */ - private String lotNumber; - - /** 生产日期 */ - private Date productionDate; - - /** 发药时间 */ - private Date dispenseTime; - - /** 有效期止 */ - private Date expirationDate; - - /** 追溯码 */ - private String traceNo; - - /** 医保编码 */ - private String ybNo; - - /** 就诊编号 */ - private String encounterNo; - - /** 药品编码 */ - private String medicationNo; - - /** 执业资格证号 */ - private String pharPracCertNo; - - /** 发药编号 */ - private String dispenseNo; - - /** 处方标志 */ - private Integer rxFlag; - - /** 配药人 */ - private String preparerName; - - /** 发药人 */ - private String dispenseName; - - /** 开方人 */ - private String practitionerName; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java deleted file mode 100644 index 0cab43db..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 收费项目明细 - * - * @author yuxj - * @date 2025-04-22 - */ -@Data -@Accessors(chain = true) -public class EleInvoiceChargeDetailDto { - - // 医疗收费项目类别; - private String ybType; - // 数量 - private Integer number; - // 金额 - private BigDecimal amt; - // 自费金额 - private BigDecimal selfAmt; - // 收费项目名称 - private String chargeName; - // 收费项目代码 - private String chargeCode; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java deleted file mode 100644 index 44b64464..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 清单项目明细 - * - * @author yuxj - * @date 2025-04-22 - */ -@Data -@Accessors(chain = true) -public class EleInvoiceListDetailDto { - // 明细流水号 - private Long listDetailNo; - // 医疗收费项目类别; - private String ybType; - // 药品编码 - private String code; - // 药品名称 - private String name; - // 医保项目编码 - private String ybCode; - // 计量单位 - private String unit; - // 单价 - private BigDecimal std; - // 数量 - private Integer number; - // 金额 - private BigDecimal amt; - // 自费金额 - private BigDecimal selfAmt; - // 医保药品分类 - private Integer medicalCareType; - // 收费项目名称 - private String chargeName; - // 收费项目代码 - private String chargeCode; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java deleted file mode 100644 index 2e68db0d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * 患者信息 - * - * @author yuxj - * @date 2025-04-22 - */ -@Data -@Accessors(chain = true) -public class EleInvoicePatientInfoDto { - // 患者id - private Long payerId; - - // 患者姓名 - private String payer; - - // 患者院内编码/病历号 - private String caseNumber; - - // 性别 - private Integer genderEnum; - private String genderEnum_enumText; - - // 生日 - private Date birthDate; - - // 电话 - private String tel; - - // 身份证号 - private String cardNo; - - // 就诊编码 - private String encounterBusNo; - - // 就诊日期 - private String consultationDate; - - // 住院日期 - private String inHospitalDate; - - // 出院日期 - private String outHospitalDate; - - // 就诊科室名称 - private String patientCategory; - - // 就诊科室编码 - private String patientCategoryCode; - - // 医疗机构类型 - private String medicalInstitution; - - // 医保区域编码 - private String medCareAreaCode; - - // 入院科室编码 - private String categoryCode; - // 入院科室名称 - private String category; - // 出院科室编码 - private String leaveCategoryCode; - // 出院科室名称 - private String leaveCategory; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java deleted file mode 100644 index ebceafc8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 付款信息 - * - * @author yuxj - * @date 2025-04-22 - */ -@Data -@Accessors(chain = true) -public class EleInvoicePaymentInfoDto { - // 付款状态 - private Integer paymentStatus; - - // 发票id - private Long invoiceId; - - // 发票状态 - private Integer invoiceStatus; - - // 结算id - private Long paymentId; - - // 支付的业务标识符(用于显示,支付流水号) - private String busNo; - - // 收费员 - private String payee; - - // 开票总金额 - private BigDecimal totalAmt; - - // 个人现金支付金额 - private BigDecimal rmbCashPayAmount; - // 个人现金支付金额(微信) - private BigDecimal wxPayAmount; - // 个人现金支付金额(支付宝) - private BigDecimal aliPayAmount; - // 个人现金支付金额(银联) - private BigDecimal debitPayAmount; - // 个人医保账户支付 - private BigDecimal zhPayAmount; - // 基金支付总额 - private BigDecimal ybFundFayAmount; - // 其他(如医院负担金额) - private BigDecimal otherPayAmount; - // 账户共济支付金额 - private BigDecimal aelfYbZhGjValue; - - // 付款账单集合 - private String chargeItemIds; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java deleted file mode 100644 index d1b7b93b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.openhis.common.enums.InvoiceStatus; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 返回信息 - * - * @author yuxj - * @date 2025-04-22 - */ -@Data -@Accessors(chain = true) -public class EleInvoiceResultDto { - - private Long id; - - /** 患者ID */ - private Long patientId; - - /** 状态 */ - private InvoiceStatus statusEnum; - - /** 类别 */ - private String typeCode; - - /** 取消原因 */ - private String cancelledReason; - - /** 收费项 */ - private String chargeItemIds; - - /** 发票净额总记 */ - private BigDecimal totalNet; - - /** 发票总计金额 */ - private BigDecimal totalGross; - - /** 付款详情 */ - private String paymentTerms; - - /** 账单批次号 */ - private String batchCode; - - /** 结算批次号 */ - private String qrCode; - - /** 发票编号 */ - private String busNo; - - /** 开票员 */ - private Long invoicingStaffId; - /** 电子票据代码 */ - private String billBatchCode; - /** 电子票据号码 */ - private String billNo; - /** 电子校验码 */ - private String random; - /** 电子票据生成时间 */ - private String billCreateTime; - /** 电子票据二维码图片数据 */ - private String billQrCode; - /** 电子票据H5页面URL */ - private String pictureUrl; - /** 电子票据外网H5页面URL */ - private String pictureNetUrl; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java deleted file mode 100644 index 4e38f16d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.dto; - -import lombok.Data; -import org.springframework.web.multipart.MultipartFile; - -@Data -public class File9101Param { - - private MultipartFile file; - - private String filename; - - private String fixmedinsCode; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java deleted file mode 100644 index 582d6bf8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【9102】下载实体 - */ -@Data -@Accessors(chain = true) -public class FileDownload { - @JSONField(serialize = false) - private String code; - @JSONField(name = "ver") - private String version; - @JSONField(name = "filename") - private String filename; - @JSONField(name = "file_qury_no") - private String fileQuryNo; - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java deleted file mode 100644 index 12d047ae..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【9101】【9102】公用 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FileResult { - - // 文件查询号 - @JSONField(name="file_qury_no") - private String fileQuryNo; - - // 文件名称 - @JSONField(name="filename") - private String filename; - - // 下载截止时间 - @JSONField(name="dld_endtime") - private Date dldEndtime; - - // 文件数据 - @JSONField(serialize=false) - private byte[] fileData; - - // 医药机构编号 - @JSONField(name="fixmedins_code") - private String fixmedinsCode; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java deleted file mode 100644 index 4585aacb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【13203】医药机构费用结算日对账结果查询 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial13203Param { - - // 对账日期,格式:YYYY-MM-DD - @JSONField(name = "stmt_date") - private String stmtDate; - - // 明细对账结果,1:不平,0:平 - @JSONField(name = "stmt_rslt") - private String stmtRslt; - - // 查询页面数据量,最大100 - @JSONField(name = "page_size") - private String pageSize; - - // 页数,默认1 - @JSONField(name = "page_num") - private String pageNum; - - // 清算机构编码 - @JSONField(name = "clr_optins") - private String clrOptins; - - // 清算类别 - @JSONField(name = "clr_type") - private String clrType; - - // 险种 - @JSONField(name = "insutype") - private String insutype; - - // 就医类别,2:本地就医,3:省内异地就医,4:跨省就医 - @JSONField(name = "clr_pay_loc") - private String clrPayLoc; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java deleted file mode 100644 index 18ce4215..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【13203】医药机构费用结算日对账结果查询-输出参数 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial13203Result { - - // 退费标识 - @JSONField(name = "refd_setl_flag") - private String refdSetlFlag; - - // 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 就诊流水号 - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 结算ID - @JSONField(name = "setl_id") - private String setlId; - - // 人员名称 - @JSONField(name = "psn_name") - private String psnName; - - // 对账结果 - @JSONField(name = "stmt_rslt") - private String stmtRslt; - - // 总医疗费 - @JSONField(name = "medfee_sumamt") - private String medfeeSumamt; - - // 清算机构编码 - @JSONField(name = "clr_optins") - private String clrOptins; - - // 报文ID - @JSONField(name = "msg_id") - private String msgId; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java deleted file mode 100644 index 1f1d0107..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; - -/** - * 【13202】前台入参 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -public class Financial13203WebParam { - - // 对账日期,格式:YYYY-MM-DD - @JSONField(name = "stmt_date") - private String stmtDate; - - // 明细对账结果,1:不平,0:平 - @JSONField(name = "stmt_rslt") - private String stmtRslt; - - // 查询页面数据量,最大100 - @JSONField(name = "page_size") - private String pageSize; - - // 页数,默认1 - @JSONField(name = "page_num") - private String pageNum; - - // 清算机构编码 - @JSONField(name = "clr_optins") - private String clrOptins; - - // 清算类别 - @JSONField(name = "clr_type") - private String clrType; - - // 险种 - @JSONField(name = "insutype") - private String insutype; - - // 就医类别,2:本地就医,3:省内异地就医,4:跨省就医 - @JSONField(name = "clr_pay_loc") - private String clrPayLoc; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java deleted file mode 100644 index 7dd63c76..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial3201Output { - - //结算经办机构 - private String setlOptins; - //对账结果 - private String stmtRslt; - //对账结果说明 - private String stmtRsltDscr; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java deleted file mode 100644 index 01c12bb9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.annotation.Excel; -import com.core.common.core.domain.HisBaseEntity; -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3201】月结对账 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial3201Param extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //定点医药机构编号 - @Excel(name = "定点医药机构编号", width = 15) - @JSONField(serialize=false) - private String fixmedinsCode; - //定点医药机构名称 - @Excel(name = "定点医药机构名称", width = 15) - @JSONField(serialize=false) - private String fixmedinsName; - //医保区划 - @Excel(name = "医保区划", width = 15) - @JSONField(serialize=false) - private String admvs; - //险种 - @Excel(name = "险种", width = 15, dictType = "insutype") - @Dict(dictCode = "insutype") - @JSONField(name="insutype") - private String insutype; - //清算类别 - @Excel(name = "清算类别", width = 15, dictType = "clr_type") - @Dict(dictCode = "clr_type") - @JSONField(name="clr_type") - private String clrType; - //结算经办机构 - @Excel(name = "结算经办机构", width = 15) - @JSONField(name="setl_optins") - private String setlOptins; - //对账开始日期 - @Excel(name = "对账开始日期", width = 15, dateFormat = "yyyy-MM-dd") - @JSONField(name="stmt_begndate") - private String stmtBegndate; - //对账结束日期 - @Excel(name = "对账结束日期", width = 15, dateFormat = "yyyy-MM-dd") - @JSONField(name="stmt_enddate") - private String stmtEnddate; - //医疗费总额 - @Excel(name = "医疗费总额", width = 15) - @JSONField(name="medfee_sumamt") - private Double medfeeSumamt; - //基金支付总额 - @Excel(name = "基金支付总额", width = 15) - @JSONField(name="fund_pay_sumamt") - private Double fundPaySumamt; - //个人账户支付金额 - @Excel(name = "个人账户支付金额", width = 15) - @JSONField(name="acct_pay") - private Double acctPay; - //定点医药机构结算笔数 - @Excel(name = "定点医药机构结算笔数", width = 15) - @JSONField(name="fixmedins_setl_cnt") - private Integer fixmedinsSetlCnt; - - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs;//区划 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java deleted file mode 100644 index b604eead..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.Getter; -import lombok.Setter; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - * 【3202】文件输入实体 - * - * @author SunJQ - * @date 2025-04-22 - */ -@Getter -@Setter -@Accessors(chain = true) -public class Financial3202FileParam { - // 1. 结算ID(字符型,30位,必填) - @JSONField(name = "setl_id") - private String setlId; - - // 2. 就诊ID(字符型,30位,必填) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 3. 人员编号(字符型,30位,必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 4. 医疗费总额(数值型,16位含2位小数,必填) - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 5. 基金支付总额(数值型,16位含2位小数,必填) - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - // 6. 个人账户支出(数值型,16位含2位小数,必填) - @JSONField(name = "acct_pay") - private BigDecimal acctPay; - - // 7. 退费结算标志(字符型,3位,必填) - @JSONField(name = "refd_setl_flag") - private String refdSetlFlag; - - @Override - public String toString() { - return setlId + "," + mdtrtId + "," + psnNo + "," + medfeeSumamt + "," + fundPaySumamt + "," + acctPay + "," + refdSetlFlag; - } - - public String getTxt() { - return setlId + "\t" + mdtrtId + "\t" + psnNo + "\t" + medfeeSumamt + "\t" + fundPaySumamt + "\t" + acctPay + "\t" + refdSetlFlag; - } - - public Financial3202FileParam() { - } - - public Financial3202FileParam(String setlId, String mdtrtId, String psnNo, BigDecimal medfeeSumamt, BigDecimal fundPaySumamt, BigDecimal acctPay, String refdSetlFlag) { - this.setlId = setlId; - this.mdtrtId = mdtrtId; - this.psnNo = psnNo; - this.medfeeSumamt = medfeeSumamt; - this.fundPaySumamt = fundPaySumamt; - this.acctPay = acctPay; - this.refdSetlFlag = refdSetlFlag; - } - - private String patientName; - private String setlTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java deleted file mode 100644 index a6865cb9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import java.math.BigDecimal; - -/** - * 【3202】文件输出实体 - * - * @author SunJQ - * @date 2025-04-22 - */ -public class Financial3202FileResult { - // 1. 人员编号(字符型,30位,必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 就诊ID(字符型,30位,非必填) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 3. 结算ID(字符型,30位,非必填) - @JSONField(name = "setl_id") - private String setlId; - - // 4. 发送方报文ID(字符型,30位,必填) - @JSONField(name = "msgid") - private String msgid; - - // 5. 对账结果(字符型,6位,必填) - @JSONField(name = "stmt_rslt") - private String stmtRslt; - - // 6. 退费结算标志(字符型,3位,必填) - @JSONField(name = "refd_setl_flag") - private String refdSetlFlag; - - // 7. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 8. 医疗费总额(数值型,16位含2位小数,非必填) - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 9. 基金支付总额(数值型,16位含2位小数,非必填) - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - // 10. 个人账户支出(数值型,16位含2位小数,非必填) - @JSONField(name = "acct_pay") - private BigDecimal acctPay; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java deleted file mode 100644 index a6cd3a32..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import liquibase.pro.packaged.D; -import lombok.Data; -import lombok.Getter; -import lombok.Setter; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -@Data -@Accessors(chain = true) -public class Financial3202OtherParam extends Financial3202FileParam { - - // 7. 现金支付金额(数值型,16位含2位小数,必填) - private BigDecimal cashPayamt; - - private BigDecimal medSumfee; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java deleted file mode 100644 index fa8b60a9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import org.springframework.format.annotation.DateTimeFormat; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.annotation.Excel; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3203A】清算 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial3203AParam extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - - // 1. 清算类别(字符型,30位,必填) - @JSONField(name = "clr_type") - private String clrType; - - // 2. 医疗费总额(数值型,16位含2位小数,必填) - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 3. 医保认可费用总额(数值型,16位含2位小数,必填) - @JSONField(name = "med_sumfee") - private BigDecimal medSumfee; - - // 4. 基金申报总额(数值型,16位含2位小数,必填) - @JSONField(name = "fund_appy_sum") - private BigDecimal fundAppySum; - - // 5. 现金支付金额(数值型,16位含2位小数,必填) - @JSONField(name = "cash_payamt") - private BigDecimal cashPayamt; - - // 6. 个人账户支出(数值型,16位含2位小数,必填) - @JSONField(name = "acct_pay") - private BigDecimal acctPay; - - // 7. 开始日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "begndate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date begndate; - - // 8. 结束日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "enddate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date enddate; - - // 9. 清算机构(字符型,6位,必填) - @JSONField(name = "clr_optins") - private String clrOptins; // 必须是准确的6位编码 -// -// // 统筹区号,仅传参用 -// @JSONField(deserialize = false) -// private String admvs; // 必须是准确的6位编码 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java deleted file mode 100644 index 673dc148..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import javax.validation.constraints.NotNull; -import java.util.Date; -import java.util.List; - -/** - * 【3203A】前台入参 - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -public class Financial3203AWebParam { - - /** 清算类别 */ - @NotNull - private String clrType; - /** 开始时间 */ - @NotNull - private Date stmtBegnDate; - /** 结束时间 */ - @NotNull - private Date stmtEndDate; - /** 清算机构 */ - @NotNull - private String clrOptins; - - List settlementIdList; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java deleted file mode 100644 index b7df06bf..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; -import lombok.Data; - -import java.math.BigDecimal; - -/** - * 【3203】后台计算结果 DB映射实体 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -public class Financial3203Dto { - // 清算人次 - private Long psntime; - // 医保认可费用总额(数值型,16位含2位小数,必填) - private BigDecimal medSumfee; - // 现金支付金额(数值型,16位含2位小数,必填) - private BigDecimal cashPayamt; - // 个人账户支出(数值型,16位含2位小数,必填) - private BigDecimal acctPay; - /** 医疗费用总额 */ - private BigDecimal medFeeSumAmt; - /** 基金支付总额 */ - private BigDecimal fundPaySumAmt; - /** 个人账户支付总额 */ - private BigDecimal acctGjPay; - /** 现金支付总额 */ - private BigDecimal selfPayCash; - /** 微信支付总额 */ - private BigDecimal selfPayVX; - /** 阿里支付总额 */ - private BigDecimal selfPayALI; - /** 银行卡支付总额 */ - private BigDecimal selfPayUNION; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java deleted file mode 100644 index ba206d9e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 【3203】清算申请 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial3203Param { - private static final long serialVersionUID = 1L; - - // 1. 清算类别(字符型,30位,必填) - @JSONField(name = "clr_type") - private String clrType; - - // 10. 清算方式(字符型,30位,必填) - @JSONField(name = "clr_way") - private String clrWay; - - // 2. 医疗费总额(数值型,16位含2位小数,必填) - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 3. 医保认可费用总额(数值型,16位含2位小数,必填) - @JSONField(name = "med_sumfee") - private BigDecimal medSumfee; - - // 4. 基金申报总额(数值型,16位含2位小数,必填) - @JSONField(name = "fund_appy_sum") - private BigDecimal fundAppySum; - - // 5. 现金支付金额(数值型,16位含2位小数,必填) - @JSONField(name = "cash_payamt") - private BigDecimal cashPayamt; - - // 6. 个人账户支出(数值型,16位含2位小数,必填) - @JSONField(name = "acct_pay") - private BigDecimal acctPay; - - // 7. 开始日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "begndate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date begndate; - - // 8. 结束日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "enddate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date enddate; - - // 9. 清算年月 - @JSONField(name = "setlym") - private String setlym; - - // 11. 清算人次 - @JSONField(name = "psntime") - private Long psntime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java deleted file mode 100644 index 7c1c7dae..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - * 【3203】前台入参 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -public class Financial3203WebParam { - - // 清算类别(字符型,30位,必填) - @JSONField(name = "clr_type") - private String clrType; - - // 清算方式(字符型,30位,必填) - @JSONField(name = "clr_way") - private String clrWay; - - // 开始日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "begndate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date begndate; - - // 结束日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "enddate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date enddate; - - // 清算年月 - @JSONField(name = "setlym") - private String setlym; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java deleted file mode 100644 index edf81763..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3204A】清算申请撤销 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Financial3204Param { - /** - * 机构清算申请事件ID - */ - @JSONField(name = "clr_appy_evt_id") - private String clrAppyEvtId; - /** - * 清算机构 - */ - @JSONField(name = "clr_optins") - private String clrOptins; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java deleted file mode 100644 index a2cc8b73..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.dto; - -import lombok.Data; - -import java.util.Date; - -@Data -public class FinancialClearing3203AWebParam { - - /** 结算经办机构 */ - private String setlOptins; - /** 清算类别 */ - private String clrType; - /** 开始时间 */ - private String stmtBegnDate;//年月日 - /** 结束时间 */ - private String stmtEndDate; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java deleted file mode 100644 index f8a15810..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3202】医药机构费用结算对明细账 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FinancialSettlement3202Param { - // 1. 结算经办机构(字符型,6位,必填) - @JSONField(name = "setl_optins") - private String setlOptins; - - // 2. 文件查询号(字符型,30位,必填) - @JSONField(name = "file_qury_no") - private String fileQuryNo; - - // 3. 对账开始日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "stmt_begndate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date stmtBegndate; - - // 4. 对账结束日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "stmt_enddate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date stmtEnddate; - - // 5. 医疗费总额(数值型,16位含2位小数,必填) - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 6. 基金支付总额(数值型,16位含2位小数,必填) - @JSONField(name = "fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - // 7. 现金支付金额(数值型,16位含2位小数,必填) - @JSONField(name = "cash_payamt") - private BigDecimal cashPayamt; - - // 8. 定点医药机构结算笔数(数值型,10位,必填) - @JSONField(name = "fixmedins_setl_cnt") - private Integer fixmedinsSetlCnt; - - // 9. 清算类别(字符型,6位,必填) - @JSONField(name = "clr_type") - private String clrType; - - // 10. 退费结算标志(字符型,3位,必填) - @JSONField(name = "refd_setl_flag") - private String refdSetlFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java deleted file mode 100644 index 4ba19c16..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3202】医药机构费用结算对明细账-文件输出实体 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FinancialSettlement3202Result { - // 1. 文件查询号(字符型,30位,必填) - @JSONField(name = "file_qury_no") - private String fileQuryNo; - - // 2. 文件名称(字符型,200位,必填) - @JSONField(name = "filename") - private String filename; - - // 3. 下载截止时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "dld_endtime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date dldEndtime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java deleted file mode 100644 index bc895b4b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - *【3209A】查询跨省三方对账未成功数据(吉林省)-输入参数 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FinancialSettlement3209AParam { - - // 清算类别 - @JSONField(name = "clr_type") - private String clrType; - - // 开始日期 - @JSONField(name = "begndate") - private Date begndate; - - // 结束日期 - @JSONField(name = "enddate") - private Date enddate; - - // 清算机构 - @JSONField(name = "clr_optins") - private String clrOptins; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java deleted file mode 100644 index 3e5d3156..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3209A】查询跨省三方对账未成功数据(吉林省)-输出参数] - * - * @author SunJQ - * @date 2025-04-21 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FinancialSettlement3209AResult { - // 结算ID - @JSONField(name = "setlId") - private String setlId; - - // 参保地区划 - @JSONField(name = "insuAdmdvs") - private String insuAdmdvs; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java deleted file mode 100644 index db81d384..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.List; -import java.util.Set; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3101】明细审核事前分析服务(输入-规则分析信息) - * 【3102】明细审核事中分析服务(输入-规则分析信息) - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiConsultation3101Param { - - // 1. 系统编码 - @JSONField(name = "syscode") - private String syscode; - - // 2. 参保人信息 - @JSONField(name = "patient_dtos") - private List patientDtos; - - // 3. 规则标识集合(非必填) - @JSONField(name = "rule_ids") - private Set ruleIds; - - // 4. 任务ID - @JSONField(name = "task_id") - private String taskId; - - // 5. 触发场景 - @JSONField(name = "trig_scen") - private String trigScen; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java deleted file mode 100644 index d2272093..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【3101】明细审核事前分析服务(输入-诊断信息) - * 【3102】明细审核事中分析服务(输入-诊断信息) - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiDiagnose3101Param { - - // 1. 诊断标识 - @JSONField(name = "dise_id") - private String diseId; - - // 2. 出入诊断类别 - @JSONField(name = "inout_dise_type") - private String inoutDiseType; - - // 3. 主诊断标志 - @JSONField(name = "maindise_flag") - private String maindiseFlag; - - // 4. 诊断排序号 - @JSONField(name = "dias_srt_no") - private String diasSrtNo; - - // 5. 诊断(疾病)编码 - @JSONField(name = "dise_codg") - private String diseCodg; - - // 6. 诊断(疾病)名称 - @JSONField(name = "dise_name") - private String diseName; - - // 7. 诊断日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "dise_date") - private Date diseDate; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java deleted file mode 100644 index de6ddaee..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java +++ /dev/null @@ -1,167 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【3101】明细审核事前分析服务(输入-就诊信息) - * 【3102】明细审核事中分析服务(输入-就诊信息) - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiEncounter3101Param { - // 1. 就诊标识 - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 医疗服务机构标识 - @JSONField(name = "medins_id") - private String medinsId; - - // 3. 医疗机构名称 - @JSONField(name = "medins_name") - private String medinsName; - - // 4. 医疗机构行政区划编码 - @JSONField(name = "medins_admdvs") - private String medinsAdmdvs; - - // 5. 医疗服务机构类型 - @JSONField(name = "medins_type") - private String medinsType; - - // 6. 医疗机构等级 - @JSONField(name = "medins_lv") - private String medinsLv; - - // 7. 病区标识 - @JSONField(name = "wardarea_codg") - private String wardareaCodg; - - // 8. 病房号 - @JSONField(name = "wardno") - private String wardno; - - // 9. 病床号 - @JSONField(name = "bedno") - private String bedno; - - // 10. 入院日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "adm_date") - private Date admDate; - - // 11. 出院日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "dscg_date") - private Date dscgDate; - - // 12. 主诊断编码 - @JSONField(name = "dscg_main_dise_codg") - private String dscgMainDiseCodg; - - // 13. 主诊断名称 - @JSONField(name = "dscg_main_dise_name") - private String dscgMainDiseName; - - // 14. 诊断信息DTO - @JSONField(name = "fsi_diagnose_dtos") - private List fsiDiagnoseDtos; - - // 15. 医师标识 - @JSONField(name = "dr_codg") - private String drCodg; - - // 16. 入院科室标识 - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - // 17. 入院科室名称 - @JSONField(name = "adm_dept_name") - private String admDeptName; - - // 18. 出院科室标识 - @JSONField(name = "dscg_dept_codg") - private String dscgDeptCodg; - - // 19. 出院科室名称 - @JSONField(name = "dscg_dept_name") - private String dscgDeptName; - - // 20. 就诊类型 - @JSONField(name = "med_mdtrt_type") - private String medMdtrtType; - - // 21. 医疗类别 - @JSONField(name = "med_type") - private String medType; - - // 22. 处方(医嘱)信息 - @JSONField(name = "fsi_order_dtos") - private List fsiOrderDtos; - - // 23. 生育状态 - @JSONField(name = "matn_stas") - private String matnStas; - - // 24. 总费用 - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - // 25. 自费金额 - @JSONField(name = "ownpay_amt") - private BigDecimal ownpayAmt; - - // 26. 自付金额 - @JSONField(name = "selfpay_amt") - private BigDecimal selfpayAmt; - - // 27. 个人账户支付金额 - @JSONField(name = "acct_payamt") - private BigDecimal acctPayamt; - - // 28. 救助金支付金额 - @JSONField(name = "ma_amt") - private BigDecimal maAmt; - - // 29. 统筹金支付金额 - @JSONField(name = "hifp_payamt") - private BigDecimal hifpPayamt; - - // 30. 结算总次数 - @JSONField(name = "setl_totlnum") - private Integer setlTotlnum; - - // 31. 险种 - @JSONField(name = "insutype") - private String insutype; - - // 32. 报销标志 - @JSONField(name = "reim_flag") - private String reimFlag; - - // 33. 异地结算标志 - @JSONField(name = "out_setl_flag") - private String outSetlFlag; - - // 34. 手术操作集合 - @JSONField(name = "fsi_operation_dtos") - private List fsiOperationDtos; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java deleted file mode 100644 index 06a5db46..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.List; -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3103】事前事中服务反馈服务(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiFeedback3103DataParam { - // 1. 反馈类型 - @JSONField(name = "warn_type") - private String warnType; - - // 2. 处理数据集合 - @JSONField(name = "warns") - private List warns; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java deleted file mode 100644 index f23de393..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.List; -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3103】事前事中服务反馈服务(输入-反馈处理数据) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiFeedback3103WarnsParam { - // 1. 违规标识 - @JSONField(name = "warn_rslt_id") - private String warnRsltId; - - // 2. 处理方式 - @JSONField(name = "dspo_way") - private String dspoWay; - - // 3. 处理原因 - @JSONField(name = "dspo_way_rea") - private String dspoWayRea; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java deleted file mode 100644 index dd7b8bae..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.Date; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【3101】明细审核事前分析服务(输入-手术操作信息) - * 【3102】明细审核事中分析服务(输入-手术操作信息) - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiOperation3101Param { - - // 1. 手术操作ID - @JSONField(name = "setl_list_oprn_id") - private String setlListOprnId; - - // 2. 手术操作代码 - @JSONField(name = "oprn_code") - private String oprnCode; - - // 3. 手术操作名称 - @JSONField(name = "oprn_name") - private String oprnName; - - // 4. 主手术操作标志 - @JSONField(name = "main_oprn_flag") - private String mainOprnFlag; - - // 5. 手术操作日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "oprn_date") - private Date oprnDate; - - // 6. 麻醉方式 - @JSONField(name = "anst_way") - private String anstWay; - - // 7. 术者医师姓名 - @JSONField(name = "oper_dr_name") - private String operDrName; - - // 8. 术者医师代码 - @JSONField(name = "oper_dr_code") - private String operDrCode; - - // 9. 麻醉医师姓名 - @JSONField(name = "anst_dr_name") - private String anstDrName; - - // 10. 麻醉医师代码 - @JSONField(name = "anst_dr_code") - private String anstDrCode; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java deleted file mode 100644 index a3c945f3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【3101】明细审核事前分析服务(输入-处方(医嘱)信息) - * 【3102】明细审核事中分析服务(输入-处方(医嘱)信息) - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiOrder3101Param { - - // 1. 处方(医嘱)标识 - @JSONField(name = "rx_id") - private String rxId; - - // 2. 处方号 - @JSONField(name = "rxno") - private String rxno;//2025/05/05 李要求该字段对应耗材时使用buz_no,药品时使用处方号 - - // 3. 组编号 - @JSONField(name = "grpno") - private String grpno; - - // 4. 是否为长期医嘱 [1=是,0=否] - @JSONField(name = "long_drord_flag") - private String longDrordFlag; - - // 5. 目录类别(参考字典表) - @JSONField(name = "hilist_type") - private String hilistType; - - // 6. 收费类别(参考字典表) - @JSONField(name = "chrg_type") - private String chrgType; - - // 7. 医嘱行为(参考字典表) - @JSONField(name = "drord_bhvr") - private String drordBhvr; - - // 8. 医保目录代码(国家统一标准编码) - @JSONField(name = "hilist_code") - private String hilistCode; - - // 9. 医保目录名称(国家统一标准名称) - @JSONField(name = "hilist_name") - private String hilistName; - - // 10. 医保目录(药品)剂型(国家统一标准药品剂型) - @JSONField(name = "hilist_dosform") - private String hilistDosform; - - // 11. 医保目录等级 - @JSONField(name = "hilist_lv") - private String hilistLv; - - // 12. 医保目录价格 - @JSONField(name = "hilist_pric") - private BigDecimal hilistPric; - - // 13. 一级医院目录价格 - @JSONField(name = "lv1_hosp_item_pric") - private BigDecimal lv1HospItemPric; - - // 14. 二级医院目录价格 - @JSONField(name = "lv2_hosp_item_pric") - private BigDecimal lv2HospItemPric; - - // 15. 三级医院目录价格 - @JSONField(name = "lv3_hosp_item_pric") - private BigDecimal lv3HospItemPric; - - // 16. 医保目录备注 - @JSONField(name = "hilist_memo") - private String hilistMemo; - - // 17. 医院目录代码 - @JSONField(name = "hosplist_code") - private String hosplistCode; - - // 18. 医院目录名称 - @JSONField(name = "hosplist_name") - private String hosplistName; - - // 19. 医院目录(药品)剂型 - @JSONField(name = "hosplist_dosform") - private String hosplistDosform; - - // 20. 数量 - @JSONField(name = "cnt") - private BigDecimal cnt; - - // 21. 单价 - @JSONField(name = "pric") - private BigDecimal pric; - - // 22. 总费用 - @JSONField(name = "sumamt") - private BigDecimal sumamt; - - // 23. 自费金额 - @JSONField(name = "ownpay_amt") - private BigDecimal ownpayAmt; - - // 24. 自付金额 - @JSONField(name = "selfpay_amt") - private BigDecimal selfpayAmt; - - // 25. 规格 - @JSONField(name = "spec") - private String spec; - - // 26. 数量单位 - @JSONField(name = "spec_unt") - private String specUnt; - - // 27. 医嘱开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "drord_begn_date") - private Date drordBegnDate; - - // 28. 医嘱停止日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "drord_stop_date") - private Date drordStopDate; - - // 29. 下达医嘱的科室标识 - @JSONField(name = "drord_dept_codg") - private String drordDeptCodg; - - // 30. 下达医嘱科室名称 - @JSONField(name = "drord_dept_name") - private String drordDeptName; - - // 31. 开处方(医嘱)医生标识 - @JSONField(name = "drord_dr_codg") - private String drordDrCodg; - - // 32. 开处方(医嘱)医生姓名 - @JSONField(name = "drord_dr_name") - private String drordDrName; - - // 33. 开处方(医嘱)医职称 - @JSONField(name = "drord_dr_profttl") - private String drordDrProfttl; - - // 34. 是否当前处方(医嘱)[1=是,0=否] - @JSONField(name = "curr_drord_flag") - private String currDrordFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java deleted file mode 100644 index ca338601..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.Date; -import java.util.List; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【3101】明细审核事前分析服务(输入-参保人信息) - * 【3102】明细审核事中分析服务(输入-参保人信息) - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiPatient3101Param { - - // 1. 参保人标识 - @JSONField(name = "patn_id") - private String patnId; - - // 2. 姓名 - @JSONField(name = "patn_name") - private String patnName; - - // 3. 性别 - @JSONField(name = "gend") - private String gend; - - // 4. 出生日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "brdy") - private Date brdy; - - // 5. 统筹区编码 - @JSONField(name = "poolarea") - private String poolarea; - - // 6. 当前就诊标识 - @JSONField(name = "curr_mdtrt_id") - private String currMdtrtId; - - // 7. 就诊信息集合 - @JSONField(name = "fsi_encounter_dtos") - private List fsiEncounterDtos; - -// // 8. 医院信息集合(非必填项) -// @JSONField(name = "fsi_his_data_dto") -// private FsiHisData fsiHisDataDto; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java deleted file mode 100644 index 6ea0cccf..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.List; -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3101】明细审核事前分析服务(输出-违规信息) - * 【3102】明细审核事中分析服务(输出-违规信息) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiViolation3101Result { - // 1. 违规标识 - @JSONField(name = "jr_id") - private String jrId; - - // 2. 规则ID - @JSONField(name = "rule_id") - private String ruleId; - - // 3. 规则名称 - @JSONField(name = "rule_name") - private String ruleName; - - // 4. 违规内容 - @JSONField(name = "vola_cont") - private String volaCont; - - // 5. 参保人ID - @JSONField(name = "patn_id") - private String patnId; - - // 6. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 7. 违规明细 - @JSONField(name = "judge_result_detail_dtos") - private List judgeResultDetailDtos; - - // 8. 违规金额 - @JSONField(name = "vola_amt") - private BigDecimal volaAmt; - - // 9. 违规金额计算状态 - @JSONField(name = "vola_amt_stas") - private String volaAmtStas; - - // 10. 严重程度 - @JSONField(name = "sev_deg") - private String sevDeg; - - // 11. 违规依据 - @JSONField(name = "vola_evid") - private String volaEvid; - - // 12. 违规行为分类 - @JSONField(name = "vola_bhvr_type") - private String volaBhvrType; - - // 13. 任务ID - @JSONField(name = "task_id") - private String taskId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java deleted file mode 100644 index 4ac35dda..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3101】明细审核事前分析服务(输出-违规明细信息) - * 【3102】明细审核事中分析服务(输出-违规明细信息) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class FsiViolationDetail3101Result { - // 1. 违规明细标识 - @JSONField(name = "jrd_id") - private String jrdId; - - // 2. 参保人标识 - @JSONField(name = "patn_id") - private String patnId; - - // 3. 就诊标识 - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 4. 处方(医嘱)标识 - @JSONField(name = "rx_id") - private String rxId; - - // 5. 违规明细类型 - @JSONField(name = "vola_item_type") - private String volaItemType; - - // 6. 违规金额 - @JSONField(name = "vola_amt") - private BigDecimal volaAmt; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java deleted file mode 100644 index f0d13869..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2401】入院办理(输入-入院诊断信息) - * - * @author yuanzs - * @date 2025-05-07 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2401DiseInfoParam { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 诊断类别 - @JSONField(name = "diag_type") - private String diagType; - - // 3. 主诊断标志 - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - - // 4. 诊断排序号 - @JSONField(name = "diag_srt_no") - private BigDecimal diagSrtNo; - - // 5. 诊断代码 - @JSONField(name = "diag_code") - private String diagCode; - - // 6. 诊断名称 - @JSONField(name = "diag_name") - private String diagName; - - // 7. 入院病情 - @JSONField(name = "adm_cond") - private String admCond; - - // 8. 诊断科室 - @JSONField(name = "diag_dept") - private String diagDept; - - // 9. 诊断医生编码 - @JSONField(name = "dise_dor_no") - private String diseDorNo; - - // 10. 诊断医生姓名 - @JSONField(name = "dise_dor_name") - private String diseDorName; - - // 11. 诊断时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "diag_time") - private Date diagTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java deleted file mode 100644 index 7de95660..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java +++ /dev/null @@ -1,193 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2401】入院办理 - * - * @author yuanzs - * @date 2025-05-07 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2401MdtInfoParam { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 联系人姓名 - @JSONField(name = "coner_name") - private String conerName; - - // 4. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 5. 开始时间(入院时间) - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "begntime") - private Date begntime; - - // 6. 就诊凭证类型 - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; - - // 7. 就诊凭证编号 - @JSONField(name = "mdtrt_cert_no") - private String mdtrtCertNo; - - // 8. 医疗类别 - @JSONField(name = "med_type") - private String medType; - - // 9. 住院号 - @JSONField(name = "ipt_no") - private String iptNo; - - // 10. 病历号 - @JSONField(name = "medrcdno") - private String medrcdno; - - // 11. 主治医生编码 - @JSONField(name = "atddr_no") - private String atddrNo; - - // 12. 主诊医师姓名 - @JSONField(name = "chfpdr_name") - private String chfpdrName; - - // 13. 入院诊断描述 - @JSONField(name = "adm_diag_dscr") - private String admDiagDscr; - - // 14. 入院科室编码 - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - // 15. 入院科室名称 - @JSONField(name = "adm_dept_name") - private String admDeptName; - - // 16. 入院床位 - @JSONField(name = "adm_bed") - private String admBed; - - // 17. 住院主诊断代码 - @JSONField(name = "dscg_maindiag_code") - private String dscgMaindiagCode; - - // 18. 住院主诊断名称 - @JSONField(name = "dscg_maindiag_name") - private String dscgMaindiagName; - - // 19. 主要病情描述 - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - - // 20. 病种编码 - @JSONField(name = "dise_codg") - private String diseCodg; - - // 21. 病种名称 - @JSONField(name = "dise_name") - private String diseName; - - // 22. 手术操作代码 - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - // 23. 手术操作名称 - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - // 24. 计划生育服务证号 - @JSONField(name = "fpsc_no") - private String fpscNo; - - // 25. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 26. 计划生育手术类别 - @JSONField(name = "birctrl_type") - private String birctrlType; - - // 27. 晚育标志 - @JSONField(name = "latechb_flag") - private String latechbFlag; - - // 28. 孕周数 - @JSONField(name = "geso_val") - private BigDecimal gesoVal; - - // 29. 胎次 - @JSONField(name = "fetts") - private BigDecimal fetts; - - // 30. 胎儿数 - @JSONField(name = "fetus_cnt") - private BigDecimal fetusCnt; - - // 31. 早产标志 - @JSONField(name = "pret_flag") - private String pretFlag; - - // 32. 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - - // 33. 病种类型 - @JSONField(name = "dise_type_code") - private String diseTypeCode; - - // 34. 字段扩展 - @JSONField(name = "exp_content") - private String expContent; - - // 35. 参保地医保区划 - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; - - // 36. 就医地医保区划 - @JSONField(name = "mdtrtarea_admvs") - private String mdtrtareaAdmvs; - - // 37. 外伤标识(仅对异地根据情况填写) - @JSONField(name = "trum_flag") - private String trumFlag; - - // 38. 涉及第三方标志(仅对异地根据情况填写) - @JSONField(name = "rel_ttp_flag") - private String relTtpFlag; - - // 39. 就诊人群类型(仅对异地根据情况填写) - @JSONField(name = "mdtrt_grp_type") - private String mdtrtGrpType; - - // 40. 入院诊断信息集合 - private List diseInfoParams; - - // 41. 就诊ID(输出) - @JSONField(name = "mdtrtId") - private String mdtrt_id; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java deleted file mode 100644 index 2cdc0d4e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2402】出院办理(输入-出院诊断信息) - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2402DiseInfoParam { - - // 1. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 诊断类别 - @JSONField(name = "diag_type") - private String diagType; - - // 4. 主诊断标志 - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - - // 5. 诊断排序号 - @JSONField(name = "diag_srt_no") - private BigDecimal diagSrtNo; - - // 6. 诊断代码 - @JSONField(name = "diag_code") - private String diagCode; - - // 7. 诊断名称 - @JSONField(name = "diag_name") - private String diagName; - - // 8. 诊断科室 - @JSONField(name = "diag_dept") - private String diagDept; - - // 9. 诊断医生编码 - @JSONField(name = "dise_dor_no") - private String diseDorNo; - - // 10. 诊断医生姓名 - @JSONField(name = "dise_dor_name") - private String diseDorName; - - // 11. 诊断时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "diag_time") - private Date diagTime; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java deleted file mode 100644 index b11ba22c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2402】出院办理 - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2402DscgInfoParam { - // 1. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 4. 结束时间(出院时间) - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "endtime") - private Date endtime; - - // 5. 病种编码 - @JSONField(name = "dise_codg") - private String diseCodg; - - // 6. 病种名称 - @JSONField(name = "dise_name") - private String diseName; - - // 7. 手术操作代码(日间手术病种时必填) - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - // 8. 手术操作名称 - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - // 9. 计划生育服务证号 - @JSONField(name = "fpsc_no") - private String fpscNo; - - // 10. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 11. 计划生育手术类别 - @JSONField(name = "birctrl_type") - private String birctrlType; - - // 12. 晚育标志 - @JSONField(name = "latechb_flag") - private String latechbFlag; - - // 13. 孕周数 - @JSONField(name = "esso_val") - private BigDecimal essoVal; - - // 14. 胎次 - @JSONField(name = "fetts") - private BigDecimal fetts; - - // 15. 胎儿数 - @JSONField(name = "fetus_cnt") - private BigDecimal fetusCnt; - - // 16. 早产标志 - @JSONField(name = "pret_flag") - private String pretFlag; - - // 17. 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - - // 18. 伴有并发症标志 - @JSONField(name = "cop_flag") - private String copFlag; - - // 19. 出院科室编码 - @JSONField(name = "dscg_dept_codg") - private String dscgDeptCodg; - - // 20. 出院科室名称 - @JSONField(name = "dscg_dept_name") - private String dscgDeptName; - - // 21. 出院床位 - @JSONField(name = "dscg_bed") - private String dscgBed; - - // 22. 离院方式 - @JSONField(name = "dscg_way") - private String dscgWay; - - // 23. 死亡日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "die_date") - private Date dieDate; - - // 24. 字段扩展 - @JSONField(name = "exp_content") - private String expContent; - - // 25. 出院诊断信息 - private List diseInfoParams; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java deleted file mode 100644 index 6673bd8a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java +++ /dev/null @@ -1,182 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; -import java.util.List; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2403】住院信息变更 - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2403AdmInfoParam { - - // 1. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 联系人姓名 - @JSONField(name = "coner_name") - private String conerName; - - // 4. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 5. 开始时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "begntime") - private Date begntime; - - // 6. 结束时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "endtime") - private Date endtime; - - // 7. 就诊凭证类型 - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; - - // 8. 医疗类别 - @JSONField(name = "med_type") - private String medType; - - // 9. 住院/门诊号 - @JSONField(name = "ipt_otp_no") - private String iptOtpNo; - - // 10. 病历号 - @JSONField(name = "medrcdno") - private String medrcdno; - - // 11. 主治医生编码 - @JSONField(name = "atddr_no") - private String atddrNo; - - // 12. 主诊医师姓名 - @JSONField(name = "chfpdr_name") - private String chfpdrName; - - // 13. 入院诊断描述 - @JSONField(name = "adm_diag_dscr") - private String admDiagDscr; - - // 14. 入院科室编码 - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - // 15. 入院科室名称 - @JSONField(name = "adm_dept_name") - private String admDeptName; - - // 16. 入院床位 - @JSONField(name = "adm_bed") - private String admBed; - - // 17. 住院主诊断代码 - @JSONField(name = "dscg_maindiag_code") - private String dscgMaindiagCode; - - // 18. 住院主诊断名称 - @JSONField(name = "dscg_maindiag_name") - private String dscgMaindiagName; - - // 19. 主要病情描述 - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - - // 20. 病种编码 - @JSONField(name = "dise_codg") - private String diseCodg; - - // 21. 病种名称 - @JSONField(name = "dise_name") - private String diseName; - - // 22. 手术操作代码 - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - // 23. 手术操作名称 - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - // 24. 计划生育服务证号 - @JSONField(name = "fpsc_no") - private String fpscNo; - - // 25. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 26. 计划生育手术类别 - @JSONField(name = "birctrl_type") - private String birctrlType; - - // 27. 晚育标志 - @JSONField(name = "latechb_flag") - private String latechbFlag; - - // 28. 孕周数 - @JSONField(name = "esso_val") - private Integer essoVal; - - // 29. 胎次 - @JSONField(name = "fetts") - private Integer fetts; - - // 30. 胎儿数 - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - // 31. 早产标志 - @JSONField(name = "pret_flag") - private String pretFlag; - - // 32. 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - - // 33. 病种编号 - @JSONField(name = "dise_type_code") - private String diseTypeCode; - - // 34. 字段扩展 - @JSONField(name = "exp_content") - private String expContent; - - // 35. 外伤标识(仅对异地根据情况填写) - @JSONField(name = "trum_flag") - private String trumFlag; - - // 36. 涉及第三方标志(仅对异地根据情况填写) - @JSONField(name = "rel_ttp_flag") - private String relTtpFlag; - - // 37. 就诊人群类型(仅对异地根据情况填写) - @JSONField(name = "mdtrt_grp_type") - private String mdtrtGrpType; - - // 38. 入院诊断信息集合 - private List diseInfoParams; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java deleted file mode 100644 index 32dbec40..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2403】住院信息变更(输入-入院诊断信息) - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2403DiseInfoParam { - - // 1. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 诊断类别 - @JSONField(name = "diag_type") - private String diagType; - - // 4. 主诊断标志 - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - - // 5. 诊断排序号 - @JSONField(name = "diag_srt_no") - private BigDecimal diagSrtNo; - - // 6. 诊断代码 - @JSONField(name = "diag_code") - private String diagCode; - - // 7. 诊断名称 - @JSONField(name = "diag_name") - private String diagName; - - // 8. 入院病情 - @JSONField(name = "adm_cond") - private String admCond; - - // 9. 诊断科室 - @JSONField(name = "diag_dept") - private String diagDept; - - // 10. 诊断医生编码 - @JSONField(name = "dise_dor_no") - private String diseDorNo; - - // 11. 诊断医生姓名 - @JSONField(name = "dise_dor_name") - private String diseDorName; - - // 12. 诊断时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "diag_time") - private Date diagTime; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java deleted file mode 100644 index 4b5c5fc0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2404】入院撤销 - * 【2405】出院撤销 - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2404AdmCnlParam { - - // 1. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 字段扩展 - @JSONField(name = "exp_content") - private String expContent; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java deleted file mode 100644 index fc636ad0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2401】就医特殊属性上传 - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2406SmAttrUpParam { - - // 1. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 人员证件类型 - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 4. 证件号码 - @JSONField(name = "certno") - private String certno; - - // 5. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 6. 住院/门诊号 - @JSONField(name = "ipt_otp_no") - private String iptOtpNo; - - // 7. 就医人员特殊标识类型 - @JSONField(name = "ipt_psn_sp_flag_type") - private String iptPsnSpFlagType; - - // 8. 就医人员特殊标识 - @JSONField(name = "ipt_psn_sp_flag") - private String iptPsnSpFlag; - - // 9. 备注 - @JSONField(name = "memo") - private String memo; - - // 10. 医保区划 - @JSONField(name = "admdvs") - private String admdvs; - - // 11. 就医人员特殊标识明细id(输出) - @JSONField(name = "ipt_psn_sp_flag_detl_id") - private String iptPsnSpFlagDetlId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java deleted file mode 100644 index a9857539..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2407】就医特殊属性查询(输入) - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2407SmAttrSelectParam { - - // 1. 分页条数 - @JSONField(name = "page_num") - private BigDecimal pageNum; - - // 2. 分页大小 - @JSONField(name = "page_size") - private BigDecimal pageSize; - - // 3. 就医人员特殊标识明细id - @JSONField(name = "ipt_psn_sp_flag_detl_id") - private String iptPsnSpFlagDetlId; - - // 4. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 5. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 6. 人员证件类型 - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 7. 证件号码 - @JSONField(name = "certno") - private String certno; - - // 8. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 9. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 10. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 11. 住院/门诊号 - @JSONField(name = "ipt_otp_no") - private String iptOtpNo; - - // 12. 就医人员特殊标识类型 - @JSONField(name = "ipt_psn_sp_flag_type") - private String iptPsnSpFlagType; - - // 13. 就医人员特殊标识 - @JSONField(name = "ipt_psn_sp_flag") - private String iptPsnSpFlag; - - // 14. 医保区划 - @JSONField(name = "admdvs") - private String admdvs; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java deleted file mode 100644 index c3c9db41..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2407】就医特殊属性查询(输出) - * - * @author yuanzs - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospAdm2407SmAttrSelectResult { - - // 1. 就医人员特殊标识明细id - @JSONField(name = "ipt_psn_sp_flag_detl_id") - private String iptPsnSpFlagDetlId; - - // 2. 就诊ID - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - // 3. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 4. 人员证件类型 - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 5. 证件号码 - @JSONField(name = "certno") - private String certno; - - // 6. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 7. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 8. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 9. 住院/门诊号 - @JSONField(name = "ipt_otp_no") - private String iptOtpNo; - - // 10. 就医人员特殊标识类型 - @JSONField(name = "ipt_psn_sp_flag_type") - private String iptPsnSpFlagType; - - // 11. 就医人员特殊标识 - @JSONField(name = "ipt_psn_sp_flag") - private String iptPsnSpFlag; - - // 12. 医保区划 - @JSONField(name = "admdvs") - private String admdvs; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java deleted file mode 100644 index 8f90de10..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import java.util.Date; -import java.util.List; - -/** - * 【3401A】科室信息上传(批量) - * - * @author SunJQ - * @date 2025-04-28 - */ -public class HospDept3401AParam { - private List deptinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java deleted file mode 100644 index ca69fb72..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import java.util.Date; - -/** - * 【3401】科室信息上传 - * - * @author SunJQ - * @date 2025-04-28 - */ -public class HospDept3401Param { - - // 1. 医院科室编码(院内唯一编码) - @JSONField(name = "hosp_dept_codg") // JSON字段名映射 - private String hospDeptCodg; - - // 2. 科别(参照科室代码) - @JSONField(name = "caty") - private String caty; - - // 3. 医院科室名称 - @JSONField(name = "hosp_dept_name") - private String hospDeptName; - - // 4. 开始时间(日期时间格式) - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") // 指定时间格式 - private Date begnTime; - - // 5. 结束时间(日期时间格式) - @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") - private Date endTime; - - // 6. 科室简介 - @JSONField(name = "itro") - private String itro; - - // 7. 科室负责人姓名 - @JSONField(name = "dept_resper_name") - private String deptResperName; - - // 8. 科室负责人电话 - @JSONField(name = "dept_resper_tel") - private String deptResperTel; - - // 9. 科室医疗服务范围 - @JSONField(name = "dept_med_serv_scp") - private String deptMedServScp; - - // 10. 科室成立日期(日期格式) - @JSONField(name = "dept_estbdat", format = "yyyy-MM-dd") - private Date deptEstbdat; - - // 11. 批准床位数量(长整型) - @JSONField(name = "aprv_bed_cnt") - private Long aprvBedCnt; - - // 12. 医保认可床位数(长整型) - @JSONField(name = "hi_crtf_bed_cnt") - private Long hiCrtfBedCnt; - - // 13. 统筹区编号 - @JSONField(name = "poolarea_no") - private String poolareaNo; - - // 14. 医师人数(整型) - @JSONField(name = "dr_psncnt") - private Integer drPsncnt; - - // 15. 药师人数(整型) - @JSONField(name = "phar_psncnt") - private Integer pharPsncnt; - - // 16. 护士人数(整型) - @JSONField(name = "nurs_psncnt") - private Integer nursPsncnt; - - // 17. 技师人数(整型) - @JSONField(name = "tecn_psncnt") - private Integer tecnPsncnt; - - // 18. 备注 - @JSONField(name = "memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java deleted file mode 100644 index 6e505cf3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import java.util.Date; - -/** - * 【3402】科室信息变更 - * - * @author SunJQ - * @date 2025-04-28 - */ -public class HospDept3402Param { - - // 1. 医院科室编码(院内唯一编码) - @JSONField(name = "hosp_dept_codg") - private String hospDeptCodg; - - // 2. 医院科室名称 - @JSONField(name = "hosp_dept_name") - private String hospDeptName; - - // 3. 开始时间(日期时间格式) - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") - private Date begnTime; - - // 4. 结束时间(日期时间格式) - @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") - private Date endTime; - - // 5. 科室简介 - @JSONField(name = "itro") - private String itro; - - // 6. 科室负责人姓名 - @JSONField(name = "dept_resper_name") - private String deptResperName; - - // 7. 科室负责人电话 - @JSONField(name = "dept_resper_tel") - private String deptResperTel; - - // 8. 科室医疗服务范围 - @JSONField(name = "dept_med_serv_scp") - private String deptMedServScp; - - // 9. 科别(参照科室代码) - @JSONField(name = "caty") - private String caty; - - // 10. 科室成立日期(日期格式) - @JSONField(name = "dept_estbdat", format = "yyyy-MM-dd") - private Date deptEstbdat; - - // 11. 批准床位数量(长整型) - @JSONField(name = "aprv_bed_cnt") - private Long aprvBedCnt; - - // 12. 医保认可床位数(长整型) - @JSONField(name = "hi_crtf_bed_cnt") - private Long hiCrtfBedCnt; - - // 13. 统筹区编号 - @JSONField(name = "poolarea_no") - private String poolareaNo; - - // 14. 医师人数(整型) - @JSONField(name = "dr_psncnt") - private Integer drPsncnt; - - // 15. 药师人数(整型) - @JSONField(name = "phar_psncnt") - private Integer pharPsncnt; - - // 16. 护士人数(整型) - @JSONField(name = "nurs_psncnt") - private Integer nursPsncnt; - - // 17. 技师人数(整型) - @JSONField(name = "tecn_psncnt") - private Integer tecnPsncnt; - - // 18. 备注 - @JSONField(name = "memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java deleted file mode 100644 index 092b4708..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import java.util.Date; - -/** - * 【3403】科室信息撤销 - * - * @author SunJQ - * @date 2025-04-28 - */ -public class HospDept3403Param { - // 1. 医院科室编码(院内唯一编码) - @JSONField(name = "hosp_dept_codg") - private String hospDeptCodg; - - // 2. 医院科室名称 - @JSONField(name = "hosp_dept_name") - private String hospDeptName; - - // 3. 开始时间(日期时间格式) - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") - private Date begnTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java deleted file mode 100644 index be46c2bd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2501A】转院备案(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospTrf2501ARefmedinParam { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 4. 联系地址 - @JSONField(name = "addr") - private String addr; - - // 5. 参保机构医保区划 - @JSONField(name = "insu_optins") - private String insuOptins; - - // 6. 诊断代码 - @JSONField(name = "diag_code") - private String diagCode; - - // 7. 诊断名称 - @JSONField(name = "diag_name") - private String diagName; - - // 8. 疾病病情描述 - @JSONField(name = "dise_cond_dscr") - private String diseCondDscr; - - // 9. 转往定点医药机构编号 - @JSONField(name = "reflin_medins_no") - private String reflinMedinsNo; - - // 10. 转往医院名称 - @JSONField(name = "reflin_medins_name") - private String reflinMedinsName; - - // 11. 就医地行政区划 - @JSONField(name = "mdtrtarea_admdvs") - private String mdtrtareaAdmdvs; - - // 12. 医院同意转院标志 - @JSONField(name = "hosp_agre_refl_flag") - private String hospAgreReflFlag; - - // 13. 转院类型 - @JSONField(name = "refl_type") - private String reflType; - - // 14. 转院日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "refl_date") - private Date reflDate; - - // 15. 转院原因 - @JSONField(name = "refl_rea") - private String reflRea; - - // 16. 转院意见 - @JSONField(name = "refl_opnn") - private String reflOpnn; - - // 17. 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "begndate") - private Date begndate; - - // 18. 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "enddate") - private Date enddate; - - // 19. 转院前就诊id - @JSONField(name = "refl_old_mdtrt_id") - private String reflOldMdtrtId; - - // 20. 待遇申报明细流水号(输出) - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java deleted file mode 100644 index 15498c57..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.util.Date; - -/** - * 【2501】转院备案(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class HospTrf2501RefmedinParam { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 4. 联系地址 - @JSONField(name = "addr") - private String addr; - - // 5. 参保机构医保区划 - @JSONField(name = "insu_optins") - private String insuOptins; - - // 6. 诊断代码 - @JSONField(name = "diag_code") - private String diagCode; - - // 7. 诊断名称 - @JSONField(name = "diag_name") - private String diagName; - - // 8. 疾病病情描述 - @JSONField(name = "dise_cond_dscr") - private String diseCondDscr; - - // 9. 转往定点医药机构编号 - @JSONField(name = "reflin_medins_no") - private String reflinMedinsNo; - - // 10. 转往医院名称 - @JSONField(name = "reflin_medins_name") - private String reflinMedinsName; - - // 11. 就医地行政区划 - @JSONField(name = "mdtrtarea_admdvs") - private String mdtrtareaAdmdvs; - - // 12. 医院同意转院标志 - @JSONField(name = "hosp_agre_refl_flag") - private String hospAgreReflFlag; - - // 13. 转院类型 - @JSONField(name = "refl_type") - private String reflType; - - // 14. 转院日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "refl_date") - private Date reflDate; - - // 15. 转院原因 - @JSONField(name = "refl_rea") - private String reflRea; - - // 16. 转院意见 - @JSONField(name = "refl_opnn") - private String reflOpnn; - - // 17. 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "begndate") - private Date begndate; - - // 18. 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "enddate") - private Date enddate; - - // 19. 转诊使用标志 - @JSONField(name = "refl_used_flag") - private String reflUsedFlag; - - // 20. 待遇申报明细流水号(输出) - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java deleted file mode 100644 index bc847a6f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2502】转院备案撤销(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) - -public class HospTrfCxl2502Param { - // 1. 待遇申报明细流水号 - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 备注 - @JSONField(name = "memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java deleted file mode 100644 index c47a612d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.openhis.yb.dto; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - *【1101】获取身份信息 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Info1101Output extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //人员编号 - private String psnNo; - //人员证件类型 - private String psnCertType; - //证件号码 - private String certno; - //人员姓名 - private String psnName; - //性别 - private String gend; - //民族 - private String naty; - //出生日期 - private Date brdy; - //年龄 - private Double age; - //参保地医保区划 - private String insuplcAdmdvs; - //险种类型 - private String insutype; - //余额 - private String balc; - //人员类别 - @TableField(exist = false) - private String psnType; - - //人员参保状态 - @TableField(exist = false) - private String psnInsuStas; - - //个人参保日期 - @TableField(exist = false) - private String psnInsuDate; - - //公务员标志 - @TableField(exist = false) - private String cvlservFlag; - - //单位名称 - @TableField(exist = false) - private String empName; - //特慢病 - @TableField(exist = false) - private List feedetail; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java deleted file mode 100644 index 822a19dc..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【1101】获取身份信息 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Info1101PerinfoResult extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //人员编号 - @JSONField(name="psn_no") - private String psnNo; - //人员证件类型 - @JSONField(name="psn_cert_type") - private String psnCertType; - //证件号码 - @JSONField(name="certno") - private String certno; - //人员姓名 - @JSONField(name="psn_name") - private String psnName; - //性别 - @JSONField(name="gend") - private String gend; - //民族 - @JSONField(name="naty") - private String naty; - //出生日期 - @JSONField(name="brdy") - private Date brdy; - //年龄 - @JSONField(name="age") - private Double age; - //参保地医保区划 - @JSONField(serialize = false) - private String insuplcAdmdvs; - //险种类型 - @JSONField(serialize = false) - private String insutype; - //余额 - @JSONField(serialize = false) - private String balc; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java deleted file mode 100644 index be52d7b9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【1101】获取身份信息 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Info1101ReadcardParam extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - //就诊凭证类型 - @JSONField(name="mdtrt_cert_type") - private String mdtrtCertType; - //就诊凭证编号 - @JSONField(name="mdtrt_cert_no") - private String mdtrtCertNo; - //卡识别码 - @JSONField(name="card_sn") - private String cardSn; - //开始时间 - @JSONField(name="begntime") - private String begntime; - //人员证件类型 - @JSONField(name="psn_cert_type") - private String psnCertType; - //证件号码 - @JSONField(name="certno") - private String certno; - //人员姓名 - @JSONField(name="psn_name") - private String psnName; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java deleted file mode 100644 index 6249e9eb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Info5301Param { - @JSONField(name = "psn_no") - private String psnNo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java deleted file mode 100644 index 000c0bc6..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class Info5301SpecialConditionResult { - - private static final long serialVersionUID = 1L; - - //门慢门特病种目录代码 - private String opspDiseCode; - //门慢门特病种名称 - private String opspDiseName; - //开始日期 - private String begndate; - //结束日期 - private String enddate; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java deleted file mode 100644 index 2425fb11..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 电子发票基础信息查询实体 - * - * @author SunJQ - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -public class InvoiceBaseInfoDto { - //主键 - @TableId(type = IdType.ASSIGN_ID) - @JSONField(serialize=false) - private String id; - - private String setlId;//结算id - - private String mdtrtId; // 就诊ID - - private String psnName; // 人员姓名 - - private String psnCertType; // 人员证件类型 - - private String certno; // 证件号码 - - private String insutype; // 险种类型 - - private String psnType; // 人员类别 - - private String cvlservFlag; // 公务员标志 - - private Date setlTime; // 结算时间 - - private String mdtrtCertType; // 就诊凭证类型 - - private String medType; // 医疗类别 - - private BigDecimal medfeeSumamt; // 医疗费总额 - - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - private BigDecimal preselfpayAmt; // 先行自付金额 - - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - private BigDecimal actPayDedc; // 实际支付起付线 - - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - private BigDecimal mafPay; // 医疗救助基金支出 - - private BigDecimal othPay; // 其他支出 - - private BigDecimal fundPaySumamt; // 基金支付总额 - - private BigDecimal psnPartAmt; // 个人负担总金额 - - private BigDecimal acctPay; // 个人账户支出 - - private BigDecimal psnCashPay; // 个人现金支出 - - private BigDecimal hospPartAmt; // 医院负担金额 - - private BigDecimal balc; // 余额 - - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - private String medinsSetlId; // 医药机构结算ID - - private String clrOptins; // 清算经办机构 - - private String clrWay; // 清算方式 - - private String clrType; // 清算类别 - - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - private String paymentNo;//结算业务流水号 Payment与ClinicSettle是1:N -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java deleted file mode 100644 index 9ee3efb1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25007】生育津贴登记(输入) - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MatAllowReg25007Param { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 3. 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - - // 4. 孕周数 - @JSONField(name = "geso_val") - private BigDecimal gesoVal; - - // 5. 胎次 - @JSONField(name = "fetts") - private BigDecimal fetts; - - // 6. 胎儿数 - @JSONField(name = "fetus_cnt") - private BigDecimal fetusCnt; - - // 7. 经办人姓名 - @JSONField(name = "opter_name") - private String opterName; - - // 8. 结算ID - @JSONField(name = "setl_id") - private String setlId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java deleted file mode 100644 index ae620f04..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25007】生育津贴登记(输出) - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MatAllowReg25007Result { - // 1. 生育津贴登记ID - @JSONField(name = "matn_alwn_reg_id") - private String matnAlwnRegId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 4. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 5. 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - - // 6. 孕周数 - @JSONField(name = "geso_val") - private BigDecimal gesoVal; - - // 7. 胎次 - @JSONField(name = "fetts") - private BigDecimal fetts; - - // 8. 胎儿数 - @JSONField(name = "fetus_cnt") - private BigDecimal fetusCnt; - - // 9. 结算ID - @JSONField(name = "setl_id") - private String setlId; - - // 10. 有效标志 - @JSONField(name = "vali_flag") - private String valiFlag; - - // 11. 审核标志 - @JSONField(name = "rchk_flag") - private String rchkFlag; - - // 12. 审核意见 - @JSONField(name = "memo") - private String memo; - - // 13. 经办人姓名 - @JSONField(name = "opter_name") - private String opterName; - - // 14. 经办时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "opt_time") - private Date optTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java deleted file mode 100644 index 52120d4a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25008】生育津贴登记信息查询(输出) - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MatAllowRegSel25008Param { - // 1. 生育津贴登记ID - @JSONField(name = "matn_alwn_reg_id") - private String matnAlwnRegId; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 4. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 5. 计划生育手术或生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "birctrl_matn_date") - private Date birctrlMatnDate; - - // 6. 孕周数 - @JSONField(name = "geso_val") - private BigDecimal gesoVal; - - // 7. 胎次 - @JSONField(name = "fetts") - private BigDecimal fetts; - - // 8. 胎儿数 - @JSONField(name = "fetus_cnt") - private BigDecimal fetusCnt; - - // 9. 结算ID - @JSONField(name = "setl_id") - private String setlId; - - // 10. 有效标志 - @JSONField(name = "vali_flag") - private String valiFlag; - - // 11. 审核标志 - @JSONField(name = "rchk_flag") - private String rchkFlag; - - // 12. 审核意见 - @JSONField(name = "memo") - private String memo; - - // 13. 经办人姓名 - @JSONField(name = "opter_name") - private String opterName; - - // 14. 经办时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "opt_time") - private Date optTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java deleted file mode 100644 index e49ba619..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3503】商品采购 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3503Param { - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 随货单号(字符型,50位,非必填) - @JSONField(name = "dynt_no") - private String dyntNo; - - // 5. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 6. 供应商名称(字符型,200位,必填) - @JSONField(name = "spler_name") - private String splerName; - - // 7. 供应商许可证号(字符型,50位,非必填) - @JSONField(name = "spler_pmtno") - private String splerPmtno; - - // 8. 生产批号(字符型,30位,必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 9. 生产厂家名称(字符型,200位,必填) - @JSONField(name = "prodentp_name") - private String prodentpName; - - // 10. 批准文号(字符型,100位,必填) - @JSONField(name = "aprvno") - private String aprvno; - - // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 13. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 14. 采购/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "purc_retn_cnt") - private BigDecimal purcRetnCnt; - - // 15. 采购发票编码(字符型,50位,非必填) - @JSONField(name = "purc_invo_codg") - private String purcInvoCodg; - - // 16. 采购发票号(字符型,50位,非必填) - @JSONField(name = "purc_invo_no") - private String purcInvoNo; - - // 17. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 18. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "purc_retn_stoin_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date purcRetnStoinTime; - - // 19. 采购/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "purc_retn_opter_name") - private String purcRetnOpterName; - - // 20. 商品赠送标志(字符型,3位,必填) - @JSONField(name = "prod_geay_flag") - private String prodGeayFlag; - - // 21. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java deleted file mode 100644 index 91a7d592..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3505】商品销售 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3505Param { - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 5. 开方医师证件类型(字符型,6位,非必填) - @JSONField(name = "prsc_dr_cert_type") - private String prscDrCertType; - - // 6. 开方医师证件号码(字符型,50位,非必填) - @JSONField(name = "prsc_dr_certno") - private String prscDrCertno; - - // 7. 开方医师姓名(字符型,50位,必填) - @JSONField(name = "prsc_dr_name") - private String prscDrName; - - // 8. 药师证件类型(字符型,6位,非必填) - @JSONField(name = "phar_cert_type") - private String pharCertType; - - // 9. 药师证件号码(字符型,50位,非必填) - @JSONField(name = "phar_certno") - private String pharCertno; - - // 10. 药师姓名(字符型,50位,必填) - @JSONField(name = "phar_name") - private String pharName; - - // 11. 药师执业资格证号(字符型,50位,必填) - @JSONField(name = "phar_prac_cert_no") - private String pharPracCertNo; - - // 12. 医保费用结算类型(字符型,6位,必填) - @JSONField(name = "hi_feesetl_type") - private String hiFeesetlType; - - // 13. 结算ID(字符型,30位,非必填) - @JSONField(name = "setl_id") - private String setlId; - - // 14. 就医流水号(字符型,30位,必填) - @JSONField(name = "mdtrt_sn") - private String mdtrtSn; - - // 15. 人员编号(字符型,30位,非必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 16. 人员证件类型(字符型,6位,必填) - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 17. 证件号码(字符型,50位,非必填) - @JSONField(name = "certno") - private String certno; - - // 18. 人员姓名(字符型,50位,非必填) - @JSONField(name = "psn_name") - private String psnName; - - // 19. 生产批号(字符型,30位,必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 20. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 21. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 22. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 23. 拆零标志(字符型,3位,必填) - @JSONField(name = "trdn_flag") - private String trdnFlag; - - // 24. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 25. 处方号(字符型,40位,非必填) - @JSONField(name = "rxno") - private String rxno; - - // 26. 外购处方标志(字符型,3位,必填) - @JSONField(name = "rx_circ_flag") - private String rxCircFlag; - - // 27. 零售单据号(字符型,40位,必填) - @JSONField(name = "rtal_docno") - private String rtalDocno; - - // 29. 销售出库单据号(字符型,40位,非必填) - @JSONField(name = "stoout_no") - private String stooutNo; - - // 30. 批次号(字符型,30位,非必填) - @JSONField(name = "bchno") - private String bchno; - - // 32. 药品条形码(字符型,30位,非必填) - @JSONField(name = "drug_prod_barc") - private String drugProdBarc; - - // 33. 货架位(字符型,20位,非必填) - @JSONField(name = "shelf_posi") - private String shelfPosi; - - // 34. 销售/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "sel_retn_cnt") - private BigDecimal selRetnCnt; - - // 35. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "sel_retn_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date selRetnTime; - - // 36. 销售/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "sel_retn_opter_name") - private String selRetnOpterName; - - // 37. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 38. 就诊结算类型(字符型,6位,非必填) - @JSONField(name = "mdtrt_setl_type") - private String mdtrtSetlType; - - // 39. 溯源码节点信息(字符型,长度未明确) - @JSONField(name = "drugtracinfo") - private JSONArray drugtracinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java deleted file mode 100644 index b678d268..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3505】【3506】商品销售 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3505Result { - - // 返回结果 - @JSONField(name = "retRslt") - private String retRslt; - - // 返回信息 - @JSONField(name = "msgRslt") - private String msgRslt; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java deleted file mode 100644 index afcee8bb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3506】商品销售退货 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3506Param { - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 5. 结算ID(字符型,30位,非必填) - @JSONField(name = "setl_id") - private String setlId; - - // 6. 人员编号(字符型,30位,非必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 7. 人员证件类型(字符型,6位,必填) - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 8. 证件号码(字符型,50位,非必填) - @JSONField(name = "certno") - private String certno; - - // 9. 人员姓名(字符型,50位,非必填) - @JSONField(name = "psn_name") - private String psnName; - - // 10. 生产批号(字符型,30位,必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 13. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 14. 拆零标志(字符型,3位,必填) - @JSONField(name = "trdn_flag") - private String trdnFlag; - - // 15. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 16. 销售/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "sel_retn_cnt") - private BigDecimal selRetnCnt; - - // 17. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "sel_retn_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date selRetnTime; - - // 18. 销售/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "sel_retn_opter_name") - private String selRetnOpterName; - - // 19. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 20. 商品销售流水号(字符型,50位,非必填) - @JSONField(name = "medins_prod_sel_no") - private String medinsProdSelNo; - - // 21. 就医流水号(字符型,30位,必填) - @JSONField(name = "mdtrt_sn") - private String mdtrtSn; - - // 22. 溯源码节点信息(字符型,长度未明确) - @JSONField(name = "drugtracinfo") - private JSONArray drugtracinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java deleted file mode 100644 index 1c408ae6..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3507】商品信息删除 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3507Param { - - // 定点医药机构批次流水号 - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 进销存数据类型 - @JSONField(name = "inv_data_type") - private String invDataType; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java deleted file mode 100644 index ac10bc8f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3508】定点医药机构商品库存信息查询 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3508Param { - // 定点医药机构编号 - private String fixmedinsCode; - - // 医药机构目录编码 - private String medinsListCodg; - - // 定点医药机构批次流水号 - private String fixmedinsBchno; - - // 开始日期 - private Date begndate; - - // 结束日期 - private Date enddate; - - // 定点医药机构商品库存流水号 - private String medinsProdInvNo; - - // 医疗目录编码 - private String medListCodg; - - // 医药机构目录名称 - private String medinsListName; - - // 处方药标志 - private String rxFlag; - - // 目录特项标志 - private String listSpItemFlag; - - // 拆零标志 - private String trdnFlag; - - // 库存日期 - private Date invdate; - - // 生产批号 - private String manuLotnum; - - // 生产日期 - private Date manuDate; - - // 有效期止 - private Date expyEnd; - - // 备注 - private String memo; - - // 有效标志 - private String valiFlag; - - // 数据唯一记录号 - private String rid; - - // 创建人ID - private String crterId; - - // 创建人姓名 - private String crterName; - - // 创建机构编号 - private String crteOptinsNo; - - // 经办人ID - private String opterId; - - // 经办人姓名 - private String opterName; - - // 经办机构编号 - private String optinsNo; - - // 统筹区编号 - private String poolareaNo; - - // 说明:medins_list_codg和fixmedins_bchno为互斥必填项,至少传其中一个字段 -} - diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java deleted file mode 100644 index d543c985..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3508】定点医药机构商品库存信息查询 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Medical3508Result { - - // 有效期止 - private Date expyEnd; - - // 医疗目录编码 - private String medListCodg; - - // 统筹区编号 - private String poolareaNo; - - // 创建机构编号 - private String crteOptinsNo; - - // 库存数量 - private BigDecimal invCnt; - - // 医药机构目录编码 - private String medinsListCodg; - - // 备注 - private String memo; - - // 数据更新时间 - private Date updtTime; - - // 生产日期 - private Date manuDate; - - // 经办人姓名 - private String opterName; - - // 数据唯一记录号 - private String rid; - - // 数据创建时间 - private Date crteTime; - - // 库存日期 - private Date invdate; - - // 有效标志 - private String valiFlag; - - // 定点医药机构编号 - private String fixmedinsCode; - - // 处方药标志 - private String rxFlag; - - // 目录特项标志 - private String listSpItemFlag; - - // 定点医药机构批次流水号 - private String fixmedinsBchno; - - // 经办时间 - private Date optTime; - - // 经办人ID - private String opterId; - - // 生产批号 - private String manuLotnum; - - // 医药机构目录名称 - private String medinsListName; - - // 创建人姓名 - private String crterName; - - // 定点医药机构商品库存流水号 - private String medinsProdInvNo; - - // 创建人ID - private String crterId; - - // 经办机构编号 - private String optinsNo; - - // 拆零标志 - private String trdnFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java deleted file mode 100644 index c8e3a248..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.openhis.yb.dto; - -import lombok.Data; - -import java.util.List; - -/** - * MedicalDirectory3301ListParam - * - * @author Wuser - * @date 2025/5/24 - */ -@Data -public class MedicalDirectory3301ListParam { - List data; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java deleted file mode 100644 index ff605385..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3301】目录对照上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicalDirectory3301Param { - - // 定点医药机构目录编号 - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 定点医药机构目录名称 - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 目录类别 - @JSONField(name = "list_type") - private String listType; - - // 医疗目录编码 - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 开始日期 - @JSONField(name = "begndate") - private String begndate; - - // 结束日期 - @JSONField(name = "enddate") - private String enddate; - - // 批准文号 - private String aprvno; - - // 剂型 - private String dosform; - - // 除外内容 - private String exctCont; - - // 项目内涵 - private String itemCont; - - // 计价单位 - private String prcunt; - - // 规格 - private String spec; - - // 包装规格 - private String pacspec; - - // 备注 - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java deleted file mode 100644 index e9c50b06..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3302】目录对照撤销 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicalDirectory3302Param { - - // 定点医药机构编号 - private String fixmedinsCode; - - // 定点医药机构目录编号 - private String fixmedinsHilistId; - - // 目录类别 - private String listType; - - // 医疗目录编码 - private String medListCodg; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java deleted file mode 100644 index f6727fc4..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3501】商品盘存上传 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicalInventory3501Param { - - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 5. 盘存日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "invdate") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date invdate; - - // 6. 库存数量(数值型,16位含2位小数,必填) - @JSONField(name = "inv_cnt") - private BigDecimal invCnt; - - // 7. 生产批号(字符型,30位,非必填) - @JSONField(name = "manu_lotnum") - private String manuLotnum; - - // 8. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 9. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 10. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 11. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java deleted file mode 100644 index 72858b78..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【3502】商品库存变更 - * - * @author SunJQ - * @date 2025-04-16 - */ - -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicalInventory3502Param { - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 库存变更类型(字符型,6位,必填) - @JSONField(name = "inv_chg_type") - private String invChgType; - - // 3. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 4. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 5. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 6. 单价(数值型,16位含6位小数,必填) - @JSONField(name = "pric") - private BigDecimal pric; - - // 7. 数量(数值型,16位含4位小数,必填) - @JSONField(name = "cnt") - private BigDecimal cnt; - - // 8. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 9. 库存变更时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "inv_chg_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date invChgTime; - - // 10. 库存变更经办人姓名(字符型,50位,非必填) - @JSONField(name = "inv_chg_opter_name") - private String invChgOpterName; - - // 11. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 12. 拆零标志(字符型,2位,必填) - @JSONField(name = "trdn_flag") - private String trdnFlag; - - // 13. 溯源码节点信息(字符型,长度未明确) - @JSONField(name = "drugtracinfo") - private JSONArray drugtracinfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Output.java new file mode 100644 index 00000000..5fc43809 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Output.java @@ -0,0 +1,320 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【3511】返回结果 + * + * @author SunJQ + * @date 2025-09-26 + */ +@Data +public class MedicalInventory3511Output { + /** + * 有效期止 + * 类型:日期型,格式yyyy-MM-dd + */ + @JSONField(name = "expyEnd", format = "yyyy-MM-dd") + private Date expyEnd; + + /** + * 药师证件类型 + * 类型:字符型,长度3,非空 + */ + @JSONField(name = "pharCertType") + private String pharCertType; + + /** + * 销售/退货经办人姓名 + * 类型:字符型,长度50 + */ + @JSONField(name = "selRetnOpterName") + private String selRetnOpterName; + + /** + * 医疗目录编码 + * 类型:字符型,长度50 + */ + @JSONField(name = "medListCodg") + private String medListCodg; + + /** + * 统筹区编号 + * 类型:字符型,长度6 + */ + @JSONField(name = "poolareaNo") + private String poolareaNo; + + /** + * 结算ID + * 类型:字符型,长度30 + */ + @JSONField(name = "setlId") + private String setlId; + + /** + * 创建机构编号 + * 类型:字符型,长度20 + */ + @JSONField(name = "crteOptinsNo") + private String crteOptinsNo; + + /** + * 医药机构目录编码 + * 类型:字符型,长度150 + */ + @JSONField(name = "medinsListCodg") + private String medinsListCodg; + + /** + * 备注 + * 类型:字符型,长度500 + */ + @JSONField(name = "memo") + private String memo; + + /** + * 数据更新时间 + * 类型:日期时间型,格式yyyy-MM-dd HH:mm:ss + */ + @JSONField(name = "updtTime", format = "yyyy-MM-dd HH:mm:ss") + private Date updtTime; + + /** + * 医保费用结算类型 + * 类型:字符型,长度6,非空 + */ + @JSONField(name = "hiFeesetlType") + private String hiFeesetlType; + + /** + * 生产日期 + * 类型:日期型,格式yyyy-MM-dd + */ + @JSONField(name = "manuDate", format = "yyyy-MM-dd") + private Date manuDate; + + /** + * 经办人姓名 + * 类型:字符型,长度50 + */ + @JSONField(name = "opterName") + private String opterName; + + /** + * 人员编号 + * 类型:字符型,长度30 + */ + @JSONField(name = "psnNo") + private String psnNo; + + /** + * 数据唯一记录号 + * 类型:字符型,长度40 + */ + @JSONField(name = "rid") + private String rid; + + /** + * 数据创建时间 + * 类型:日期时间型,格式yyyy-MM-dd HH:mm:ss + */ + @JSONField(name = "crteTime", format = "yyyy-MM-dd HH:mm:ss") + private Date crteTime; + + /** + * 药师证件号码 + * 类型:字符型,长度50 + */ + @JSONField(name = "pharCertno") + private String pharCertno; + + /** + * 有效标志 + * 类型:字符型,长度3,非空 + */ + @JSONField(name = "valiFlag") + private String valiFlag; + + /** + * 证件号码 + * 类型:字符型,长度600 + */ + @JSONField(name = "certno") + private String certno; + + /** + * 定点医药机构编号 + * 类型:字符型,长度30 + */ + @JSONField(name = "fixmedinsCode") + private String fixmedinsCode; + + /** + * 处方药标志 + * 类型:字符型,长度3,非空 + */ + @JSONField(name = "rxFlag") + private String rxFlag; + + /** + * 药师执业资格证号 + * 类型:字符型,长度50 + */ + @JSONField(name = "pharPracCertNo") + private String pharPracCertNo; + + /** + * 目录特项标志 + * 类型:字符型,长度3,非空 + */ + @JSONField(name = "listSpItemFlag") + private String listSpItemFlag; + + /** + * 定点医药机构批次流水号 + * 类型:字符型,长度30 + */ + @JSONField(name = "fixmedinsBchno") + private String fixmedinsBchno; + + /** + * 经办时间 + * 类型:日期时间型,格式yyyy-MM-dd HH:mm:ss + */ + @JSONField(name = "optTime", format = "yyyy-MM-dd HH:mm:ss") + private Date optTime; + + /** + * 人员姓名 + * 类型:字符型,长度50 + */ + @JSONField(name = "psnName") + private String psnName; + + /** + * 电子监管编码 + * 类型:字符型,长度20 + */ + @JSONField(name = "elecSupnCodg") + private String elecSupnCodg; + + /** + * 开单医师姓名 + * 类型:字符型,长度50 + */ + @JSONField(name = "bilgDrName") + private String bilgDrName; + + /** + * 经办人ID + * 类型:字符型,长度20 + */ + @JSONField(name = "opterId") + private String opterId; + + /** + * 生产批号 + * 类型:字符型,长度30 + */ + @JSONField(name = "manuLotnum") + private String manuLotnum; + + /** + * 医药机构目录名称 + * 类型:字符型,长度100 + */ + @JSONField(name = "medinsListName") + private String medinsListName; + + /** + * 人员证件类型 + * 类型:字符型,长度6,非空 + */ + @JSONField(name = "psnCertType") + private String psnCertType; + + /** + * 销售/退货时间 + * 类型:日期时间型,格式yyyy-MM-dd HH:mm:ss + */ + @JSONField(name = "selRetnTime", format = "yyyy-MM-dd HH:mm:ss") + private Date selRetnTime; + + /** + * 销售/退货数量 + * 类型:数值型,长度16,2(16位数字,其中2位小数) + */ + @JSONField(name = "selRetnCnt") + private BigDecimal selRetnCnt; + + /** + * 创建人姓名 + * 类型:字符型,长度50 + */ + @JSONField(name = "crterName") + private String crterName; + + /** + * 药师姓名 + * 类型:字符型,长度50 + */ + @JSONField(name = "pharName") + private String pharName; + + /** + * 开单医师证件类型 + * 类型:字符型,长度3,非空 + */ + @JSONField(name = "prscDrCertType") + private String prscDrCertType; + + /** + * 创建人ID + * 类型:字符型,长度20 + */ + @JSONField(name = "crterId") + private String crterId; + + /** + * 开单医师证件号码 + * 类型:字符型,长度50 + */ + @JSONField(name = "prscDrCertno") + private String prscDrCertno; + + /** + * 经办机构编号 + * 类型:字符型,长度20 + */ + @JSONField(name = "optinsNo") + private String optinsNo; + + /** + * 拆零标志 + * 类型:字符型,长度3,非空 + */ + @JSONField(name = "trdnFlag") + private String trdnFlag; + + /** + * 最终成交单价 + * 类型:数值型,长度16,6(16位数字,其中6位小数) + */ + @JSONField(name = "finlTrnsPric") + private BigDecimal finlTrnsPric; + + /** + * 定点医药机构商品销售流水号 + * 类型:字符型,长度30 + */ + @JSONField(name = "medinsProdSelNo") + private String medinsProdSelNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Param.java new file mode 100644 index 00000000..10ee9044 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3511Param.java @@ -0,0 +1,263 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.Date; + +import com.alibaba.fastjson.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3511】 + * + * @author SunJQ + * @date 2025-09-26 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalInventory3511Param { + /** + * 定点医药机构编号 类型:字符型,长度30,必填项 + */ + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + /** + * 医药机构目录编码 类型:字符型,长度150,必填项(与定点医药机构批次流水号二选一) + */ + @JSONField(name = "medins_list_codg") + private String medinsListCodg; + + /** + * 定点医药机构批次流水号 类型:字符型,长度30,必填项(与医药机构目录编码二选一) + */ + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + /** + * 开始日期 类型:日期型,格式yyyy-MM-dd,必填项 + */ + @JSONField(name = "begndate", format = "yyyy-MM-dd") + private Date begndate; + + /** + * 结束日期 类型:日期型,格式yyyy-MM-dd,必填项 + */ + @JSONField(name = "enddate", format = "yyyy-MM-dd") + private Date enddate; + + /** + * 定点医药机构商品销售流水号 类型:字符型,长度30,非必填 + */ + @JSONField(name = "medins_prod_sel_no") + private String medinsProdSelNo; + + /** + * 医疗目录编码 类型:字符型,长度50,非必填 + */ + @JSONField(name = "med_list_codg") + private String medListCodg; + + /** + * 医药机构目录名称 类型:字符型,长度100,非必填 + */ + @JSONField(name = "medins_list_name") + private String medinsListName; + + /** + * 开单医师证件类型 类型:字符型,长度3,非必填 + */ + @JSONField(name = "prsc_dr_cert_type") + private String prscDrCertType; + + /** + * 开单医师证件号码 类型:字符型,长度50,非必填 + */ + @JSONField(name = "prsc_dr_certno") + private String prscDrCertno; + + /** + * 开单医师姓名 类型:字符型,长度50,非必填 + */ + @JSONField(name = "bilg_dr_name") + private String bilgDrName; + + /** + * 药师证件类型 类型:字符型,长度3,非必填 + */ + @JSONField(name = "phar_cert_type") + private String pharCertType; + + /** + * 药师证件号码 类型:字符型,长度50,非必填 + */ + @JSONField(name = "phar_certno") + private String pharCertno; + + /** + * 药师姓名 类型:字符型,长度50,非必填 + */ + @JSONField(name = "phar_name") + private String pharName; + + /** + * 药师执业资格证号 类型:字符型,长度50,非必填 + */ + @JSONField(name = "phar_prac_cert_no") + private String pharPracCertNo; + + /** + * 医保费用结算类型 类型:字符型,长度6,必填项 + */ + @JSONField(name = "hi_feesetl_type") + private String hiFeesetlType; + + /** + * 结算ID 类型:字符型,长度30,非必填 + */ + @JSONField(name = "setl_id") + private String setlId; + + /** + * 人员编号 类型:字符型,长度30,非必填 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 人员证件类型 类型:字符型,长度6,必填项 + */ + @JSONField(name = "psn_cert_type") + private String psnCertType; + + /** + * 证件号码 类型:字符型,长度600,非必填 + */ + @JSONField(name = "certno") + private String certno; + + /** + * 人员姓名 类型:字符型,长度50,非必填 + */ + @JSONField(name = "psn_name") + private String psnName; + + /** + * 生产批号 类型:字符型,长度30,非必填 + */ + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + /** + * 生产日期 类型:日期型,格式yyyy-MM-dd,非必填 + */ + @JSONField(name = "manu_date", format = "yyyy-MM-dd") + private Date manuDate; + + /** + * 有效期止 类型:日期型,格式yyyy-MM-dd,非必填 + */ + @JSONField(name = "expy_end", format = "yyyy-MM-dd") + private Date expyEnd; + + /** + * 电子监管编码 类型:字符型,长度20,非必填 + */ + @JSONField(name = "elec_supn_codg") + private String elecSupnCodg; + + /** + * 处方药标志 类型:字符型,长度3,必填项 + */ + @JSONField(name = "rx_flag") + private String rxFlag; + + /** + * 目录特项标志 类型:字符型,长度3,必填项 + */ + @JSONField(name = "list_sp_item_flag") + private String listSpItemFlag; + + /** + * 拆零标志 类型:字符型,长度3,必填项 + */ + @JSONField(name = "trdn_flag") + private String trdnFlag; + + /** + * 销售/退货时间 类型:日期时间型,格式yyyy-MM-dd HH:mm:ss,非必填 + */ + @JSONField(name = "sel_retn_time", format = "yyyy-MM-dd HH:mm:ss") + private Date selRetnTime; + + /** + * 销售/退货经办人姓名 类型:字符型,长度50,非必填 + */ + @JSONField(name = "sel_retn_opter_name") + private String selRetnOpterName; + + /** + * 备注 类型:字符型,长度500,非必填 + */ + @JSONField(name = "memo") + private String memo; + + /** + * 有效标志 类型:字符型,长度3,必填项 + */ + @JSONField(name = "vali_flag") + private String valiFlag; + + /** + * 数据唯一记录号 类型:字符型,长度40,非必填 + */ + @JSONField(name = "rid") + private String rid; + + /** + * 创建人ID 类型:字符型,长度20,非必填 + */ + @JSONField(name = "crter_id") + private String crterId; + + /** + * 创建人姓名 类型:字符型,长度50,非必填 + */ + @JSONField(name = "crter_name") + private String crterName; + + /** + * 创建机构编号 类型:字符型,长度20,非必填 + */ + @JSONField(name = "crte_optins_no") + private String crteOptinsNo; + + /** + * 经办人ID 类型:字符型,长度20,非必填 + */ + @JSONField(name = "opter_id") + private String opterId; + + /** + * 经办人姓名 类型:字符型,长度50,非必填 + */ + @JSONField(name = "opter_name") + private String opterName; + + /** + * 经办机构编号 类型:字符型,长度20,非必填 + */ + @JSONField(name = "optins_no") + private String optinsNo; + + /** + * 统筹区编号 类型:字符型,长度6,非必填 + */ + @JSONField(name = "poolarea_no") + private String poolareaNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java deleted file mode 100644 index 5350b037..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【3504】商品采购退货 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicalPurchase3504Param { - // 1. 医疗目录编码(字符型,50位,必填) - @JSONField(name = "med_list_codg") - private String medListCodg; - - // 2. 定点医药机构目录编号(字符型,30位,必填) - @JSONField(name = "fixmedins_hilist_id") - private String fixmedinsHilistId; - - // 3. 定点医药机构目录名称(字符型,200位,必填) - @JSONField(name = "fixmedins_hilist_name") - private String fixmedinsHilistName; - - // 4. 定点医药机构批次流水号(字符型,30位,必填) - @JSONField(name = "fixmedins_bchno") - private String fixmedinsBchno; - - // 5. 供应商名称(字符型,200位,必填) - @JSONField(name = "spler_name") - private String splerName; - - // 6. 供应商许可证号(字符型,50位,非必填) - @JSONField(name = "spler_pmtno") - private String splerPmtno; - - // 7. 生产日期(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "manu_date") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date manuDate; - - // 8. 有效期止(日期型,必填,格式:yyyy-MM-dd) - @JSONField(name = "expy_end") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date expyEnd; - - // 9. 最终成交单价(数值型,16位含6位小数,非必填) - @JSONField(name = "finl_trns_pric") - private BigDecimal finlTrnsPric; - - // 10. 采购/退货数量(数值型,16位含4位小数,必填) - @JSONField(name = "purc_retn_cnt") - private BigDecimal purcRetnCnt; - - // 11. 采购发票编码(字符型,50位,非必填) - @JSONField(name = "purc_invo_codg") - private String purcInvoCodg; - - // 12. 采购发票号(字符型,50位,必填) - @JSONField(name = "purc_invo_no") - private String purcInvoNo; - - // 13. 处方药标志(字符型,3位,必填) - @JSONField(name = "rx_flag") - private String rxFlag; - - // 14. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) - @JSONField(name = "purc_retn_stoin_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date purcRetnStoinTime; - - // 15. 采购/退货经办人姓名(字符型,50位,必填) - @JSONField(name = "purc_retn_opter_name") - private String purcRetnOpterName; - - // 16. 备注(字符型,500位,非必填) - @JSONField(name = "memo") - private String memo; - - // 20. 商品采购流水号(字符型,50位,非必填) - @JSONField(name = "medins_prod_purc_no") - private String medinsProdPurcNo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java deleted file mode 100644 index 2d6c3bb0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.List; - -/** - * 药品追溯码dto - * - * @author zwh - * @date 2025-05-28 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicalTraceNoDto { - - // 药品追溯码(字符型,100) - @JSONField(name = "drug_trac_codg") - private String drugTracCodg; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java deleted file mode 100644 index 83836218..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.openhis.yb.dto; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; -import java.util.List; - -@Data -@Accessors(chain = true) -public class PatientInfoDto { - - //患者信息 - /** ID */ - @TableId(type = IdType.ASSIGN_ID) - @JsonSerialize(using = ToStringSerializer.class) - private Long id; - - /** 活动标记 */ - private Integer activeFlag; - - /** 临时标识 */ - private Integer tempFlag; - - /** 患者姓名 */ - private String name; - - /** 患者院内编码/病历号 */ - private String busNo; - - /** 性别编码 */ - private Integer genderEnum; - - /** 生日 */ - private Date birthDate; - - /** 民族 */ - private String nationalityCode; - - /** 身份证号 */ - private String idCard; - - /** 拼音码 */ - private String pyStr; - - /** 五笔码 */ - private String wbStr; - - /** 机构Id */ - private Long organizationId; - - /** 特慢病等 */ - private List feedetail; - - //医保信息 2025/05/23 弃用,费用性质固定,如农大只有省医保,费用性质只显示省医保和自费即可,由@GetMapping(value = "/contract-list")接口提供数据 - /** 合同Id */ - private Long contractId;//弃用 2025/05/23 - - /** 合同名称 */ - private String contractName;//弃用 2025/05/23 - - /** 状态 */ - private Integer statusEnum;//弃用 2025/05/23 - - /** 合同的类别 */ - private Integer categoryEnum;//弃用 2025/05/23 - - /** 合同编码 */ - private String contractBusNo;//弃用 2025/05/23 2025/07/23 因考虑住院部分代码开发,非常规门诊转住院的情况下需要刷卡识别身份获取省市医保 - - /** 机构 */ - private Long contractOrgId;//弃用 2025/05/23 - - /** 是否医保 */ - private Integer ybFlag;//弃用 2025/05/23 - - /** 医保区划 */ - private String admVs;//弃用 2025/05/23 - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java deleted file mode 100644 index d0c8fdb0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.openhis.yb.dto; - -import com.openhis.financial.domain.PaymentRecDetail; - -import lombok.Data; - -/** - * 付款详情关联账户的sql查询结果集 - */ -@Data -public class PaymentDecDetailUniAccountDto extends PaymentRecDetail { - /** - * 合同编号 - */ - private String contractNo; - - // 险种类型 - private String insutype; - - // 医疗类别 - private String medType; - - // 医疗费用总额 - private String medfeeSumamt; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java deleted file mode 100644 index f6507fbc..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; - -import com.openhis.common.annotation.Dict; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 支付详情 - * - * @author SunJQ - * @date 2025-03-29 - */ -@Data -@Accessors(chain = true) -public class PaymentDetailDto { - - /** 支付类型 */ - @Dict(dictCode = "pay_enum") - private Integer payEnum; - private String payEnum_dictText; - - /** 金额 */ - private BigDecimal amount; - - /** 找零 */ - private BigDecimal returnAmount; - - /** 交款 */ - private BigDecimal chargeAmount; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java deleted file mode 100644 index dcc0bfed..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.List; - -import javax.validation.constraints.NotEmpty; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 付款入参 - * - * @author SunJQ - * @date 2025-03-29 - */ -@Data -@Accessors(chain = true) -public class PaymentInpatientDto { - - /** - * 付款id(业务单) - */ - private Long id;// paymentId - - /** - * 付款id(预交金原单) - */ - private Long oldId; - - /** - * 付款id(多退少补单) - */ - private Long newId; - - /** 就诊ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long encounterId; - - /** 收费项 */ - private List chargeItemIds;// 收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 - - /** 支付详细 */ - @NotEmpty - private List paymentDetails; - - private String ybMdtrtCertType;// 社保卡/身份证/电子医保码 - - private String busiCardInfo;// 社保卡号/身份证号/ecToken -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java deleted file mode 100644 index f9d321d0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -@Data -@Accessors(chain = true) -public class PaymentSettleDto { - - private Date endTime; - - private Date startTime; - - private Long enterId; - - private String contractNo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java deleted file mode 100644 index adb2dd17..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25004】人员生育审批撤销 - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersBirthApprovalCnl25004Param { - - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 待遇申报明细流水号 - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java deleted file mode 100644 index 9da7a5a3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25005】人员生育审批查询 - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersBirthApprovalSel25005Param { - // 1. 人员编号(既是输入参数也是输出参数) - @JSONField(name = "psn_no") - private String psnNo; - - // --- 输出参数 --- - - // 1. 待遇申报明细流水号(字符型,30位,必填) - @JSONField(name = "trtDclaDetlSn") - private String trtDclaDetlSn; - - // 2. 险种类型(字符型,6位,必填) - @JSONField(name = "insutype") - private String insutype; - - // 3. 人员证件号码(字符型,30位,必填) - @JSONField(name = "certno") - private String certno; - - // 4. 审批定点医药机构编号(字符型,30位,必填) - @JSONField(name = "fixmedinscode") - private String fixmedinscode; - - // 5. 审批定点医药机构名称(字符型,200位,必填) - @JSONField(name = "fixmedinsname") - private String fixmedinsname; - - // 6. 人员姓名(字符型,50位,必填) - @JSONField(name = "psn_name") - private String psnName; - - // 7. 开始时间(日期型,必填) - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "begndate") - private Date begndate; - - // 8. 终止时间(日期型,必填) - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "enddate") - private Date enddate; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java deleted file mode 100644 index c8d96bd8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java +++ /dev/null @@ -1,126 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25003】人员生育备案 - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersBirthRecord25003Param { - - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 3. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 4. 参保机构医保区划 - @JSONField(name = "insu_admdvs") - private String insuAdmdvs; - - // 5. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 6. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 7. 孕周数 - @JSONField(name = "esso_val") - private Integer essoVal; - - // 8. 生育待遇申报人类别 - @JSONField(name = "matn_trt_dclaer_type") - private String matnTrtDclaerType; - - // 9. 末次月经日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "last_mena_date") - private Date lastMenaDate; - - // 10. 预计生育日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "plan_matn_date") - private Date planMatnDate; - - // 11. 申报日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "dcla_date") - private Date dclaDate; - - // 12. 配偶姓名 - @JSONField(name = "spus_name") - private String spusName; - - // 13. 配偶证件类型 - @JSONField(name = "spus_cert_type") - private String spusCertType; - - // 14. 配偶证件号码 - @JSONField(name = "spus_certno") - private String spusCertno; - - // 15. 生育类别 - @JSONField(name = "matn_type") - private String matnType; - - // 16. 胎次 - @JSONField(name = "fetts") - private BigDecimal fetts; - - // 17. 计划生育服务证号 - @JSONField(name = "fpsc_no") - private String fpscNo; - - // 18. 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "begndate") - private Date begndate; - - // 19. 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "enddate") - private Date enddate; - - // 20. 联系地址 - @JSONField(name = "addr") - private String addr; - - // --- 输出参数 --- - - // 1. 待遇申报明细流水号 - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String outputPsnNo; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java deleted file mode 100644 index 0fa509f4..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; -import com.alibaba.fastjson2.annotation.JSONField; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【2503】人员慢特病备案(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersChrDis2503Param { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 门慢门特病种目录代码 - @JSONField(name = "opsp_dise_code") - private String opspDiseCode; - - // 4. 门慢门特病种名称 - @JSONField(name = "opsp_dise_name") - private String opspDiseName; - - // 5. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 6. 联系地址 - @JSONField(name = "addr") - private String addr; - - // 7. 参保机构医保区划 - @JSONField(name = "insu_optins") - private String insuOptins; - - // 8. 鉴定定点医药机构编号 - @JSONField(name = "ide_fixmedins_no") - private String ideFixmedinsNo; - - // 9. 鉴定定点医药机构名称 - @JSONField(name = "ide_fixmedins_name") - private String ideFixmedinsName; - - // 10. 医院鉴定日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "hosp_ide_date") - private Date hospIdeDate; - - // 11. 诊断医师编码 - @JSONField(name = "diag_dr_codg") - private String diagDrCodg; - - // 12. 诊断医师姓名 - @JSONField(name = "diag_dr_name") - private String diagDrName; - - // 13. 开始日期 - @JSONField(name = "begndate", format = "yyyy-MM-dd") - private Date begndate; - - // 15. 结束日期 - @JSONField(name = "enddate", format = "yyyy-MM-dd") - private Date enddate; - - // 16. 待遇申报明细流水号(输出) - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java deleted file mode 100644 index ee75f633..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2504】人员慢特病备案撤销(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersChrDisCxl2504Param { - // 1. 待遇申报明细流水号 - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 备注 - @JSONField(name = "memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java deleted file mode 100644 index c5d2184e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import com.alibaba.fastjson2.JSONObject; - -import com.alibaba.fastjson2.annotation.JSONField; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【2505】人员定点备案(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersDesigPt2505Param { - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 3. 联系地址 - @JSONField(name = "addr") - private String addr; - - // 4. 业务申请类型 - @JSONField(name = "biz_appy_type") - private String bizAppyType; - - // 5. 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "begndate") - private Date begndate; - - // 6. 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "enddate") - private Date enddate; - - // 7. 代办人姓名 - @JSONField(name = "agnter_name") - private String agnterName; - - // 8. 代办人证件类型 - @JSONField(name = "agnter_cert_type") - private String agnterCertType; - - // 9. 代办人证件号码 - @JSONField(name = "agnter_certno") - private String agnterCertno; - - // 10. 代办人联系方式 - @JSONField(name = "agnter_tel") - private String agnterTel; - - // 11. 代办人联系地址 - @JSONField(name = "agnter_addr") - private String agnterAddr; - - // 12. 代办人关系 - @JSONField(name = "agnter_rlts") - private String agnterRlts; - - // 13. 定点排序号 - @JSONField(name = "fix_srt_no") - private String fixSrtNo; - - // 14. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 15. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 16. 备注 - @JSONField(name = "memo") - private String memo; - - // 17. 扩展字段 - @JSONField(name = "extData") - private JSONObject extData; - - // 18. 待遇申报明细流水号(输出) - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java deleted file mode 100644 index 2dfb8244..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【2506】人员定点备案撤销(输入) - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersDesigPtCxl2506Param { - // 1. 待遇申报明细流水号 - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 备注(填写撤销原因) - @JSONField(name = "memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java deleted file mode 100644 index 737d58aa..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25006】人员特药审批撤销 - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersMedApprovalCnl25006Param { - // 1. 人员编号(字符型,30位,必填) - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 待遇申报明细流水号(字符型,30位,必填) - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java deleted file mode 100644 index ea145a91..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25001】人员特药备案 - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersMedRecord25001Param { - - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 参保机构医保区划 - @JSONField(name = "insu_admdv") - private String insuAdmdv; - - // 4. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 5. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 6. 目录类别 - @JSONField(name = "list_type") - private String listType; - - // 7. 医保目录编码 - @JSONField(name = "hilist_code") - private String hilistCode; - - // 8. 医保目录名称 - @JSONField(name = "hilist_name") - private String hilistName; - - // 9. 数量 - @JSONField(name = "cnt") - private BigDecimal cnt; - - // 10. 数量单位 - @JSONField(name = "cnt_prcunt") - private String cntPrcunt; - - // 11. 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "begndate") - private Date begndate; - - // 12. 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "enddate") - private Date enddate; - - // 13. 诊断代码 - @JSONField(name = "diag_code") - private String diagCode; - - // 14. 诊断名称 - @JSONField(name = "diag_name") - private String diagName; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java deleted file mode 100644 index 0b92c546..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25002】人员特药备案查询(输入) - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersMedSelect25002Param { - - // 1. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 用作比较的时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "compare_date") - private Date compareDate; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java deleted file mode 100644 index 0fda0c07..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【25002】人员特药备案查询(输出) - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersMedSelect25002Result { - - // 1. 待遇申报明细流水号 - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; - - // 2. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 3. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 4. 参保地医保区划 - @JSONField(name = "insu_admdv") - private String insuAdmdv; - - // 5. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 6. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 7. 目录类别 - @JSONField(name = "list_type") - private String listType; - - // 8. 医保目录编码 - @JSONField(name = "hilist_code") - private String hilistCode; - - // 9. 医保目录名称 - @JSONField(name = "hilist_name") - private String hilistName; - - // 10. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 11. 开始时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "begndate") - private Date begndate; - - // 12. 终止时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "enddate") - private Date enddate; - - // 13. 经办人id - @JSONField(name = "opter_id") - private String opterId; - - // 14. 经办人姓名 - @JSONField(name = "opter_name") - private String opterName; - - // 15. 经办时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "opt_time") - private Date optTime; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java deleted file mode 100644 index 8d2790ce..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java +++ /dev/null @@ -1,168 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.util.Date; - -/** - * 【2507】人员意外伤害备案(输入) - * - * @author gaoyy - * @date 2025-05-09 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PersUnintInj2507Param { - // 1. 申报来源 - @JSONField(name = "dcla_souc") - private String dclaSouc; - - // 2. 险种类型 - @JSONField(name = "insutype") - private String insutype; - - // 3. 人员编号 - @JSONField(name = "psn_no") - private String psnNo; - - // 4. 人员参保关系ID - @JSONField(name = "psn_insu_rlts_id") - private String psnInsuRltsId; - - // 5. 人员证件类型 - @JSONField(name = "psn_cert_type") - private String psnCertType; - - // 6. 证件号码 - @JSONField(name = "certno") - private String certno; - - // 7. 人员姓名 - @JSONField(name = "psn_name") - private String psnName; - - // 8. 性别 - @JSONField(name = "gend") - private String gend; - - // 9. 民族 - @JSONField(name = "naty") - private String naty; - - // 10. 出生日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "brdy") - private Date brdy; - - // 11. 联系电话 - @JSONField(name = "tel") - private String tel; - - // 12. 联系地址 - @JSONField(name = "addr") - private String addr; - - // 13. 参保所属医保区划 - @JSONField(name = "insu_admdvs") - private String insuAdmdvs; - - // 14. 单位编号 - @JSONField(name = "emp_no") - private String empNo; - - // 15. 单位名称 - @JSONField(name = "emp_name") - private String empName; - - // 16. 就医地医保区划 - @JSONField(name = "mdtrtarea_admdvs") - private String mdtrtareaAdmdvs; - - // 17. 定点医药机构编号 - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - // 18. 定点医药机构名称 - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - // 19. 医院等级 - @JSONField(name = "hosp_lv") - private String hospLv; - - // 20. 入院时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "adm_time") - private Date admTime; - - // 21. 受伤时间 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "trum_time") - private Date trumTime; - - // 22. 受伤地点 - @JSONField(name = "trum_site") - private String trumSite; - - // 23. 致伤原因 - @JSONField(name = "trum_rea") - private String trumRea; - - // 24. 审核支付标志 - @JSONField(name = "chk_pay_flag") - private String chkPayFlag; - - // 25. 代办人姓名 - @JSONField(name = "agnter_name") - private String agnterName; - - // 26. 代办人证件类型 - @JSONField(name = "agnter_cert_type") - private String agnterCertType; - - // 27. 代办人证件号码 - @JSONField(name = "agnter_certno") - private String agnterCertno; - - // 28. 代办人联系方式 - @JSONField(name = "agnter_tel") - private String agnterTel; - - // 29. 代办人联系地址 - @JSONField(name = "agnter_addr") - private String agnterAddr; - - // 30. 代办人关系 - @JSONField(name = "agnter_rlts") - private String agnterRlts; - - // 31. 开始日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "begndate") - private Date begndate; - - // 32. 结束日期 - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JSONField(name = "enddate") - private Date enddate; - - // 33. 备注 - @JSONField(name = "memo") - private String memo; - - // 34. 待遇申报明细流水号(输出) - @JSONField(name = "trt_dcla_detl_sn") - private String trtDclaDetlSn; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java deleted file mode 100644 index 91c6c1e2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.List; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 预结算入参 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class PrePaymentDto { - - /** 收款员 */ - private Long entererId; - - /** 支付的患者ID */ - @NotNull - private Long patientId; - - /** 就诊ID */ - private Long encounterId; - - /** 收费项 */ - @NotEmpty - private List chargeItemIds;// - - /** - * 类型 医保挂号时使用 - */ - private String ybMdtrtCertType;// 社保卡/身份证/电子医保码 - /** - * 类型 医保挂号时使用 - */ - private String busiCardInfo;// 社保卡号/身份证号/ecToken -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java deleted file mode 100644 index 598c523d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.io.Serializable; - - -@Data -@ApiModel(value="接口返回对象", description="接口返回对象") -@JsonIgnoreProperties(ignoreUnknown = true) -public class Result implements Serializable { - - private static final long serialVersionUID = 1L; - - /** - * 成功标志 - */ - @ApiModelProperty(value = "成功标志") - private boolean success = true; - - /** - * 返回处理消息 - */ - @ApiModelProperty(value = "返回处理消息") - private String message = "操作成功!"; - - /** - * 返回代码 - */ - @ApiModelProperty(value = "返回代码") - private Integer code = 0; - - /** - * 返回数据对象 data - */ - @ApiModelProperty(value = "返回数据对象") - private T result; - - /** - * 时间戳 - */ - @ApiModelProperty(value = "时间戳") - private long timestamp ; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java deleted file mode 100644 index 6b1f0eae..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; - -/** - * 医保结果 - */ -@Data -public class ResultBody { - - /** 交易状态码 */ - @JSONField(name="infcode") - private String infcode; - /** 发送方报文ID */ - @JSONField(name="warnMsg") - private String warn_msg; - /** 数字签名信息 */ - @JSONField(name="cainfo") - private String cainfo; - /** 错误信息 */ - @JSONField(name="err_msg") - private String errMsg; - /** 接收报文时间 */ - @JSONField(name="refmsg_time") - private String refmsgTime; - /** 签名类型 */ - @JSONField(name="signtype") - private String signtype; - /** 响应报文时间 */ - @JSONField(name="respond_time") - private String respondTime; - /** 接收方报文ID */ - @JSONField(name="inf_refmsgid") - private String infRefmsgid; - /** 交易输出 */ - @JSONField(name="output") - private String output; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java deleted file mode 100644 index 46ce73f9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.openhis.yb.dto; - -import com.openhis.common.annotation.Dict; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -@Data -@Accessors(chain = true) -public class Settlement3201DetailDto { - - /** 医疗费用总额 */ - private BigDecimal medFeeSumAmt; - /** 基金支付总额 */ - private BigDecimal fundPaySumAmt; - /** 个人账户支付总额 */ - private BigDecimal acctPay; - /** 个人账户支付总额 */ - private BigDecimal acctGjPay; - /** 定点医药机构结算笔数 */ - private Integer fixMedInsSetlCnt; - @Dict(dictCode = "bus_no" , dictTable = "fin_contract" , dictText = "contract_name") - private String contractNo; - private String contractNo_dictText; - @Dict(dictCode = "insutype") - private Integer insutype; - private String insutype_dictText; - @Dict(dictCode = "clr_type") - private String clrType; - private String clrType_dictText; - - public Settlement3201DetailDto() { - this.medFeeSumAmt = BigDecimal.ZERO; - this.fundPaySumAmt = BigDecimal.ZERO; - this.acctPay = BigDecimal.ZERO; - this.acctGjPay = BigDecimal.ZERO; - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java deleted file mode 100644 index e416133f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; - -import java.math.BigDecimal; - -/** - * 【3201】后台计算结果 DB映射实体 - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -public class Settlement3201Dto { - /** 医疗费用总额 */ - private BigDecimal medFeeSumAmt; - /** 基金支付总额 */ - private BigDecimal fundPaySumAmt; - /** 个人账户支付总额 */ - private BigDecimal acctPay; - /** 个人账户支付总额 */ - private BigDecimal acctGjPay; - /** 定点医药机构结算笔数 */ - private Integer fixMedInsSetlCnt; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java deleted file mode 100644 index 2f70156c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; - -import javax.validation.constraints.NotNull; -import java.util.Date; - -/** - * 【3201】前台入参 - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -public class Settlement3201WebParam { - - /** 险种 */ - @NotNull - private String insuType; - /** 清算类别 */ - @NotNull - private String clrType;//住院或门诊 - /** 合同id */ - @NotNull - private String contractNo; - /** 医院id */ - @NotNull - private Long orgId; - /** 开始时间 */ - @NotNull - private String stmtBegnDate; - /** 结束时间 */ - @NotNull - private String stmtEndDate; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java deleted file mode 100644 index 8832bd71..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; - -import java.math.BigDecimal; - -/** - * 【3201】后台计算结果 DB映射实体 - * - * @author SunJQ - * @date 2025-04-15 - */ -@Data -public class Settlement3202Dto { - /** 医疗费用总额 */ - - private BigDecimal medFeeSumAmt; - /** 基金支付总额 */ - - private BigDecimal fundPaySumAmt; - /** 个人账户支付总额 */ - - private BigDecimal acctPay; - /** 个人账户支付总额 */ - - private BigDecimal acctGjPay; - /** 现金支付总额 */ - - private BigDecimal selfPayCash; - /** 微信支付总额 */ - - private BigDecimal selfPayVX; - /** 阿里支付总额 */ - - private BigDecimal selfPayALI; - /** 银行卡支付总额 */ - - private BigDecimal selfPayUNION; - /** 定点医药机构结算笔数 */ - - private Integer fixMedInsSetlCnt; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java deleted file mode 100644 index 9d129ac3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import org.springframework.format.annotation.DateTimeFormat; - -import javax.validation.constraints.NotNull; -import java.util.Date; - -/** - * 【3202】前台入参 - * - * @author SunJQ - * @date 2025-04-17 - */ -@Data -public class Settlement3202WebParam { - /** 结算经办机构 */ - private String setlOptins;//前台传入,注意:先上传文件后核对明细的 - /** 清算类别 */ - private String clrType; - /** 文件查询号 */ - private String fileQuryNo; - /** 开始时间 */ - //@DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss") - //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private String stmtBegnDate; - /** 结束时间 */ - //@DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss") - //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private String stmtEndDate; - /** 医院id */ - private Long orgId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java deleted file mode 100644 index 4d666ffe..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; - -import java.util.Date; - -/** - * [3209A]前台传参 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Data -public class Settlement3209AWebParam { - - // 清算类别 - private String clrType; - - // 开始日期 - private Date begndate; - - // 结束日期 - private Date enddate; - - // 清算机构 - private String clrOptins; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java deleted file mode 100644 index 57000ece..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.openhis.yb.dto; - -import java.io.Serializable; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *【9001】【9002】签到 签退 - * - * @author SunJQ - * @date 2025-04-16 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class Sign extends HisBaseEntity implements Serializable { - private static final long serialVersionUID = 1L; - /**主键*/ - @TableId(type = IdType.ASSIGN_UUID) - @JSONField(serialize=false) - private String id; - /**操作员编号*/ - @JSONField(name="opter_no") - private String opterNo; - /**签到编号*/ - @JSONField(name="sign_no") - private String signNo; - /**签到时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(serialize=false) - private java.util.Date signTime; - /**签退时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(serialize=false) - private java.util.Date signOutTime; - /**状态,0-新建,1-签到,2-签退*/ - @JSONField(serialize=false) - private String status; - /** 签到MAC地址 */ - @JSONField(name="mac") - private String mac; - /** 签到IP地址 */ - @JSONField(name="ip") - private String ip; -// -// /**租户ID*/ -// private String tenantId; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java deleted file mode 100644 index 1dc5e821..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class Sign1101Param { - /**操作员编号*/ - @JSONField(name="opter_no") - private String opterNo; - /** 签到MAC地址 */ - @JSONField(name="mac") - private String mac; - /** 签到IP地址 */ - @JSONField(name="ip") - private String ip; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java deleted file mode 100644 index 32f6340b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class Sign9001Result { - /**签到编号*/ - @JSONField(name="signNo") - private String signNo; - - /**操作员编号*/ - @JSONField(name="opterNo") - private String opterNo; - - @JSONField(name="signTime") - private java.util.Date signTime; - - @JSONField(name="status") - private String status; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java deleted file mode 100644 index 77450d72..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 供应单据及供应项相关详细信息 dto - * - * @author zwh - * @date 2025-03-06 - */ -@Data -@Accessors(chain = true) -public class SupplyItemDetail3503Dto { - - /** ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long supplyId; - - /** 项目 */ - private String itemTable; - - /** 物品编码 */ - private Long itemId; - - /** 数量 */ - private BigDecimal itemQuantity; - - /** 项目单位 */ - private String itemUnit; - - /** 单价 */ - private BigDecimal price; - - /** 总价 */ - private BigDecimal totalPrice; - - /** 审批人 */ - private Long approverId; - - /** 源仓库 */ - private Long sourceLocationId; - - /** 源仓位 */ - private Long sourceLocationStoreId; - - /** 目的仓库 */ - private Long purposeLocationId; - - /** 目的仓位 */ - private Long purposeLocationStoreId; - - /** 供应商id */ - private Long supplierId; - - /** 供应商 */ - private String supplierName; - - /** 经手人 */ - private String practitionerName; - - /** 产品批号 */ - private String lotNumber; - - /** 追溯码 */ - private String traceNo; - - /** 发票码 */ - private String invoiceNo; - - /** 项目医保码 */ - private String ybNo; - - /** 单据号 */ - private String busNo; - - /** 项目编号 */ - private String itemBusNo; - - /** 开始时间 */ - private Date startTime; - - /** 结束时间 */ - private Date endTime; - - /** 服务id */ - private Long serviceId; - - /** 项目名称 */ - private String name; - - /** 拼音码 */ - private String pyStr; - - /** 五笔码 */ - private String wbStr; - - /** 常规单位 */ - private String unitCode; - - /** 最小单位 */ - private String minUnitCode; - - /** 拆零比 */ - private BigDecimal partPercent; - - /** 项目类型 */ - private String itemCategory; - - /** 处方标志 */ - private Integer rxFlag; - - /** 批准文号 */ - private String approvalNumber; - - /** 生产厂商文本 */ - private String manufacturerText; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java deleted file mode 100644 index b11177c5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.openhis.common.annotation.Dict; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 医保电子处方信息 - * - * @author yuxj - * @date 2025-05-06 - */ -@Data -@Accessors(chain = true) -public class VeriPrescriptionDetailInfoDto { - - /** 处方号 */ - private String prescriptionNo; - /** 门诊号 */ - private String iptOtpNo; - /** 请求数量 */ - private Integer quantity; - /** 请求单位 */ - @Dict(dictCode = "unit_code") - private String unitCode; - private String unitCode_dictText; - /** 审核状态 */ - private Integer statusEnum; - private String statusEnum_enumText; - - /* --处方信息-- */ - /** 药品名 */ - private String medicationName; - /** 药品规格 */ - private String drugSpecification; - /** 药品剂量 */ - private BigDecimal medDosage; - /** 药品剂量单位 */ - @Dict(dictCode = "unit_code") - private String medDosageUnitCode; - private String medDosageUnitCode_dictText; - /** 使用频次 */ - @Dict(dictCode = "rate_code") - private String medFrequency; - private String medFrequency_dictText; - /** 途径 */ - @Dict(dictCode = "method_code") - private String medRoute; - private String medRoute_dictText; - /** 取药状态 */ - private String medStatus; - /** 处方状态 */ - private String prescriptionStatus; - /** 处方类别 */ - private Integer rxTypeCode; - private String rxTypeCode_enumText; - /** 支持用药信息 */ - private String supportInfo; - /** 服药时间(开始) */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - private Date effectiveDoseStart; - /** 服药时间(结束) */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - private Date effectiveDoseEnd; - /** 给药间隔 */ - private String dispenseInterval; - /** 单次发药数 */ - private Integer dispensePerQuantity; - /** 每次发药供应天数 */ - private Integer dispensePerDuration; - - /* --就诊信息-- */ - /** 患者姓名 */ - private String patnName; - /** 身份证号 */ - private String certno; - /** 开方医生名 */ - private String practitionerName; - /** 挂号科室 */ - private String mdtrtDeptName; - /** 开单科室 */ - private String prscDeptName; - /** 挂号日期 */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - private Date mdtrtTime; - /** 处方开立日期 */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - private Date prscTime; - - /* --诊断信息-- */ - /** 诊断名 */ - private String conditionName; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java deleted file mode 100644 index 781adb91..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * 医保电子处方信息 - * - * @author yuxj - * @date 2025-05-06 - */ -@Data -@Accessors(chain = true) -public class VeriPrescriptionInfoDto { - - /** 处方号 */ - private String prescriptionNo; - /** 门诊号 */ - private String iptOtpNo; - /** 姓名 */ - private String patientName; - /** 证件号 */ - private String certno; - /** 取药状态 */ - private String medStatus; - /** 状态 */ - private Integer statusEnum; - private String statusEnum_enumText; - /** 开单科室 */ - private String prscDeptName; - /** 挂号日期 */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - private Date mdtrtTime; - /** 处方开立日期 */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") - private Date prscTime; - - /** 租户ID */ - private Integer tenantId; - /** 电子凭证线上身份核验流水号 */ - private String authNo; - /** 电子凭证令牌 */ - private String ecToken; - /** 医保处方编号 */ - private String hiRxno; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java deleted file mode 100644 index 31508fc4..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 医保电子处方信息查询条件 - * - * @author yuxj - * @date 2025-05-06 - */ -@Data -@Accessors(chain = true) -public class VeriPrescriptionParam { - - /** 门诊号/姓名 */ - private String name; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java deleted file mode 100644 index 56945856..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java +++ /dev/null @@ -1,194 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -@Data -@Accessors(chain = true) -//@TableName("yb_inpatient_fee_detail") // 替换为实际表名 -public class Yb2301InputFeeDetail { - - /** - * 费用明细流水号 - * 单次就诊内唯一 - */ - @JsonProperty("feedetl_sn") - private String feedetlSn; - - /** - * 原费用流水号 - * 退单时传入被退单的费用明细流水号 - */ - @JsonProperty("init_feedetl_sn") - private String initFeedetlSn; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 医嘱号 - */ - @JsonProperty("drord_no") - private String drordNo; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 医疗类别 - */ - @JsonProperty("med_type") - private String medType; - - /** - * 费用发生时间 - * 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("fee_ocur_time") - private Date feeOcurTime; - - /** - * 医保目录编码 - */ - @JsonProperty("med_list_codg") - private String medListCodg; - - /** - * 医药机构目录编码 - */ - @JsonProperty("medins_list_codg") - private String medinsListCodg; - - /** - * 明细项目费用总额 - */ - @JsonProperty("det_item_fee_sumamt") - private BigDecimal detItemFeeSumamt; - - /** - * 数量 - * 退单时数量填写负数 - */ - @JsonProperty("cnt") - private BigDecimal cnt; - - /** - * 单价 - */ - @JsonProperty("pric") - private BigDecimal pric; - - /** - * 开单科室编码 - */ - @JsonProperty("bilg_dept_codg") - private String bilgDeptCodg; - - /** - * 开单科室名称 - */ - @JsonProperty("bilg_dept_name") - private String bilgDeptName; - - /** - * 开单医生编码 - */ - @JsonProperty("bilg_dr_codg") - private String bilgDrCodg; - - /** - * 开单医师姓名 - */ - @JsonProperty("bilg_dr_name") - private String bilgDrName; - - /** - * 受单科室编码 - */ - @JsonProperty("acord_dept_codg") - private String acordDeptCodg; - - /** - * 受单科室名称 - */ - @JsonProperty("acord_dept_name") - private String acordDeptName; - - /** - * 受单医生编码 - */ - @JsonProperty("orders_dr_code") - private String ordersDrCode; - - /** - * 受单医生姓名 - */ - @JsonProperty("orders_dr_name") - private String ordersDrName; - - /** - * 医院审批标志 - */ - @JsonProperty("hosp_appr_flag") - private String hospApprFlag; - - /** - * 中药使用方式 - */ - @JsonProperty("tcmdrug_used_way") - private String tcmdrugUsedWay; - - /** - * 外检标志 - */ - @JsonProperty("etip_flag") - private String etipFlag; - - /** - * 外检医院编码 - */ - @JsonProperty("etip_hosp_code") - private String etipHospCode; - - /** - * 出院带药标志 - */ - @JsonProperty("dscg_tkdrug_flag") - private String dscgTkdrugFlag; - - /** - * 生育费用标志 - */ - @JsonProperty("matn_fee_flag") - private String matnFeeFlag; - - /** - * 备注 - */ - @JsonProperty("memo") - private String memo; - - /** - * 组套编号 - */ - @JsonProperty("comb_no") - private String combNo; - - /** - * 字段扩展 - * 格式:JSON - */ - @JsonProperty("exp_content") - private String expContent; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java deleted file mode 100644 index e1a6f370..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.List; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【2301】参数 - * - * @author SunJQ - * @date 2025-08-09 - */ -@Data -@Accessors(chain = true) -public class Yb2301InputFeeDetailModel { - /** - * 费用明细 - */ - List feedetail; - - /** - * 参保地 - */ - String insuplcAdmdvs; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java deleted file mode 100644 index e49d91c2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; - -import java.math.BigDecimal; - -@Data -public class Yb2301OutputResult { - - /** - * 费用明细流水号 - */ - @JsonProperty("feedetl_sn") - private String feedetlSn; - - /** - * 明细项目费用总额 - */ - @JsonProperty("det_item_fee_sumamt") - private BigDecimal detItemFeeSumamt; - - /** - * 数量 - */ - @JsonProperty("cnt") - private BigDecimal cnt; - - /** - * 单价 - */ - @JsonProperty("pric") - private BigDecimal pric; - - /** - * 定价上限金额 - */ - @JsonProperty("pric_uplmt_amt") - private BigDecimal pricUplmtAmt; - - /** - * 自付比例 - */ - @JsonProperty("selfpay_prop") - private BigDecimal selfpayProp; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价金额 - */ - @JsonProperty("overlmt_amt") - private BigDecimal overlmtAmt; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 收费项目等级 - */ - @JsonProperty("chrgitm_lv") - private String chrgitmLv; - - /** - * 医疗收费项目类别 - */ - @JsonProperty("med_chrgitm_type") - private String medChrgitmType; - - /** - * 基本药物标志 - */ - @JsonProperty("bas_medn_flag") - private String basMednFlag; - - /** - * 医保谈判药品标志 - */ - @JsonProperty("hi_nego_drug_flag") - private String hiNegoDrugFlag; - - /** - * 儿童用药标志 - */ - @JsonProperty("chld_medc_flag") - private String chldMedcFlag; - - /** - * 目录特项标志 - */ - @JsonProperty("list_sp_item_flag") - private String listSpItemFlag; - - /** - * 限制使用标志 - */ - @JsonProperty("lmt_used_flag") - private String lmtUsedFlag; - - /** - * 直报标志 - */ - @JsonProperty("drt_reim_flag") - private String drtReimFlag; - - /** - * 备注 - */ - @JsonProperty("memo") - private String memo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java deleted file mode 100644 index 5884763b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class Yb2302InputInpatient { - /** - * 费用明细流水号 - * 单次就诊内唯一 - */ - @JsonProperty("feedetl_sn") - private String feedetlSn; - - /** - * 人员编号 - * 退单时传入被退单的费用明细流水号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 字段扩展 - */ - @JsonProperty("exp_content") - private String expContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java deleted file mode 100644 index 4233bc37..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; - -@Data -@Accessors(chain = true) -public class Yb2303InputInpatient { - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 就诊凭证类型 - */ - @JsonProperty("mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 就诊凭证编号 - * 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 - */ - @JsonProperty("mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 个人结算方式 - */ - @JsonProperty("psn_setlway") - private String psnSetlway; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 个人账户使用标志 - */ - @JsonProperty("acct_used_flag") - private String acctUsedFlag; - - /** - * 险种类型 - */ - @JsonProperty("insutype") - private String insutype; - - /** - * 参保地医保区划 - */ - @JsonProperty("insuplc_admdvs") - private String insuplcAdmdvs; - - /** - * 就医地医保区划 - */ - @JsonProperty("mdtrtarea_admvs") - private String mdtrtareaAdmvs; - - /** - * 发票号 - */ - @JsonProperty("invono") - private String invono; - - /** - * 中途结算标志 - */ - @JsonProperty("mid_setl_flag") - private String midSetlFlag; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价金额 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 出院时间 - * 格式:yyyy-MM-dd - */ - @JsonProperty("dscgTime") - private Date dscgTime; - - /** - * 字段扩展 - */ - @JsonProperty("exp_content") - private String expContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java deleted file mode 100644 index 961811c7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java +++ /dev/null @@ -1,292 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class Yb2303OutputSetInfo { - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 人员姓名 - */ - @JsonProperty("psn_name") - private String psnName; - - /** - * 人员证件类型 - */ - @JsonProperty("psn_cert_type") - private String psnCertType; - - /** - * 证件号码 - */ - @JsonProperty("certno") - private String certno; - - /** - * 性别 - */ - @JsonProperty("gend") - private String gend; - - /** - * 民族 - */ - @JsonProperty("naty") - private String naty; - - /** - * 出生日期 格式:yyyy-MM-dd - */ - @JsonProperty("brdy") - private Date brdy; - - /** - * 年龄 - */ - @JsonProperty("age") - private BigDecimal age; - - /** - * 险种类型 - */ - @JsonProperty("insutype") - private String insutype; - - /** - * 人员类别 - */ - @JsonProperty("psn_type") - private String psnType; - - /** - * 公务员标志 - */ - @JsonProperty("cvlserv_flag") - private String cvlservFlag; - - /** - * 结算时间 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("setl_time") - private Date setlTime; - - /** - * 就诊凭证类型 - */ - @JsonProperty("mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 医疗类别 - */ - @JsonProperty("med_type") - private String medType; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价自费费用 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 实际支付起付线 - */ - @JsonProperty("act_pay_dedc") - private BigDecimal actPayDedc; - - /** - * 基本医疗保险统筹基金支出 - */ - @JsonProperty("hifp_pay") - private BigDecimal hifpPay; - - /** - * 基本医疗保险统筹基金支付比例 - */ - @JsonProperty("pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - /** - * 公务员医疗补助资金支出 - */ - @JsonProperty("cvlserv_pay") - private BigDecimal cvlservPay; - - /** - * 企业补充医疗保险基金支出 - */ - @JsonProperty("hifes_pay") - private BigDecimal hifesPay; - - /** - * 居民大病保险资金支出 - */ - @JsonProperty("hifmi_pay") - private BigDecimal hifmiPay; - - /** - * 职工大额医疗费用补助基金支出 - */ - @JsonProperty("hifob_pay") - private BigDecimal hifobPay; - - /** - * 医疗救助基金支出 - */ - @JsonProperty("maf_pay") - private BigDecimal mafPay; - - /** - * 其他支出 - */ - @JsonProperty("oth_pay") - private BigDecimal othPay; - - /** - * 基金支付总额 - */ - @JsonProperty("fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - /** - * 个人负担总金额 - */ - @JsonProperty("psn_part_amt") - private BigDecimal psnPartAmt; - - /** - * 个人账户支出 - */ - @JsonProperty("acct_pay") - private BigDecimal acctPay; - - /** - * 个人现金支出 - */ - @JsonProperty("psn_cash_pay") - private BigDecimal psnCashPay; - - /** - * 医院负担金额 - */ - @JsonProperty("hosp_part_amt") - private BigDecimal hospPartAmt; - - /** - * 余额 - */ - @JsonProperty("balc") - private BigDecimal balc; - - /** - * 个人账户共济支付金额 - */ - @JsonProperty("acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - /** - * 医药机构结算ID 存放发送方报文ID - */ - @JsonProperty("medins_setl_id") - private String medinsSetlId; - - /** - * 清算经办机构 - */ - @JsonProperty("clr_optins") - private String clrOptins; - - /** - * 清算方式 - */ - @JsonProperty("clr_way") - private String clrWay; - - /** - * 清算类别 - */ - @JsonProperty("clr_type") - private String clrType; - - /** - * 伤残人员医疗保障基金支出 1.5.4新增 - */ - @JsonProperty("hifdm_pay") - private BigDecimal hifdmPay; - - /** - * 基金支付详情 - */ - @JSONField(name = "setldetail") - private List setldetail; - - public Yb2303OutputSetInfo() { - this.medfeeSumamt = BigDecimal.ZERO; - this.fulamtOwnpayAmt = BigDecimal.ZERO; - this.overlmtSelfpay = BigDecimal.ZERO; - this.preselfpayAmt = BigDecimal.ZERO; - this.inscpScpAmt = BigDecimal.ZERO; - this.actPayDedc = BigDecimal.ZERO; - this.hifpPay = BigDecimal.ZERO; - this.poolPropSelfpay = BigDecimal.ZERO; - this.cvlservPay = BigDecimal.ZERO; - this.hifesPay = BigDecimal.ZERO; - this.hifmiPay = BigDecimal.ZERO; - this.hifobPay = BigDecimal.ZERO; - this.mafPay = BigDecimal.ZERO; - this.othPay = BigDecimal.ZERO; - this.fundPaySumamt = BigDecimal.ZERO; - this.psnPartAmt = BigDecimal.ZERO; - this.acctPay = BigDecimal.ZERO; - this.psnCashPay = BigDecimal.ZERO; - this.hospPartAmt = BigDecimal.ZERO; - this.balc = BigDecimal.ZERO; - this.acctMulaidPay = BigDecimal.ZERO; - this.hifdmPay = BigDecimal.ZERO; - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java deleted file mode 100644 index 2a4bafd3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; - -import java.math.BigDecimal; - -public class Yb2304InputExpContent { - /** - * 实际就医区划 - */ - @JsonProperty("med_admdvs") - private BigDecimal medAdmdvs; - - /** - * 外报就医医院编号 - */ - @JsonProperty("med_hosp_no") - private BigDecimal medHospNo; - - /** - * 外报就医医院名称 - */ - @JsonProperty("med_hosp_name") - private BigDecimal medHospName; - - /** - * 外报类型 - */ - @JsonProperty("out_submit_type") - private String outSubmitType; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java deleted file mode 100644 index 2dc87b6d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -@Data -@Accessors(chain = true) -public class Yb2304InputInpatient { - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 就诊凭证类型 - */ - @JsonProperty("mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 就诊凭证编号 - * 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 - */ - @JsonProperty("mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 个人结算方式 - */ - @JsonProperty("psn_setlway") - private String psnSetlway; - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 险种类型 - */ - @JsonProperty("insutype") - private String insutype; - - /** - * 个人账户使用标志 - */ - @JsonProperty("acct_used_flag") - private String acctUsedFlag; - - /** - * 参保地医保区划 - */ - @JsonProperty("insuplc_admdvs") - private String insuplcAdmdvs; - - /** - * 就医地医保区划 - */ - @JsonProperty("mdtrtarea_admvs") - private String mdtrtareaAdmvs; - - /** - * 发票号 - */ - @JsonProperty("invono") - private String invono; - - /** - * 中途结算标志 - */ - @JsonProperty("mid_setl_flag") - private String midSetlFlag; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价金额 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 字段扩展 - */ - @JsonProperty("exp_content") - private String expContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java deleted file mode 100644 index de231002..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java +++ /dev/null @@ -1,279 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; - -import java.math.BigDecimal; -import java.util.Date; - -public class Yb2304OutputSetlInfo { - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 结算ID - */ - @JsonProperty("setl_id") - private String setlId; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 人员姓名 - */ - @JsonProperty("psn_name") - private String psnName; - - /** - * 人员证件类型 - */ - @JsonProperty("psn_cert_type") - private String psnCertType; - - /** - * 证件号码 - */ - @JsonProperty("certno") - private String certno; - - /** - * 性别 - */ - @JsonProperty("gend") - private String gend; - - /** - * 民族 - */ - @JsonProperty("naty") - private String naty; - - /** - * 出生日期 - * 格式:yyyy-MM-dd - */ - @JsonProperty("brdy") - private Date brdy; - - /** - * 年龄 - */ - @JsonProperty("age") - private BigDecimal age; - - /** - * 险种类型 - */ - @JsonProperty("insutype") - private String insutype; - - /** - * 人员类别 - */ - @JsonProperty("psn_type") - private String psnType; - - /** - * 公务员标志 - */ - @JsonProperty("cvlserv_flag") - private String cvlservFlag; - - /** - * 结算时间 - * 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("setl_time") - private Date setlTime; - - /** - * 就诊凭证类型 - */ - @JsonProperty("mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 医疗类别 - */ - @JsonProperty("med_type") - private String medType; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价自费费用 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 实际支付起付线 - */ - @JsonProperty("act_pay_dedc") - private BigDecimal actPayDedc; - - /** - * 基本医疗保险统筹基金支出 - */ - @JsonProperty("hifp_pay") - private BigDecimal hifpPay; - - /** - * 基本医疗保险统筹基金支付比例 - */ - @JsonProperty("pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - /** - * 公务员医疗补助资金支出 - */ - @JsonProperty("cvlserv_pay") - private BigDecimal cvlservPay; - - /** - * 企业补充医疗保险基金支出 - */ - @JsonProperty("hifes_pay") - private BigDecimal hifesPay; - - /** - * 居民大病保险资金支出 - */ - @JsonProperty("hifmi_pay") - private BigDecimal hifmiPay; - - /** - * 职工大额医疗费用补助基金支出 - */ - @JsonProperty("hifob_pay") - private BigDecimal hifobPay; - - /** - * 医疗救助基金支出 - */ - @JsonProperty("maf_pay") - private BigDecimal mafPay; - - /** - * 医院负担金额(原始) - */ - @JsonProperty("hosp_part_amt_old") - private BigDecimal hospPartAmtOld; - - /** - * 其他支出 - */ - @JsonProperty("oth_pay") - private BigDecimal othPay; - - /** - * 基金支付总额 - */ - @JsonProperty("fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - /** - * 个人负担总金额 - */ - @JsonProperty("psn_part_amt") - private BigDecimal psnPartAmt; - - /** - * 个人账户支出 - */ - @JsonProperty("acct_pay") - private BigDecimal acctPay; - - /** - * 个人现金支出 - */ - @JsonProperty("psn_cash_pay") - private BigDecimal psnCashPay; - - /** - * 余额 - */ - @JsonProperty("balc") - private BigDecimal balc; - - /** - * 个人账户共济支付金额 - */ - @JsonProperty("acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - /** - * 医药机构结算ID - * 存放发送方报文ID - */ - @JsonProperty("medins_setl_id") - private String medinsSetlId; - - /** - * 清算经办机构 - */ - @JsonProperty("clr_optins") - private String clrOptins; - - /** - * 清算方式 - */ - @JsonProperty("clr_way") - private String clrWay; - - /** - * 清算类别 - */ - @JsonProperty("clr_type") - private String clrType; - - /** - * 字段扩展 - * 1.5.4新增 - */ - @JsonProperty("exp_content") - private String expContent; - - /** - * 伤残人员医疗保障基金支出 - * 1.5.4新增 - */ - @JsonProperty("hifdm_pay") - private BigDecimal hifdmPay; - - /** - * 医院负担金额 - * 1.5.4新增 - */ - @JsonProperty("hosp_part_amt") - private BigDecimal hospPartAmt; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java deleted file mode 100644 index add6df8f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.openhis.yb.dto; - -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -@Data -@Accessors(chain = true) -public class Yb2305InputInpatient { - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 结算ID - */ - @JsonProperty("setl_Id") - private String setlId; - - /** - * 人员编号 - */ - @JsonProperty("psn_no") - private String psnNo; - - /** - * 字段扩展 - */ - @JsonProperty("exp_content") - private String expContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java deleted file mode 100644 index 9d3f9c59..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java +++ /dev/null @@ -1,224 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.experimental.Accessors; - -@Data -@Accessors(chain = true) -public class Yb2305OutputSetlInfo { - - /** - * 就诊ID - */ - @JsonProperty("mdtrt_id") - private String mdtrtId; - - /** - * 结算ID - */ - @JsonProperty("setl_id") - private String setlId; - - /** - * 清算经办机构 - */ - @JsonProperty("clr_optins") - private String clrOptins; - - /** - * 结算时间 格式:yyyy-MM-dd HH:mm:ss - */ - @JsonProperty("setl_time") - private Date setlTime; - - /** - * 医疗费总额 - */ - @JsonProperty("medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 全自费金额 - */ - @JsonProperty("fulamt_ownpay_amt") - private BigDecimal fulamtOwnpayAmt; - - /** - * 超限价自费费用 - */ - @JsonProperty("overlmt_selfpay") - private BigDecimal overlmtSelfpay; - - /** - * 先行自付金额 - */ - @JsonProperty("preselfpay_amt") - private BigDecimal preselfpayAmt; - - /** - * 符合政策范围金额 - */ - @JsonProperty("inscp_scp_amt") - private BigDecimal inscpScpAmt; - - /** - * 实际支付起付线 - */ - @JsonProperty("act_pay_dedc") - private BigDecimal actPayDedc; - - /** - * 基本医疗保险统筹基金支出 - */ - @JsonProperty("hifp_pay") - private BigDecimal hifpPay; - - /** - * 基本医疗保险统筹基金支付比例 - */ - @JsonProperty("pool_prop_selfpay") - private BigDecimal poolPropSelfpay; - - /** - * 公务员医疗补助资金支出 - */ - @JsonProperty("cvlserv_pay") - private BigDecimal cvlservPay; - - /** - * 企业补充医疗保险基金支出 - */ - @JsonProperty("hifes_pay") - private BigDecimal hifesPay; - - /** - * 居民大病保险资金支出 - */ - @JsonProperty("hifmi_pay") - private BigDecimal hifmiPay; - - /** - * 职工大额医疗费用补助基金支出 - */ - @JsonProperty("hifob_pay") - private BigDecimal hifobPay; - - /** - * 医疗救助基金支出 - */ - @JsonProperty("maf_pay") - private BigDecimal mafPay; - - /** - * 其他支出 - */ - @JsonProperty("oth_pay") - private BigDecimal othPay; - - /** - * 基金支付总额 - */ - @JsonProperty("fund_pay_sumamt") - private BigDecimal fundPaySumamt; - - /** - * 个人负担总金额 - */ - @JsonProperty("psn_part_amt") - private BigDecimal psnPartAmt; - - /** - * 个人账户支出 - */ - @JsonProperty("acct_pay") - private BigDecimal acctPay; - - /** - * 个人现金支出 - */ - @JsonProperty("psn_cash_pay") - private BigDecimal psnCashPay; - - /** - * 医院负担金额 - */ - @JsonProperty("hosp_part_amt") - private BigDecimal hospPartAmt; - - /** - * 余额 - */ - @JsonProperty("balc") - private BigDecimal balc; - - /** - * 个人账户共济支付金额 - */ - @JsonProperty("acct_mulaid_pay") - private BigDecimal acctMulaidPay; - - /** - * 医药机构结算ID 存放发送方报文ID - */ - @JsonProperty("medins_setl_id") - private String medinsSetlId; - - /** - * 伤残人员医疗保障基金支出 - */ - @JsonProperty("hifdm_pay") - private BigDecimal hifdmPay; - - /** - * 人员参保关系ID - */ - @JsonProperty("psn_insu_rlts_id") - private String psnInsuRltsId; - - /** - * 参保机构行政区划 - */ - @JsonProperty("insu_admdvs") - private String insuAdmdvs; - - /** - * 开始日期 - */ - @JsonProperty("begndate") - private Date begndate; - - /** - * 结算日期 - */ - @JsonProperty("enddate") - private Date enddate; - - /** - * 就诊凭证编号 - */ - @JsonProperty("mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 结算类别 - */ - @JsonProperty("setl_type") - private String setlType; - - /** - * 本次起付线 - */ - @JsonProperty("crt_dedc") - private BigDecimal crtDedc; - - /** - * 发票号 - */ - @JsonProperty("invono") - private String invono; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java deleted file mode 100644 index 77f617c3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import java.util.Date; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -public class Yb2401InputInpatientDiseInfo { - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 诊断类别 - */ - @JSONField(name = "diag_type") - private String diagType; - - /** - * 主诊断标志 - */ - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - - /** - * 诊断排序号 - */ - @JSONField(name = "diag_srt_no") - private Integer diagSrtNo; - - /** - * 诊断代码 - */ - @JSONField(name = "diag_code") - private String diagCode; - - /** - * 诊断名称 - */ - @JSONField(name = "diag_name") - private String diagName; - - /** - * 入院病情 - */ - @JSONField(name = "adm_cond") - private String admCond; - - /** - * 诊断科室 - */ - @JSONField(name = "diag_dept") - private String diagDept; - - /** - * 诊断医生编码 - */ - @JSONField(name = "dise_dor_no") - private String diseDorNo; - - /** - * 诊断医生姓名 - */ - @JSONField(name = "dise_dor_name") - private String diseDorName; - - /** - * 诊断时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "diag_time", format = "yyyy-MM-dd HH:mm:ss") - private Date diagTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java deleted file mode 100644 index b5129361..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java +++ /dev/null @@ -1,239 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import liquibase.pro.packaged.A; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ - -@Data -@Accessors(chain = true) -public class Yb2401InputInpatientMdtrtInfo { - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 险种类型 - */ - @JSONField(name = "insutype") - private String insutype; - - /** - * 联系人姓名 - */ - @JSONField(name = "coner_name") - private String conerName; - - /** - * 联系电话 - */ - @JSONField(name = "tel") - private String tel; - - /** - * 开始时间(入院时间,格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") - private Date begntime; - - /** - * 就诊凭证类型 - */ - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 就诊凭证编号(就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号) - */ - @JSONField(name = "mdtrt_cert_no") - private String mdtrtCertNo; - - /** - * 医疗类别 - */ - @JSONField(name = "med_type") - private String medType; - - /** - * 住院号(院内就诊流水号) - */ - @JSONField(name = "ipt_no") - private String iptNo; - - /** - * 病历号 - */ - @JSONField(name = "medrcdno") - private String medrcdno; - - /** - * 主治医生编码 - */ - @JSONField(name = "atddr_no") - private String atddrNo; - - /** - * 主诊医师姓名 - */ - @JSONField(name = "chfpdr_name") - private String chfpdrName; - - /** - * 入院诊断描述 - */ - @JSONField(name = "adm_diag_dscr") - private String admDiagDscr; - - /** - * 入院科室编码 - */ - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - /** - * 入院科室名称 - */ - @JSONField(name = "adm_dept_name") - private String admDeptName; - - /** - * 入院床位 - */ - @JSONField(name = "adm_bed") - private String admBed; - - /** - * 住院主诊断代码 - */ - @JSONField(name = "dscg_maindiag_code") - private String dscgMaindiagCode; - - /** - * 住院主诊断名称 - */ - @JSONField(name = "dscg_maindiag_name") - private String dscgMaindiagName; - - /** - * 主要病情描述 - */ - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - - /** - * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) - */ - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 病种名称 - */ - @JSONField(name = "dise_name") - private String diseName; - - /** - * 手术操作代码(日间手术病种时必填) - */ - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 手术操作名称 - */ - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 计划生育服务证号 - */ - @JSONField(name = "fpsc_no") - private String fpscNo; - - /** - * 生育类别 - */ - @JSONField(name = "matn_type") - private String matnType; - - /** - * 计划生育手术类别 - */ - @JSONField(name = "birctrl_type") - private String birctrlType; - - /** - * 晚育标志 - */ - @JSONField(name = "latechb_flag") - private String latechbFlag; - - /** - * 孕周数 - */ - @JSONField(name = "geso_val") - private Integer gesoVal; - - /** - * 胎次 - */ - @JSONField(name = "fetts") - private Integer fetts; - - /** - * 胎儿数 - */ - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - /** - * 早产标志 - */ - @JSONField(name = "pret_flag") - private String pretFlag; - - /** - * 计划生育手术或生育日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") - private Date birctrlMatnDate; - - /** - * 病种类型 - */ - @JSONField(name = "dise_type_code") - private String diseTypeCode; - - /** - * 字段扩展 - */ - @JSONField(name = "exp_content") - private String expContent; - - /** - * 参保地医保区划 - */ - @JSONField(name = "insuplc_admdvs") - private String insuplcAdmdvs; - - /** - * 就医地医保区划 - */ - @JSONField(name = "mdtrtarea_admvs") - private String mdtrtareaAdmvs; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java deleted file mode 100644 index 1d6ea7db..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.core.common.annotation.DataSource; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2401InputInpatientTrumContent { - /** - * 外伤标识(外伤就医时必填) - */ - @JSONField(name = "trum_flag") - private String trumFlag; - - /** - * 涉及第三方标志(承诺是否涉及第三方,trum_flag外伤标志为“1“时,此项为必填。0 代表不涉及第三方,1代表涉及第三方) - */ - @JSONField(name = "rel_ttp_flag") - private String relTtpFlag; - - /** - * 就诊人群类型 - */ - @JSONField(name = "mdtrt_grp_type") - private String mdtrtGrpType; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java deleted file mode 100644 index 4b4a655c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.core.common.annotation.DataSource; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2402InputInpatientDiseInfo { - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 诊断类别 - */ - @JSONField(name = "diag_type") - private String diagType; - - /** - * 主诊断标志 - */ - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - - /** - * 诊断排序号 - */ - @JSONField(name = "diag_srt_no") - private Integer diagSrtNo; - - /** - * 诊断代码 - */ - @JSONField(name = "diag_code") - private String diagCode; - - /** - * 诊断名称 - */ - @JSONField(name = "diag_name") - private String diagName; - - /** - * 诊断科室 - */ - @JSONField(name = "diag_dept") - private String diagDept; - - /** - * 诊断医生编码 - */ - @JSONField(name = "dise_dor_no") - private String diseDorNo; - - /** - * 诊断医生姓名 - */ - @JSONField(name = "dise_dor_name") - private String diseDorName; - - /** - * 诊断时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "diag_time", format = "yyyy-MM-dd HH:mm:ss") - private Date diagTime; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java deleted file mode 100644 index c937858f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java +++ /dev/null @@ -1,164 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2402InputInpatientDscgInfo { - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 险种类型 - */ - @JSONField(name = "insutype") - private String insutype; - - /** - * 结束时间(出院时间,格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") - private Date endtime; - - /** - * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) - */ - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 病种名称 - */ - @JSONField(name = "dise_name") - private String diseName; - - /** - * 手术操作代码(日间手术病种时必填) - */ - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 手术操作名称 - */ - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 计划生育服务证号 - */ - @JSONField(name = "fpsc_no") - private String fpscNo; - - /** - * 生育类别 - */ - @JSONField(name = "matn_type") - private String matnType; - - /** - * 计划生育手术类别 - */ - @JSONField(name = "birctrl_type") - private String birctrlType; - - /** - * 晚育标志 - */ - @JSONField(name = "latechb_flag") - private String latechbFlag; - - /** - * 孕周数 - */ - @JSONField(name = "esso_val") - private Integer essoVal; - - /** - * 胎次 - */ - @JSONField(name = "fetts") - private Integer fetts; - - /** - * 胎儿数 - */ - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - /** - * 早产标志 - */ - @JSONField(name = "pret_flag") - private String pretFlag; - - /** - * 计划生育手术或生育日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") - private Date birctrlMatnDate; - - /** - * 伴有并发症标志 - */ - @JSONField(name = "cop_flag") - private String copFlag; - - /** - * 出院科室编码 - */ - @JSONField(name = "dscg_dept_codg") - private String dscgDeptCodg; - - /** - * 出院科室名称 - */ - @JSONField(name = "dscg_dept_name") - private String dscgDeptName; - - /** - * 出院床位 - */ - @JSONField(name = "dscg_bed") - private String dscgBed; - - /** - * 离院方式 - */ - @JSONField(name = "dscg_way") - private String dscgWay; - - /** - * 死亡日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "die_date", format = "yyyy-MM-dd") - private Date dieDate; - - /** - * 字段扩展 - */ - @JSONField(name = "exp_content") - private String expContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java deleted file mode 100644 index 191c91bb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import lombok.Data; - -import java.util.List; - -/** - * 2402接口封装类 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -public class Yb2402InputParam { - /** - * 出院诊断 - */ - List yb2402InputInpatientDiseInfo; - /** - * 出院信息 - */ - Yb2402InputInpatientDscgInfo yb2402InputInpatientDscgInfo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java deleted file mode 100644 index f15225a1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java +++ /dev/null @@ -1,226 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2403InputAdmInfo { - - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 联系人姓名 - */ - @JSONField(name = "coner_name") - private String conerName; - - /** - * 联系电话 - */ - @JSONField(name = "tel") - private String tel; - - /** - * 开始时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") - private Date begntime; - - /** - * 结束时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") - private Date endtime; - - /** - * 就诊凭证类型 - */ - @JSONField(name = "mdtrt_cert_type") - private String mdtrtCertType; - - /** - * 医疗类别 - */ - @JSONField(name = "med_type") - private String medType; - - /** - * 住院/门诊号 - */ - @JSONField(name = "ipt_otp_no") - private String iptOtpNo; - - /** - * 病历号 - */ - @JSONField(name = "medrcdno") - private String medrcdno; - - /** - * 主治医生编码 - */ - @JSONField(name = "atddr_no") - private String atddrNo; - - /** - * 主诊医师姓名 - */ - @JSONField(name = "chfpdr_name") - private String chfpdrName; - - /** - * 入院诊断描述 - */ - @JSONField(name = "adm_diag_dscr") - private String admDiagDscr; - - /** - * 入院科室编码 - */ - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - /** - * 入院科室名称 - */ - @JSONField(name = "adm_dept_name") - private String admDeptName; - - /** - * 入院床位 - */ - @JSONField(name = "adm_bed") - private String admBed; - - /** - * 住院主诊断代码 - */ - @JSONField(name = "dscg_maindiag_code") - private String dscgMaindiagCode; - - /** - * 住院主诊断名称 - */ - @JSONField(name = "dscg_maindiag_name") - private String dscgMaindiagName; - - /** - * 主要病情描述 - */ - @JSONField(name = "main_cond_dscr") - private String mainCondDscr; - - /** - * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) - */ - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 病种名称 - */ - @JSONField(name = "dise_name") - private String diseName; - - /** - * 手术操作代码(日间手术病种时必填) - */ - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 手术操作名称 - */ - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 计划生育服务证号 - */ - @JSONField(name = "fpsc_no") - private String fpscNo; - - /** - * 生育类别 - */ - @JSONField(name = "matn_type") - private String matnType; - - /** - * 计划生育手术类别 - */ - @JSONField(name = "birctrl_type") - private String birctrlType; - - /** - * 晚育标志 - */ - @JSONField(name = "latechb_flag") - private String latechbFlag; - - /** - * 孕周数 - */ - @JSONField(name = "esso_val") - private Integer essoVal; - - /** - * 胎次 - */ - @JSONField(name = "fetts") - private Integer fetts; - - /** - * 胎儿数 - */ - @JSONField(name = "fetus_cnt") - private Integer fetusCnt; - - /** - * 早产标志 - */ - @JSONField(name = "pret_flag") - private String pretFlag; - - /** - * 计划生育手术或生育日期(格式:yyyy-MM-dd) - */ - @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") - private Date birctrlMatnDate; - - /** - * 病种编号 - */ - @JSONField(name = "dise_type_code") - private String diseTypeCode; - - /** - * 字段扩展 - */ - @JSONField(name = "exp_content") - private String expContent; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java deleted file mode 100644 index 527eedda..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.util.Date; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2403InputDiseInfo { - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 诊断类别 - */ - @JSONField(name = "diag_type") - private String diagType; - - /** - * 主诊断标志 - */ - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - - /** - * 诊断排序号 - */ - @JSONField(name = "diag_srt_no") - private Integer diagSrtNo; - - /** - * 诊断代码 - */ - @JSONField(name = "diag_code") - private String diagCode; - - /** - * 诊断名称 - */ - @JSONField(name = "diag_name") - private String diagName; - - /** - * 入院病情 - */ - @JSONField(name = "adm_cond") - private String admCond; - - /** - * 诊断科室 - */ - @JSONField(name = "diag_dept") - private String diagDept; - - /** - * 诊断医生编码 - */ - @JSONField(name = "dise_dor_no") - private String diseDorNo; - - /** - * 诊断医生姓名 - */ - @JSONField(name = "dise_dor_name") - private String diseDorName; - - /** - * 诊断时间(格式:yyyy-MM-dd HH:mm:ss) - */ - @JSONField(name = "diag_time", format = "yyyy-MM-dd HH:mm:ss") - private Date diagTime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java deleted file mode 100644 index ca99e2e7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -public class Yb2403InputMdtrtGrpContent { - - @JSONField(name = "mdtrt_grp_type") - private String mdtrtGrpType; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java deleted file mode 100644 index acafa1e9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.List; - -import lombok.Data; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Data -public class Yb2403InputParam { - /** - * - */ - Yb2403InputAdmInfo yb2403InputAdmInfo; - /** - * - */ - List yb2403InputDiseInfo; - /** - * - */ - Yb2403InputMdtrtGrpContent yb2403InputMdtrtGrpContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java deleted file mode 100644 index 99847a6a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2403InputTrumContent { - /** - * 外伤标识(外伤就医时必填) - */ - @JSONField(name = "trum_flag") - private String trumFlag; - - /** - * 涉及第三方标志(承诺是否涉及第三方,trum_flag外伤标志为“1“时,此项为必填。0 代表不涉及第三方,1代表涉及第三方) - */ - @JSONField(name = "rel_ttp_flag") - private String relTtpFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java deleted file mode 100644 index b018a616..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2404InputInpatient { - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 字段扩展 - */ - @JSONField(name = "exp_content") - private String expContent; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java deleted file mode 100644 index fa78ab38..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-29 - */ -@Data -@Accessors(chain = true) -public class Yb2405InputInpatient { - - /** - * 就诊ID - */ - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 字段扩展 - */ - @JSONField(name = "exp_content") - private String expContent; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java deleted file mode 100644 index f0ccf5d3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】就诊诊断信息 - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101AdapterEncounterDiagnoseInfo { - - /** - * 诊断标识:诊断记录唯一标识 - */ - private String diseId; - - /** - * 住院患者疾病诊断类型代码 - */ - private String iptDiseTypeCode; - - /** - * 主诊断标志:参考字典表 - */ - private String maindiseFlag; - - /** - * 诊断排序号:例如:1,2,3… - */ - private String diasSrtNo; - - /** - * 诊断(疾病)编码 - */ - private String diseCodg; - - /** - * 诊断(疾病)名称 - */ - private String diseName; - - /** - * 诊断日期 - */ - private Date diseDate; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java deleted file mode 100644 index 1df006df..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java +++ /dev/null @@ -1,128 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】就诊患者信息 - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101AdapterEncounterPatientInfo { - - /** - * 参保人标识:参保人唯一ID - */ - private String patnId; - - /** - * 姓名 - */ - private String patnName; - - /** - * 性别 - */ - private String gend; - - /** - * 出生日期 - */ - private Date brdy; - - /** - * 统筹区编码:参保人所属统筹区 - */ - private String poolarea; - - /** - * 就诊标识:就诊记录唯一ID - */ - private String mdtrtId; - - /** - * 合同ID - */ - private Long contractId; - - /** - * 医疗服务机构标识:定点医疗机构ID - */ - private String medinsId; - - /** - * 医疗机构名称 - */ - private String medinsName; - - /** - * 医疗机构行政区划编码 - */ - private String medinsAdmdvs; - - /** - * 入院日期 - */ - private Date admDate; - - /** - * 出院日期 - */ - private Date dscgDate; - - /** - * 医师标识:医生唯一ID - */ - private String drCodg; - - /** - * 入院科室标识:科室唯一ID - */ - private String admDeptCodg; - - /** - * 入院科室名称 - */ - private String admDeptName; - - /** - * 出院科室标识:科室唯一ID - */ - private String dscgDeptCodg; - - /** - * 出院科室名称 - */ - private String dscgDeptName; - - /** - * 医疗类别:参考字典表 - */ - private String medType; - - /** - * 自费金额 - */ - private BigDecimal ownpayAmt; - - /** - * 自付金额 - */ - private BigDecimal selfpayAmt; - - /** - * 结算总次数 - */ - private Integer setlTotlnum; - - /** - * 险种:参考字典表 - */ - private String insutype; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java deleted file mode 100644 index d8fbe06e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】处方(医嘱)信息 - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101AdapterOrderInfo { - - /** - * 处方(医嘱)标识:处方(医嘱)记录唯一ID - */ - private String rxId; - - /** - * 处方号 - */ - private String rxno; - - /** - * 组编号 - */ - private String grpno; - - /** - * 治疗类型 - */ - private Integer therapyEnum; - - /** - * 目录类别:参考字典表 - */ - private String ybType; - - /** - * 医保目录代码:国家统一标准编码 - */ - private String hilistCode; - - /** - * 医保目录名称:国家统一标准名称 - */ - private String hilistName; - - /** - * 医保目录(药品)剂型:国家统一标准药品剂型 - */ - private String hilistDosform; - - /** - * 医保目录等级 - */ - private String hilistLv; - - /** - * 数量 - */ - private Integer cnt; - - /** - * 单价 - */ - private BigDecimal pric; - - /** - * 总费用 - */ - private BigDecimal sumamt; - - /** - * 规格:例如:0.25g×12片/盒 - */ - private String spec; - - /** - * 数量单位:例如:盒 - */ - private String specUnt; - - /** - * 医嘱开始日期:格式:yyyy-MM-dd HH:mm:ss - */ - private Date drordBegnDate; - - /** - * 下达医嘱的科室标识 - */ - private String drordDeptCodg; - - /** - * 下达医嘱科室名称 - */ - private String drordDeptName; - - /** - * 开处方(医嘱)医生标识 - */ - private String drordDrCodg; - - /** - * 开处方(医嘱)医生姓名 - */ - private String drordDrName; - - /** - * 开处方(医嘱)医职称:参考字典表 - */ - private String drordDrProfttl; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java deleted file mode 100644 index e1a0bcf5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.List; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotEmpty; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输入-规则分析信息(节点标识:data) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101InputData { - - /** - * 系统编码:调用方系统简码标识 - */ - @NotBlank - @Length(max = 10) - @JSONField(name = "syscode") - private String syscode; - - /** - * 参保人信息 - */ - @NotEmpty - @JSONField(name = "patient_dtos") - private List patientDtos; - - /** - * 规则标识集合 - */ - @JSONField(name = "rule_ids") - private List ruleIds; - - /** - * 任务ID:每次请求的唯一标识 - */ - @JSONField(name = "task_id") - private String taskId; - - /** - * 触发场景:此值与ruleIds指定其一即可,请优先指定此值 - */ - @Length(max = 3) - @JSONField(name = "trig_scen") - private String trigScen; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java deleted file mode 100644 index a8153257..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输入-诊断信息(节点标识:fsi_diagnose_dtos) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101InputFsiDiagnoseDto { - - /** - * 诊断标识:诊断记录唯一标识 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "dise_id") - private String diseId; - - /** - * 出入诊断类别:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "inout_dise_type") - private String inoutDiseType; - - /** - * 主诊断标志:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "maindise_flag") - private String maindiseFlag; - - /** - * 诊断排序号:例如:1,2,3… - */ - @NotBlank - @Length(max = 2) - @JSONField(name = "dias_srt_no") - private String diasSrtNo; - - /** - * 诊断(疾病)编码 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "dise_codg") - private String diseCodg; - - /** - * 诊断(疾病)名称 - */ - @NotBlank - @Length(max = 200) - @JSONField(name = "dise_name") - private String diseName; - - /** - * 诊断日期:格式:yyyy-MM-dd HH:mm:ss - */ - @NotNull - @JSONField(name = "dise_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date diseDate; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java deleted file mode 100644 index 7cb2c7d7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java +++ /dev/null @@ -1,283 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输入-就诊信息(节点标识:fsi_encounter_dtos) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101InputFsiEncounterDto { - - /** - * 就诊标识:就诊记录唯一ID - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 医疗服务机构标识:定点医疗机构ID - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "medins_id") - private String medinsId; - - /** - * 医疗机构名称 - */ - @NotBlank - @Length(max = 200) - @JSONField(name = "medins_name") - private String medinsName; - - /** - * 医疗机构行政区划编码 - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "medins_admdvs") - private String medinsAdmdvs; - - /** - * 医疗服务机构类型:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "medins_type") - private String medinsType; - - /** - * 医疗机构等级:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "medins_lv") - private String medinsLv; - - /** - * 病区标识 - */ - @Length(max = 20) - @JSONField(name = "wardarea_codg") - private String wardareaCodg; - - /** - * 病房号 - */ - @Length(max = 20) - @JSONField(name = "wardno") - private String wardno; - - /** - * 病床号 - */ - @Length(max = 20) - @JSONField(name = "bedno") - private String bedno; - - /** - * 入院日期 - */ - @NotNull - @JSONField(name = "adm_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date admDate; - - /** - * 出院日期 - */ - @NotNull - @JSONField(name = "dscg_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date dscgDate; - - /** - * 主诊断编码:例如:I63.9 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "dscg_main_dise_codg") - private String dscgMainDiseCodg; - - /** - * 主诊断名称:例如:脑梗塞 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "dscg_main_dise_name") - private String dscgMainDiseName; - - /** - * 诊断信息集合 - */ - @NotEmpty - @JSONField(name = "fsi_diagnose_dtos") - private List fsiDiagnoseDtos; - - /** - * 医师标识:医生唯一ID - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "dr_codg") - private String drCodg; - - /** - * 入院科室标识:科室唯一ID - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - /** - * 入院科室名称 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "adm_dept_name") - private String admDeptName; - - /** - * 出院科室标识:科室唯一ID - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "dscg_dept_codg") - private String dscgDeptCodg; - - /** - * 出院科室名称 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "dscg_dept_name") - private String dscgDeptName; - - /** - * 就诊类型:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "med_mdtrt_type") - private String medMdtrtType; - - /** - * 医疗类别:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "med_type") - private String medType; - - /** - * 处方(医嘱)信息集合 - */ - @NotEmpty - @JSONField(name = "fsi_order_dtos") - private List fsiOrderDtos; - - /** - * 生育状态:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "matn_stas") - private String matnStas; - - /** - * 总费用 - */ - @NotNull - @JSONField(name = "medfee_sumamt") - private BigDecimal medfeeSumamt; - - /** - * 自费金额 - */ - @NotNull - @JSONField(name = "ownpay_amt") - private BigDecimal ownpayAmt; - - /** - * 自付金额 - */ - @NotNull - @JSONField(name = "selfpay_amt") - private BigDecimal selfpayAmt; - - /** - * 个人账户支付金额 - */ - @JSONField(name = "acct_payamt") - private BigDecimal acctPayamt; - - /** - * 救助金支付金额 - */ - @JSONField(name = "ma_amt") - private BigDecimal maAmt; - - /** - * 统筹金支付金额 - */ - @JSONField(name = "hifp_payamt") - private BigDecimal hifpPayamt; - - /** - * 结算总次数 - */ - @NotNull - @JSONField(name = "setl_totlnum") - private Integer setlTotlnum; - - /** - * 险种:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "insutype") - private String insutype; - - /** - * 报销标志:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "reim_flag") - private String reimFlag; - - /** - * 异地结算标志:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "out_setl_flag") - private String outSetlFlag; - - /** - * 手术操作集合 - */ - @JSONField(name = "fsi_operation_dtos") - private List fsiOperationDtos; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java deleted file mode 100644 index 5a70885b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输入-手术操作信息(节点标识:fsi_operation_dtos) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101InputFsiOperationDto { - - /** - * 手术操作ID - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "setl_list_oprn_id") - private String setlListOprnId; - - /** - * 手术操作代码 - */ - @Length(max = 30) - @JSONField(name = "oprn_code") - private String oprnCode; - - /** - * 手术操作名称 - */ - @Length(max = 500) - @JSONField(name = "oprn_name") - private String oprnName; - - /** - * 主手术操作标志 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "main_oprn_flag") - private String mainOprnFlag; - - /** - * 手术操作日期 - */ - @JSONField(name = "oprn_date") - private Date oprnDate; - - /** - * 麻醉方式 - */ - @Length(max = 30) - @JSONField(name = "anst_way") - private String anstWay; - - /** - * 术者医师姓名 - */ - @Length(max = 50) - @JSONField(name = "oper_dr_name") - private String operDrName; - - /** - * 术者医师代码 - */ - @Length(max = 30) - @JSONField(name = "oper_dr_code") - private String operDrCode; - - /** - * 麻醉医师姓名 - */ - @Length(max = 50) - @JSONField(name = "anst_dr_name") - private String anstDrName; - - /** - * 麻醉医师代码 - */ - @Length(max = 30) - @JSONField(name = "anst_dr_code") - private String anstDrCode; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java deleted file mode 100644 index 7c09fca3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java +++ /dev/null @@ -1,281 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输入-处方(医嘱)信息(节点标识:fsi_order_dtos) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101InputFsiOrderDto { - - /** - * 处方(医嘱)标识:处方(医嘱)记录唯一ID - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "rx_id") - private String rxId; - - /** - * 处方号 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "rxno") - private String rxno; - - /** - * 组编号 - */ - @Length(max = 20) - @JSONField(name = "grpno") - private String grpno; - - /** - * 是否为长期医嘱:[1=是,0=否] - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "long_drord_flag") - private String longDrordFlag; - - /** - * 目录类别:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "hilist_type") - private String hilistType; - - /** - * 收费类别:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "chrg_type") - private String chrgType; - - /** - * 医嘱行为:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "drord_bhvr") - private String drordBhvr; - - /** - * 医保目录代码:国家统一标准编码 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "hilist_code") - private String hilistCode; - - /** - * 医保目录名称:国家统一标准名称 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "hilist_name") - private String hilistName; - - /** - * 医保目录(药品)剂型:国家统一标准药品剂型 - */ - @Length(max = 50) - @JSONField(name = "hilist_dosform") - private String hilistDosform; - - /** - * 医保目录等级 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "hilist_lv") - private String hilistLv; - - /** - * 医保目录价格 - */ - @NotNull - @JSONField(name = "hilist_pric") - private BigDecimal hilistPric; - - /** - * 一级医院目录价格 - */ - @JSONField(name = "lv1_hosp_item_pric") - private BigDecimal lv1HospItemPric; - - /** - * 二级医院目录价格 - */ - @JSONField(name = "lv2_hosp_item_pric") - private BigDecimal lv2HospItemPric; - - /** - * 三级医院目录价格 - */ - @JSONField(name = "lv3_hosp_item_pric") - private BigDecimal lv3HospItemPric; - - /** - * 医保目录备注 - */ - @Length(max = 200) - @JSONField(name = "hilist_memo") - private String hilistMemo; - - /** - * 医院目录代码 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "hosplist_code") - private String hosplistCode; - - /** - * 医院目录名称 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "hosplist_name") - private String hosplistName; - - /** - * 医院目录(药品)剂型 - */ - @Length(max = 20) - @JSONField(name = "hosplist_dosform") - private String hosplistDosform; - - /** - * 数量 - */ - @NotNull - @JSONField(name = "cnt") - private BigDecimal cnt; - - /** - * 单价 - */ - @NotNull - @JSONField(name = "pric") - private BigDecimal pric; - - /** - * 总费用 - */ - @NotNull - @JSONField(name = "sumamt") - private BigDecimal sumamt; - - /** - * 自费金额 - */ - @NotNull - @JSONField(name = "ownpay_amt") - private BigDecimal ownpayAmt; - - /** - * 自付金额 - */ - @NotNull - @JSONField(name = "selfpay_amt") - private BigDecimal selfpayAmt; - - /** - * 规格:例如:0.25g×12片/盒 - */ - @NotBlank - @Length(max = 100) - @JSONField(name = "spec") - private String spec; - - /** - * 数量单位:例如:盒 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "spec_unt") - private String specUnt; - - /** - * 医嘱开始日期:格式:yyyy-MM-dd HH:mm:ss - */ - @NotNull - @JSONField(name = "drord_begn_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date drordBegnDate; - - /** - * 医嘱停止日期:格式:yyyy-MM-dd HH:mm:ss - */ - @JSONField(name = "drord_stop_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private String drordStopDate; - - /** - * 下达医嘱的科室标识 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "drord_dept_codg") - private String drordDeptCodg; - - /** - * 下达医嘱科室名称 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "drord_dept_name") - private String drordDeptName; - - /** - * 开处方(医嘱)医生标识 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "drord_dr_codg") - private String drordDrCodg; - - /** - * 开处方(医嘱)医生姓名 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "drord_dr_name") - private String drordDrName; - - /** - * 开处方(医嘱)医职称:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "drord_dr_profttl") - private String drordDrProfttl; - - /** - * 是否当前处方(医嘱):本次处方(医嘱)标记[1=是,0=否] - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "curr_drord_flag") - private String currDrordFlag; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java deleted file mode 100644 index 874075bb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; -import java.util.List; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输入-参保人信息(节点标识:patient_dtos) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101InputPatientDto { - - /** - * 参保人标识:参保人唯一ID - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "patn_id") - private String patnId; - - /** - * 姓名 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "patn_name") - private String patnName; - - /** - * 性别:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "gend") - private String gend; - - /** - * 出生日期:格式:yyyy-MM-dd - */ - @NotNull - @JSONField(name = "brdy") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date brdy; - - /** - * 统筹区编码:参保人所属统筹区 - */ - @NotBlank - @Length(max = 10) - @JSONField(name = "poolarea") - private String poolarea; - - /** - * 当前就诊标识:本次就诊记录唯一ID - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "curr_mdtrt_id") - private String currMdtrtId; - - /** - * 就诊信息集合 - */ - @NotEmpty - @JSONField(name = "fsi_encounter_dtos") - private List fsiEncounterDtos; - - /** - * 医院信息 - */ - @JSONField(name = "fsi_his_data_dto") - private String fsiHisDataDto; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java deleted file mode 100644 index e24926f3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输出-违规明细信息(节点标识:judge_result_detail_dtos) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101OutputJudgeResultDetailDto { - - /** - * 违规明细标识:违规明细唯一标识 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "jrd_id") - private String jrdId; - - /** - * 参保人标识 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "patn_id") - private String patnId; - - /** - * 就诊标识 - */ - @Length(max = 50) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 处方(医嘱)标识 - */ - @Length(max = 50) - @JSONField(name = "rx_id") - private String rxId; - - /** - * 违规明细类型:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "vola_item_type") - private String volaItemType; - - /** - * 违规金额 - */ - @NotNull - @JSONField(name = "vola_amt") - private BigDecimal volaAmt; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java deleted file mode 100644 index 8a57cc56..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.List; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3101】输出-违规信息(节点标识:result) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3101OutputResult { - - /** - * 违规标识:计算结果记录唯一ID - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "jr_id") - private String jrId; - - /** - * 规则ID:例如:R01 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "rule_id") - private String ruleId; - - /** - * 规则名称:例如:配伍禁忌 - */ - @NotBlank - @Length(max = 200) - @JSONField(name = "rule_name") - private String ruleName; - - /** - * 违规内容:例如:患者处方中存在配伍禁忌的药品【A药】、【B药】。 - */ - @NotBlank - @Length(max = 500) - @JSONField(name = "vola_cont") - private String volaCont; - - /** - * 参保人ID:(注意:当是多患者导致违规时,这里是其中一个患者ID) - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "patn_id") - private String patnId; - - /** - * 就诊ID:(注意:当是多就诊导致违规时,这里是其中一个就诊ID) - */ - @Length(max = 50) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 违规明细集合 - */ - @NotEmpty - @JSONField(name = "judge_result_detail_dtos") - private List judgeResultDetailDtos; - - /** - * 违规金额 - */ - @NotNull - @JSONField(name = "vola_amt") - private BigDecimal volaAmt; - - /** - * 违规金额计算状态:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "vola_amt_stas") - private String volaAmtStas; - - /** - * 严重程度:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "sev_deg") - private String sevDeg; - - /** - * 违规依据 - */ - @Length(max = 500) - @JSONField(name = "vola_evid") - private String volaEvid; - - /** - * 违规行为分类:参考字典表 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "vola_bhvr_type") - private String volaBhvrType; - - /** - * 规则ID:例如:R01 - */ - @JSONField(name = "task_id") - private String taskId; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java deleted file mode 100644 index dc559ab2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.List; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotEmpty; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3103】输入(节点标识:data) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3103InputData { - - /** - * 反馈类型:1.事前 2.事中 - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "warn_type") - private String warnType; - - /** - * 处理数据集合 - */ - @NotEmpty - @JSONField(name = "warns") - private List warns; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java deleted file mode 100644 index 754ff685..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.openhis.yb.dto; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【3103】输入(节点标识:warns) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb3103InputWarn { - - /** - * 违规标识:事前提醒,事中预警出参结果唯一标识 - */ - @NotBlank - @Length(max = 40) - @JSONField(name = "warn_rslt_id") - private String warnRsltId; - - /** - * 处理方式:1.继续执行医嘱 2.返回修改医嘱 - */ - @NotBlank - @JSONField(name = "dspo_way") - private String dspoWay; - - /** - * 处理原因:如果为dspoWay 为1必填 (20250630修改) - */ - @JSONField(name = "dspo_way_rea") - private String dspoWayRea; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java deleted file mode 100644 index 58608b9f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】结算清单信息 - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AAdapterSettleInfo { - - /** - * 人员编号 - */ - private String psnNo; - - /** - * 就诊ID - */ - private String mdtrtId; - - /** - * 结算ID - */ - private String setlId; - - /** - * 国籍 - */ - private String ntly; - - /** - * 职业 - */ - private String prfs; - - /** - * 出院科别:参照科室代码(dept) - */ - private String dscgCaty; - - /** - * 票据代码 - */ - private String billCode; - - /** - * 票据号码 - */ - private String billNo; - - /** - * 业务流水号 - */ - private String bizSn; - - /** - * 结算日期 - */ - private Date setlDate; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java deleted file mode 100644 index 060f7ee7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.openhis.yb.dto; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】输血信息(节点标识:bldinfo) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AInputBldinfo { - - /** - * 输血品种 - */ - @Length(max = 3) - @JSONField(name = "bld_cat") - private String bldCat; - - /** - * 输血量 - */ - @Length(max = 6) - @JSONField(name = "bld_amt") - private Integer bldAmt; - - /** - * 输血计量单位 - */ - @Length(max = 3) - @JSONField(name = "bld_unt") - private String bldUnt; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java deleted file mode 100644 index 4434c8c3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.openhis.yb.dto; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】住院诊断信息(节点标识:diseinfo) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AInputDiseinfo { - - /** - * 诊断类别 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "diag_type") - private String diagType; - - /** - * 诊断代码 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "diag_code") - private String diagCode; - - /** - * 诊断名称 - */ - @NotBlank - @Length(max = 100) - @JSONField(name = "diag_name") - private String diagName; - - /** - * 入院病情类型 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "adm_cond_type") - private String admCondType; - - /** - * 主诊断标志 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "maindiag_flag") - private String maindiagFlag; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java deleted file mode 100644 index d58ac044..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】重症监护信息(节点标识:icuinfo) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AInputIcuinfo { - - /** - * 重症监护病房类型:使用字典ICU_TYPE - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "scs_cutd_ward_type") - private String scsCutdWardType; - - /** - * 手术操作开始时间 - */ - @JSONField(name = "scs_cutd_inpool_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date scsCutdInpoolTime; - - /** - * 手术操作结束时间 - */ - @JSONField(name = "scs_cutd_exit_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date scsCutdExitTime; - - /** - * 重症监护合计时长:格式:天数/小时数/分钟数 例:1/13/24 - */ - @NotBlank - @Length(max = 10) - @JSONField(name = "scs_cutd_sum_dura") - private String scsCutdSumDura; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java deleted file mode 100644 index af61e15e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】手术操作信息(节点标识:oprninfo) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AInputOprninfo { - - /** - * 手术操作类别 - */ - @NotBlank - @Length(max = 3) - @JSONField(name = "oprn_oprt_type") - private String oprnOprtType; - - /** - * 手术操作名称 - */ - @NotBlank - @Length(max = 500) - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 手术操作代码 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - - /** - * 麻醉方式:参照麻醉-方法代码 - */ - @Length(max = 6) - @JSONField(name = "anst_way") - private String anstWay; - - /** - * 术者医师代码 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "oper_dr_code") - private String operDrCode; - - /** - * 麻醉医师代码 - */ - @Length(max = 20) - @JSONField(name = "anst_dr_code") - private String anstDrCode; - - /** - * 手术操作开始时间 - */ - @JSONField(name = "oprn_oprt_begntime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date oprnOprtBegntime; - - /** - * 手术操作结束时间 - */ - @JSONField(name = "oprn_oprt_endtime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date oprnOprtEndtime; - - /** - * 麻醉开始时间 - */ - @JSONField(name = "anst_begntime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date anstBegntime; - - /** - * 麻醉结束时间 - */ - @JSONField(name = "anst_endtime") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date anstEndtime; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java deleted file mode 100644 index 869353d1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.openhis.yb.dto; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】门诊慢特病诊断信息(节点标识:opspdiseinfo) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AInputOpspdiseinfo { - - /** - * 诊断名称:与结算时慢特病保持一致 - */ - @NotBlank - @Length(max = 100) - @JSONField(name = "diag_name") - private String diagName; - - /** - * 诊断代码:与结算时慢特病保持一致 - */ - @NotBlank - @Length(max = 20) - @JSONField(name = "diag_code") - private String diagCode; - - /** - * 手术操作名称 - */ - @NotBlank - @Length(max = 500) - @JSONField(name = "oprn_oprt_name") - private String oprnOprtName; - - /** - * 手术操作代码 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "oprn_oprt_code") - private String oprnOprtCode; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java deleted file mode 100644 index 8aa147cb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java +++ /dev/null @@ -1,446 +0,0 @@ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】结算清单信息(节点标识setlinfo) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AInputSetlinfo { - - /** - * 人员编号 - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 就诊ID - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "mdtrt_id") - private String mdtrtId; - - /** - * 结算ID - */ - @NotBlank - @Length(max = 30) - @JSONField(name = "setl_id") - private String setlId; - - /** - * 医保编号 - */ - @Length(max = 30) - @JSONField(name = "hi_no") - private String hiNo; - - /** - * 病案号 - */ - @Length(max = 30) - @JSONField(name = "medcasno") - private String medcasno; - - /** - * 申报时间:结算清单上报时间,接收时自动填充 - */ - @JSONField(name = "dcla_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date dclaTime; - - /** - * 国籍 - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "ntly") - private String ntly; - - /** - * 职业 - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "prfs") - private String prfs; - - /** - * 现住址 - */ - @Length(max = 200) - @JSONField(name = "curr_addr") - private String currAddr; - - /** - * 单位名称 - */ - @Length(max = 200) - @JSONField(name = "emp_name") - private String empName; - - /** - * 单位地址 - */ - @Length(max = 200) - @JSONField(name = "emp_addr") - private String empAddr; - - /** - * 单位电话 - */ - @Length(max = 50) - @JSONField(name = "emp_tel") - private String empTel; - - /** - * 邮编 - */ - @Length(max = 6) - @JSONField(name = "poscode") - private String poscode; - - /** - * 联系人姓名 - */ - @Length(max = 50) - @JSONField(name = "coner_name") - private String conerName; - - /** - * 与患者关系:当coner_name非空时必填 - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "patn_rlts") - private String patnRlts; - - /** - * 联系人地址:当coner_name非空时必填 - */ - @NotBlank - @Length(max = 200) - @JSONField(name = "coner_addr") - private String conerAddr; - - /** - * 联系人电话:当coner_name非空时必填 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "coner_tel") - private String conerTel; - - /** - * 新生儿入院类型 - */ - @Length(max = 50) - @JSONField(name = "nwb_adm_type") - private String nwbAdmType; - - /** - * 新生儿出生体重:精确到10克(g) - */ - @JSONField(name = "nwb_bir_wt") - private BigDecimal nwbBirWt; - - /** - * 新生儿入院体重:精确到10克(g) - */ - @JSONField(name = "nwb_adm_wt") - private BigDecimal nwbAdmWt; - - /** - * 多新生儿出生体重 - */ - @Length(max = 50) - @JSONField(name = "mul_nwb_bir_wt") - private String mulNwbBirWt; - - /** - * 多新生儿入院体重 - */ - @Length(max = 50) - @JSONField(name = "mul_nwb_adm_wt") - private String mulNwbAdmWt; - - /** - * 门诊慢特病诊断科别 - */ - @Length(max = 50) - @JSONField(name = "opsp_diag_caty") - private String opspDiagCaty; - - /** - * 门诊慢特病就诊日期 - */ - @JSONField(name = "opsp_mdtrt_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date opspMdtrtDate; - - /** - * 入院途径 - */ - @Length(max = 30) - @JSONField(name = "adm_way") - private String admWay; - - /** - * 治疗类别 - */ - @Length(max = 3) - @JSONField(name = "trt_type") - private String trtType; - - /** - * 入院时间 - */ - @JSONField(name = "adm_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date admTime; - - /** - * 转科科别:参照科室代码(dept),如果超过一次以上的转科,用“→”转接表示 - */ - @Length(max = 50) - @JSONField(name = "refldept_dept") - private String refldeptDept; - - /** - * 出院时间 - */ - @JSONField(name = "dscg_time") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date dscgTime; - - /** - * 出院科别:参照科室代码(dept) - */ - @NotBlank - @Length(max = 6) - @JSONField(name = "dscg_caty") - private String dscgCaty; - - /** - * 门(急)诊诊断(西医诊断) - */ - @Length(max = 200) - @JSONField(name = "otp_wm_dise") - private String otpWmDise; - - /** - * 西医疾病代码 - */ - @Length(max = 20) - @JSONField(name = "wm_dise_code") - private String wmDiseCode; - - /** - * 门(急)诊诊断(中医诊断) - */ - @Length(max = 200) - @JSONField(name = "otp_tcm_dise") - private String otpTcmDise; - - /** - * 中医疾病代码 - */ - @Length(max = 20) - @JSONField(name = "tcm_dise_code") - private String tcmDiseCode; - - /** - * 呼吸机使用时长:格式:天数/小时数/分钟数 例:1/13/24 - */ - @Length(max = 10) - @JSONField(name = "vent_used_dura") - private String ventUsedDura; - - /** - * 颅脑损伤患者入院前昏迷时长:格式:天数/小时数/分钟数 例:1/13/24 - */ - @Length(max = 10) - @JSONField(name = "pwcry_bfadm_coma_dura") - private String pwcryBfadmComaDura; - - /** - * 颅脑损伤患者入院后昏迷时长:格式:天数/小时数/分钟数 例:1/13/24 - */ - @Length(max = 10) - @JSONField(name = "pwcry_afadm_coma_dura") - private String pwcryAfadmComaDura; - - /** - * 特级护理天数 - */ - @JSONField(name = "spga_nurscare_days") - private BigDecimal spgaNurscareDays; - - /** - * 一级护理天数 - */ - @JSONField(name = "lv1_nurscare_days") - private BigDecimal lv1NurscareDays; - - /** - * 二级护理天数 - */ - @JSONField(name = "scd_nurscare_days") - private BigDecimal scdNurscareDays; - - /** - * 三级护理天数 - */ - @JSONField(name = "lv3_nurscare_days") - private Integer lv3NurscareDays; - - /** - * 离院方式 - */ - @Length(max = 3) - @JSONField(name = "dscg_way") - private String dscgWay; - - /** - * 拟接收机构名称:说明当离院方式为“2”时,如果接收患者的医疗机构明确,需要填写转入医疗机构的名称; 当离院方式为“3”时,如果接收患者的社区卫生服务机构明确,需要填写社区卫生服务机构/乡镇卫生院名称 - */ - @Length(max = 100) - @JSONField(name = "acp_medins_name") - private String acpMedinsName; - - /** - * 拟接收机构代码:当离院方式为“2”或“3”时,如果接收患者的医疗机构或社区卫生服务机构明确,需要填写机构对应的医保定点医疗机构代码 - */ - @Length(max = 30) - @JSONField(name = "acp_optins_code") - private String acpOptinsCode; - - /** - * 票据代码 - */ - @Length(max = 50) - @JSONField(name = "bill_code") - private String billCode; - - /** - * 票据号码 - */ - @Length(max = 30) - @JSONField(name = "bill_no") - private String billNo; - - /** - * 业务流水号 - */ - @Length(max = 50) - @JSONField(name = "biz_sn") - private String bizSn; - - /** - * 出院31天内再住院计划标志 - */ - @Length(max = 3) - @JSONField(name = "days_rinp_flag_31") - private String daysRinpFlag31; - - /** - * 出院31天内再住院计划目的 - */ - @Length(max = 200) - @JSONField(name = "days_rinp_pup_31") - private String daysRinpPup31; - - /** - * 主诊医师代码:主诊医师在《医保医师代码》中的代码,在就医地未完成标准化前,可传医师在就医地系统中的唯一编号 - */ - @Length(max = 30) - @JSONField(name = "chfpdr_code") - private String chfpdrCode; - - /** - * 结算开始日期 - */ - @NotNull - @JSONField(name = "setl_begn_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date setlBegnDate; - - /** - * 结算结束日期 - */ - @NotNull - @JSONField(name = "setl_end_date") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date setlEndDate; - - /** - * 医疗机构填报部门 - */ - @NotBlank - @Length(max = 100) - @JSONField(name = "medins_fill_dept") - private String medinsFillDept; - - /** - * 医疗机构填报人 - */ - @NotBlank - @Length(max = 50) - @JSONField(name = "medins_fill_psn") - private String medinsFillPsn; - - /** - * 责任护士代码 - */ - @Length(max = 50) - @JSONField(name = "resp_nurs_code") - private String respNursCode; - - /** - * 状态分类 - */ - @Length(max = 10) - @JSONField(name = "stas_type") - private String stasType; - - /** - * 医保支付方式 - */ - @Length(max = 3) - @JSONField(name = "hi_paymtd") - private String hiPaymtd; - - /** - * 入院科室编码 - */ - @Length(max = 30) - @JSONField(name = "adm_dept_codg") - private String admDeptCodg; - - /** - * 入院科室名称 - */ - @Length(max = 100) - @JSONField(name = "adm_dept_name") - private String admDeptName; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java deleted file mode 100644 index 583c517b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.openhis.yb.dto; - -import javax.validation.constraints.NotBlank; - -import org.hibernate.validator.constraints.Length; - -import com.alibaba.fastjson2.annotation.JSONField; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【4101A】输出(节点标识:data) - * - * @author GuoRui - */ -@Data -@Accessors(chain = true) -public class Yb4101AOutputData { - - /** - * 清单流水号 - */ - @NotBlank - @Length(max = 9) - @JSONField(name = "setl_list_id") - private String setlListId; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java deleted file mode 100644 index 4eb90135..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 医保5205接口请求参数 - * - * @author SunJQ - * @date 2025-09-22 - */ -@Data -@Accessors(chain = true) -public class Yb5205InputSpecialDisease { - - /** - * 患者编号 - */ - private String psnNo; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date begntime; - - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date endtime; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java deleted file mode 100644 index c84e462c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java +++ /dev/null @@ -1,219 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.dto; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson.annotation.JSONField; - -import lombok.Data; - -/** - * 【5205】接口返回结果 - * - * @author SunJQ - * @date 2025-09-22 - */ -@Data -public class Yb5205OutputSpecialDisease { - - /** - * 费用明细流水号 - */ - @JSONField(name = "feedetl_sn") - private String feedetlSn; - - /** - * 处方/医嘱号 - */ - @JSONField(name = "rx_drord_no") - private String rxDrordNo; - - /** - * 定点医药机构编号 - */ - @JSONField(name = "fixmedins_code") - private String fixmedinsCode; - - /** - * 定点医药机构名称 - */ - @JSONField(name = "fixmedins_name") - private String fixmedinsName; - - /** - * 人员编号 - */ - @JSONField(name = "psn_no") - private String psnNo; - - /** - * 医疗类别 - */ - @JSONField(name = "med_type") - private String medType; - - /** - * 费用发生时间 - */ - @JSONField(name = "fee_ocur_time", format = "yyyy-MM-dd HH:mm:ss") - private Date feeOcurTime; - - /** - * 数量 - */ - @JSONField(name = "cnt") - private BigDecimal cnt; - - /** - * 单价 - */ - @JSONField(name = "pric") - private BigDecimal pric; - - /** - * 收费项目等级 - */ - @JSONField(name = "chrgitm_lv") - private String chrgitmLv; - - /** - * 医保目录编码 - */ - @JSONField(name = "hilist_code") - private String hilistCode; - - /** - * 医保目录名称 - */ - @JSONField(name = "hilist_name") - private String hilistName; - - /** - * 目录类别 - */ - @JSONField(name = "list_type") - private String listType; - - /** - * 医疗目录编码 - */ - @JSONField(name = "med_list_codg") - private String medListCodg; - - /** - * 医药机构目录编码 - */ - @JSONField(name = "medins_list_codg") - private String medinsListCodg; - - /** - * 医药机构目录名称 - */ - @JSONField(name = "medins_list_name") - private String medinsListName; - - /** - * 医疗收费项目类别 - */ - @JSONField(name = "med_chrgitm_type") - private String medChrgitmType; - - /** - * 商品名 - */ - @JSONField(name = "prodname") - private String prodname; - - /** - * 规格 - */ - @JSONField(name = "spec") - private String spec; - - /** - * 剂型名称 - */ - @JSONField(name = "dosform_name") - private String dosformName; - - /** - * 限制使用标志 - */ - @JSONField(name = "lmt_used_flag") - private String lmtUsedFlag; - - /** - * 医院制剂标志 - */ - @JSONField(name = "hosp_prep_flag") - private String hospPrepFlag; - - /** - * 医院审批标志 - */ - @JSONField(name = "hosp_appr_flag") - private String hospApprFlag; - - /** - * 中药使用方式 - */ - @JSONField(name = "tcmdrug_used_way") - private String tcmdrugUsedWay; - - /** - * 生产地类别 - */ - @JSONField(name = "prodplac_type") - private String prodplacType; - - /** - * 基本药物标志 - */ - @JSONField(name = "bas_medn_flag") - private String basMednFlag; - - /** - * 医保谈判药品标志 - */ - @JSONField(name = "hi_nego_drug_flag") - private String hiNegoDrugFlag; - - /** - * 儿童用药标志 - */ - @JSONField(name = "chld_medc_flag") - private String chldMedcFlag; - - /** - * 外检标志 - */ - @JSONField(name = "etip_flag") - private String etipFlag; - - /** - * 外检医院编码 - */ - @JSONField(name = "etip_hosp_code") - private String etipHospCode; - - /** - * 出院带药标志 - */ - @JSONField(name = "dscg_tkdrug_flag") - private String dscgTkdrugFlag; - - /** - * 目录特项标志 - */ - @JSONField(name = "list_sp_item_flag") - private String listSpItemFlag; - - /** - * 生育费用标志 - */ - @JSONField(name = "matn_fee_flag") - private String matnFeeFlag; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java deleted file mode 100644 index 4696931b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.openhis.yb.dto; - -import java.util.Date; - -import org.springframework.format.annotation.DateTimeFormat; - -import com.alibaba.fastjson2.JSONObject; -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【吉林省本地化】输入补充字段 - * - * @author gaoyy - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class extData { - // 1. 就医地分中心 - @JSONField(name = "mdtrtarea_subcent") - private String mdtrtareaSubcent; - - // 2. 参保地分中心 - @JSONField(name = "insuplc_subcent") - private String insuplcSubcent; - - // 3. 急诊核定流水号 - @JSONField(name = "er_crtf_evtsn") - private String erCrtfEvtsn; - - // 4. 就诊科室 - @JSONField(name = "dept_name") - private String deptName; - - // 5. 使用方法 - @JSONField(name = "used_mtd") - private String usedMtd; - - // 6. 现病史 - @JSONField(name = "psndisehis") - private String psndisehis; - - // 7. 生命体征 - @JSONField(name = "life_symptom") - private String lifeSymptom; - - // 8. 临床病症 - @JSONField(name = "clnc_cond") - private String clncCond; - - // 9. 门(急)诊诊断 - @JSONField(name = "disediag") - private String disediag; - - // 10. 入院诊断 - @JSONField(name = "adm_disediag_name") - private String admDisediagName; - - // 11. 判定依据 - @JSONField(name = "evid") - private String evid; - - // 12. 首诊医生 - @JSONField(name = "fst_doctor") - private String fstDoctor; - - // 13. 科主任 - @JSONField(name = "deptort") - private String deptort; - - // 14. 就诊时间(入院时间)(表示:YYYYMMDDHH24MISS) - @JSONField(name = "adm_date") - private String admDate; - - // 15. 姓名 - @JSONField(name = "name") - private String name; - - // 16. 身份证 - @JSONField(name = "certno") - private String certno; - - // 17. 年龄 - @JSONField(name = "age") - private String age; - - // 18. 性别(1:男,2:女) - @JSONField(name = "gend") - private String gend; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java deleted file mode 100644 index 6b4e603a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.ClinicPreSettle; -import org.springframework.stereotype.Repository; - - -/** - * 【请填写功能名称】Mapper接口 - * - * @author system - * @date 2025-04-20 - */ -@Repository -public interface ClinicPreSettleMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java deleted file mode 100644 index 692e2640..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.ClinicSettle; -import org.springframework.stereotype.Repository; - - -/** - * 【请填写功能名称】Mapper接口 - * - * @author system - * @date 2025-04-20 - */ -@Repository -public interface ClinicSettleMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java deleted file mode 100644 index 459df21f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import com.openhis.yb.domain.ClinicUnReg; -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** - * 撤销挂号记录Mapper接口 - * - * @author system - * @date 2025-04-21 - */ -@Repository -public interface ClinicUnRegMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java deleted file mode 100644 index a048eb2c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import com.openhis.yb.domain.ClinicUnSettle; -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** - * 【请填写功能名称】Mapper接口 - * - * @author system - * @date 2025-04-20 - */ -@Repository -public interface ClinicUnSettleMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java deleted file mode 100644 index 94ca1db2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.DirectoryCheckRecord; - -/** - * 医保Mapper接口 - * - * @author system - * @date 2025-04-27 - */ -@Repository -public interface DirectoryCheckRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java deleted file mode 100644 index 25705c0f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.FinancialApplyRecord; - -/** - * 医保财务申请记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface FinancialApplyRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java deleted file mode 100644 index 4049f19d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.FinancialReconcileRecord; - -/** - * ybMapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface FinancialReconcileRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java deleted file mode 100644 index c2cf1b4d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InpatientFeeDetail; -import com.openhis.yb.domain.InventoryChangeRecord; -import org.springframework.stereotype.Repository; - -@Repository -public interface InpatientFeeDetailMapper extends BaseMapper { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java deleted file mode 100644 index 6baffce4..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.FinancialReconcileRecord; -import com.openhis.yb.domain.InpatientReg; -import org.springframework.stereotype.Repository; - -/** - * TODO:请概括描述当前接口的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Repository -public interface InpatientRegMapper extends BaseMapper { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java deleted file mode 100644 index 78ca6ac3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InpatientFeeDetail; -import com.openhis.yb.domain.InpatientSettle; -import org.springframework.stereotype.Repository; - -@Repository -public interface InpatientSettleMapper extends BaseMapper { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java deleted file mode 100644 index d0cd518c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventoryChangeRecord; - -/** - * 库存信息变更记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventoryChangeRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java deleted file mode 100644 index 66881597..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventoryCheckRecord; - -/** - * 库存盘点记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventoryCheckRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java deleted file mode 100644 index b257b3aa..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventoryDelRecord; - -/** - * 库存删除记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventoryDelRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java deleted file mode 100644 index c6f5e789..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventoryPurchaseRecord; - -/** - * 库存采购/退货记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventoryPurchaseRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java deleted file mode 100644 index b3f73983..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventoryPurchaseReturnRecord; - -/** - * 采购/退货记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventoryPurchaseReturnRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java deleted file mode 100644 index 73c11710..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventorySaleRecord; - -/** - * 销售/退货记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventorySaleRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java deleted file mode 100644 index 75065c5a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.yb.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InventorySaleReturnRecord; - -/** - * 销售/退货记录Mapper接口 - * - * @author system - * @date 2025-04-30 - */ -@Repository -public interface InventorySaleReturnRecordMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java deleted file mode 100644 index 4b802d97..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.mapper; - - -import com.openhis.yb.dto.*; -import org.apache.ibatis.annotations.Param; -import org.springframework.stereotype.Repository; - -import java.util.Date; -import java.util.List; - -/** - * mapper提供sql服务 - * - * @author SunJQ - * @date 2025-04-29 - */ -@Repository -public interface MedicalInsuranceMapper { - /** - * 计算对账金额 - * - * @param stmtBegnDate 开始时间 - * @param stmtEndDate 结束时间 - * @param tenantId 租户id - * @param orgId 医院id - * @param InsuType 险种 - * @param clrType 门诊/住院 - * @param admVs 清算机构 - * @return 查询结果 - */ - Settlement3201Dto get3201Param(@Param("startTime") Date stmtBegnDate, @Param("endTime") Date stmtEndDate, - @Param("tenantId") Integer tenantId, @Param("orgId") Long orgId, @Param("InsuType") String InsuType, - @Param("clrType") Integer clrType, @Param("admVs") String admVs, @Param("zhPay") Integer zhPay, - @Param("zhGjPay") Integer zhGjPay, @Param("ybFund") Integer ybFund); - - Settlement3202Dto get3202Param(@Param("startTime") String stmtBegnDate, @Param("endTime") String stmtEndDate, - @Param("tenantId") Integer tenantId, @Param("orgId") Long orgId, @Param("clrType") String clrType, - @Param("admVs") String admVs, @Param("zhPay") Integer zhPay, @Param("zhGjPay") Integer zhGjPay, - @Param("cash") Integer cash, @Param("cashVX") Integer cashVX, @Param("cashAli") Integer cashAli, - @Param("cashUNIN") Integer cashUNIN, @Param("ybFund") Integer ybFund); - - Financial3203Dto get3203Param(@Param("startTime") Date begndate, @Param("endTime") Date enddate, - @Param("tenantId") Integer tenantId, @Param("clrType") String clrType, @Param("zhPay") Integer zhPay, - @Param("zhGjPay") Integer zhGjPay, @Param("cash") Integer cash, @Param("cashVX") Integer cashVX, - @Param("cashAli") Integer cashAli, @Param("cashUNIN") Integer cashUNIN, @Param("ybFund") Integer ybFund); - - - List get3201ParamList(@Param("startTime") String stmtBegnDate, @Param("endTime") String stmtEndDate, - @Param("tenantId") Integer tenantId, @Param("orgId") Long orgId, @Param("InsuType") String InsuType, - @Param("clrType") String clrType, @Param("admVs") String admVs, @Param("zhPay") Integer zhPay, - @Param("zhGjPay") Integer zhGjPay, @Param("ybFund") Integer ybFund); - - - List getPaymentDecDetailUniAccountDtoListByPaymentIdList( - @Param("idList")List idList, @Param("startTime")Date startTime, - @Param("endTime")Date endTime, @Param("draft")Integer draft); -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java deleted file mode 100644 index c1168fe7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.openhis.yb.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.InfoPerson; -import org.springframework.stereotype.Repository; - -/** - * 身份信息-Mapper - */ -@Repository -public interface PerinfoMapper extends BaseMapper { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java deleted file mode 100644 index c2f81e55..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.ClinicReg; -import org.springframework.stereotype.Repository; - -/** - * 挂号管理-Mapper - */ -@Repository -public interface RegMapper extends BaseMapper { - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java deleted file mode 100644 index 84ad6e3c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.openhis.yb.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.yb.domain.Sign; -import org.springframework.stereotype.Repository; - -/** - * 签到管理-Mapper - */ -@Repository -public interface SignMapper extends BaseMapper { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java deleted file mode 100644 index f35e3bcf..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.openhis.yb.model; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.openhis.yb.dto.PaymentDetailDto; -import lombok.Data; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import java.math.BigDecimal; -import java.util.List; - -@Data -public class CancelRegPaymentModel { - /** - * id - */ - private Long id; - - /** 收款员 */ - private Long entererId; - - /** 支付的患者ID */ - @NotNull - private Long patientId; - - /** 应收金额 */ - private BigDecimal tenderedAmount; - - /** 找零金额 */ - private BigDecimal returnedAmount; - - /** 付款总额 */ - private BigDecimal displayAmount; - - /** 就诊ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long encounterId; - - /** 收费项 */ - private List chargeItemIds;//收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 - - /** 支付详细 */ - @NotEmpty - private List paymentDetails; - - /** 支付批次号 */ - private String chrgBchno;//医保预结算时返回,医保结算时必传,否则结算时一直预结算 - - private String setlId;//结算id - - private String contractNo;//合同編號 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java deleted file mode 100644 index 260b0687..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.model; - -import com.openhis.yb.dto.Clinic2206FundPaymentResult; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 【2207】医保预结算的输出参数 - * - * @author SunJQ - * @date 2025-05-08 - */ -@Data -@Accessors(chain = true) -public class Clinic2207OrderModel { - // 主键字段 - private String mdtrtId; // 就诊ID - - private String setlId;// 结算id - - private String psnNo; // 人员编号 - - private String psnName; // 人员姓名 - - private String psnCertType; // 人员证件类型 - - private String certno; // 证件号码 - - private String gend; // 性别 - - private String naty; // 民族 - - private Date brdy; // 出生日期 - - private BigDecimal age; // 年龄 - - private String insutype; // 险种类型 - - private String psnType; // 人员类别 - - private String cvlservFlag; // 公务员标志 - - private Date setlTime; // 结算时间 - - private String mdtrtCertType; // 就诊凭证类型 - - private String medType; // 医疗类别 - - private BigDecimal medfeeSumamt; // 医疗费总额 - - private BigDecimal fulamtOwnpayAmt; // 全自费金额 - - private BigDecimal overlmtSelfpay; // 超限价自费费用 - - private BigDecimal preselfpayAmt; // 先行自付金额 - - private BigDecimal inscpScpAmt; // 符合政策范围金额 - - private BigDecimal actPayDedc; // 实际支付起付线 - - private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 - - private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 - - private BigDecimal cvlservPay; // 公务员医疗补助资金支出 - - private BigDecimal hifesPay; // 企业补充医疗保险基金支出 - - private BigDecimal hifmiPay; // 居民大病保险资金支出 - - private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 - - private BigDecimal mafPay; // 医疗救助基金支出 - - private BigDecimal othPay; // 其他支出 - - private BigDecimal fundPaySumamt; // 基金支付总额 - - private BigDecimal psnPartAmt; // 个人负担总金额 - - private BigDecimal acctPay; // 个人账户支出 - - private BigDecimal psnCashPay; // 个人现金支出 - - private BigDecimal hospPartAmt; // 医院负担金额 - - private BigDecimal balc; // 余额 - - private BigDecimal acctMulaidPay; // 个人账户共济支付金额 - - private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID - - private String clrOptins; // 清算经办机构 - - private String clrWay; // 清算方式 - - private String clrType; // 清算类别 - - private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 - - private String expContent; // 字段扩展 - - private List setldetail;// 结算详细信息 - - private String chrgBchno; // 收费批次号 - - public Clinic2207OrderModel() { - this.setMedfeeSumamt(new BigDecimal("0.0")).setFulamtOwnpayAmt(new BigDecimal("0.0")) - .setOverlmtSelfpay(new BigDecimal("0.0")).setPreselfpayAmt(new BigDecimal("0.0")) - .setInscpScpAmt(new BigDecimal("0.0")).setActPayDedc(new BigDecimal("0.0")) - .setHifpPay(new BigDecimal("0.0")).setPoolPropSelfpay(new BigDecimal("0.0")) - .setCvlservPay(new BigDecimal("0.0")).setHifesPay(new BigDecimal("0.0")).setHifmiPay(new BigDecimal("0.0")) - .setHifobPay(new BigDecimal("0.00")).setMafPay(new BigDecimal("0.0")).setOthPay(new BigDecimal("0.0")) - .setFundPaySumamt(new BigDecimal("0.0")).setPsnPartAmt(new BigDecimal("0.0")) - .setAcctPay(new BigDecimal("0.0")).setPsnCashPay(new BigDecimal("0.0")) - .setHospPartAmt(new BigDecimal("0.0")).setBalc(new BigDecimal("0.0")) - .setAcctMulaidPay(new BigDecimal("0.0")).setHifdmPay(new BigDecimal("0.0")); - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java deleted file mode 100644 index 93ee8869..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.model; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonProperty; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 【2207】 - * - * @author SunJQ - * @date 2025-05-06 - */ -@Data -@Accessors(chain = true) -public class Clinic2207OrderParam { - - @JsonProperty("psn_no") - private String psnNo;// 人员编号 - - // 参保地医保区划 - @JsonProperty("insuplc_admdvs") - private String insuplcAdmdvs; - - @JsonProperty("mdtrt_cert_type") - private String mdtrtCertType;// 就诊凭证类型 - - @JsonProperty("mdtrt_cert_no") - private String mdtrtCertNo;// 就诊凭证编号 - - @JsonProperty("med_type") - private String medType;// 医疗类别 - - @JsonProperty("medfee_sumamt") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") - private Double medfeeSumamt;// 医疗费总额 - - @JsonProperty("psn_setlway") - private String psnSetlway;// 个人结算方式 - - @JsonProperty("mdtrt_id") - private String mdtrtId;// 就诊ID - - @JsonProperty("chrg_bchno") - private String chrgBchno;// 收费批次号 - - @JsonProperty("insutype") - private String insutype;// 险种类型 - - @JsonProperty("acct_used_flag") - private String acctUsedFlag;// 个人账户使用标志 - - @JsonProperty("invono") - private String invono;// 发票号 - - @JsonProperty("fulamt_ownpay_amt") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") - private Double fulamtOwnpayAmt;// 全自费金额 - - @JsonProperty("overlmt_selfpay") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") - private Double overlmtSelfpay;// 超限价金额 - - @JsonProperty("preselfpay_amt") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") - private Double preselfpayAmt;// 先行自付金额 - - @JsonProperty("inscp_scp_amt") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") - private Double inscpScpAmt;// 符合政策范围金额 - - @JsonProperty("exp_content") - private String expContent;// 字段扩展 - - @JsonProperty("pub_hosp_rfom_flag") - private String pubHospRfomFlag;// 公立医院改革标志 - - @JsonProperty("minpacunt_drug_trac_cnt") - private Integer minpacuntDrugTracCnt;// 本次结算应上传最小包装药品追溯码数量 - - @JsonProperty("mcs_trac_cnt") - private Integer mcsTracCnt;// 本次结算应上传耗材追溯码数量 - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java deleted file mode 100644 index 4e295fbe..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.model; - -import lombok.Data; - -import java.math.BigDecimal; - -@Data -public class OutpatientRegistrationModel { - //就诊凭证类型 - private String mdtrtCertType; - //卡密 - private String busiCardInfo; - //结算方式 - private String psnSetlWay; - //总价 - private BigDecimal totalPrice; - //合同編號 - private String contractNo; -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java deleted file mode 100644 index 8008af06..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.ClinicPreSettle; - -/** - * 【请填写功能名称】Service接口 - * - * @author system - * @date 2025-04-20 - */ -public interface IClinicPreSettleService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java deleted file mode 100644 index 3ec9af30..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.domain.ClinicSettle; - -import java.util.List; - -/** - * 【请填写功能名称】Service接口 - * - * @author system - * @date 2025-04-20 - */ -public interface IClinicSettleService extends IService { - - /** - * 通过结算id查询 - * - * @param paymentId 结算id - * @return - */ - ClinicSettle getByPaymentId(Long paymentId); - - /** - * 通过结算id查询 - * - * @param settleId 结算id - * @return - */ - ClinicSettle getBySettleId(String settleId); - - /** - * - * @param settleIds - * @return - */ - List getBySettleIds(List settleIds); -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java deleted file mode 100644 index a6fdc557..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.ClinicUnReg; - -/** - * 撤销挂号记录Service接口 - * - * @author system - * @date 2025-04-21 - */ -public interface IClinicUnRegService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java deleted file mode 100644 index 1894ac18..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.openhis.yb.service; - -import java.util.List; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.ClinicUnSettle; - -/** - * 【请填写功能名称】Service接口 - * - * @author system - * @date 2025-04-20 - */ -public interface IClinicUnSettleService extends IService { - - /** - * 根据settleId查询集合 - * - * @param settleIds 集合 - * @return 集合 - */ - List getBySettleIds(List settleIds); -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java deleted file mode 100644 index fd653768..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.DirectoryCheckRecord; - -/** - * 医保Service接口 - * - * @author system - * @date 2025-04-27 - */ -public interface IDirectoryCheckRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java deleted file mode 100644 index 076c2686..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.FinancialApplyRecord; - -/** - * 医保财务申请记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IFinancialApplyRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java deleted file mode 100644 index 841982ae..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.FinancialReconcileRecord; - -/** - * ybService接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IFinancialReconcileRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java deleted file mode 100644 index 80bee252..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InfoPerson; -import com.openhis.yb.domain.InpatientFeeDetail; - -public interface IInpatientFeeDetailService extends IService { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java deleted file mode 100644 index 79d69e5a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InpatientReg; -import com.openhis.yb.domain.InventorySaleReturnRecord; - -/** - * TODO:请概括描述当前接口的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-31 - */ - -public interface IInpatientRegService extends IService { - - /** - * 根据busNo查询住院挂号信息 - * @param busNo 业务流水号 - * @return 医保住院挂号信息 - */ - InpatientReg getInpatientRegByIptNo(String busNo); -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java deleted file mode 100644 index 58545a98..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InpatientSettle; - -public interface IInpatientSettleService extends IService { - /** - * 根据医保结算id找到住院结算id - * @param ybSettleIds - * @return - */ - InpatientSettle getBySettleId(String ybSettleIds); - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java deleted file mode 100644 index b1f46cb1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventoryChangeRecord; - -/** - * 库存信息变更记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventoryChangeRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java deleted file mode 100644 index fd40a5b7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventoryCheckRecord; - -/** - * 库存盘点记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventoryCheckRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java deleted file mode 100644 index f3938a7f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventoryDelRecord; - -/** - * 库存删除记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventoryDelRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java deleted file mode 100644 index 34de41cd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventoryPurchaseRecord; - -/** - * 库存采购/退货记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventoryPurchaseRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java deleted file mode 100644 index 0e32daf0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventoryPurchaseReturnRecord; - -/** - * 采购/退货记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventoryPurchaseReturnRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java deleted file mode 100644 index dd93de62..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventorySaleRecord; - -/** - * 销售/退货记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventorySaleRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java deleted file mode 100644 index a82351e2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InventorySaleReturnRecord; - -/** - * 销售/退货记录Service接口 - * - * @author system - * @date 2025-04-30 - */ -public interface IInventorySaleReturnRecordService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java deleted file mode 100644 index 1b64a0ac..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.InfoPerson; - -/** - * @Description: 人员基础信息 - * @Author: jeecg-boot - * @Date: 2021-08-27 - * @Version: V1.0 - */ -public interface IPerinfoService extends IService { - - InfoPerson getPerInfoByIdCard(String idCard, Integer tenantId); - - InfoPerson getByPsnNo(String psnNo); - - /** - * 是否异地就医(省内异地) - * - * @param psnNo 人员编号 - * @param admVs 就异地统筹区号 - * @return - */ - boolean assessIntraCrossRegionalSettlement(String psnNo, String admVs); - - /** - * 是否异地就医(省外异地) - * - * @param psnNo 人员编号 - * @param admVs 就异地统筹区号 - * @return - */ - boolean assessInterCrossRegionalSettlement(String psnNo, String admVs); - - /** - * 是否异地就医 - * - * @param psnNo 人员编号 - * @param admVs 就异地统筹区号 - * @return - */ - boolean assessCrossRegionalSettlement(String psnNo, String admVs); -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java deleted file mode 100644 index 0204a5ba..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.workflow.domain.SupplyRequest; -import com.openhis.yb.domain.ClinicReg; - -import java.util.List; - -/** - * 挂号管理-服务接口 - */ -public interface IRegService extends IService { - void updateStatus(Long id,String status); - - /** - * 通过单据号查询 - * - * @param busNo 单据号 - * @return - */ - ClinicReg getByBusNo(String busNo); - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java deleted file mode 100644 index ac59b7e1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.openhis.yb.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.yb.domain.Sign; - -/** - * 签到管理-服务接口 - */ -public interface ISignService extends IService { - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java deleted file mode 100644 index 19dd6ceb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java +++ /dev/null @@ -1,2778 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.service; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.ZoneId; -import java.time.format.DateTimeFormatter; -import java.util.*; -import java.util.function.Function; -import java.util.stream.Collectors; - -import javax.servlet.http.HttpServletRequest; -import javax.validation.constraints.NotNull; - -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import com.alibaba.fastjson2.JSON; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.core.common.exception.ServiceException; -import com.core.common.utils.AssignSeqUtil; -import com.core.common.utils.DateUtils; -import com.core.common.utils.SecurityUtils; -import com.core.common.utils.StringUtils; -import com.core.system.service.impl.SysUserServiceImpl; -import com.openhis.administration.domain.*; -import com.openhis.administration.dto.ChargeItemBaseInfoDto; -import com.openhis.administration.service.*; -import com.openhis.clinical.domain.Condition; -import com.openhis.clinical.domain.ConditionDefinition; -import com.openhis.clinical.service.IConditionDefinitionService; -import com.openhis.clinical.service.IConditionService; -import com.openhis.common.constant.CommonConstants; -import com.openhis.common.constant.YbCommonConstants; -import com.openhis.common.enums.*; -import com.openhis.common.enums.ybenums.*; -import com.openhis.common.utils.HisPageUtils; -import com.openhis.common.utils.HisQueryUtils; -import com.openhis.financial.domain.Contract; -import com.openhis.financial.domain.PaymentRecDetail; -import com.openhis.financial.domain.PaymentReconciliation; -import com.openhis.financial.service.IContractService; -import com.openhis.financial.service.IPaymentRecDetailService; -import com.openhis.financial.service.IPaymentReconciliationService; -import com.openhis.medication.service.IMedicationDispenseService; -import com.openhis.workflow.service.IDeviceDispenseService; -import com.openhis.workflow.service.IServiceRequestService; -import com.openhis.yb.domain.*; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.dto.*; -import com.openhis.yb.dto.Sign; -import com.openhis.yb.mapper.MedicalInsuranceMapper; -import com.openhis.yb.model.Clinic2207OrderModel; -import com.openhis.yb.model.Clinic2207OrderParam; -import com.openhis.yb.service.impl.DirectoryCheckRecordServiceImpl; -import com.openhis.yb.util.YbParamBuilderUtil; - -/** - * 医保表的增删改查接口 - * - * @author SunJQ - * @date 2025-04-11 - */ -@Service -public class YbDao { - /******************************** 业务服务 ***********************************/ - @Autowired - private IPaymentRecDetailService iPaymentRecDetailService; - @Autowired - private IPaymentReconciliationService iPaymentReconciliationService; - @Autowired - private SysUserServiceImpl userService; - @Autowired - private IPractitionerService iPractitionerService; - @Autowired - private IEncounterService iEncounterService; - @Autowired - private IEncounterParticipantService iEncounterParticipantService; - @Autowired - private IAccountService iAccountService; - @Autowired - private IEncounterDiagnosisService iEncounterDiagnosisService; - @Autowired - private IConditionService iConditionService; - @Autowired - private IConditionDefinitionService iConditionDefinitionService; - @Autowired - private IOrganizationService iOrganizationService; - @Autowired - private ILocationService iLocationService; - @Autowired - private IEncounterLocationService iEncounterLocationService; - @Autowired - private IAccountService accountService; - @Autowired - private IChargeItemService iChargeItemService; - @Autowired - private AssignSeqUtil assignSeqUtil; - @Autowired - private IInvoiceService invoiceService; - @Autowired - private IPatientService iPatientService; - @Autowired - private IContractService iContractService; - @Autowired - private MedicalInsuranceMapper medicalInsuranceMapper; - - /****************************** 基础医保服务 *********************************/ - - @Autowired - private IPerinfoService iPerinfoService; - @Autowired - private IRegService iRegService; - @Autowired - private IInpatientRegService iInpatientRegService; - @Autowired - private IInpatientSettleService inpatientSettleService; - @Autowired - private IClinicUnRegService iClinicUnRegService; - @Autowired - private ISignService iSignService; - @Autowired - private IClinicPreSettleService iClinicPreSettleService; - @Autowired - private IClinicSettleService iClinicSettleService; - @Autowired - private IClinicUnSettleService iClinicUnSettleService; - @Autowired - private DirectoryCheckRecordServiceImpl directoryCheckRecordService; - @Autowired - private IInventorySaleReturnRecordService iInventorySaleReturnRecordService; - @Autowired - private IInventorySaleRecordService iInventorySaleRecordService; - @Autowired - private IInventoryPurchaseReturnRecordService iInventoryPurchaseReturnRecordService; - @Autowired - private IInventoryPurchaseRecordService iInventoryPurchaseRecordService; - @Autowired - private IInventoryDelRecordService iInventoryDelRecordService; - @Autowired - private IInventoryCheckRecordService iInventoryCheckRecordService; - @Autowired - private IInventoryChangeRecordService iInventoryChangeRecordService; - @Autowired - private IFinancialReconcileRecordService iFinancialReconcileRecordService; - @Autowired - private IFinancialApplyRecordService iFinancialApplyRecordService; - @Autowired - private IInpatientFeeDetailService inpatientFeeDetailService; - @Autowired - private YbParamBuilderUtil ybUtil; - @Autowired - private IMedicationDispenseService medicationDispenseService; - @Autowired - private IDeviceDispenseService deviceDispenseService; - @Autowired - private IServiceRequestService serviceRequestService; - - /** - * 获取读卡信息 - * - * @return 【1101】入参 - */ - public Info1101ReadcardParam getReadCard(String certType, String certNo) { - return ybUtil.getReadCard(certType, certNo); - } - - /** - * 保存数据 - * - * @param readcard 读卡信息 - * @param perInfo 身份信息 - */ - public void saveReadcardAndPerinfo(Info1101ReadcardParam readcard, Info1101Output perInfo) { - InfoPerson infoPerson = new InfoPerson(); - BeanUtils.copyProperties(readcard, infoPerson); - BeanUtils.copyProperties(perInfo, infoPerson); - infoPerson.setResult1101(JSON.toJSONString(perInfo)).setParam1101(JSON.toJSONString(readcard)); - iPerinfoService.save(infoPerson); - } - - /** - * 【2201】医保挂号 - * - * @param encounterId 就诊id - * @param tenantId 租户 - * @return 【2201】入参 - */ - public ClinicReg getReg(YbMdtrtCertType ybMdtrtCertTypeLong, String busiCardInfo, Long encounterId, - YbMedType medType, Integer tenantId) { - return ybUtil.getReg(ybMdtrtCertTypeLong, busiCardInfo, encounterId, medType, tenantId); - } - - /** - * 保存挂号信息 - * - * @param regResult 2201挂号信息 - */ - public void saveReg(ClinicReg2201Output regResult) { - ClinicReg clinicReg = new ClinicReg(); - BeanUtils.copyProperties(regResult, clinicReg); - InfoPerson one = - iPerinfoService.getOne(new LambdaQueryWrapper().eq(InfoPerson::getPsnNo, regResult.getPsnNo()) - .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); - clinicReg.setInsuplcAdmdvs(one.getInsuplcAdmdvs()).setDeleteFlag(DelFlag.NO.getCode()); - iRegService.save(clinicReg); - } - - /** - * 退号变更挂号状态 - * - * @param regResult - */ - public void UpdateRegByMdtrtId(ClinicReg regResult) { - if (StringUtils.isEmpty(regResult.getMdtrtId())) { - throw new ServiceException("医保挂号编号为空"); - } - ClinicReg one = - iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, regResult.getMdtrtId())); - if (one == null) { - throw new ServiceException("查询医保信息为空"); - } - iRegService.updateStatus(one.getId(), YbCommonConstants.ClincStatusConst.CANCLE); - } - - /** - * 【2203】就诊信息上传 - * - * @param encounterId 就诊id - * @param tenantId 租户 - * @return 【2203】就诊信息 - */ - public Clinic2203MedicalParam getClinicMedical2203Param(Long encounterId, Integer tenantId, - ClinicReg2201Output reg2201Output, YbMedType ybMedType) { - return ybUtil.getClinicMedical2203Param(encounterId, tenantId, reg2201Output, ybMedType); - } - - /** - * 【2204】诊断信息上传 - * - * @param tenantId 租户id - * @param chargeItemIds 收费项id集合 - * @return 【2204】参数 - */ - - public Clinic2204OrderParam getClinicOrder2204Param(Integer tenantId, List chargeItemIds, - ClinicReg2201Output reg2201Output) { - return ybUtil.getClinicOrder2204Param(tenantId, chargeItemIds, reg2201Output); - } - - /** - * 【2206】预结算 - * - * @param payFee 应收金额 - * @param chrgBchno 收费批次号(payment的busNo) - * @return 【2206】预结算 - */ - public Clinic2206OrderParam getClinicOrder2206Param(BigDecimal payFee, ClinicReg2201Output reg, String chrgBchno, - String busiCardInfo) { - return ybUtil.getClinicOrder2206Param(payFee, reg, chrgBchno, busiCardInfo); - } - - /** - * 【2205】费用明细撤销 - * - * @param encounterId 就诊id - * @param chrgBchno 收费批次号 - * @return 【2205】参数 - */ - public Clinic2205OrderParam getClinic2205OrderParam(Long encounterId, String chrgBchno) { - return ybUtil.getClinic2205OrderParam(encounterId, chrgBchno); - } - - /** - * 【2207】结算 - * - * @param encounterId 就诊id - * @param tenantId 租户id - * @param psnSetlWay 支付方式 - * @param chrgBchno 收费批次号(payment的busNo) - * @return 【2207】结算 - */ - public Clinic2207OrderParam getClinicOrder2207(Long encounterId, Integer tenantId, String psnSetlWay, - String chrgBchno, String medType) { - return ybUtil.getClinicOrder2207(encounterId, tenantId, psnSetlWay, chrgBchno, medType); - } - - /** - * 保存数据 - * - * @param paymentNo 首款业务流水号 - * @param clinicOrder2207 2207入参 - * @param clinic2207OrderResult 2207出参 - */ - public void saveClinic2207OrderResult(String paymentNo, Clinic2207OrderParam clinicOrder2207, - Clinic2207OrderModel clinic2207OrderResult) { - // 保存结算信息 - ClinicSettle clinicSettle = new ClinicSettle(); - BeanUtils.copyProperties(clinic2207OrderResult, clinicSettle); - clinicSettle.setParam2207(JSON.toJSONString(clinicOrder2207)) - .setResult2207(JSON.toJSONString(clinic2207OrderResult)); - iClinicSettleService.save(clinicSettle); - } - - /** - * 保存数据 - * - * @param settleId 医保结算id - * @param clinicOrder2207 2207入参 - * @param clinic2207OrderResult 2207出参 - */ - public void saveUnSettleRecord(String settleId, Clinic2208UnSetlInfoParam clinicOrder2207, - Clinic2208UnSetlInfoOutput clinic2207OrderResult) { - - ClinicUnSettle clinicSettle = new ClinicUnSettle(); - BeanUtils.copyProperties(clinic2207OrderResult, clinicSettle); - clinicSettle.setParam2208(JSON.toJSONString(clinicOrder2207)) - .setResult2208(JSON.toJSONString(clinic2207OrderResult)).setSettleId(clinic2207OrderResult.getSetlId()); - // 保存结算信息 - iClinicUnSettleService.save(clinicSettle); - } - - /** - * 反结 - * - * @param paymentReconciliation 付款实体 - */ - private void saveUnPaymentDetail(PaymentReconciliation paymentReconciliation) { - List paymentRecDetails = - iPaymentRecDetailService.list(new LambdaQueryWrapper() - .eq(PaymentRecDetail::getReconciliationId, paymentReconciliation.getId())); - // 新增详情信息 - PaymentRecDetail paymentRecDetail; - List addDetailList = new ArrayList<>(); - for (PaymentRecDetail paymentDetail : paymentRecDetails) { - paymentRecDetail = new PaymentRecDetail(); - com.core.common.utils.bean.BeanUtils.copyProperties(paymentDetail, paymentRecDetail); - paymentRecDetail.setPredecessorId(paymentReconciliation.getId()); - paymentRecDetail.setAccountId(paymentDetail.getAccountId() == null ? 0 : paymentDetail.getAccountId()); - paymentRecDetail.setResultEnum(PaymentResult.REFUNDED.getValue()); - paymentRecDetail.setAmount(paymentRecDetail.getAmount().multiply(new BigDecimal("-1"))); - addDetailList.add(paymentRecDetail); - } - iPaymentRecDetailService.saveBatch(addDetailList); - - // 修改详情信息 - List list = new ArrayList<>(); - for (PaymentRecDetail item : paymentRecDetails) { - item.setResultEnum(1); - list.add(item); - } - iPaymentRecDetailService.updateBatchById(list); - } - - /** - * 根据医保2207结果和前台参数添加结算记录 - * - * @param clinicOrder2207Result - * @param payment - * @param paymentDetails - */ - private void saveBy2207Result(Clinic2207OrderResult clinicOrder2207Result, PaymentReconciliation payment, - List paymentDetails) { - // 保存付款详情 - List paymentRecDetails = new ArrayList<>(); - BigDecimal amount = BigDecimal.ZERO; - String AccountEnum = "04"; - Account account = accountService.getById(payment.getAccountId()); - AccountEnum = account.getTypeCode(); - PaymentRecDetail paymentRecDetail; - for (PaymentDetailDto paymentDetail : paymentDetails) { - paymentRecDetail = new PaymentRecDetail(); - if (YbPayment.SELF_CASH_VX_VALUE.getValue().equals(paymentDetail.getPayEnum())) { - paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_CASH_VX_VALUE.getValue()) - .setPayLevelEnum(YbPayment.SELF_CASH_VX_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) - .setResultEnum(PaymentResult.PAID.getValue()); - } - if (YbPayment.SELF_CASH_ALI_VALUE.getValue().equals(paymentDetail.getPayEnum())) { - paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_CASH_ALI_VALUE.getValue()) - .setPayLevelEnum(YbPayment.SELF_CASH_ALI_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) - .setResultEnum(PaymentResult.PAID.getValue()); - } - if (YbPayment.SELF_CASH_UNION_VALUE.getValue().equals(paymentDetail.getPayEnum())) { - paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_CASH_UNION_VALUE.getValue()) - .setPayLevelEnum(YbPayment.SELF_CASH_UNION_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) - .setResultEnum(PaymentResult.PAID.getValue()); - } - if (YbPayment.SELF_CASH_VALUE.getValue().equals(paymentDetail.getPayEnum())) { - paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_CASH_VALUE.getValue()) - .setPayLevelEnum(YbPayment.SELF_CASH_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) - .setResultEnum(PaymentResult.PAID.getValue()); - } - paymentRecDetails.add(paymentRecDetail); - amount = amount.add(paymentDetail.getAmount()); - } - // 个人现金支出 - BigDecimal psnCashPay = clinicOrder2207Result.getPsnCashPay(); - if (psnCashPay.compareTo(amount) != 0) { - throw new ServiceException("金额校验失败"); - } - PaymentRecDetail paymentRecDetail10 = new PaymentRecDetail(); - paymentRecDetail10.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_CASH_VALUE.getValue()).setPayLevelEnum(YbPayment.SELF_CASH_VALUE.getLevel()) - .setAmount(psnCashPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail10); - // 个人负担总金额 - BigDecimal psnPartAmt = clinicOrder2207Result.getPsnPartAmt(); - PaymentRecDetail paymentRecDetail1 = new PaymentRecDetail(); - paymentRecDetail1.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_PAY.getLevel()) - .setAmount(psnPartAmt).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail1); - // 基本医疗保险统筹基金支出 - BigDecimal hifpPay = clinicOrder2207Result.getHifpPay(); - PaymentRecDetail paymentRecDetail2 = new PaymentRecDetail(); - paymentRecDetail2.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_TC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_TC_FUND_AMOUNT.getLevel()) - .setAmount(hifpPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail2); - // 公务员医疗补助资金支出 - BigDecimal cvlservPay = clinicOrder2207Result.getCvlservPay(); - PaymentRecDetail paymentRecDetail3 = new PaymentRecDetail(); - paymentRecDetail3.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getValue()) - .setPayLevelEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getLevel()).setAmount(cvlservPay) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail3); - // 企业补充医疗保险基金支出 - BigDecimal hifesPay = clinicOrder2207Result.getHifesPay(); - PaymentRecDetail paymentRecDetail4 = new PaymentRecDetail(); - paymentRecDetail4.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_BC_FUND_AMOUNT.getLevel()) - .setAmount(hifesPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail4); - // 居民大病保险资金支出 - BigDecimal hifmiPay = clinicOrder2207Result.getHifmiPay(); - PaymentRecDetail paymentRecDetail5 = new PaymentRecDetail(); - paymentRecDetail5.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_JM_DB_VALUE.getValue()).setPayLevelEnum(YbPayment.YB_BC_JM_DB_VALUE.getLevel()) - .setAmount(hifmiPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail5); - // 职工大额医疗费用补助基金支出 - BigDecimal hifobPay = clinicOrder2207Result.getHifobPay(); - PaymentRecDetail paymentRecDetail6 = new PaymentRecDetail(); - paymentRecDetail6.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getValue()) - .setPayLevelEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getLevel()).setAmount(hifobPay) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail5); - // 职工大额医疗费用补助基金支出 - BigDecimal mafPay = clinicOrder2207Result.getMafPay(); - PaymentRecDetail paymentRecDetail7 = new PaymentRecDetail(); - paymentRecDetail7.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_JZ_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_JZ_FUND_AMOUNT.getLevel()) - .setAmount(mafPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail7); - // 其他支出 - BigDecimal othPay = clinicOrder2207Result.getOthPay(); - PaymentRecDetail paymentRecDetail8 = new PaymentRecDetail(); - paymentRecDetail8.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) - .setAmount(othPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail8); - // 基金支付总额 - BigDecimal fundPaySumamt = clinicOrder2207Result.getFundPaySumamt(); - PaymentRecDetail paymentRecDetail9 = new PaymentRecDetail(); - paymentRecDetail9.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_FUND_PAY.getValue()).setPayLevelEnum(YbPayment.YB_FUND_PAY.getLevel()) - .setAmount(fundPaySumamt).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail9); - // 个人账户支出 - BigDecimal acctPay = clinicOrder2207Result.getAcctPay(); - PaymentRecDetail paymentRecDetail11 = new PaymentRecDetail(); - paymentRecDetail11.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_YB_ZH_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_YB_ZH_PAY.getLevel()) - .setAmount(acctPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail11); - // 医院负担金额 - BigDecimal hospPartAmt = clinicOrder2207Result.getHospPartAmt(); - PaymentRecDetail paymentRecDetail12 = new PaymentRecDetail(); - paymentRecDetail12.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) - .setAmount(hospPartAmt).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail12); - // 个人账户共济支付金额 - BigDecimal acctMulaidPay = clinicOrder2207Result.getAcctMulaidPay(); - PaymentRecDetail paymentRecDetail13 = new PaymentRecDetail(); - paymentRecDetail13.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getValue()) - .setPayLevelEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getLevel()).setAmount(acctMulaidPay) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail13); - for (Clinic2206FundPaymentResult clinic2206FundPaymentResult : clinicOrder2207Result.getSetldetail()) { - PaymentRecDetail detail = new PaymentRecDetail(); - YbPayment ybPayment = YbPayment.getByValue(Integer.parseInt(clinic2206FundPaymentResult.getFundPayType())); - detail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum).setPayEnum(ybPayment.getValue()) - .setPayLevelEnum(ybPayment.getLevel()) - .setAmount(new BigDecimal(clinic2206FundPaymentResult.getFundPayamt().toString())) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(detail); - } - - } - - /** - * 根据医保2207结果和前台参数添加结算记录(弃用)该方法内赋值有错误,若启用或copy需要重新定义里面的赋值内容 - * - * @param clinic2208UnSetlInfoResult - * @param payment - * @param paymentDetails - */ - private void saveBy2208Result(Clinic2208UnSetlInfoResult clinic2208UnSetlInfoResult, PaymentReconciliation payment, - List paymentDetails) { - // 保存付款详情 todo:医保反结是否是负数 - ArrayList paymentRecDetails = new ArrayList<>(); - BigDecimal amount = BigDecimal.ZERO; - String AccountEnum = "04"; - for (PaymentDetailDto paymentDetail : paymentDetails) { - PaymentRecDetail paymentRecDetail = new PaymentRecDetail(); - com.core.common.utils.bean.BeanUtils.copyProperties(paymentDetail, paymentRecDetail); - paymentRecDetail.setReconciliationId(payment.getId()); - paymentRecDetail.setPredecessorId(payment.getId()); - paymentRecDetail.setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail); - amount = amount.add(paymentDetail.getAmount()); - } - // 个人负担总金额 - BigDecimal psnPartAmt = clinic2208UnSetlInfoResult.getPsnPartAmt(); - PaymentRecDetail paymentRecDetail1 = new PaymentRecDetail(); - paymentRecDetail1.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_PAY.getLevel()) - .setAmount(psnPartAmt).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail1); - // 基本医疗保险统筹基金支出 - BigDecimal hifpPay = clinic2208UnSetlInfoResult.getHifpPay(); - PaymentRecDetail paymentRecDetail2 = new PaymentRecDetail(); - paymentRecDetail2.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_TC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_TC_FUND_AMOUNT.getLevel()) - .setAmount(hifpPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail2); - // 公务员医疗补助资金支出 - BigDecimal cvlservPay = clinic2208UnSetlInfoResult.getCvlservPay(); - PaymentRecDetail paymentRecDetail3 = new PaymentRecDetail(); - paymentRecDetail3.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getValue()) - .setPayLevelEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getLevel()).setAmount(cvlservPay) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail3); - // 企业补充医疗保险基金支出 - BigDecimal hifesPay = clinic2208UnSetlInfoResult.getHifesPay(); - PaymentRecDetail paymentRecDetail4 = new PaymentRecDetail(); - paymentRecDetail4.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_BC_FUND_AMOUNT.getLevel()) - .setAmount(hifesPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail4); - // 居民大病保险资金支出 - BigDecimal hifmiPay = clinic2208UnSetlInfoResult.getHifmiPay(); - PaymentRecDetail paymentRecDetail5 = new PaymentRecDetail(); - paymentRecDetail5.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_JM_DB_VALUE.getValue()).setPayLevelEnum(YbPayment.YB_BC_JM_DB_VALUE.getLevel()) - .setAmount(hifmiPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail5); - // 职工大额医疗费用补助基金支出 - BigDecimal hifobPay = clinic2208UnSetlInfoResult.getHifobPay(); - PaymentRecDetail paymentRecDetail6 = new PaymentRecDetail(); - paymentRecDetail6.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getValue()) - .setPayLevelEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getLevel()).setAmount(hifobPay) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail5); - // 职工大额医疗费用补助基金支出 - BigDecimal mafPay = clinic2208UnSetlInfoResult.getMafPay(); - PaymentRecDetail paymentRecDetail7 = new PaymentRecDetail(); - paymentRecDetail7.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_JZ_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_JZ_FUND_AMOUNT.getLevel()) - .setAmount(mafPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail7); - // 其他支出 - BigDecimal othPay = clinic2208UnSetlInfoResult.getOthPay(); - PaymentRecDetail paymentRecDetail8 = new PaymentRecDetail(); - paymentRecDetail8.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) - .setAmount(othPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail8); - // 基金支付总额 - BigDecimal fundPaySumamt = clinic2208UnSetlInfoResult.getFundPaySumamt(); - PaymentRecDetail paymentRecDetail9 = new PaymentRecDetail(); - paymentRecDetail9.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.YB_FUND_PAY.getValue()).setPayLevelEnum(YbPayment.YB_FUND_PAY.getLevel()) - .setAmount(fundPaySumamt).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail9); - // 个人账户支出 - BigDecimal acctPay = clinic2208UnSetlInfoResult.getAcctPay(); - PaymentRecDetail paymentRecDetail11 = new PaymentRecDetail(); - paymentRecDetail11.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_YB_ZH_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_YB_ZH_PAY.getLevel()) - .setAmount(acctPay).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail11); - // 医院负担金额 - BigDecimal hospPartAmt = clinic2208UnSetlInfoResult.getHospPartAmt(); - PaymentRecDetail paymentRecDetail12 = new PaymentRecDetail(); - paymentRecDetail12.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) - .setAmount(hospPartAmt).setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail12); - // 个人账户共济支付金额 - BigDecimal acctMulaidPay = clinic2208UnSetlInfoResult.getAcctMulaidPay(); - PaymentRecDetail paymentRecDetail13 = new PaymentRecDetail(); - paymentRecDetail13.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) - .setPayEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getValue()) - .setPayLevelEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getLevel()).setAmount(acctMulaidPay) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(paymentRecDetail13); - for (Clinic2206FundPaymentResult clinic2206FundPaymentResult : clinic2208UnSetlInfoResult.getSetldetail()) { - PaymentRecDetail detail = new PaymentRecDetail(); - YbPayment ybPayment = YbPayment.getByValue(Integer.parseInt(clinic2206FundPaymentResult.getFundPayType())); - detail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum).setPayEnum(ybPayment.getValue()) - .setPayLevelEnum(ybPayment.getLevel()) - .setAmount(new BigDecimal(clinic2206FundPaymentResult.getFundPayamt().toString())) - .setResultEnum(PaymentResult.PAID.getValue()); - paymentRecDetails.add(detail); - } - - } - - /** - * 保存预结算接口的记录信息 - * - * @param clinic2206OrderParam 2206医保入参 - * @param clinic2206OrderResult 2206医保输出 - * @param clinic2203MedicalParam 2203医保入参 - * @param clinic2204OrderParam 2204医保入参 - * @param clinic2204OrderResult 2204医保输出 - */ - public void saveClinicOrder2206Param(Clinic2206OrderParam clinic2206OrderParam, - Clinic2206OrderOutput clinic2206OrderResult, Clinic2203MedicalParam clinic2203MedicalParam, - Clinic2204OrderParam clinic2204OrderParam, Clinic2204OrderResult clinic2204OrderResult) { - - ClinicPreSettle clinicPreSettle = new ClinicPreSettle(); - BeanUtils.copyProperties(clinic2204OrderParam, clinicPreSettle); - BeanUtils.copyProperties(clinic2206OrderResult, clinicPreSettle); - clinicPreSettle.setParam2203(JSON.toJSONString(clinic2203MedicalParam)) - .setParam2204(JSON.toJSONString(clinic2204OrderParam)).setParam2206(JSON.toJSONString(clinic2206OrderParam)) - .setResult2204(JSON.toJSONString(clinic2204OrderResult)) - .setResult2206(JSON.toJSONString(clinic2206OrderResult)).setChrgBchno(clinic2206OrderParam.getChrgBchno()) - .setMdtrtId(clinic2206OrderParam.getMdtrtId()).setPsnNo(clinic2206OrderParam.getPsnNo()) - .setDeleteFlag(DelFlag.NO.getCode()); - - iClinicPreSettleService.save(clinicPreSettle); - } - - /** - * 保存签到信息 - * - * @param signParam 【9001】参数 - * @param signResult 【9001】参数 - */ - public void saveSign(Sign signParam, Sign9001Result signResult) { - com.openhis.yb.domain.Sign sign = new com.openhis.yb.domain.Sign(); - BeanUtils.copyProperties(signParam, sign); - BeanUtils.copyProperties(signResult, sign); - sign.setSignNo(signResult.getSignNo()).setOpterNo(signParam.getOpterNo()); - iSignService.save(sign); - } - - /** - * 取消挂号 - * - * @param regResult 【2202】参数 - */ - public void saveUnReg(ClinicReg2201Output regResult) { - ClinicUnReg clinicUnReg = new ClinicUnReg(); - BeanUtils.copyProperties(regResult, clinicUnReg); - clinicUnReg.setUnRegTime(new Date()); - iClinicUnRegService.save(clinicUnReg); - } - - /** - * 【2208】医保反结算 - * - * @param tenantId 租户id - * @param settleId 结算id - * @return 【2208】参数 - */ - public Clinic2208UnSetlInfoParam getClinicOrder2208(Integer tenantId, String settleId) { - return ybUtil.getClinicOrder2208(tenantId, settleId); - } - - /** - * 【3301】目录对照 - * - * @param tableName 表名 - * @param id 主键 - * @return 【3301】入参 - */ - public MedicalDirectory3301Param getMedicalDirectory3301Param(String tableName, Long id) { - return ybUtil.getMedicalDirectory3301Param(tableName, id); - } - - /** - * 【3301】医保目录对照参数作成(药品) - * - * @param categoryCode 药品分类 - * @param busNo 药品编号 - * @param name 药品编号 - * @param ybNo 医保编码 - * @return 医保目录对照参数 - */ - public MedicalDirectory3301Param getMedicalDirectory3301ParamMedication(String categoryCode, String busNo, - String name, String ybNo) { - return ybUtil.getMedicalDirectory3301ParamMedication(categoryCode, busNo, name, ybNo); - } - - /** - * 【3302】目录对照撤销 - * - * @param tableName 表名 - * @param id 主键 - * @return - */ - public MedicalDirectory3302Param getMedicalDirectory3302Param(String tableName, Long id) { - return ybUtil.getMedicalDirectory3302Param(tableName, id); - } - - /** - * 【3302】医保目录对照撤销参数作成(药品) - * - * @param categoryCode 药品分类 - * @param busNo 药品编号 - * @param ybNo 医保编码 - * @return 医保目录对照撤销参数 - */ - public MedicalDirectory3302Param getMedicalDirectory3302ParamMedication(String categoryCode, String busNo, - String ybNo) { - return ybUtil.getMedicalDirectory3302ParamMedication(categoryCode, busNo, ybNo); - } - - /** - * 【3201】医药机构费用结算对总账 - * - * @param reconciliation3201Param 参数信息 - * @return 入参 - */ - public Financial3201Param getFinancial3201Param(Settlement3201WebParam reconciliation3201Param) { - String insuType = reconciliation3201Param.getInsuType(); - if (StringUtils.isEmpty(insuType)) { - // insuType = "310"; - // reconciliation3201Param.setInsuType("310"); - throw new ServiceException("请选择险种类型"); - } - String clrType = reconciliation3201Param.getClrType(); - if (StringUtils.isEmpty(clrType)) { - throw new ServiceException("请选择医疗类型:住院/门诊"); - } - String contractNo = reconciliation3201Param.getContractNo(); - if (StringUtils.isEmpty(contractNo)) { - throw new ServiceException("请选择合同类型"); - } - Settlement3201DetailDto settlement3201DetailDto = null; - List settlement3201DetailDtos = - this.reconcileGeneralLedgerDetail(reconciliation3201Param); - for (Settlement3201DetailDto item : settlement3201DetailDtos) { - if (contractNo.equals(item.getContractNo()) && insuType.equals(item.getInsutype().toString()) - && clrType.equals(item.getClrType())) { - settlement3201DetailDto = item; - } - } - if (settlement3201DetailDto == null) { - throw new ServiceException("未查询到相关信息"); - } - return ybUtil.getFinancial3201Param(reconciliation3201Param, settlement3201DetailDto); - } - - /** - * 保存记录 - * - * @param tableName 表名 - * @param id 主键id - * @param s 类型 3301/3302 - * @param medicalDirectory3301Param 参数信息 - */ - public void saveDirectoryHistory(String tableName, Long id, Integer s, - MedicalDirectory3301Param medicalDirectory3301Param) { - Long hospitalId = SecurityUtils.getLoginUser().getHospitalId(); - DirectoryCheckRecord directoryCheckRecord = new DirectoryCheckRecord(); - directoryCheckRecord.setTableName(tableName).setTableId(id).setOrgId(hospitalId).setType(s) - .setParam(JSON.toJSONString(medicalDirectory3301Param)); - directoryCheckRecordService.save(directoryCheckRecord); - } - - /** - * 保存记录 - * - * @param tableName 表名 - * @param id 主键id - * @param s 类型 3301/3302 - * @param medicalDirectory3302Param 参数信息 - */ - public void saveDirectoryHistory(String tableName, Long id, Integer s, - MedicalDirectory3302Param medicalDirectory3302Param) { - Long hospitalId = SecurityUtils.getLoginUser().getHospitalId(); - DirectoryCheckRecord directoryCheckRecord = new DirectoryCheckRecord(); - directoryCheckRecord.setTableName(tableName).setTableId(id).setOrgId(hospitalId).setType(s) - .setParam(JSON.toJSONString(medicalDirectory3302Param)); - directoryCheckRecordService.save(directoryCheckRecord); - } - - /** - * 【9001】签到 - * - * @param id 员工id - * @return 9001参数 - */ - public Sign getSignParam(String id, String mac, String ip) { - Practitioner practitioner = iPractitionerService.getById(Long.valueOf(id)); - if (practitioner == null) { - throw new ServiceException("未查询到员工信息"); - } - Sign sign = new Sign(); - sign.setOpterNo(practitioner.getBusNo()).setMac(mac.replace(" ", "+")).setIp(ip) - .setOpterNo(String.valueOf(practitioner.getId())); - return sign; - } - - /** - * 保存3201的信息 - * - * @param financial3201Output 对账结果信息 - */ - public void saveReconcileGeneralLedger(Financial3201Output financial3201Output, - Financial3201Param financial3201Param) { - FinancialReconcileRecord financialReconcileRecord = new FinancialReconcileRecord(); - BeanUtils.copyProperties(financial3201Output, financialReconcileRecord); - financialReconcileRecord.setParam(JSON.toJSONString(financial3201Output)); - financialReconcileRecord.setFixmedinsName(financial3201Param.getFixmedinsName()); - financialReconcileRecord.setAcctPay(financial3201Param.getAcctPay()); - financialReconcileRecord.setFundPaySumamt(financial3201Param.getFundPaySumamt()); - financialReconcileRecord.setFixmedinsCode(financial3201Param.getFixmedinsCode()); - financialReconcileRecord.setClrType(financial3201Param.getClrType()); - financialReconcileRecord.setFixmedinsSetlCnt(financial3201Param.getFixmedinsSetlCnt()); - financialReconcileRecord.setMedfeeSumamt(financial3201Param.getMedfeeSumamt()); - financialReconcileRecord.setSetlOptins(financial3201Param.getSetlOptins()); - iFinancialReconcileRecordService.save(financialReconcileRecord); - } - - /** - * 【3202】明细对账 - * - * @param settlement3202WebParam 前台参数 - * @return 3202参数 - */ - public FinancialSettlement3202Param getFinancialSettlement3202Param(Settlement3202WebParam settlement3202WebParam) { - return ybUtil.getFinancialSettlement3202Param(settlement3202WebParam); - } - - /** - * 【3209A】查询跨省三方对账未成功数据(吉林省) - * - * @param settlement3209AWebParam 前台参数 - * @return 结果 - */ - public FinancialSettlement3209AParam - getFinancialSettlement3209AParam(Settlement3209AWebParam settlement3209AWebParam) { - return ybUtil.getFinancialSettlement3209AParam(settlement3209AWebParam); - } - - /** - * 【3203A】清算申请(吉林省) - * - * @param financial3203AWebParam 前台参数 - * @return 结果 - */ - public Financial3203AParam getFinancial3203AParam(Financial3203AWebParam financial3203AWebParam) { - // 查询3202的所有实体记录 - List financial3202FileParams = - paymentCompareYbSettle(financial3203AWebParam.getSettlementIdList()); - // 处理赋值 - Financial3203AParam busMonthSetlApply = getInitFinancial3203AParam(financial3202FileParams); - // 时间处理 - getFinancial3203AParamForTime(busMonthSetlApply, - DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss:", financial3203AWebParam.getStmtBegnDate()), - DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss:", financial3203AWebParam.getStmtEndDate())); - // 将 Date 转换为 LocalDate(Java 8+) - // LocalDate begnLocalDate = financial3203AWebParam.getStmtBegnDate().toInstant() - // .atZone(ZoneId.systemDefault()) - // .toLocalDate(); - // LocalDate endLocalDate = financial3203AWebParam.getStmtEndDate().toInstant() - // .atZone(ZoneId.systemDefault()) - // .toLocalDate(); - - // 格式化为 "yyyy-MM-dd" - // DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - // String begnDateStr = begnLocalDate.format(formatter); - // String endDateStr = endLocalDate.format(formatter); - - // Financial3203AParam busMonthSetlApply = new Financial3203AParam(); - // 赋值 - busMonthSetlApply.setClrType(financial3203AWebParam.getClrType()) - // .setBegndate(DateUtils.dateTime("yyyy-MM-dd", begnDateStr)) - // .setEnddate(DateUtils.dateTime("yyyy-MM-dd", endDateStr)) - .setClrOptins(financial3203AWebParam.getClrOptins()); - return busMonthSetlApply; - } - - /** - * 自动申请清算 - * - * @param financial3202FileParams - * @param beginTime - * @param endTime - * @param clrType - * @param clrOptins - * @return - */ - public Financial3203AParam getFinancial3203AParam(List financial3202FileParams, - String beginTime, String endTime, String clrType, String clrOptins) { - if (financial3202FileParams.isEmpty()) { - throw new ServiceException("无医保结算数据"); - } - Financial3203AParam financial3203AParam = getInitFinancial3203AParam(financial3202FileParams); - - getFinancial3203AParamForTime(financial3203AParam, beginTime, endTime); - - return financial3203AParam.setClrType(clrType).setClrOptins(clrOptins); - } - - /** - * 自动申请清算 - * - * @param financial3203AParam - * @param beginTime - * @param endTime - * @return - */ - public Financial3203AParam getFinancial3203AParamForTime(Financial3203AParam financial3203AParam, - @NotNull String beginTime, @NotNull String endTime) { - - // 定义日期时间格式 - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); - - // 解析成 LocalDateTime(包含日期+时间) - LocalDateTime begnLocalDateTime = LocalDateTime.parse(beginTime, formatter); - LocalDateTime endLocalDateTime = LocalDateTime.parse(endTime, formatter); - - // 转换成 LocalDate(自动丢弃时间部分) - LocalDate begnLocalDate = begnLocalDateTime.toLocalDate(); - LocalDate endLocalDate = endLocalDateTime.toLocalDate(); - - // 格式化为 "yyyy-MM-dd" - DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - String begnDateStr = begnLocalDate.format(dateFormatter); - String endDateStr = endLocalDate.format(dateFormatter); - - // Financial3203AParam busMonthSetlApply = new Financial3203AParam(); - // 再赋值 - financial3203AParam.setBegndate(DateUtils.dateTime("yyyy-MM-dd", begnDateStr)) - .setEnddate(DateUtils.dateTime("yyyy-MM-dd", endDateStr)); - return financial3203AParam; - } - - /** - * 【3203A】Financial3203AParam清算申请参数处理(吉林省) - * - * @param financial3202FileParams 入参 - * @return 结果 - */ - public Financial3203AParam getInitFinancial3203AParam(List financial3202FileParams) { - - BigDecimal medfeeSumamt = BigDecimal.ZERO; - BigDecimal fundPaySumamt = BigDecimal.ZERO; - BigDecimal medSumfee = BigDecimal.ZERO; - BigDecimal acctPay = BigDecimal.ZERO; - BigDecimal cashPay = BigDecimal.ZERO; - for (Financial3202FileParam financial3202FileParam : financial3202FileParams) { - if (financial3202FileParam instanceof Financial3202OtherParam otherParam) { - medfeeSumamt = medfeeSumamt.add(otherParam.getMedfeeSumamt()); - fundPaySumamt = fundPaySumamt.add(otherParam.getFundPaySumamt()); - acctPay = acctPay.add(otherParam.getAcctPay()); - cashPay = cashPay.add(otherParam.getCashPayamt()); - medSumfee = medSumfee.add(otherParam.getMedSumfee()); - } - } - // 赋值 - Financial3203AParam busMonthSetlApply = new Financial3203AParam(); - busMonthSetlApply.setMedfeeSumamt(medfeeSumamt).setMedSumfee(medSumfee).setCashPayamt(cashPay) - .setAcctPay(acctPay); - // .setClrType(financial3203AWebParam.getClrType()) - // .setClrOptins(financial3203AWebParam.getClrOptins()) - // .setBegndate(DateUtils.dateTime("yyyy-MM-dd", begnDateStr)) - // .setEnddate(DateUtils.dateTime("yyyy-MM-dd", endDateStr)); - return busMonthSetlApply; - } - - /** - * 【3205A】清算申请状态查询(吉林省) - * - * @param clearing3205AWebParma 前台参数 - * @return 结果 - */ - public Clearing3205AParma getClearing3205AParma(Clearing3205AWebParma clearing3205AWebParma) { - return ybUtil.getClearing3205AParma(clearing3205AWebParma); - } - - /** - * 【3501】商品盘存上传 - * - * @param id 供应申请id - * @param talentId 租户id - * @return 结果 - */ - public MedicalInventory3501Param getMedicalInventory3501Param(Long id, Integer talentId) { - return ybUtil.getMedicalInventory3501Param(id, talentId); - } - - /** - * 【3502】库存信息变更 - * - * @param id 供应链发放id - * @param invChgType 变更类型 参考枚举 - * @param talentId 租户id - * @return 结果 - */ - public MedicalInventory3502Param getMedicalInventory3502Param(Long id, String invChgType, Integer talentId) { - return ybUtil.getMedicalInventory3502Param(id, invChgType, talentId); - } - - /** - * 【3503】商品采购 - * - * @param id 供应发放id - * @param talentId 租户id - * @return 结果 - */ - public Medical3503Param getMedical3503Param(Long id, Integer talentId) { - return ybUtil.getMedical3503Param(id, talentId); - } - - /** - * 【3504】商品采购退货 - * - * @param id 供应发放id - * @param talentId 租户id - * @return 结果 - */ - public MedicalPurchase3504Param getMedicalPurchase3504Param(Long id, Integer talentId) { - return ybUtil.getMedicalPurchase3504Param(id, talentId); - } - - /** - * 【3505】商品销售 - * - * @param id 发放id - * @param ListType 耗材/药品 - * @param talentId 租户id - * @return 结果 - */ - public Medical3505Param getMedical3505Param(Long id, String ListType, Integer talentId) { - return ybUtil.getMedical3505Param(id, ListType, talentId); - } - - /** - * 【3506】商品销售退货 - * - * @param id 对应发放业务的主键id - * @param ListType 目录种类 - * @param talentId 租户id - * @return 3506参数 - */ - public Medical3506Param getMedical3506Param(Long id, String ListType, Integer talentId) { - return ybUtil.getMedical3506Param(id, ListType, talentId); - } - - /** - * 【3507】商品信息删除参数 - * - * @param id 库存项目id - * @param invDataType 进销存类型 - * @return 3507参数 - */ - public Medical3507Param getMedical3507Param(Long id, String invDataType) { - return ybUtil.getMedical3507Param(id, invDataType); - } - - /** - * 保存清算申请参数 - * - * @param financial3203AParam 3203A入参 - * @param s 一包返回结果 - */ - public void save3203AFinancialClearingApplycation(Financial3203AParam financial3203AParam, String s) { - FinancialApplyRecord financialApplyRecord = new FinancialApplyRecord(); - BeanUtils.copyProperties(financial3203AParam, financialApplyRecord); - financialApplyRecord.setParam(JSON.toJSONString(financial3203AParam)).setOutResult(s) - .setPraId(SecurityUtils.getLoginUser().getPractitionerId()).setStatus("0"); - iFinancialApplyRecordService.save(financialApplyRecord); - } - - /** - * 清算申请撤销 - * - * @param clrAppyEvtId 时间id - * @param clrOptins 清算机构 - */ - public void save3204AFinancialClearingApplycation(String clrAppyEvtId, String clrOptins) { - iFinancialApplyRecordService.update(new FinancialApplyRecord().setStatus("1"), - new LambdaUpdateWrapper().eq(FinancialApplyRecord::getOutResult, clrAppyEvtId)); - } - - /** - * 保存数据 - * - * @param medicalInventory3501Param 3501参数 - */ - - public void saveInventoryCheckRecord(MedicalInventory3501Param medicalInventory3501Param, String resultMessage) { - InventoryCheckRecord inventoryCheckRecord = new InventoryCheckRecord(); - BeanUtils.copyProperties(medicalInventory3501Param, inventoryCheckRecord); - inventoryCheckRecord.setParam(JSON.toJSONString(medicalInventory3501Param)); - inventoryCheckRecord.setResult(JSON.toJSONString(resultMessage)); - iInventoryCheckRecordService.save(inventoryCheckRecord); - } - - /** - * 保存数据 - * - * @param medical3507Param 3507参数 - */ - public void saveInventoryDelRecord(Medical3507Param medical3507Param) { - InventoryDelRecord inventoryDelRecord = new InventoryDelRecord(); - BeanUtils.copyProperties(medical3507Param, inventoryDelRecord); - inventoryDelRecord.setParam(JSON.toJSONString(medical3507Param)); - iInventoryDelRecordService.save(inventoryDelRecord); - } - - /** - * 保存数据 - * - * @param medical3506Param 3506参数 - */ - public void saveInventorySaleReturnRecord(Medical3506Param medical3506Param, String retRslt) { - InventorySaleReturnRecord inventorySaleReturnRecord = new InventorySaleReturnRecord(); - BeanUtils.copyProperties(medical3506Param, inventorySaleReturnRecord); - inventorySaleReturnRecord.setParam(JSON.toJSONString(medical3506Param)); - inventorySaleReturnRecord.setOutResult(JSON.toJSONString(retRslt)); - iInventorySaleReturnRecordService.save(inventorySaleReturnRecord); - } - - /** - * 保存数据 - * - * @param medical3505Param 3505参数 - */ - public void saveInventorySaleRecord(Medical3505Param medical3505Param, String retRslt) { - InventorySaleRecord inventorySaleRecord = new InventorySaleRecord(); - BeanUtils.copyProperties(medical3505Param, inventorySaleRecord); - inventorySaleRecord.setParam(JSON.toJSONString(medical3505Param)); - inventorySaleRecord.setOutResult(JSON.toJSONString(retRslt)); - inventorySaleRecord.setDrugtracinfo(JSON.toJSONString(medical3505Param.getDrugtracinfo())); - iInventorySaleRecordService.save(inventorySaleRecord); - } - - /** - * 保存数据 - * - * @param medicalPurchase3504Param 3504参数 - */ - public void saveInventoryPurchaseReturnRecord(MedicalPurchase3504Param medicalPurchase3504Param, - String resultMessage) { - InventoryPurchaseReturnRecord inventoryPurchaseReturnRecord = new InventoryPurchaseReturnRecord(); - BeanUtils.copyProperties(medicalPurchase3504Param, inventoryPurchaseReturnRecord); - inventoryPurchaseReturnRecord.setParam(JSON.toJSONString(medicalPurchase3504Param)); - inventoryPurchaseReturnRecord.setOutResult(JSON.toJSONString(resultMessage)); - iInventoryPurchaseReturnRecordService.save(inventoryPurchaseReturnRecord); - } - - /** - * 保存数据 - * - * @param medical3503Param 3503参数 - */ - public void saveInventoryPurchaseRecord(Medical3503Param medical3503Param, String resultMessage) { - InventoryPurchaseRecord inventoryPurchaseRecord = new InventoryPurchaseRecord(); - BeanUtils.copyProperties(medical3503Param, inventoryPurchaseRecord); - inventoryPurchaseRecord.setParam(JSON.toJSONString(medical3503Param)); - inventoryPurchaseRecord.setOutResult(JSON.toJSONString(resultMessage)); - iInventoryPurchaseRecordService.save(inventoryPurchaseRecord); - } - - /** - * 保存数据 - * - * @param medicalInventory3502Param 3502参数 - */ - public void saveInventoryChangeRecord(MedicalInventory3502Param medicalInventory3502Param, String resultMessage) { - InventoryChangeRecord inventoryChangeRecord = new InventoryChangeRecord(); - BeanUtils.copyProperties(medicalInventory3502Param, inventoryChangeRecord); - inventoryChangeRecord.setParam(JSON.toJSONString(medicalInventory3502Param)); - inventoryChangeRecord.setResult(JSON.toJSONString(resultMessage)); - iInventoryChangeRecordService.save(inventoryChangeRecord); - } - - /** - * 保存医保结算参数等信息(挂号用) - * - * @param paymentNo - * @param clinicOrder2207 - * @param clinic2206OrderResult - */ - public void saveClinic2207Record(String paymentNo, Clinic2207OrderParam clinicOrder2207, - Clinic2207OrderModel clinic2206OrderResult) { - ClinicSettle clinicSettle = new ClinicSettle(); - BeanUtils.copyProperties(clinic2206OrderResult, clinicSettle); - clinicSettle.setParam2207(JSON.toJSONString(clinicOrder2207)) - .setResult2207(JSON.toJSONString(clinic2206OrderResult)).setPaymentNo(paymentNo); - iClinicSettleService.save(clinicSettle); - } - - /** - * 保存医保结算参数等信息(常规结算用) - * - * @param clinicOrder2207 - * @param clinic2206OrderResult - */ - public void saveClinic2207Record(Clinic2207OrderParam clinicOrder2207, Clinic2207OrderModel clinic2206OrderResult) { - ClinicSettle clinicSettle = new ClinicSettle(); - BeanUtils.copyProperties(clinic2206OrderResult, clinicSettle); - clinicSettle.setParam2207(JSON.toJSONString(clinicOrder2207)) - .setResult2207(JSON.toJSONString(clinic2206OrderResult)); - iClinicSettleService.save(clinicSettle); - } - - public PatientInfoDto getPatent(Info1101Output perInfo) { - // 查患者信息 - Patient patient = - iPatientService.getOne(new LambdaQueryWrapper().eq(Patient::getIdCard, perInfo.getCertno())); - if (patient == null) { - patient = new Patient(); - // 处理性别字段 - YbGender ybGender = YbGender.getByValue(perInfo.getGend()); - AdministrativeGender administrativeGender; - switch (ybGender) { - case MALE: - administrativeGender = AdministrativeGender.MALE; - break; - case FEMALE: - administrativeGender = AdministrativeGender.FEMALE; - break; - default: - administrativeGender = AdministrativeGender.UNKNOWN; - break; - } - // 新建患者 - patient.setIdCard(perInfo.getCertno()).setName(perInfo.getPsnName()) - .setGenderEnum(administrativeGender.getValue()).setActiveFlag(0).setTempFlag(0) - .setOrganizationId(SecurityUtils.getLoginUser().getOrgId()).setBirthDate(perInfo.getBrdy()); - iPatientService.savePatient(patient); - } - // 赋值 - PatientInfoDto patientInfoDto = new PatientInfoDto(); - BeanUtils.copyProperties(patient, patientInfoDto); - // 查合同 2025/05/23 弃用,费用性质固定,如农大只有省医保,费用性质只显示省医保和自费即可,由@GetMapping(value = "/contract-list")接口提供数据 - Contract contract = iContractService - .getOne(new LambdaQueryWrapper().eq(Contract::getAdmVs, perInfo.getInsuplcAdmdvs())); - if (contract != null) { - // BeanUtils.copyProperties(contract, patientInfoDto); - patientInfoDto.setContractBusNo(contract.getBusNo()); - } - patientInfoDto.setId(patient.getId()).setFeedetail(perInfo.getFeedetail()); - - return patientInfoDto; - } - - public ClinicReg getUnReg(Long encounterId, Integer tenantId) { - - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("查询不到就诊信息"); - } - - ClinicReg one = - iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); - if (one == null) { - throw new ServiceException("查询不到医保挂号信息"); - } - ClinicReg clinicReg = new ClinicReg().setPsnNo(one.getPsnNo()).setMdtrtId(one.getMdtrtId()) - .setIptOtpNo(encounter.getBusNo()).setInsuplcAdmdvs(one.getInsuplcAdmdvs()); - if (clinicReg == null) { - throw new ServiceException("未生成2202参数"); - } - return clinicReg; - } - - public List reconcileGeneralLedgerDetail(Settlement3201WebParam settlement3201WebParam) { - // 获取条件 - String clrType = settlement3201WebParam.getClrType();// 住院 or 门诊 - String contractNo = settlement3201WebParam.getContractNo();// 省市医保 - String insuType = settlement3201WebParam.getInsuType();// 职工 or 居民保险 - String stmtBegnDate = settlement3201WebParam.getStmtBegnDate();// 开始时间 - String stmtEndDate = settlement3201WebParam.getStmtEndDate();// 结束时间 - Date startDate = DateUtils.parseDate(stmtBegnDate); - Date endDate = DateUtils.parseDate(stmtEndDate); - // 处理时间 - if (StringUtils.isEmpty(stmtBegnDate) || StringUtils.isEmpty(stmtEndDate)) { - // 获取当前日期 - LocalDate currentDate = LocalDate.now(); - - if (StringUtils.isEmpty(stmtBegnDate)) { - // 获取当月的开始时间(当月的1号 00:00:00) - LocalDateTime startOfMonth = LocalDateTime.of(currentDate, LocalTime.MIN); - startDate = Date.from(startOfMonth.atZone(ZoneId.systemDefault()).toInstant()); - stmtBegnDate = DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss.SSS", startDate); - } - - if (StringUtils.isEmpty(stmtEndDate)) { - // 获取当月的结束时间(当月的最后一天 23:59:59) - LocalDate endOfMonthDate = currentDate.withDayOfMonth(currentDate.lengthOfMonth()); - LocalDateTime endOfMonth = LocalDateTime.of(endOfMonthDate, LocalTime.MAX); - endDate = Date.from(endOfMonth.atZone(ZoneId.systemDefault()).toInstant()); - stmtEndDate = DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss.SSS", endDate); - } - } - // 查询该段时间内的payment - List paymentReconciliations = - iPaymentReconciliationService.list(new LambdaQueryWrapper() - .between(PaymentReconciliation::getBillDate, startDate, endDate) - .ne(PaymentReconciliation::getStatusEnum, PaymentStatus.DRAFT.getValue()) - .eq(PaymentReconciliation::getKindEnum, PaymentKind.OUTPATIENT_CLINIC.getValue()) - .isNotNull(PaymentReconciliation::getYbSettleIds)); - // 过滤医保结算id - List settleIdList = - paymentReconciliations.stream().filter(e -> StringUtils.isNotEmpty(e.getYbSettleIds())) - .map(PaymentReconciliation::getYbSettleIds).collect(Collectors.toList()); - - // List allSettleIds = settleIdList.stream().flatMap(ids -> Stream.of(ids.split(","))).filter(id -> - // !id.isEmpty()).collect(Collectors.toList()); - // 获取新的paymentId集合 - List paymentReconciliationIdList = - paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); - // List paymentRecDetailList = iPaymentRecDetailService.list(new - // LambdaQueryWrapper().in(PaymentRecDetail::getReconciliationId, - // paymentReconciliationIdList)); - // List accountIds = - // paymentRecDetailList.stream().map(PaymentRecDetail::getAccountId).collect(Collectors.toList()); - // List accountList = accountService.list(new LambdaQueryWrapper().in(Account::getId, - // accountIds)); - // 查询支付详情记录信息 - List paymentDecDetailUniAccountDtos = - medicalInsuranceMapper.getPaymentDecDetailUniAccountDtoListByPaymentIdList(paymentReconciliationIdList, - startDate, endDate, PaymentStatus.DRAFT.getValue()); - // 声明变量 - List settlement3201DetailDtos = new ArrayList<>(); - // Settlement3201DetailDto settlement3201ProEMPOutDto = new Settlement3201DetailDto();//省医保门诊职工 - // Settlement3201DetailDto settlement3201CityEMPOutDto = new Settlement3201DetailDto();//市医保门诊居民 - // Settlement3201DetailDto settlement3201ProRESOutDto = new Settlement3201DetailDto();//省医保门诊职工 - // Settlement3201DetailDto settlement3201CityRESOutDto = new Settlement3201DetailDto();//市医保门诊居民 - // Settlement3201DetailDto settlement3201ProEMPInDto = new Settlement3201DetailDto();//省医保住院职工 - // Settlement3201DetailDto settlement3201CityEMPInDto = new Settlement3201DetailDto();//市医保住院居民 - // Settlement3201DetailDto settlement3201ProRESInDto = new Settlement3201DetailDto();//省医保住院职工 - // Settlement3201DetailDto settlement3201CityRESInDto = new Settlement3201DetailDto();//市医保住院居民 - Settlement3201DetailDto settlement3201Dto;// 声明变量 - // 分组处理 - // for (PaymentDecDetailUniAccountDto paymentDecDetailUniAccountDto : paymentDecDetailUniAccountDtos) { - // if(StringUtils.isEmpty(paymentDecDetailUniAccountDto.getContractNo())){ - // System.out.println(paymentDecDetailUniAccountDto.getId()); - // } - // } - for (PaymentDecDetailUniAccountDto paymentDecDetailUniAccountDto : paymentDecDetailUniAccountDtos) { - if (StringUtils.isEmpty(paymentDecDetailUniAccountDto.getContractNo())) { - System.out.println(paymentDecDetailUniAccountDto.getId() + "payment主键:" - + paymentDecDetailUniAccountDto.getReconciliationId()); - } - } - - Map> paymentDecDetailUniAccountDtoMapGroupByContract = - paymentDecDetailUniAccountDtos.stream() - .collect(Collectors.groupingBy(PaymentDecDetailUniAccountDto::getContractNo)); - // 分省市医保 - for (Map.Entry> stringListEntry : paymentDecDetailUniAccountDtoMapGroupByContract - .entrySet()) { - if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(stringListEntry.getKey())) { - continue; - } - if (stringListEntry.getValue().isEmpty()) { - continue; - } - if (!StringUtils.isEmpty(contractNo) && !stringListEntry.getKey().equals(contractNo)) { - continue; - } - // 分住院门诊 - Map> paymentDecDetailUniAccountDtoMapGroupByMedType = - stringListEntry.getValue().stream() - .collect(Collectors.groupingBy(PaymentDecDetailUniAccountDto::getMedType)); - for (Map.Entry> listEntry : paymentDecDetailUniAccountDtoMapGroupByMedType - .entrySet()) { - if (listEntry.getValue().isEmpty()) { - continue; - } - if (!StringUtils.isEmpty(clrType) && !listEntry.getKey().equals(clrType)) { - continue; - } - // 分职工居民 - Map> collect = listEntry.getValue().stream() - .collect(Collectors.groupingBy(PaymentDecDetailUniAccountDto::getInsutype)); - for (Map.Entry> entry : collect.entrySet()) { - if (entry.getValue().isEmpty()) { - continue; - } - if (!StringUtils.isEmpty(insuType) && !entry.getKey().equals(insuType)) { - continue; - } - int count = 0; - settlement3201Dto = new Settlement3201DetailDto(); - settlement3201Dto.setContractNo(stringListEntry.getKey()) - .setInsutype(Integer.parseInt(entry.getKey())).setClrType(listEntry.getKey()); - for (PaymentDecDetailUniAccountDto paymentDecDetailUniAccountDto : entry.getValue()) { - if (YbPayment.YB_FUND_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum())) { - // 基金支付 - settlement3201Dto.setFundPaySumAmt( - paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getFundPaySumAmt())); - // 合计医疗费用 - settlement3201Dto - .setMedFeeSumAmt(new BigDecimal(paymentDecDetailUniAccountDto.getMedfeeSumamt() == null - ? "0.0" : paymentDecDetailUniAccountDto.getMedfeeSumamt()) - .add(settlement3201Dto.getMedFeeSumAmt())); - count++; - } - if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum())) { - // 账户支付 - settlement3201Dto.setAcctPay( - paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getAcctPay())); - } - if (YbPayment.SELF_YB_ZH_GJ_VALUE.getValue() - .equals(paymentDecDetailUniAccountDto.getPayEnum())) { - // 账户共济支付 - settlement3201Dto.setAcctGjPay( - paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getAcctGjPay())); - } - // if (YbPayment.SELF_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum()) - // || YbPayment.OTHER_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum()) - // || YbPayment.YB_FUND_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum())) { - // // 合计医疗费用 - // settlement3201Dto.setMedFeeSumAmt( - // paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getMedFeeSumAmt())); - // } - } - // 结算笔数 - settlement3201Dto.setFixMedInsSetlCnt(count); - settlement3201DetailDtos.add(settlement3201Dto); - } - } - } - // 返回参数 - return settlement3201DetailDtos; - } - - public ClinicReg2201Output getClinicRegByEncounterId(Long encounterId) { - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - ClinicReg clinicReg = - iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); - ClinicReg2201Output clinicReg2201Output = new ClinicReg2201Output(); - BeanUtils.copyProperties(clinicReg, clinicReg2201Output); - clinicReg2201Output.setMedType(clinicReg.getMedType());// copyProperties会有概率copy失败,此处打补丁赋值 - return clinicReg2201Output; - } - - public ClinicReg get2202Reg(Long id, Integer tenantId) { - Encounter encounter = iEncounterService.getById(id); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - return iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); - } - - /** - * 系統數據比較 - * - * @param settlement3202WebParam - */ - public List paymentCompareYbSettle(Settlement3202WebParam settlement3202WebParam) { - // 比较yb_clinic_settle表和payment系列表数据是否一致 - String stmtBegnDate = String.valueOf(settlement3202WebParam.getStmtBegnDate()); - String stmtEndDate = String.valueOf(settlement3202WebParam.getStmtEndDate()); - if (StringUtils.isEmpty(stmtBegnDate) || StringUtils.isEmpty(stmtEndDate)) { - throw new ServiceException("未选择开始与结束时间"); - } - - Date startDate = DateUtils.parseDate(stmtBegnDate); - Date endDate = DateUtils.parseDate(stmtEndDate); - - // 查询该段时间内的payment - List paymentReconciliations = - iPaymentReconciliationService.list(new LambdaQueryWrapper() - .between(PaymentReconciliation::getBillDate, startDate, endDate) - .ne(PaymentReconciliation::getStatusEnum, PaymentStatus.DRAFT.getValue()) - .ne(PaymentReconciliation::getYbSettleIds, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentReconciliation::getYbSettleIds, "null").isNotNull(PaymentReconciliation::getYbSettleIds) - .eq(PaymentReconciliation::getKindEnum, PaymentKind.OUTPATIENT_CLINIC.getValue())); - if (paymentReconciliations.isEmpty()) { - throw new ServiceException("该时间内无付款记录"); - } - - // 过滤医保结算id - List settleIdList = paymentReconciliations.stream() - .filter(e -> StringUtils.isNotEmpty(e.getYbSettleIds())).map(PaymentReconciliation::getYbSettleIds) - .flatMap(ybSettleIds -> Arrays.stream(ybSettleIds.split(","))).collect(Collectors.toList()); - if (settleIdList.isEmpty()) { - throw new ServiceException("该时间内无医保付款记录"); - } - - // 查询医保表数据 - List clinicSettles = - iClinicSettleService.list(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settleIdList)); - List clinicUnSettles = iClinicUnSettleService - .list(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settleIdList)); - - // payment的id集合 - List paymentReconciliationIdList = - paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); - - // 查询详情表数据 - List paymentRecDetailList = - iPaymentRecDetailService.list(new LambdaQueryWrapper() - .in(PaymentRecDetail::getReconciliationId, paymentReconciliationIdList) - .ne(PaymentRecDetail::getPayTransNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentRecDetail::getPayTransText, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_ALI_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VX_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_UNION_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VALUE.getValue())); - if (paymentRecDetailList.isEmpty()) { - throw new ServiceException("该时间内无付款明细记录"); - } - // 该部分代码为辅助调试时使用,无任何业务处理 start - // for (PaymentRecDetail paymentRecDetail : paymentRecDetailList) { - // if (StringUtils.isEmpty(paymentRecDetail.getPayTransText())) { - // System.out.println("*******************************************************************"); - // System.out.println(paymentRecDetail.getId() + "主键:" + paymentRecDetail.getReconciliationId()); - // System.out.println(JSON.toJSONString(paymentRecDetail)); - // // throw new ServiceException("paymentDetail无返回交易码"); - // } - // } - // end - - Map> paymentRecDetailMapBySettleId = - paymentRecDetailList.stream().collect(Collectors.groupingBy(PaymentRecDetail::getPayTransText)); - - List financial3202FileParamList = new ArrayList<>(); - Financial3202FileParam financial3202FileParam; - for (Map.Entry> stringListEntry : paymentRecDetailMapBySettleId.entrySet()) { - // 获取settleId - String settleId = stringListEntry.getKey(); - if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(settleId) || StringUtils.isEmpty(settleId)) { - continue; - } - Optional settleOptional = - clinicSettles.stream().filter(e -> settleId.equals(e.getSetlId())).findAny(); - Optional unSettleOptional = - clinicUnSettles.stream().filter(e -> settleId.equals(e.getSettleId())).findAny(); - if (!settleOptional.isPresent() && !unSettleOptional.isPresent()) { - throw new ServiceException("付款详情中结算id在医保记录中不存在,错误信息:paymentId:" - + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); - } - if (settleOptional.isPresent() && unSettleOptional.isPresent()) { - throw new ServiceException("付款详情中结算id在医保记录中同时存在正结和反结,错误信息:paymentId:" - + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); - } - // 校对金额 - BigDecimal medfeeSumamt = BigDecimal.ZERO; - BigDecimal fundPaySumamt = BigDecimal.ZERO; - BigDecimal acctPay = BigDecimal.ZERO; - String refdSetlFlag = Whether.NO.getCode();// 1 是退费; 0否 - String psnNo = ""; - String mdtrtId = ""; - String patientName = ""; - String setlTime = ""; - - for (PaymentRecDetail paymentRecDetail : stringListEntry.getValue()) { - if (YbPayment.YB_FUND_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); - fundPaySumamt = fundPaySumamt.add(paymentRecDetail.getAmount()); - } - if (YbPayment.SELF_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); - } - // if(YbPayment.OTHER_PAY.getValue().equals(paymentRecDetail.getPayEnum())){ - // medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); - // } - if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - acctPay = acctPay.add(paymentRecDetail.getAmount()); - } - } - - if (settleOptional.isPresent()) { - ClinicSettle clinicSettle = settleOptional.get(); - if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { - throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() - + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); - } - if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { - throw new ServiceException("医保正结记录与业务记录医疗总金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() - + " 医疗总金额:" + clinicSettle.getMedfeeSumamt() + " payment记录医疗总金额:" + medfeeSumamt); - } - if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { - throw new ServiceException("医保正结记录与业务记录基金金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() - + " 基金金额:" + clinicSettle.getFundPaySumamt() + " payment记录基金金额:" + fundPaySumamt); - } - String param2207 = clinicSettle.getParam2207(); - Clinic2207OrderParam clinic2207OrderParam = JSON.parseObject(param2207, Clinic2207OrderParam.class); - psnNo = clinic2207OrderParam.getPsnNo(); - mdtrtId = clinic2207OrderParam.getMdtrtId(); - Clinic2207OrderModel clinic2207OrderModel = - JSON.parseObject(clinicSettle.getResult2207(), Clinic2207OrderModel.class); - patientName = clinic2207OrderModel.getPsnName(); - setlTime = String.valueOf(clinic2207OrderModel.getSetlTime()); - } - - if (unSettleOptional.isPresent()) { - ClinicUnSettle clinicSettle = unSettleOptional.get(); - if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { - throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() - + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); - } - if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { - throw new ServiceException("医保反结记录与业务记录医疗费用总金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() - + " 医疗费用总金额:" + clinicSettle.getMedfeeSumamt() + " payment记录医疗费用总金额:" + medfeeSumamt); - } - if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { - throw new ServiceException("医保反结记录与业务记录基金金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() - + " 基金金额:" + clinicSettle.getFundPaySumamt() + " payment记录基金金额:" + fundPaySumamt); - } - refdSetlFlag = Whether.YES.getCode(); - String param2208 = clinicSettle.getParam2208(); - Clinic2208UnSetlInfoParam clinic2208UnSetlInfoParam = - JSON.parseObject(param2208, Clinic2208UnSetlInfoParam.class); - psnNo = clinic2208UnSetlInfoParam.getPsnNo(); - mdtrtId = clinic2208UnSetlInfoParam.getMdtrtId(); - Clinic2208UnSetlInfoOutput clinic2207OrderModel = - JSON.parseObject(clinicSettle.getResult2208(), Clinic2208UnSetlInfoOutput.class); - // patientName = clinic2207OrderModel.getPsnName(); - setlTime = String.valueOf(clinic2207OrderModel.getSetlTime()); - } - - financial3202FileParam = new Financial3202FileParam(); - - financial3202FileParam.setSetlId(settleId).setAcctPay(acctPay).setFundPaySumamt(fundPaySumamt) - .setMdtrtId(mdtrtId).setPsnNo(psnNo).setMedfeeSumamt(medfeeSumamt).setRefdSetlFlag(refdSetlFlag) - .setPatientName(patientName).setSetlTime(setlTime); - - financial3202FileParamList.add(financial3202FileParam); - } - - return financial3202FileParamList; - } - - /** - * 系統數據比較 - * - * @param settlementIdList - */ - public List paymentCompareYbSettle(List settlementIdList) { - // 比较yb_clinic_settle表和payment系列表数据是否一致 - // 查询医保表数据 - List clinicSettles = iClinicSettleService - .list(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settlementIdList)); - List clinicUnSettles = iClinicUnSettleService - .list(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settlementIdList)); - - // payment的id集合 - // List paymentReconciliationIdList = - // paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); - - // 查询详情表数据 - List paymentRecDetailList = iPaymentRecDetailService - .list(new LambdaQueryWrapper().in(PaymentRecDetail::getPayTransText, settlementIdList) - .ne(PaymentRecDetail::getPayTransNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentRecDetail::getPayTransText, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_ALI_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VX_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_UNION_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VALUE.getValue()) - .isNotNull(PaymentRecDetail::getPayTransText)); - if (paymentRecDetailList.isEmpty()) { - throw new ServiceException("该时间内无付款明细记录"); - } - // 该部分代码为辅助调试时使用,无任何业务处理 start - for (PaymentRecDetail paymentRecDetail : paymentRecDetailList) { - if (StringUtils.isEmpty(paymentRecDetail.getPayTransText())) { - System.out.println(JSON.toJSONString(paymentRecDetail)); - throw new ServiceException("paymentDetail无返回交易码"); - } - } - // end - - Map> paymentRecDetailMapBySettleId = - paymentRecDetailList.stream().collect(Collectors.groupingBy(PaymentRecDetail::getPayTransText)); - - List financial3202FileParamList = new ArrayList<>(); - Financial3202OtherParam financial3202OtherParam; - for (Map.Entry> stringListEntry : paymentRecDetailMapBySettleId.entrySet()) { - // 获取settleId - String settleId = stringListEntry.getKey(); - if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(settleId)) { - continue; - } - Optional settleOptional = - clinicSettles.stream().filter(e -> settleId.equals(e.getSetlId())).findAny(); - Optional unSettleOptional = - clinicUnSettles.stream().filter(e -> settleId.equals(e.getSettleId())).findAny(); - if (!settleOptional.isPresent() && !unSettleOptional.isPresent()) { - throw new ServiceException("付款详情中结算id在医保记录中不存在,错误信息:paymentId:" - + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); - } - if (settleOptional.isPresent() && unSettleOptional.isPresent()) { - throw new ServiceException("付款详情中结算id在医保记录中同时存在正结和反结,错误信息:paymentId:" - + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); - } - // 校对金额 - BigDecimal medfeeSumamt = BigDecimal.ZERO; - BigDecimal fundPaySumamt = BigDecimal.ZERO; - BigDecimal acctPay = BigDecimal.ZERO; - BigDecimal cashPay = BigDecimal.ZERO; - BigDecimal medSumfee = BigDecimal.ZERO; - String refdSetlFlag = Whether.NO.getCode();// 1 是退费; 0否 - String psnNo = ""; - String mdtrtId = ""; - - for (PaymentRecDetail paymentRecDetail : stringListEntry.getValue()) { - if (YbPayment.YB_FUND_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); - fundPaySumamt = fundPaySumamt.add(paymentRecDetail.getAmount()); - } - if (YbPayment.SELF_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); - } - // if(YbPayment.OTHER_PAY.getValue().equals(paymentRecDetail.getPayEnum())){ - // medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); - // } - if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - acctPay = acctPay.add(paymentRecDetail.getAmount()); - } - if (YbPayment.SELF_CASH_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - cashPay = cashPay.add(paymentRecDetail.getAmount()); - } - if (YbPayment.INSCP_SCP_AMT.getValue().equals(paymentRecDetail.getPayEnum())) { - medSumfee = medSumfee.add(paymentRecDetail.getAmount()); - } - } - - if (settleOptional.isPresent()) { - ClinicSettle clinicSettle = settleOptional.get(); - if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { - throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() - + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); - } - if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { - throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() - + " 账户支付:" + clinicSettle.getMedfeeSumamt() + " payment记录账户支付金额:" + medfeeSumamt); - } - if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { - throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() - + " 账户支付:" + clinicSettle.getFundPaySumamt() + " payment记录账户支付金额:" + fundPaySumamt); - } - String param2207 = clinicSettle.getParam2207(); - Clinic2207OrderParam clinic2207OrderParam = JSON.parseObject(param2207, Clinic2207OrderParam.class); - psnNo = clinic2207OrderParam.getPsnNo(); - mdtrtId = clinic2207OrderParam.getMdtrtId(); - } - - if (unSettleOptional.isPresent()) { - ClinicUnSettle clinicSettle = unSettleOptional.get(); - if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { - throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() - + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); - } - if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { - throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() - + " 账户支付:" + clinicSettle.getMedfeeSumamt() + " payment记录账户支付金额:" + medfeeSumamt); - } - if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { - throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() - + " 账户支付:" + clinicSettle.getFundPaySumamt() + " payment记录账户支付金额:" + fundPaySumamt); - } - refdSetlFlag = Whether.YES.getCode(); - String param2208 = clinicSettle.getParam2208(); - Clinic2208UnSetlInfoParam clinic2208UnSetlInfoParam = - JSON.parseObject(param2208, Clinic2208UnSetlInfoParam.class); - psnNo = clinic2208UnSetlInfoParam.getPsnNo(); - mdtrtId = clinic2208UnSetlInfoParam.getMdtrtId(); - } - - financial3202OtherParam = new Financial3202OtherParam(); - - financial3202OtherParam.setSetlId(settleId).setAcctPay(acctPay).setFundPaySumamt(fundPaySumamt) - .setMdtrtId(mdtrtId).setPsnNo(psnNo).setMedfeeSumamt(medfeeSumamt).setRefdSetlFlag(refdSetlFlag); - financial3202OtherParam.setCashPayamt(cashPay).setMedSumfee(medSumfee); - financial3202FileParamList.add(financial3202OtherParam); - } - - return financial3202FileParamList; - } - - /** - * 获取3202的现金支付金额 - * - * @param settlementIdList - */ - public FinancialSettlement3202Param getFinancialSettlement3202Param(List settlementIdList, BigDecimal a, - BigDecimal b) { - - // Financial3202OtherParam financial3202OtherParam = new Financial3202OtherParam(); - BigDecimal cashPay = BigDecimal.ZERO; - - // 比较yb_clinic_settle表和payment系列表数据是否一致 - // 查询医保表数据 - List clinicSettles = iClinicSettleService - .list(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settlementIdList)); - List clinicUnSettles = iClinicUnSettleService - .list(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settlementIdList)); - // 防空指针 - if (clinicSettles == null) { - clinicSettles = new ArrayList<>(); - } - if (clinicUnSettles == null) { - clinicUnSettles = new ArrayList<>(); - } - List clinicSettleTime = - clinicSettles.stream().map(ClinicSettle::getSetlTime).collect(Collectors.toList()); - List clinicUnSettleTime = - clinicUnSettles.stream().map(ClinicUnSettle::getSetlTime).collect(Collectors.toList()); - clinicSettleTime.addAll(clinicUnSettleTime); - - Date stmtBegndate = null; - Date stmtEnddate = null; - - // 获取最早的日期 - Optional minDate = clinicSettleTime.stream().min(Date::compareTo); - - // 获取最晚的日期 - Optional maxDate = clinicSettleTime.stream().max(Date::compareTo); - - if (!minDate.isPresent() || !maxDate.isPresent()) { - throw new ServiceException("未查询到医保结算时间"); - } - stmtBegndate = minDate.get(); - stmtEnddate = maxDate.get(); - - // payment的id集合 - // List paymentReconciliationIdList = - // paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); - - // 查询详情表数据 - List paymentRecDetailList = iPaymentRecDetailService - .list(new LambdaQueryWrapper().in(PaymentRecDetail::getPayTransText, settlementIdList) - .ne(PaymentRecDetail::getPayTransNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentRecDetail::getPayTransText, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_ALI_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VX_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_UNION_VALUE.getValue()) - .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VALUE.getValue()) - .isNotNull(PaymentRecDetail::getPayTransText)); - if (paymentRecDetailList.isEmpty()) { - throw new ServiceException("该时间内无付款明细记录"); - } - // 该部分代码为辅助调试时使用,无任何业务处理 start - for (PaymentRecDetail paymentRecDetail : paymentRecDetailList) { - if (StringUtils.isEmpty(paymentRecDetail.getPayTransNo())) { - System.out.println(JSON.toJSONString(paymentRecDetail)); - throw new ServiceException("paymentDetail无返回交易码"); - } - } - // end - - Map> paymentRecDetailMapBySettleId = - paymentRecDetailList.stream().collect(Collectors.groupingBy(PaymentRecDetail::getPayTransText)); - - // List financial3202FileParamList = new ArrayList<>(); - // Financial3202FileParam financial3202FileParam; - for (Map.Entry> stringListEntry : paymentRecDetailMapBySettleId.entrySet()) { - // 获取settleId - String settleId = stringListEntry.getKey(); - if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(settleId)) { - continue; - } - Optional settleOptional = - clinicSettles.stream().filter(e -> settleId.equals(e.getSetlId())).findAny(); - Optional unSettleOptional = - clinicUnSettles.stream().filter(e -> settleId.equals(e.getSettleId())).findAny(); - if (!settleOptional.isPresent() && !unSettleOptional.isPresent()) { - throw new ServiceException("付款详情中结算id在医保记录中不存在,错误信息:paymentId:" - + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); - } - if (settleOptional.isPresent() && unSettleOptional.isPresent()) { - throw new ServiceException("付款详情中结算id在医保记录中同时存在正结和反结,错误信息:paymentId:" - + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); - } - // 校对金额 - for (PaymentRecDetail paymentRecDetail : stringListEntry.getValue()) { - if (YbPayment.SELF_CASH_PAY.getValue().equals(paymentRecDetail.getPayEnum()) - && !CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(paymentRecDetail.getPayTransNo()) - && !CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(paymentRecDetail.getPayTransText())) { - cashPay = cashPay.add(paymentRecDetail.getAmount()); - } - } - } - - FinancialSettlement3202Param financialSettlement3202Param = new FinancialSettlement3202Param(); - financialSettlement3202Param.setCashPayamt(cashPay).setMedfeeSumamt(a).setFundPaySumamt(b) - .setStmtBegndate(stmtBegndate).setStmtEnddate(stmtEnddate); - - return financialSettlement3202Param; - } - - public void uploadFinancialSettlement3202Param(FinancialSettlement3202Param financialSettlement3202Param) { - - } - - public Page getFinancial3203APage(String searchKey, Integer pageNo, Integer pageSize, - HttpServletRequest request) { - - QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(new FinancialApplyRecord(), - searchKey, new HashSet<>(Arrays.asList("out_result")), null); - // 设置排序 - queryWrapper.orderByDesc("create_time"); - - // 申请信息 - Page financialApplyRecordPage = HisPageUtils.selectPage( - iFinancialApplyRecordService.getBaseMapper(), queryWrapper, pageNo, pageSize, FinancialApplyRecord.class); - - return financialApplyRecordPage; - } - - /** - * 根据申请结算ID查找申请结算记录 - * - * @param clrAppyEvtId - * @return - */ - public FinancialApplyRecord getFinancial3204ParamByClrAppyEvtId(String clrAppyEvtId) { - - FinancialApplyRecord financialApplyRecord = iFinancialApplyRecordService - .getOne(new LambdaQueryWrapper().eq(FinancialApplyRecord::getOutResult, clrAppyEvtId) - .orderByDesc(FinancialApplyRecord::getId).last(YbCommonConstants.sqlConst.LIMIT1)); - - if (financialApplyRecord == null) { - throw new ServiceException("未查询到申请记录"); - } - return financialApplyRecord; - } - - /** - * 【2301】住院费用明细上传 - * - * @param encounterId 就诊id - * @return 2301入参 - */ - public Yb2301InputFeeDetailModel getYb2301FeeDetailParam(Long encounterId, List chargeItemIds) { - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊记录"); - } - - InpatientReg inpatientReg = iInpatientRegService - .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) - .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保就诊记录"); - } - - // 获取今天和昨天的上午10点时间 - // LocalDateTime today10AM = LocalDateTime.of(LocalDate.now(), LocalTime.of(10, 0)); // 今天10点 - // LocalDateTime yesterday10AM = today10AM.minusDays(1); // 昨天10点(自动处理跨月/年) - - // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() - // .eq(ChargeItem::getEncounterId, encounterId).between(ChargeItem::getEnteredDate, yesterday10AM, today10AM)); - // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() - // .eq(ChargeItem::getEncounterId, encounterId).in(ChargeItem::getId, chargeItemIds)); - List chargeItemBaseInfoDtos = - iChargeItemService.getChargeItemBaseInfoByIds(chargeItemIds); - List chargeItemBaseInfoDtosList = new ArrayList<>(); - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { - if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - continue; - } - if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { - // 反序列化:将JSON数组字符串转为List<> - List chargeItemBaseInfoList = - JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); - chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); - } else { - chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); - } - } - Yb2301InputFeeDetail yb2301InputFeeDetail; - List yb2301InputFeeDetailList = new ArrayList(); - // int i = 1; - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { - yb2301InputFeeDetail = new Yb2301InputFeeDetail(); - yb2301InputFeeDetail.setFeedetlSn(chargeItemBaseInfoDto.getBusNo()).setMdtrtId(inpatientReg.getMdtrtId()) - .setPsnNo(inpatientReg.getPsnNo()).setMedType(String.valueOf(encounter.getYbClassEnum())) - .setFeeOcurTime(chargeItemBaseInfoDto.getEnteredDate()).setMedListCodg(chargeItemBaseInfoDto.getYbNo()) - .setMedinsListCodg(chargeItemBaseInfoDto.getBaseBusNo()) - .setDetItemFeeSumamt(chargeItemBaseInfoDto.getTotalPrice()) - .setCnt(chargeItemBaseInfoDto.getQuantityValue()).setPric(chargeItemBaseInfoDto.getUnitPrice()) - .setBilgDeptName(chargeItemBaseInfoDto.getDeptName()).setBilgDrName(chargeItemBaseInfoDto.getDoctName()) - .setBilgDeptCodg(chargeItemBaseInfoDto.getDeptYbNo()) - .setBilgDrCodg(chargeItemBaseInfoDto.getDoctYbNo()); - - yb2301InputFeeDetailList.add(yb2301InputFeeDetail); - } - - Yb2301InputFeeDetailModel yb2301InputFeeDetailModel = new Yb2301InputFeeDetailModel(); - yb2301InputFeeDetailModel.setFeedetail(yb2301InputFeeDetailList) - .setInsuplcAdmdvs(inpatientReg.getInsuplcAdmdvs()); - return yb2301InputFeeDetailModel; - } - - /** - * 【2302】费用明细上传撤销 - * - * @param chargeItemId 收费项 - * @return 2302入参 - */ - public Yb2302InputInpatient getYb2302InpatientParam(Long chargeItemId) { - ChargeItem chargeItem = iChargeItemService.getById(chargeItemId); - if (chargeItem == null) { - throw new ServiceException("未查询到收费项信息"); - } - InpatientFeeDetail inpatientFeeDetail = inpatientFeeDetailService.getOne( - new LambdaQueryWrapper().eq(InpatientFeeDetail::getFeedetlSn, chargeItem.getBusNo()) - .eq(InpatientFeeDetail::getDeleteFlag, DelFlag.NO.getCode())); - if (inpatientFeeDetail == null) { - throw new ServiceException("未查询到费用上传信息"); - } - Yb2302InputInpatient yb2302InputInpatient = new Yb2302InputInpatient(); - - return yb2302InputInpatient.setMdtrtId(inpatientFeeDetail.getMdtrtId()).setPsnNo(inpatientFeeDetail.getPsnNo()) - .setFeedetlSn(inpatientFeeDetail.getFeedetlSn()); - - } - - /** - * 【2303】住院预结算 - * - * @param encounterId 就诊id - * @return 2303入参 - */ - public Yb2303InputInpatient getYb2303InpatientPram(Long encounterId, List chargeItemIds) { - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到挂号信息"); - } - InpatientReg inpatientReg = iInpatientRegService - .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) - .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保就诊记录"); - } - InfoPerson infoPerson = iPerinfoService.getByPsnNo(inpatientReg.getPsnNo()); - if (infoPerson == null) { - throw new ServiceException("未查询到患者信息"); - } - // 获取今天和昨天的上午10点时间 - // LocalDateTime today10AM = LocalDateTime.of(LocalDate.now(), LocalTime.of(10, 0)); // 今天10点 - // LocalDateTime yesterday10AM = today10AM.minusDays(1); // 昨天10点(自动处理跨月/年) - - // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() - // .eq(ChargeItem::getEncounterId, encounterId).between(ChargeItem::getEnteredDate, yesterday10AM, today10AM)); - List chargeItemBaseInfoDtos = - iChargeItemService.getChargeItemBaseInfoByIds(chargeItemIds); - List chargeItemBaseInfoDtosList = new ArrayList<>(); - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { - if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - continue; - } - if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { - // 反序列化:将JSON数组字符串转为List<> - List chargeItemBaseInfoList = - JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); - chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); - } else { - chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); - } - } - // 计算医疗总费用 - BigDecimal medfee_sumamt = BigDecimal.ZERO; - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { - medfee_sumamt = medfee_sumamt.add(chargeItemBaseInfoDto.getTotalPrice()); - } - - Yb2303InputInpatient yb2303InputInpatient = new Yb2303InputInpatient(); - yb2303InputInpatient.setPsnNo(infoPerson.getPsnNo()) - .setMdtrtCertType(YbMdtrtCertType.MDTRT_CERT_TYPE02.getValue()).setMdtrtCertNo(infoPerson.getCertno()) - .setMedfeeSumamt(medfee_sumamt).setPsnSetlway(YbPsnSetlWay.PSN_SETLWAY01.getValue()) - .setMdtrtId(inpatientReg.getMdtrtId()).setInsutype(infoPerson.getInsutype()) - .setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) - .setMdtrtareaAdmvs(iContractService.getContractListByYb().get(0).getAdmVs()); - - // todo:中如结算标志需要判断一下,待2304接口开发完成后编辑 - - return yb2303InputInpatient; - } - - /** - * 【2304】住院结算 - * - * @param paymentDto 预结算参数 - * @return 2304入参 - */ - public Yb2304InputInpatient getYb2304InpatientParam(PaymentInpatientDto paymentDto) { - Encounter encounter = iEncounterService.getById(paymentDto.getEncounterId()); - if (encounter == null) { - throw new ServiceException("未查询到挂号信息"); - } - // 查询挂号信息 - InpatientReg inpatientReg = iInpatientRegService - .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) - .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保就诊记录"); - } - InfoPerson infoPerson = iPerinfoService.getByPsnNo(inpatientReg.getPsnNo()); - if (infoPerson == null) { - throw new ServiceException("未查询到患者信息"); - } - - // List chargeItemList = - // iChargeItemService.list(new LambdaQueryWrapper().eq(ChargeItem::getEncounterId, encounterId) - // .in(ChargeItem::getId, chargeItemIds).eq(ChargeItem::getDeleteFlag, DelFlag.NO.getCode())); - List chargeItemBaseInfoDtos = - iChargeItemService.getChargeItemBaseInfoByIds(paymentDto.getChargeItemIds()); - List chargeItemBaseInfoDtosList = new ArrayList<>(); - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { - if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - continue; - } - if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { - // 反序列化:将JSON数组字符串转为List<> - List chargeItemBaseInfoList = - JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); - chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); - } else { - chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); - } - } - // 计算医疗总费用 - BigDecimal medfee_sumamt = BigDecimal.ZERO; - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { - medfee_sumamt = medfee_sumamt.add(chargeItemBaseInfoDto.getTotalPrice()); - } - - Yb2304InputInpatient yb2304InputInpatient = new Yb2304InputInpatient(); - yb2304InputInpatient.setPsnNo(infoPerson.getPsnNo()) - .setMdtrtCertType(YbMdtrtCertType.getByValue(paymentDto.getYbMdtrtCertType()).getValue()) - .setMdtrtCertNo(paymentDto.getBusiCardInfo()).setMedfeeSumamt(medfee_sumamt) - .setPsnSetlway(YbPsnSetlWay.PSN_SETLWAY01.getValue()).setMdtrtId(inpatientReg.getMdtrtId()) - .setInsutype(infoPerson.getInsutype()).setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) - .setMdtrtareaAdmvs(iContractService.getContractListByYb().get(0).getAdmVs()) - .setAcctUsedFlag(Whether.YES.getCode()); - - // todo:中如结算标志需要判断一下,待2304接口开发完成后编辑 - - return yb2304InputInpatient; - } - - /** - * 【2305】撤销结算 - * - * @param inpatientSettle 结算实体 - * @return 2305入参 - */ - public Yb2305InputInpatient getYb2305InpatientParam(InpatientSettle inpatientSettle) { - - // inpatientSettle = inpatientSettleService.getBySettleId(ybSettleId); - Yb2305InputInpatient yb2305InputInpatient = new Yb2305InputInpatient(); - return yb2305InputInpatient.setMdtrtId(inpatientSettle.getMdtrtId()).setPsnNo(inpatientSettle.getPsnNo()) - .setSetlId(inpatientSettle.getSetlId()); - - } - - /** - * 【2401】 办理入院 - * - * @param encounterId 就诊id - * @return 2401参数 - */ - public Yb2401InputInpatientMdtrtInfo getYb2401InputInpatientMdtrtInfo(Long encounterId) { - - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - - Account account = iAccountService.getYbAccount(encounterId); - if (account == null) { - throw new ServiceException("未查询到医保账户信息"); - } - // if (account.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - // throw new ServiceException("挂号账户为自费账户,无法办理医保住院登记"); - // } - - Contract contract = iContractService.getContract(account.getContractNo()); - if (contract == null) { - throw new ServiceException("未查询到对应合同信息"); - } - - Patient patient = iPatientService.getById(encounter.getPatientId()); - if (patient == null) { - throw new ServiceException("未查询到患者信息"); - } - - InfoPerson infoPerson = - iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), SecurityUtils.getLoginUser().getTenantId()); - if (infoPerson == null) { - throw new ServiceException("未查询到患者的医保信息"); - } - - List diagnosisList = iEncounterDiagnosisService.getDiagnosisList(encounterId); - if (diagnosisList.isEmpty()) { - throw new ServiceException("未查询到诊断信息"); - } - - EncounterDiagnosis mainDiagnosis = iEncounterDiagnosisService.getMainDiagnosis(diagnosisList); - if (mainDiagnosis == null) { - throw new ServiceException("未查询到主诊断信息"); - } - - Condition condition = iConditionService.getById(mainDiagnosis.getConditionId()); - if (condition == null) { - throw new ServiceException("未查询到主诊断信息"); - } - - ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(condition.getDefinitionId()); - if (conditionDefinition == null) { - throw new ServiceException("未查询到主诊断定义信息"); - } - - List encounterParticipantListByTypeCode = iEncounterParticipantService - .getEncounterParticipantListByTypeCode(encounterId, ParticipantType.ADMITTING_DOCTOR); - if (encounterParticipantListByTypeCode.isEmpty()) { - throw new ServiceException("未查询到住院医生信息"); - } - - Practitioner practitioner = - iPractitionerService.getById(encounterParticipantListByTypeCode.get(0).getPractitionerId()); - if (practitioner == null) { - throw new ServiceException("未查询到住院医生信息"); - } - - List encounterLocationList = iEncounterLocationService.getEncounterLocationList(encounterId, - LocationForm.BED, EncounterActivityStatus.ACTIVE); - if (encounterLocationList.isEmpty()) { - throw new ServiceException("未查询到床位信息"); - } - - Organization organization = iOrganizationService.getById(practitioner.getOrgId()); - if (organization == null) { - throw new ServiceException("未查询到就诊科室信息"); - } - - Yb2401InputInpatientMdtrtInfo yb2401InputInpatientMdtrtInfo = new Yb2401InputInpatientMdtrtInfo(); - yb2401InputInpatientMdtrtInfo - // 人员编号 - .setPsnNo(infoPerson.getPsnNo()) - // 险种类型 - .setInsutype(infoPerson.getInsutype()) - // 开始时间 - .setBegntime(encounter.getStartTime()) - // 就诊凭证类型 - .setMdtrtCertType(YbMdtrtCertType.MDTRT_CERT_TYPE02.getCode()) - // 病历号 - .setMedrcdno(encounter.getBusNo()) - // 医疗类别 - .setMedType(mainDiagnosis.getMedTypeCode()) - // 住院号 - .setIptNo(encounter.getBusNo()) - // 主治医生编码 - .setAtddrNo(practitioner.getYbNo()) - // 主诊医师姓名 - .setChfpdrName(practitioner.getName()) - // 入院诊断描述 - .setAdmDiagDscr("") - // 入院科室编码 - .setAdmDeptCodg(organization.getYbNo()) - // 入院科室名称 - .setAdmDeptName(organization.getName()) - // 入院床位 - .setAdmBed(encounterLocationList.get(0).getLocationId().toString()) - // 住院主诊断代码 - .setDscgMaindiagCode(conditionDefinition.getYbNo()) - // 住院主诊断名称 - .setDscgMaindiagName(conditionDefinition.getName()) - // 参保地医保区划 - .setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) - // 就医地医保区划 - .setMdtrtareaAdmvs(contract.getAdmVs()); - return yb2401InputInpatientMdtrtInfo; - } - - /** - * 【2402】办理出院 - * - * @param encounterId 就诊id - * @return 2402参数 - */ - public Yb2402InputParam getYb2402InputInpatientDscgInfo(Long encounterId) { - - Yb2402InputParam yb2402InputParam = new Yb2402InputParam(); - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - - InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保挂号信息"); - } - - Account account = iAccountService.getAccountByEncounterFlag(encounterId); - if (account == null) { - throw new ServiceException("未查询到账户信息"); - } - if (account.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - throw new ServiceException("挂号账户为自费账户,无法办理医保住院登记"); - } - - Contract contract = iContractService.getContract(account.getContractNo()); - if (contract == null) { - throw new ServiceException("未查询到对应合同信息"); - } - - Patient patient = iPatientService.getById(encounter.getPatientId()); - if (patient == null) { - throw new ServiceException("未查询到患者信息"); - } - - // InfoPerson infoPerson = - // iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), SecurityUtils.getLoginUser().getTenantId()); - // if (infoPerson == null) { - // throw new ServiceException("未查询到患者的医保信息"); - // } - - List diagnosisList = - iEncounterDiagnosisService.getDiagnosisList(encounterId, YbIptDiseTypeCode.DISCHARGE_DIAGNOSIS); - if (diagnosisList.isEmpty()) { - throw new ServiceException("未查询到出院诊断信息"); - } - - // EncounterDiagnosis mainDiagnosis = iEncounterDiagnosisService.getMainDiagnosis(diagnosisList); - // if (mainDiagnosis == null) { - // throw new ServiceException("未查询到主诊断信息"); - // } - - List conditionList = iConditionService.getConditionListById( - diagnosisList.stream().map(EncounterDiagnosis::getConditionId).collect(Collectors.toList())); - if (conditionList.isEmpty()) { - throw new ServiceException("未查询到诊断信息"); - } - if (conditionList.size() != diagnosisList.size()) { - throw new ServiceException("数据异常:查询到诊断信息与诊断定义信息数量不相等"); - } - - List conditionDefinitionList = iConditionDefinitionService.getConditionDefinitionListByIds( - conditionList.stream().map(Condition::getDefinitionId).collect(Collectors.toList())); - if (conditionDefinitionList.isEmpty()) { - throw new ServiceException("未查询到主诊断定义信息"); - } - - List encounterParticipantListByTypeCode = iEncounterParticipantService - .getEncounterParticipantListByTypeCode(encounterId, ParticipantType.ADMITTING_DOCTOR); - if (encounterParticipantListByTypeCode.isEmpty()) { - throw new ServiceException("未查询到住院医生信息"); - } - - List practitionerList = - iPractitionerService.getPractitionerListById(encounterParticipantListByTypeCode.stream() - .map(EncounterParticipant::getPractitionerId).collect(Collectors.toList()));// 20250730被告知一个住院患者只有一套门诊医生住院医生护士等(主治医生和主任医生不一定会有),不存在一个患者多个医生 - if (practitionerList.isEmpty()) { - throw new ServiceException("未查询到住院医生信息"); - } - - List encounterLocationList = iEncounterLocationService.getEncounterLocationList(encounterId, - LocationForm.BED, EncounterActivityStatus.ACTIVE); - if (encounterLocationList.isEmpty()) { - throw new ServiceException("未查询到床位信息"); - } - - List organizationList = iOrganizationService.getOrganizationListById( - practitionerList.stream().map(Practitioner::getOrgId).collect(Collectors.toList())); - if (organizationList.isEmpty()) { - throw new ServiceException("未查询到就诊科室信息"); - } - - Yb2402InputInpatientDscgInfo yb2402InputInpatientDscgInfo = new Yb2402InputInpatientDscgInfo(); - yb2402InputInpatientDscgInfo - // 就诊ID - .setMdtrtId(inpatientReg.getMdtrtId()) - // 人员编号 - .setPsnNo(inpatientReg.getPsnNo()) - // 险种类型 - .setInsutype(inpatientReg.getInsutype()) - // 结束时间 - .setEndtime(encounter.getEndTime()) - // 出院科室编码 - .setDscgDeptCodg(organizationList.get(0).getYbNo()) - // 出院科室名称 - .setDscgDeptName(organizationList.get(0).getName()) - // 离院方式 - .setDscgWay("");// todo:离院方式待办 - - Map mapById = - conditionList.stream().collect(Collectors.toMap(Condition::getId, Function.identity())); - Map encounterParticipantMapById = encounterParticipantListByTypeCode.stream() - .collect(Collectors.toMap(EncounterParticipant::getId, Function.identity())); - Map conditionDefinitionMapById = - conditionDefinitionList.stream().collect(Collectors.toMap(ConditionDefinition::getId, Function.identity())); - Map organizationMapById = - organizationList.stream().collect(Collectors.toMap(Organization::getId, Function.identity())); - Map practitionerMapById = - practitionerList.stream().collect(Collectors.toMap(Practitioner::getId, Function.identity())); - Yb2402InputInpatientDiseInfo yb2402InputInpatientDiseInfo; - List yb2402InputInpatientDiseInfos = new ArrayList<>(); - for (EncounterDiagnosis encounterDiagnosis : diagnosisList) { - Condition condition = mapById.get(encounterDiagnosis.getConditionId()); - if (condition == null) { - throw new ServiceException( - "数据异常:就诊诊断信息无法关联到诊断信息;异常数据encounterDiagnosisId:" + encounterDiagnosis.getId()); - } - EncounterParticipant encounterParticipant = encounterParticipantMapById.get(condition.getRecorderId()); - if (encounterParticipant == null) { - throw new ServiceException("数据异常:就诊诊断信息无法关联到医生信息;异常数据condition:" + condition.getId()); - } - Practitioner practitioner = practitionerMapById.get(encounterParticipant.getPractitionerId()); - if (practitioner == null) { - throw new ServiceException( - "数据异常:就诊诊断信息无法关联到医生信息;异常数据encounterParticipant:" + encounterParticipant.getId()); - } - ConditionDefinition conditionDefinition = conditionDefinitionMapById.get(condition.getDefinitionId()); - if (conditionDefinition == null) { - throw new ServiceException("数据异常:就诊诊断信息无法关联到诊断定义;异常数据condition:" + condition.getId()); - } - Organization organization = organizationMapById.get(practitioner.getOrgId()); - if (organization == null) { - throw new ServiceException("数据异常:医生信息无法关联到科室;异常数据practitioner:" + practitioner.getId()); - } - yb2402InputInpatientDiseInfo = new Yb2402InputInpatientDiseInfo(); - yb2402InputInpatientDiseInfo - // 就诊id - .setMdtrtId(inpatientReg.getMdtrtId()) - // 人员编号 - .setPsnNo(inpatientReg.getPsnNo()) - // 诊断类别 - .setDiagType(conditionDefinition.getSourceEnum().toString()) - // 主诊断标志 - .setMaindiagFlag(encounterDiagnosis.getMaindiseFlag().equals(Whether.YES.getValue()) - ? Whether.YES.getCode() : Whether.NO.getCode()) - // 诊断排序号 - .setDiagSrtNo(encounterDiagnosis.getDiagSrtNo()) - // 诊断代码 - .setDiagCode(conditionDefinition.getYbNo()) - // 诊断名称 - .setDiagName(conditionDefinition.getName()) - // 诊断科室 - .setDiagDept(organization.getYbNo()) - // 诊断医生编码 - .setDiseDorNo(practitioner.getYbNo()) - // 诊断医生姓名 - .setDiseDorName(practitioner.getName()) - // 诊断时间 - .setDiagTime(encounterDiagnosis.getCreateTime()); - - yb2402InputInpatientDiseInfos.add(yb2402InputInpatientDiseInfo); - } - - // 拼装参数 - yb2402InputParam.setYb2402InputInpatientDiseInfo(yb2402InputInpatientDiseInfos); - yb2402InputParam.setYb2402InputInpatientDscgInfo(yb2402InputInpatientDscgInfo); - - return yb2402InputParam; - } - - /** - * 【2403】接口参数 - * - * @param encounterId 就诊id - * @return 2403接口参数 - */ - public Yb2403InputParam getYb2403InputParam(Long encounterId) { - - Yb2403InputParam yb24032InputParam = new Yb2403InputParam(); - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - - InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保挂号信息"); - } - - Account account = iAccountService.getAccountByEncounterFlag(encounterId); - if (account == null) { - throw new ServiceException("未查询到账户信息"); - } - if (account.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - throw new ServiceException("挂号账户为自费账户,无法办理医保住院登记"); - } - - Contract contract = iContractService.getContract(account.getContractNo()); - if (contract == null) { - throw new ServiceException("未查询到对应合同信息"); - } - - Patient patient = iPatientService.getById(encounter.getPatientId()); - if (patient == null) { - throw new ServiceException("未查询到患者信息"); - } - - // InfoPerson infoPerson = - // iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), SecurityUtils.getLoginUser().getTenantId()); - // if (infoPerson == null) { - // throw new ServiceException("未查询到患者的医保信息"); - // } - - List diagnosisList = - iEncounterDiagnosisService.getDiagnosisList(encounterId, YbIptDiseTypeCode.DISCHARGE_DIAGNOSIS); - if (diagnosisList.isEmpty()) { - throw new ServiceException("未查询到出院诊断信息"); - } - - EncounterDiagnosis mainDiagnosis = iEncounterDiagnosisService.getMainDiagnosis(diagnosisList); - if (mainDiagnosis == null) { - throw new ServiceException("未查询到主诊断信息"); - } - - List conditionList = iConditionService.getConditionListById( - diagnosisList.stream().map(EncounterDiagnosis::getConditionId).collect(Collectors.toList())); - if (conditionList.isEmpty()) { - throw new ServiceException("未查询到诊断信息"); - } - if (conditionList.size() != diagnosisList.size()) { - throw new ServiceException("数据异常:查询到诊断信息与诊断定义信息数量不相等"); - } - Optional firstOptional = - conditionList.stream().filter(e -> e.getId().equals(mainDiagnosis.getConditionId())).findFirst(); - if (firstOptional.isEmpty()) { - throw new ServiceException("数据异常:主诊断关联不到诊断信息"); - } - Condition mainCondition = firstOptional.get(); - - List conditionDefinitionList = iConditionDefinitionService.getConditionDefinitionListByIds( - conditionList.stream().map(Condition::getDefinitionId).collect(Collectors.toList())); - if (conditionDefinitionList.isEmpty()) { - throw new ServiceException("未查询到主诊断定义信息"); - } - Optional optional = - conditionDefinitionList.stream().filter(e -> e.getId().equals(mainCondition.getDefinitionId())).findFirst(); - if (optional.isEmpty()) { - throw new ServiceException("数据异常:主诊断关联不到诊断信息"); - } - ConditionDefinition mainConditionDefinition = optional.get(); - - List encounterParticipantListByTypeCode = iEncounterParticipantService - .getEncounterParticipantListByTypeCode(encounterId, ParticipantType.ADMITTING_DOCTOR); - if (encounterParticipantListByTypeCode.isEmpty()) { - throw new ServiceException("未查询到住院医生信息"); - } - - List practitionerList = - iPractitionerService.getPractitionerListById(encounterParticipantListByTypeCode.stream() - .map(EncounterParticipant::getPractitionerId).collect(Collectors.toList()));// 20250730被告知一个住院患者只有一套门诊医生住院医生护士等(主治医生和主任医生不一定会有),不存在一个患者多个医生 - if (practitionerList.isEmpty()) { - throw new ServiceException("未查询到住院医生信息"); - } - - List encounterLocationList = iEncounterLocationService.getEncounterLocationList(encounterId, - LocationForm.BED, EncounterActivityStatus.ACTIVE); - if (encounterLocationList.isEmpty()) { - throw new ServiceException("未查询到床位信息"); - } - - List organizationList = iOrganizationService.getOrganizationListById( - practitionerList.stream().map(Practitioner::getOrgId).collect(Collectors.toList())); - if (organizationList.isEmpty()) { - throw new ServiceException("未查询到就诊科室信息"); - } - - Yb2403InputAdmInfo yb2403InputAdmInfo = new Yb2403InputAdmInfo(); - yb2403InputAdmInfo - // 就诊ID - .setMdtrtId(inpatientReg.getMdtrtId()) - // 人员编号 - .setPsnNo(inpatientReg.getPsnNo()) - // 开始时间 - .setBegntime(encounter.getStartTime()) - // 就诊凭证类型 - .setMdtrtCertType(YbMdtrtCertType.MDTRT_CERT_TYPE02.getCode()) - // 住院/门诊号 - .setIptOtpNo(encounter.getBusNo()) - // 医疗类别 - .setMedType(mainDiagnosis.getMedTypeCode()) - // 主治医生编码 - .setAtddrNo(practitionerList.get(0).getYbNo()) - // 主诊医师姓名 - .setChfpdrName(practitionerList.get(0).getName()) - // 入院诊断描述 - .setAdmDiagDscr("") - // 入院科室编码 - .setAdmDeptCodg(organizationList.get(0).getYbNo()) - // 入院科室名称 - .setAdmDeptName(organizationList.get(0).getName()) - // 入院床位 - .setAdmBed(encounterLocationList.get(0).getLocationId().toString()) - // 住院主诊断代码 - .setDscgMaindiagCode(mainConditionDefinition.getYbNo()) - // 住院主诊断名称 - .setDscgMaindiagName(mainConditionDefinition.getName()); - - Map mapById = - conditionList.stream().collect(Collectors.toMap(Condition::getId, Function.identity())); - Map encounterParticipantMapById = encounterParticipantListByTypeCode.stream() - .collect(Collectors.toMap(EncounterParticipant::getId, Function.identity())); - Map conditionDefinitionMapById = - conditionDefinitionList.stream().collect(Collectors.toMap(ConditionDefinition::getId, Function.identity())); - Map organizationMapById = - organizationList.stream().collect(Collectors.toMap(Organization::getId, Function.identity())); - Map practitionerMapById = - practitionerList.stream().collect(Collectors.toMap(Practitioner::getId, Function.identity())); - Yb2403InputDiseInfo yb2403InputDiseInfo; - List yb2403InputDiseInfos = new ArrayList<>(); - for (EncounterDiagnosis encounterDiagnosis : diagnosisList) { - Condition condition = mapById.get(encounterDiagnosis.getConditionId()); - if (condition == null) { - throw new ServiceException( - "数据异常:就诊诊断信息无法关联到诊断信息;异常数据encounterDiagnosisId:" + encounterDiagnosis.getId()); - } - EncounterParticipant encounterParticipant = encounterParticipantMapById.get(condition.getRecorderId()); - if (encounterParticipant == null) { - throw new ServiceException("数据异常:就诊诊断信息无法关联到医生信息;异常数据condition:" + condition.getId()); - } - Practitioner practitioner = practitionerMapById.get(encounterParticipant.getPractitionerId()); - if (practitioner == null) { - throw new ServiceException( - "数据异常:就诊诊断信息无法关联到医生信息;异常数据encounterParticipant:" + encounterParticipant.getId()); - } - ConditionDefinition conditionDefinition = conditionDefinitionMapById.get(condition.getDefinitionId()); - if (conditionDefinition == null) { - throw new ServiceException("数据异常:就诊诊断信息无法关联到诊断定义;异常数据condition:" + condition.getId()); - } - Organization organization = organizationMapById.get(practitioner.getOrgId()); - if (organization == null) { - throw new ServiceException("数据异常:医生信息无法关联到科室;异常数据practitioner:" + practitioner.getId()); - } - yb2403InputDiseInfo = new Yb2403InputDiseInfo(); - yb2403InputDiseInfo - // 就诊id - .setMdtrtId(inpatientReg.getMdtrtId()) - // 人员编号 - .setPsnNo(inpatientReg.getPsnNo()) - // 诊断类别 - .setDiagType(conditionDefinition.getSourceEnum().toString()) - // 主诊断标志 - .setMaindiagFlag(encounterDiagnosis.getMaindiseFlag().equals(Whether.YES.getValue()) - ? Whether.YES.getCode() : Whether.NO.getCode()) - // 诊断排序号 - .setDiagSrtNo(encounterDiagnosis.getDiagSrtNo()) - // 诊断代码 - .setDiagCode(conditionDefinition.getYbNo()) - // 诊断名称 - .setDiagName(conditionDefinition.getName()) - // 诊断科室 - .setDiagDept(organization.getYbNo()) - // 诊断医生编码 - .setDiseDorNo(practitioner.getYbNo()) - // 诊断医生姓名 - .setDiseDorName(practitioner.getName()) - // 诊断时间 - .setDiagTime(encounterDiagnosis.getCreateTime()); - - yb2403InputDiseInfos.add(yb2403InputDiseInfo); - } - - // 拼装参数 - yb24032InputParam.setYb2403InputDiseInfo(yb2403InputDiseInfos); - yb24032InputParam.setYb2403InputAdmInfo(yb2403InputAdmInfo); - - return yb24032InputParam; - } - - /** - * 【2404】住院办理撤销 - * - * @param encounterId 就诊id - * @return 2404参数 - */ - public Yb2404InputInpatient getYb2404InputInpatient(Long encounterId) { - - Yb2404InputInpatient yb2404InputInpatient = new Yb2404InputInpatient(); - - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - - InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保挂号信息"); - } - yb2404InputInpatient.setMdtrtId(inpatientReg.getMdtrtId()).setPsnNo(inpatientReg.getPsnNo()); - - return yb2404InputInpatient; - } - - /** - * 【2405】出院办理撤销 - * - * @param encounterId 就诊id - * @return 2405参数 - */ - public Yb2405InputInpatient getYb2405InputInpatient(Long encounterId) { - - Yb2405InputInpatient yb2405InputInpatient = new Yb2405InputInpatient(); - - Encounter encounter = iEncounterService.getById(encounterId); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - - InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保挂号信息"); - } - yb2405InputInpatient.setMdtrtId(inpatientReg.getMdtrtId()).setPsnNo(inpatientReg.getPsnNo()); - - return yb2405InputInpatient; - } - - /** - * 【5205】结果 - * - * @param patientId 患者id - * @param begntime 开始时间 - * @param endtime 结束时间 - * @return 5205结果 - */ - public Yb5205InputSpecialDisease yb5205SpecialDiseaseDrugRecordSearch(Long patientId, Date begntime, Date endtime) { - - Patient patient = iPatientService.getById(patientId); - if (patient == null) { - throw new ServiceException("未查询到患者信息"); - } - InfoPerson perInfoByIdCard = iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), patient.getTenantId()); - if (perInfoByIdCard == null) { - throw new ServiceException("未查询到患者医保读卡信息"); - } - - Yb5205InputSpecialDisease yb5205InputSpecialDisease = new Yb5205InputSpecialDisease(); - yb5205InputSpecialDisease.setBegntime(begntime).setEndtime(endtime).setPsnNo(perInfoByIdCard.getPsnNo()); - - return yb5205InputSpecialDisease; - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java deleted file mode 100644 index 6b2cf249..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java +++ /dev/null @@ -1,1051 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.service; - -import static com.alibaba.fastjson2.JSON.parseObject; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.Comparator; -import java.util.List; -import java.util.Optional; - -import org.apache.http.client.config.RequestConfig; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.ContentType; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.io.FileSystemResource; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpHeaders; -import org.springframework.http.MediaType; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import org.springframework.util.LinkedMultiValueMap; -import org.springframework.util.MultiValueMap; -import org.springframework.web.client.RestTemplate; -import org.springframework.web.multipart.MultipartFile; - -import com.alibaba.fastjson2.JSON; -import com.alibaba.fastjson2.JSONArray; -import com.alibaba.fastjson2.JSONObject; -import com.core.common.exception.ServiceException; -import com.core.common.utils.SecurityUtils; -import com.core.common.utils.StringUtils; -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.core.type.TypeReference; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.PropertyNamingStrategies; -import com.openhis.financial.domain.Contract; -import com.openhis.financial.service.IContractService; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.dto.*; -import com.openhis.yb.model.Clinic2207OrderModel; -import com.openhis.yb.model.Clinic2207OrderParam; -import com.openhis.yb.util.YbParamBuilderUtil; - -/** - * http请求接口 - * - * @author SunJQ - * @date 2025-04-11 - */ -@Service -public class YbHttpUtils { - - @Autowired - YbParamBuilderUtil ybParamBuilderUtil; - @Autowired - IContractService iContractService; - - Logger logger = LoggerFactory.getLogger(YbHttpUtils.class); - - public Info1101Output getPerInfo(Info1101ReadcardParam readcard) { - // 声明参数 - Result result = null; - Info1101Output perinfo = null; - // 发送请求 - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/getPatinfo", readcard, null); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(resultString)); - logger.info("【1101】返回参数:" + resultString); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(resultString, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - perinfo = parseObject(JSON.toJSONString(result.getResult()), Info1101Output.class); - } else { - throw new ServiceException(result.getMessage()); - } - - return perinfo; - } - - public ClinicReg2201Output reg(ClinicReg reg, Contract contract) { - // 声名参数 - Result result = null; - ClinicReg2201Output clinicReg2201Output = new ClinicReg2201Output(); - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/reg", reg, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【2201】返回参数:" + s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - clinicReg2201Output = parseObject(JSON.toJSONString(result.getResult()), ClinicReg2201Output.class); - } else { - throw new ServiceException(result.getMessage()); - } - return clinicReg2201Output; - } - - public ClinicReg2201Output cancelReg(ClinicReg reg, Contract contract) { - // 声名参数 - Result result = null; - ClinicReg2201Output clinicReg2201Output = new ClinicReg2201Output(); - // 发送请求 - String s = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancelReg", reg, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【2202】返回参数:" + JSON.toJSONString(s)); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - clinicReg2201Output = parseObject(JSON.toJSONString(result.getResult()), ClinicReg2201Output.class); - } else { - throw new ServiceException(result.getMessage()); - } - return clinicReg2201Output; - } - - public Clinic2204OrderResult upload2204Record(Clinic2204OrderParam clinic2204OrderParam, Contract contract) { - Clinic2204OrderResult clinicFeedetail2204Result = new Clinic2204OrderResult(); - // 声名参数 - Result result = null; - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload2204-record", - clinic2204OrderParam, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【2204】返回参数:" + s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - clinicFeedetail2204Result = parseObject(JSON.toJSONString(result.getResult()), Clinic2204OrderResult.class); - } else { - throw new ServiceException(result.getMessage()); - } - - return clinicFeedetail2204Result; - - } - - public Clinic2206OrderOutput upload2206Record(Clinic2206OrderParam clinic2206OrderParam, Contract contract) { - - Clinic2206OrderOutput clinic2206OrderResult = new Clinic2206OrderOutput(); - // 声名参数 - Result result = null; - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/preSetl", - clinic2206OrderParam, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【2206】返回参数:" + JSON.toJSONString(s)); - logger.info(s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - clinic2206OrderResult = parseObject(JSON.toJSONString(result.getResult()), Clinic2206OrderOutput.class); - } else { - throw new ServiceException(result.getMessage()); - } - - return clinic2206OrderResult; - } - - public Clinic2207OrderModel settle(Clinic2207OrderParam clinicOrder2207, Contract contract) { - - Clinic2207OrderModel clinic2206OrderResult = new Clinic2207OrderModel(); - // 声名参数 - Result result = null; - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/setl", clinicOrder2207, - contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【2207】返回参数:" + s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - clinic2206OrderResult = parseObject(JSON.toJSONString(result.getResult()), Clinic2207OrderModel.class); - } else { - throw new ServiceException(result.getMessage()); - } - - return clinic2206OrderResult; - } - - public Sign9001Result sign(Sign signParam, Contract contract) { - Sign9001Result sign = null; - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/signIn", signParam, contract); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(resultString)); - logger.info("【9001】返回参数:" + resultString); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - sign = parseObject(JSON.toJSONString(result.getResult()), Sign9001Result.class); - } else { - throw new ServiceException(result.getMessage()); - } - - return sign; - } - - public void unPreSettle(Clinic2205OrderParam clinic2205OrderParam, Contract contract) { - - // 声名参数 - Result result = null; - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/unPreSettle", - clinic2205OrderParam, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info(s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - return; - } else { - throw new ServiceException(result.getMessage()); - } - } - - public Clinic2208UnSetlInfoOutput unSettle(Clinic2208UnSetlInfoParam clinicOrder2208, Contract contract) { - - Clinic2208UnSetlInfoOutput clinicOrder2206Result = new Clinic2208UnSetlInfoOutput(); - // 声名参数 - Result result = null; - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancelSetl", - clinicOrder2208, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【2208】返回参数:" + s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - clinicOrder2206Result = - parseObject(JSON.toJSONString(result.getResult()), Clinic2208UnSetlInfoOutput.class); - } else { - throw new ServiceException(result.getMessage()); - } - return clinicOrder2206Result; - } - - public Result directoryCheck(MedicalDirectory3301ListParam medicalDirectory3301ListParam) { - - Clinic2208UnSetlInfoResult clinicOrder2206Result = new Clinic2208UnSetlInfoResult(); - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/directoryCheck", - medicalDirectory3301ListParam, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【3301】返回参数:" + s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result directoryUnCheck(MedicalDirectory3302Param medicalDirectory3302Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/directoryUnCheck", - medicalDirectory3302Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info("【3302】返回参数:" + s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result reconcileGeneralLedger(Financial3201Param financial3201Param) { - - // 此处先查询到合同并回填给入参对象 - List redisContractList = iContractService.getContractListByYb(); - Contract contract; - Optional max = redisContractList.stream().max(Comparator.comparingInt(Contract::getSort)); - if (max.isPresent()) { - contract = max.get(); - } else { - throw new ServiceException("没有对合同进行优先级排序"); - } - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/reconcile", - financial3201Param, contract); - - // 赋值(上述回填的两个参数医保不要,为了避免麻烦,在发送http后进行回填) - financial3201Param.setFixmedinsCode(contract.getFixmedinsCode()); - financial3201Param.setFixmedinsName(contract.getFixmedinsName()); - - // 医保回参逻辑处理 - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info(s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public FinancialSettlement3202Result reconcileGeneralLedgerDetail(FinancialSettlement3202Param financial3202Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/reconcile-detail", - financial3202Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info(s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - FinancialSettlement3202Result result = null; - try { - result = mapper.readValue(s, FinancialSettlement3202Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public List - threePartSearch(FinancialSettlement3209AParam financialSettlement3209AParam) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/three-part-search-err", - financialSettlement3209AParam, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println(JSON.toJSONString(s)); - logger.info(s); - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - List result = null; - try { - result = mapper.readValue(s, List.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public String applyFinancialClearing(Financial3203AParam financial3203AParam) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/apply-clearing", - financial3203AParam, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - return s; - } - - public Result cancelFinancialClearing(Financial3204Param financial3204Param) { - - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancel-clearing", - financial3204Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Clearing3205AResult getFinancialClearingStatus(Clearing3205AParma clearing3205AParma) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/get-clearing-status", - clearing3205AParma, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Clearing3205AResult result = null; - try { - result = mapper.readValue(s, Clearing3205AResult.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result uploadInventoryCount(MedicalInventory3501Param medicalInventory3501Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload-inventory-count", - medicalInventory3501Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result updateInventoryCount(MedicalInventory3502Param medicalInventory3502Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/update-inventory", - medicalInventory3502Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result procurement(Medical3503Param medical3503Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/procurement", - medical3503Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result cancelProcurement(MedicalPurchase3504Param medicalPurchase3504Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/procurement-cancel", - medicalPurchase3504Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result merchandise(Medical3505Param medical3505Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/merchandise", - medical3505Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result cancelMerchandise(Medical3506Param medical3506Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancel-merchandise", - medical3506Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result deleteGoodsInfo(Medical3507Param medical3507Param) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/del-goods", - medical3507Param, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result getClrOptins(Clearing3206AParam clearing3206AParam) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/getclroptins", - clearing3206AParam, null); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - public Result upload2203Record(Clinic2203MedicalParam medical2203Param, Contract contract) { - // 发送请求 - String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload2203-record", - medical2203Param, contract); - if (StringUtils.isEmpty(s)) { - throw new ServiceException("未接收到医保返回参数"); - } - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(s, Result.class); - } catch (Exception e) { - e.printStackTrace(); - } - return result; - } - - /** - * 发送http请求(2025/05/02经测试,若以自带的工具类发送请求失败,故使用原peis系统中成功调用的写法重新封装) - * - * @param url 路径 - * @param o 参数 - * @return - */ - private String httpPost(String url, Object o, Contract contract) { - String resultString = ""; - // 拼参数 - BaseParam baseParam = new BaseParam(); - baseParam.setBaseInfo(ybParamBuilderUtil.getBaseInfo(parseObject(JSON.toJSONString(o)), contract)).setData(o); - logger.info("【请求路径】:" + url + ";【入参】: " + JSON.toJSONString(baseParam)); - // 创建Http请求 - RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000) - .setSocketTimeout(30000).build(); - CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig).build(); - CloseableHttpResponse response = null; - // 发送请求 - try { - HttpPost httpPost = new HttpPost(url); - StringEntity stringEntity = new StringEntity(JSON.toJSONString(baseParam), ContentType.APPLICATION_JSON); - httpPost.setEntity(stringEntity); - // 执行http请求 - response = httpClient.execute(httpPost); - if (response == null) { - throw new ServiceException("Http请求异常,未接受返回参数"); - } - resultString = EntityUtils.toString(response.getEntity(), "utf-8"); - } catch (Exception e) { - e.printStackTrace(); - throw new ServiceException("Http请求异常,请稍后再试。"); - } finally { - if (response != null) { - try { - response.close(); - } catch (IOException e) { - logger.error("关闭响应异常", e); - throw new ServiceException("未关闭系统资源:" + e.getStackTrace()); - } - } - } - return resultString; - } - - public List queryYbCatalogue(Catalogue1312QueryParam catalogue1312QueryParam) { - List outputList = new ArrayList<>(); - try { - - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/queryYbCatalogue", - catalogue1312QueryParam, null); - // System.out.println("--------1312resultString-------------" + resultString); - // 1. 解析外层 JSON - ObjectMapper mapper = new ObjectMapper(); - mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); // 启用 Snake Case 自动映射 - JsonNode rootNode = mapper.readTree(resultString); - String resultStr = rootNode.get("result").asText(); - - // 2. 解析 result 中的 JSON 数组 - outputList = mapper.readValue(resultStr, new TypeReference>() {}); - } catch (JsonProcessingException e) { - e.printStackTrace(); - } - - return outputList; - } - - public ResponseEntity upload9101(MultipartFile file, String filename) { - - // File9101Param file9101Param = new File9101Param(); - // file9101Param.setFile(file); - // file9101Param.setFilename(filename); - List contractListByYb = iContractService.getContractListByYb(); - if (contractListByYb.isEmpty()) { - throw new ServiceException("未配置医保合同"); - } - // file9101Param.setFixmedinsCode(contractListByYb.get(0).getFixmedinsCode()); - // FileResult fileResult = null; - ResponseEntity response = null; - // 参数处理 - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - // 1. 保存到临时文件 - Path tempFile = Files.createTempFile("upload-", file.getOriginalFilename()); - file.transferTo(tempFile); - - // 2. 构建转发请求 - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.MULTIPART_FORM_DATA); - - MultiValueMap body = new LinkedMultiValueMap<>(); - body.add("file", new FileSystemResource(tempFile.toFile())); - body.add("fixmedinsCode", contractListByYb.get(0).getFixmedinsCode()); - body.add("userId", SecurityUtils.getUserId()); - body.add("admvs", contractListByYb.get(0).getAdmVs()); - - // 3. 转发并删除临时文件 - RestTemplate restTemplate = new RestTemplate(); - response = restTemplate.postForEntity( - SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/file-up2", - new HttpEntity<>(body, headers), String.class); - System.out.println(JSON.toJSONString(response)); - // 清理临时文件 - // Files.deleteIfExists(tempFile); - } catch (Exception e) { - e.printStackTrace(); - } - return response; - - // 2. 构建 Multipart 请求体 - // HttpHeaders headers = new HttpHeaders(); - // headers.setContentType(MediaType.MULTIPART_FORM_DATA); - // - // MultiValueMap body = new LinkedMultiValueMap<>(); - // body.add("file", new ByteArrayResource(file.getBytes()) { - // @Override - // public String getFilename() { - // return filename; // 保持原文件名 - // } - // }); - // - //// 3. 发送请求到目标服务 - // RestTemplate restTemplate = new RestTemplate(); - // HttpEntity> requestEntity = new HttpEntity<>(body, headers); - // ResponseEntity response = - // restTemplate.postForEntity(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/file-up2", - // requestEntity, String.class); - - // try { - // String resultString = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/file-up2", - // file9101Param,null); - // // System.out.println("--------1312resultString-------------" + resultString); - // // 1. 解析外层 JSON - // ObjectMapper mapper = new ObjectMapper(); - // mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); // 启用 Snake Case 自动映射 - // Result result = null; - // try { - // result = mapper.readValue(resultString, Result.class); - // } catch (Exception e) { - // e.printStackTrace(); - // } - // - // if (result == null) { - // throw new ServiceException("未接收到医保返回参数"); - // } else if (result.getCode() == 200) { - // System.out.println(JSON.toJSONString(result.getResult())); - // fileResult = JSON.parseObject(JSON.toJSONString(result.getResult()), FileResult.class); - // } else { - // throw new ServiceException(result.getMessage()); - // } - // return fileResult; - // }catch (Exception e){ - // e.printStackTrace(); - // } - // return fileResult; - } - - /** - * 【3101】明细审核事前事中分析服务 - * - * @param data 规则分析信息 - * @return 违规信息 - */ - public Yb3101OutputResult yb3101PreMidAnalysis(Yb3101InputData data) { - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/pre-mid-analysis", data, null); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【3101】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【3101】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - return parseObject(JSON.toJSONString(result.getResult()), Yb3101OutputResult.class); - } else { - throw new ServiceException(result.getMessage()); - } - } - - /** - * 【3103】事前事中服务反馈服务 - * - * @param data 输入 - */ - public void yb3103PreMidFeedback(Yb3103InputData data) { - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/pre-mid-feedback", data, null); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【3103】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【3103】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(JSON.toJSONString(result.getResult())); - } else { - throw new ServiceException(result.getMessage()); - } - } - - public List upload2301FeeDetail(Yb2301InputFeeDetailModel yb2301InputFeeDetailModel) { - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload-2301-fee-detail", - yb2301InputFeeDetailModel, null); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【2301】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【2301】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - List yb2301OutputResults = new ArrayList<>(); - JSONObject jsonObject = parseObject(String.valueOf(result.getResult())); - System.out.println(JSON.toJSONString(result.getResult())); - JSONArray jsonArray = jsonObject.getJSONArray("result"); - for (Object o : jsonArray) { - yb2301OutputResults.add(JSON.parseObject(String.valueOf(o), Yb2301OutputResult.class)); - } - return yb2301OutputResults; - } else { - throw new ServiceException(result.getMessage()); - } - } - - public Yb2303OutputSetInfo inpatientPreSettle(Yb2303InputInpatient yb2303InputInpatient) { - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/inpa-pre-setl", - yb2303InputInpatient, null); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【2303】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【2303】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - return mapper.readValue(String.valueOf(result.getResult()), Yb2303OutputSetInfo.class); - } else { - throw new ServiceException(result.getMessage()); - } - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - return null; - } - - public Yb2304OutputSetlInfo inpatientSettle(Contract contract, Yb2304InputInpatient yb2304InpatientParam) { - String resultString = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/inpa-setl", - yb2304InpatientParam, contract); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【2304】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【2304】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - return mapper.readValue(String.valueOf(result.getResult()), Yb2304OutputSetlInfo.class); - } else { - throw new ServiceException(result.getMessage()); - } - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - return null; - } - - /** - * 【取消住院结算】 - * - * @param contract 合同 - * @param yb2305InpatientParam 2305参数 - * @return 医保结果 - */ - public Yb2305OutputSetlInfo inpatientUnSettle(Contract contract, Yb2305InputInpatient yb2305InpatientParam) { - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/inpa-un-setl", - yb2305InpatientParam, contract); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【2305】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【2305】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - return mapper.readValue(String.valueOf(result.getResult()), Yb2305OutputSetlInfo.class); - } else { - throw new ServiceException(result.getMessage()); - } - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - return null; - } - - /** - * 【5205】人员慢特病用药记录查询 - * - * @param yb5205InputSpecialDisease - * @return - */ - public List - yb5205SpecialDiseaseDrugRecordSearch(Yb5205InputSpecialDisease yb5205InputSpecialDisease) { - String resultString = - httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/spe-disease-record-search", - yb5205InputSpecialDisease, null); - if (StringUtils.isEmpty(resultString)) { - throw new ServiceException("未接收到医保返回参数"); - } - System.out.println("【5205】返回参数:" + JSON.toJSONString(resultString)); - logger.info("【5205】返回参数:" + resultString); - ObjectMapper mapper = new ObjectMapper(); - Result result = null; - try { - result = mapper.readValue(resultString, Result.class); - if (result == null) { - throw new ServiceException("未接收到医保返回参数"); - } else if (result.getCode() == 200) { - System.out.println(result.getResult().toString()); - return JSON.parseArray(result.getResult().toString(), Yb5205OutputSpecialDisease.class); - } else { - throw new ServiceException(result.getMessage()); - } - } catch (Exception e) { - logger.error(e.getMessage(), e); - } - return null; - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java deleted file mode 100644 index a27c02d2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java +++ /dev/null @@ -1,1034 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.service; - -import java.math.BigDecimal; -import java.util.*; -import java.util.concurrent.TimeUnit; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import com.alibaba.fastjson2.JSON; -import com.alibaba.fastjson2.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.core.common.core.domain.R; -import com.core.common.core.redis.RedisCache; -import com.core.common.exception.ServiceException; -import com.core.common.utils.AssignSeqUtil; -import com.core.common.utils.SecurityUtils; -import com.core.common.utils.StringUtils; -import com.core.system.service.impl.SysUserServiceImpl; -import com.core.web.controller.common.CommonController; -import com.openhis.administration.domain.Encounter; -import com.openhis.administration.domain.Organization; -import com.openhis.administration.domain.Patient; -import com.openhis.administration.domain.Practitioner; -import com.openhis.administration.dto.ChargeItemBaseInfoDto; -import com.openhis.administration.service.*; -import com.openhis.common.constant.CommonConstants; -import com.openhis.common.constant.YbCommonConstants; -import com.openhis.common.enums.AssignSeqEnum; -import com.openhis.common.enums.Whether; -import com.openhis.common.enums.ybenums.YbHospApprFlag; -import com.openhis.common.enums.ybenums.YbMdtrtCertType; -import com.openhis.common.enums.ybenums.YbMedType; -import com.openhis.common.enums.ybenums.YbPsnSetlWay; -import com.openhis.financial.domain.Contract; -import com.openhis.financial.domain.PaymentReconciliation; -import com.openhis.financial.model.PaymentResult; -import com.openhis.financial.service.IContractService; -import com.openhis.financial.service.IPaymentRecDetailService; -import com.openhis.financial.service.IPaymentReconciliationService; -import com.openhis.medication.service.IMedicationDispenseService; -import com.openhis.workflow.service.IDeviceDispenseService; -import com.openhis.workflow.service.IInventoryItemService; -import com.openhis.workflow.service.IServiceRequestService; -import com.openhis.yb.domain.*; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.dto.*; -import com.openhis.yb.model.CancelRegPaymentModel; -import com.openhis.yb.model.Clinic2207OrderModel; -import com.openhis.yb.model.Clinic2207OrderParam; -import com.openhis.yb.model.OutpatientRegistrationModel; -import com.openhis.yb.service.impl.DirectoryCheckRecordServiceImpl; -import com.openhis.yb.util.CommonConstant; -import com.openhis.yb.util.YbParamBuilderUtil; - -/** - * 医保服务(与ybController方法一致,原定是ui触发医保controller,2025/05/05由于缺少ui资源,欲使用对应的业务controller直接触发医保服务,故将其下沉到Service层) - * - * @author SunJQ - * @date 2025-05-05 - */ -@Service -public class YbManager { - - private static final Logger log = LoggerFactory.getLogger(CommonController.class); - @Autowired - private YbDao ybBaseService; - @Autowired - private YbHttpUtils ybHttpService; - @Autowired - private RedisCache redisCache; - @Autowired - private AssignSeqUtil assignSeqUtil; - /******************************** 业务服务 ***********************************/ - @Autowired - private IPaymentRecDetailService iPaymentRecDetailService; - @Autowired - private IPaymentReconciliationService iPaymentReconciliationService; - @Autowired - private SysUserServiceImpl userService; - @Autowired - private IPractitionerService iPractitionerService; - @Autowired - private IEncounterService iEncounterService; - @Autowired - private IAccountService accountService; - @Autowired - private IChargeItemService iChargeItemService; - @Autowired - private IInvoiceService invoiceService; - @Autowired - private IPatientService iPatientService; - @Autowired - private IContractService iContractService; - @Autowired - private IOrganizationService iOrganizationService; - @Autowired - private IInventoryItemService inventoryItemService; - /****************************** 基础医保服务 *********************************/ - - @Autowired - private IPerinfoService iPerinfoService; - @Autowired - private IRegService iRegService; - @Autowired - private IInpatientRegService inpatientRegService; - @Autowired - private IClinicUnRegService iClinicUnRegService; - @Autowired - private ISignService iSignService; - @Autowired - private IClinicPreSettleService iClinicPreSettleService; - @Autowired - private IClinicSettleService iClinicSettleService; - @Autowired - private IClinicUnSettleService iClinicUnSettleService; - @Autowired - private DirectoryCheckRecordServiceImpl directoryCheckRecordService; - @Autowired - private IInventorySaleReturnRecordService iInventorySaleReturnRecordService; - @Autowired - private IInventorySaleRecordService iInventorySaleRecordService; - @Autowired - private IInventoryPurchaseReturnRecordService iInventoryPurchaseReturnRecordService; - @Autowired - private IInventoryPurchaseRecordService iInventoryPurchaseRecordService; - @Autowired - private IInventoryDelRecordService iInventoryDelRecordService; - @Autowired - private IInventoryCheckRecordService iInventoryCheckRecordService; - @Autowired - private IInventoryChangeRecordService iInventoryChangeRecordService; - @Autowired - private IFinancialReconcileRecordService iFinancialReconcileRecordService; - @Autowired - private IFinancialApplyRecordService iFinancialApplyRecordService; - @Autowired - private YbParamBuilderUtil ybUtil; - @Autowired - private IMedicationDispenseService medicationDispenseService; - @Autowired - private IDeviceDispenseService deviceDispenseService; - @Autowired - private IServiceRequestService serviceRequestService; - - /** - * 【1101】 - * - * @return 结果 - */ - public R getPerInfo(String certType, String certNo) { - Info1101ReadcardParam readcard = ybBaseService.getReadCard(certType, certNo); - Info1101Output perInfo = ybHttpService.getPerInfo(readcard); - if (perInfo != null) { - ybBaseService.saveReadcardAndPerinfo(readcard, perInfo); - } - return R.ok(perInfo); - } - - /** - * 【2201】 为了慢特病自动挂号封装 - * - * @param encounterId 就诊id - * @return 结果 - */ - public ClinicReg2201Output createRegWithMedType(Contract contract, YbMdtrtCertType ybMdtrtCertTypeLong, - String busiCardInfo, Long encounterId, YbMedType medType) { - ClinicReg reg = ybBaseService.getReg(ybMdtrtCertTypeLong, busiCardInfo, encounterId, medType, - SecurityUtils.getLoginUser().getTenantId()); - reg.setMedType(medType.getValue()); - ClinicReg2201Output regResult = ybHttpService.reg(reg, contract); - if (regResult != null) { - regResult.setMedType(medType.getValue()); - ybBaseService.saveReg(regResult); - } - return regResult; - } - - /** - * 【2202】 - * - * @param cancelRegPaymentDto 就诊id - * @return 结果 - */ - public R cancelReg(CancelRegPaymentModel cancelRegPaymentDto) { - - Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); - - PaymentReconciliation paymentReconciliation = - iPaymentReconciliationService.getById(cancelRegPaymentDto.getId()); - - if (paymentReconciliation == null) { - throw new ServiceException("未查询到付款信息"); - } - if (paymentReconciliation.getYbSettleIds() == null) { - throw new ServiceException("未查询到医保付款信息"); - } - - String ybSettleId = paymentReconciliation.getYbSettleIds().split(",")[0];// 理论上挂号的这个只有一个参数,没有逗号 - // 医保退费 - Clinic2208UnSetlInfoParam clinicOrder2208 = ybBaseService.getClinicOrder2208(tenantId, ybSettleId); - if (clinicOrder2208 == null) { - throw new ServiceException("未查询到医保付款信息"); - } - - Contract contractByInsuplcAdmdvs = iContractService.getContract(cancelRegPaymentDto.getContractNo()); - - Clinic2208UnSetlInfoOutput clinic2208UnSetlInfoOutput = - ybHttpService.unSettle(clinicOrder2208, contractByInsuplcAdmdvs); - if (clinic2208UnSetlInfoOutput == null) { - throw new ServiceException("未查询到医保返回信息"); - } - - cancelRegPaymentDto.setSetlId(clinic2208UnSetlInfoOutput.getSetlId()); - ybBaseService.saveUnSettleRecord(ybSettleId, clinicOrder2208, clinic2208UnSetlInfoOutput); - - ClinicReg reg = ybBaseService.getUnReg(cancelRegPaymentDto.getEncounterId(), tenantId); - - ClinicReg2201Output regResult = - ybHttpService.cancelReg(reg, iContractService.getContract(cancelRegPaymentDto.getContractNo())); - if (regResult != null) { - ybBaseService.saveUnReg(regResult); - } - return R.ok(regResult); - } - - /** - * 【2202】 - * - * @param clinicReg 就诊id - * @return 结果 - */ - public R cancelRegById(ClinicReg clinicReg) { - Contract regContract = null; - // ClinicReg clinicReg = iRegService.getById(clinicRegId); - List redisContractList = iContractService.getContractListByYb(); - for (Contract contract : redisContractList) { - if (clinicReg.getInsuplcAdmdvs().equals(contract.getAdmVs())) { - regContract = contract; - } - } - if (regContract == null) { - Optional optional = redisContractList.stream().max(Comparator.comparingInt(Contract::getSort)); - if (optional.isPresent()) { - regContract = optional.get(); - } else { - throw new ServiceException("未設置合同順序"); - } - } - if (regContract == null) { - throw new ServiceException("無法單獨取消醫保挂號,原因:當前醫保局已挂號源沒指定到業務系統的合同對象"); - } - - ClinicReg2201Output regResult = ybHttpService.cancelReg(clinicReg, regContract); - if (regResult != null) { - ybBaseService.saveUnReg(regResult); - return R.ok(regResult); - } - return R.fail(regResult, "医保退号失败"); - } - - /** - * 【2206】2203-2206 - * - * @param cancelRegPaymentModel 挂号信息 - * @return 结果 - */ - public Clinic2206OrderOutput getPreSettleInfo(OutpatientRegistrationModel cancelRegPaymentModel, Patient patient, - Organization organization, Practitioner doctor) { - if (patient == null || organization == null || doctor == null) { - throw new ServiceException("未查询到相关信息"); - } - - InfoPerson perinfo = iPerinfoService.getOne(new LambdaQueryWrapper() - .eq(InfoPerson::getCertno, patient.getIdCard()).eq(InfoPerson::getTenantId, patient.getTenantId()) - .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); - if (perinfo == null) { - throw new ServiceException("未查询到身份信息"); - } - - YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(cancelRegPaymentModel.getMdtrtCertType()); - if (mdtrtCertType == null) { - throw new ServiceException("传参异常,未查询到就诊凭证类型"); - } - - Contract contract = iContractService.getContract(cancelRegPaymentModel.getContractNo()); - if (contract == null) { - throw new ServiceException("请选择费用性质"); - } - // 拼接医保挂号参数 - ClinicReg reg = new ClinicReg(); - reg.setPsnNo(perinfo.getPsnNo()).setInsutype(perinfo.getInsutype()).setBegntime(new Date()) - .setMdtrtCertType(mdtrtCertType.getValue()).setMdtrtCertNo(cancelRegPaymentModel.getBusiCardInfo()) - .setIptOtpNo(assignSeqUtil.getSeqByDay(AssignSeqEnum.ENCOUNTER_NUM.getPrefix(), 4)) - .setAtddrNo(doctor.getYbNo()).setDrName(doctor.getName()).setDeptCode(organization.getYbNo()) - .setDeptName(organization.getName()) - .setCaty(organization.getCaty() == null ? organization.getYbNo() : organization.getCaty()) - .setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()).setAtddrNo(doctor.getYbNo()).setPsnType("11") - .setPsnCertType("01").setCertno(perinfo.getCertno()).setPsnName(perinfo.getPsnName()); - - // reg.setAtddrNo("D220172023129").setDrName("郭建林").setCaty("B19").setDeptCode("B19"); - - // 发送医保挂号请求 - ClinicReg2201Output clinicReg2201Output = ybHttpService.reg(reg, contract); - if (clinicReg2201Output == null) { - throw new ServiceException("未接受到医保挂号接口返回参数"); - } - clinicReg2201Output.setMedType(YbMedType.GENERAL_OUTPATIENT.getValue()); - // 保存挂号数据 - ybBaseService.saveReg(clinicReg2201Output); - - // 查询医疗类型 - YbMedType medType = YbMedType.GENERAL_OUTPATIENT; - - List diseinfos = new ArrayList<>(); - - // 拼接2203参数 - Clinic2203DiseInfoParam diseinfo = new Clinic2203DiseInfoParam(); - diseinfo.setDiagDept(organization.getYbNo()).setDiseDorName(doctor.getName()).setDiseDorNo(doctor.getYbNo()) - .setDiagTime(new Date()).setValiFlag(Whether.YES.getValue().toString()).setDiagType("1").setDiagSrtNo("1") - .setDiagCode("Z00.001").setDiagName("健康查体").setMdtrtId(clinicReg2201Output.getMdtrtId()); - // .setDiseDorNo("D220172023129").setDiseDorName("郭建林").setDiagDept("B19"); - - diseinfos.add(diseinfo); - - Clinic2203MedicalParam medical2203Param = new Clinic2203MedicalParam(); - medical2203Param.setMdtrtId(clinicReg2201Output.getMdtrtId()).setPsnNo(reg.getPsnNo()) - .setBegntime(reg.getBegntime()).setMedType(medType.getValue()).setMainCondDscr("") - .setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()).setDiseCodg("Z00.001").setDiseName("健康查体") - .setDiseinfoList(diseinfos).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()); - - // 2203接口上传就诊信息 - ybHttpService.upload2203Record(medical2203Param, contract); - - YbPsnSetlWay finCategory = YbPsnSetlWay.getByValue(cancelRegPaymentModel.getPsnSetlWay()); - if (finCategory == null) { - throw new ServiceException("请选择收费方式"); - } - - // 拼接2204参数 - Clinic2204OrderParam clinic2204OrderParam = new Clinic2204OrderParam(); - // 排番 - clinic2204OrderParam.setChrgBchno(AssignSeqEnum.YB_CLINIC_ORDER.getPrefix() + new Date().getTime());// 医保FeedetlSn字段最大长度30,前期设置20也被check了,故此怀疑是加密后不可超过30 - List clincFeedetailList = new ArrayList<>(); - Clinic2204FeeDetailParam clinicFeedetail = new Clinic2204FeeDetailParam(); - BigDecimal totalPrice = cancelRegPaymentModel.getTotalPrice(); - if (totalPrice == null) { - throw new ServiceException("未查询到挂号费用金额"); - } - // 外购处方标志(文档上没有详细介绍) 2025/04/14经确认,暂定非处方流转传0,处方流转传1 - clinicFeedetail.setMedListCodg("001101000010000-100000002"); - clinicFeedetail.setFeedetlSn(clinic2204OrderParam.getChrgBchno()).setMdtrtId(clinicReg2201Output.getMdtrtId()) - .setPsnNo(reg.getPsnNo()).setChrgBchno(clinic2204OrderParam.getChrgBchno()).setFeeOcurTime(new Date()) - .setMedinsListCodg("1922546598919725058").setDetItemFeeSumamt(totalPrice.doubleValue()).setCnt(1.0) - .setPric(totalPrice.doubleValue()).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()) - .setBilgDeptCodg(organization.getYbNo()).setBilgDeptName(organization.getName()) - .setBilgDrCodg(doctor.getYbNo()) - // 默认无需审批 - .setBilgDrName(doctor.getName()).setHospApprFlag(YbHospApprFlag.NO_APPROVAL_REQUIRED.getValue()) - .setRxCircFlag("0").setBilgDrCodg(doctor.getYbNo()); - // .setBilgDrName("郭建林").setBilgDrCodg("D220172023129") - // .setBilgDeptCodg("B19").setBilgDeptName(organization.getName()); - - clincFeedetailList.add(clinicFeedetail); - clinic2204OrderParam.setFeedetail(clincFeedetailList).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()); - - // 接收2204接口返回参数 - Clinic2204OrderResult clinic2204OrderResult = ybHttpService.upload2204Record(clinic2204OrderParam, contract); - if (clinic2204OrderResult == null) { - throw new ServiceException("未接收2204接口返回参数"); - } - - // 个人结算方式 - YbPsnSetlWay setlWay = YbPsnSetlWay.PSN_SETLWAY01; - // 拼接2206预结算参数 - Clinic2206OrderParam clinicOrder = new Clinic2206OrderParam(); - clinicOrder.setPsnNo(clinicReg2201Output.getPsnNo()).setMdtrtCertType(clinicReg2201Output.getMdtrtCertType()) - .setMdtrtCertNo(clinicReg2201Output.getMdtrtCertNo()).setMedType(medType.getValue()) - .setMedfeeSumamt(totalPrice.doubleValue()).setPsnSetlway(setlWay.getValue()) - .setMdtrtId(clinicReg2201Output.getMdtrtId()).setChrgBchno(clinic2204OrderParam.getChrgBchno()) - .setAcctUsedFlag(String.valueOf(Whether.YES.getValue())).setInsutype(clinicReg2201Output.getInsutype()) - .setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()); - - // 接收2206接口返回参数 - Clinic2206OrderOutput clinic2206OrderResult = ybHttpService.upload2206Record(clinicOrder, contract); - if (clinic2206OrderResult == null) { - throw new ServiceException("未接收2206接口返回参数"); - } - // 保存预结算参数 - ybBaseService.saveClinicOrder2206Param(clinicOrder, clinic2206OrderResult, medical2203Param, - clinic2204OrderParam, clinic2204OrderResult); - // 缓存预结算结果 - redisCache.setCacheObject("PRE-SETTLE:PRE_SETTLE_:" + clinic2204OrderParam.getChrgBchno(), - clinic2206OrderResult, 1800, TimeUnit.SECONDS); - clinic2206OrderResult.setChrgBchno(clinic2204OrderParam.getChrgBchno()).setBusNo(reg.getIptOtpNo()); - // 返回预结算结果 - return clinic2206OrderResult; - } - - public Clinic2206OrderOutput preSettle(Contract contract, Long encounterId, YbMdtrtCertType ybMdtrtCertType, - String busiCardInfo, ClinicReg2201Output reg2201Output, String payWay, List chargeItemIds, - YbMedType ybMedType) { - YbPsnSetlWay ybPsnSetlWay = YbPsnSetlWay.getByValue(payWay); - if (ybPsnSetlWay == null) { - ybPsnSetlWay = YbPsnSetlWay.PSN_SETLWAY01; - } - - Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); - // 获取2203接口和2204接口参数 - Clinic2203MedicalParam clinic2203MedicalParam = - ybBaseService.getClinicMedical2203Param(encounterId, tenantId, reg2201Output, ybMedType); - if (clinic2203MedicalParam == null) { - throw new ServiceException("未生成2203接口参数"); - } - - Result result = ybHttpService.upload2203Record(clinic2203MedicalParam, contract); - - Clinic2204OrderParam clinic2204OrderParam = - ybBaseService.getClinicOrder2204Param(tenantId, chargeItemIds, reg2201Output); - if (clinic2204OrderParam == null) { - throw new ServiceException("未生成2204接口参数"); - } - - // 接收2204接口返回参数 - Clinic2204OrderResult clinic2204OrderResult = ybHttpService.upload2204Record(clinic2204OrderParam, contract); - if (clinic2204OrderResult == null) { - throw new ServiceException("未接收2204接口参数"); - } - // 2204上报费用明细金额总数在2206中使用 - BigDecimal sum = BigDecimal.ZERO; - for (Clinic2204FeeDetailResult clinic2204FeeDetailResult : clinic2204OrderResult.getResult()) { - sum = sum.add(clinic2204FeeDetailResult.getDetItemFeeSumamt()); - } - - // 获取2206参数 - Clinic2206OrderParam clinic2206OrderParam = ybBaseService.getClinicOrder2206Param(sum, reg2201Output, - clinic2204OrderParam.getChrgBchno(), busiCardInfo); - if (clinic2206OrderParam == null) { - throw new ServiceException("未生成2206接口参数"); - } - // 接收2206接口返回参数 - Clinic2206OrderOutput clinic2206OrderResult = ybHttpService.upload2206Record(clinic2206OrderParam, contract); - if (clinic2206OrderResult == null) { - throw new ServiceException("未接收2206接口参数"); - } - // 保存预结算参数 - ybBaseService.saveClinicOrder2206Param(clinic2206OrderParam, clinic2206OrderResult, clinic2203MedicalParam, - clinic2204OrderParam, clinic2204OrderResult); - // 缓存预结算结果 - // redisCache.setCacheObject("PRE-SETTLE:PRE_SETTLE_:" + clinic2206OrderParam.getChrgBchno(), - // clinic2206OrderResult, 1800, TimeUnit.SECONDS); - clinic2206OrderResult.setChrgBchno(clinic2206OrderParam.getChrgBchno()); - return clinic2206OrderResult; - } - - /** - * 【2208】 - * - * @param settleId 付款id - * @return 结果 - */ - public R unSettle(String settleId) { - Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); - Clinic2208UnSetlInfoParam clinicOrder2208 = ybBaseService.getClinicOrder2208(tenantId, settleId); - // clinicOrder2208.setMdtrtId("220000202505161931470129200037").setSetlId("220000202505161932020113002625"); - if (clinicOrder2208 == null) { - throw new ServiceException("未生成2208接口参数"); - } - Contract contractByInsuplcAdmdvs = - iContractService.getContractByInsuplcAdmdvs(clinicOrder2208.getInsuplcAdmdvs()); - Clinic2208UnSetlInfoOutput clinic2208UnSetlInfoResult = - ybHttpService.unSettle(clinicOrder2208, contractByInsuplcAdmdvs); - // 业务表中进行操作 - ybBaseService.saveUnSettleRecord(settleId, clinicOrder2208, clinic2208UnSetlInfoResult); - return R.ok(clinic2208UnSetlInfoResult); - } - - /** - * 【3301】目录对照 - * - * @param tableName 表名 - * @param id 主键id - * @return 结果 - */ - public R directoryCheck(String tableName, Long id) { - - MedicalDirectory3302Param medicalDirectory3302Param = ybBaseService.getMedicalDirectory3302Param(tableName, id); - Result result3302Info = ybHttpService.directoryUnCheck(medicalDirectory3302Param); - if (result3302Info.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveDirectoryHistory(tableName, id, 3302, medicalDirectory3302Param); - } else { - log.error("目录对照前,撤销对照失败"); - } - MedicalDirectory3301Param medicalDirectory3301Param = ybBaseService.getMedicalDirectory3301Param(tableName, id); - ArrayList list = new ArrayList<>(); - list.add(medicalDirectory3301Param); - MedicalDirectory3301ListParam medicalDirectory3301ListParam = new MedicalDirectory3301ListParam(); - medicalDirectory3301ListParam.setData(list); - Result resultInfo = ybHttpService.directoryCheck(medicalDirectory3301ListParam); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveDirectoryHistory(tableName, id, 3301, medicalDirectory3301Param); - return R.ok("对照成功"); - } - throw new ServiceException("药品对照失败"); - } - - /** - * 【3301】目录对照(药品) - * - * @param categoryCode 药品分类 - * @param busNo 药品编号 - * @param name 药品编号 - * @param ybNo 医保编码 - */ - public R directoryCheckMedication(String categoryCode, String busNo, String name, String ybNo) { - MedicalDirectory3302Param medicalDirectory3302Param = - ybBaseService.getMedicalDirectory3302ParamMedication(categoryCode, busNo, ybNo); - Result result3302Info = ybHttpService.directoryUnCheck(medicalDirectory3302Param); - if (!result3302Info.getCode().equals(CommonConstant.SC_OK_200)) { - return R.fail("目录对照前,撤销对照失败"); - } - MedicalDirectory3301Param medicalDirectory3301Param = - ybBaseService.getMedicalDirectory3301ParamMedication(categoryCode, busNo, name, ybNo); - ArrayList list = new ArrayList<>(); - list.add(medicalDirectory3301Param); - MedicalDirectory3301ListParam medicalDirectory3301ListParam = new MedicalDirectory3301ListParam(); - medicalDirectory3301ListParam.setData(list); - Result resultInfo = ybHttpService.directoryCheck(medicalDirectory3301ListParam); - if (!resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - return R.fail("药品对照失败"); - } - return R.ok(); - } - - /** - * 【3302】目录对照撤销 - * - * @param tableName 就诊id - * @param id 付款id - * @return 结果 - */ - public R directoryUnCheck(String tableName, Long id) { - - MedicalDirectory3302Param medicalDirectory3302Param = ybBaseService.getMedicalDirectory3302Param(tableName, id); - Result resultInfo = ybHttpService.directoryUnCheck(medicalDirectory3302Param); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveDirectoryHistory(tableName, id, 3302, medicalDirectory3302Param); - return R.ok("撤销成功"); - } - return R.fail("撤销失败"); - } - - /** - * 【3201】对总账 - * - * @param settlement3201WebParam 3201入参条件 - * @return 结果 - */ - public R reconcileGeneralLedger(Settlement3201WebParam settlement3201WebParam) { - - Financial3201Param financial3201Param = ybBaseService.getFinancial3201Param(settlement3201WebParam); - if (financial3201Param == null) { - throw new ServiceException("未生成3201参数"); - } - Result result = ybHttpService.reconcileGeneralLedger(financial3201Param); - if (result == null) { - throw new ServiceException("未接收3201医保返回参数"); - } - // ybBaseService.saveReconcileGeneralLedger(result); - return R.ok(); - } - - /** - * 【3202】对明细账 - * - * @param settlement3202WebParam 3202入参条件 - * @return 结果 - */ - public R reconcileGeneralLedgerDetail(Settlement3202WebParam settlement3202WebParam) { - - FinancialSettlement3202Param financial3202Param = - ybBaseService.getFinancialSettlement3202Param(settlement3202WebParam); - FinancialSettlement3202Result resultInfo = ybHttpService.reconcileGeneralLedgerDetail(financial3202Param); - - return R.ok(resultInfo); - } - - /** - * 【3209A】第三方数据查询 - * - * @param settlement3209AWebParam 3209A入参条件 - * @return 结果 - */ - public R threePartSearch(Settlement3209AWebParam settlement3209AWebParam) { - - FinancialSettlement3209AParam financialSettlement3209AParam = - ybBaseService.getFinancialSettlement3209AParam(settlement3209AWebParam); - List list = ybHttpService.threePartSearch(financialSettlement3209AParam); - - return R.ok(); - } - - /** - * 【3203A】清算申请(吉林省) - * - * @param financial3203AWebParam 3203A入参条件 - * @return 结果 - */ - public R applyFinancialClearing(Financial3203AWebParam financial3203AWebParam) { - - Financial3203AParam financial3203AParam = ybBaseService.getFinancial3203AParam(financial3203AWebParam); - String s = ybHttpService.applyFinancialClearing(financial3203AParam); - ybBaseService.save3203AFinancialClearingApplycation(financial3203AParam, s); - return R.ok(s); - } - - /** - * 【3204A】清算申请撤销(吉林省) - * - * @param clrAppyEvtId 3203A入参条件 - * @return 结果 - */ - public R cancelFinancialClearing(String clrAppyEvtId, String clrOptins) { - - Financial3204Param financial3204Param = new Financial3204Param(); - financial3204Param.setClrOptins(clrOptins).setClrAppyEvtId(clrAppyEvtId); - Result resultInfo = ybHttpService.cancelFinancialClearing(financial3204Param); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.save3204AFinancialClearingApplycation(clrAppyEvtId, clrOptins); - return R.ok(); - } - return R.fail(); - } - - /** - * 【3205A】清算申请状态查询 - * - * @param clearing3205AWebParma 3205A入参条件 - * @return 结果 - */ - public R getFinancialClearingStatus(Clearing3205AWebParma clearing3205AWebParma) { - - Clearing3205AParma clearing3205AParma = ybBaseService.getClearing3205AParma(clearing3205AWebParma); - Clearing3205AResult clearing3205AResult = ybHttpService.getFinancialClearingStatus(clearing3205AParma); - - return R.ok(clearing3205AResult); - } - - /** - * 【3501】商品盘存上传 - * - * @param medicalInventory3501Param 供应申请详细信息 - * @param stocktakingTime 盘存时间 - * @return 结果 - */ - public R uploadInventoryCount(MedicalInventory3501Param medicalInventory3501Param, Date stocktakingTime) { - Result resultInfo = ybHttpService.uploadInventoryCount(medicalInventory3501Param); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveInventoryCheckRecord(medicalInventory3501Param, resultInfo.getMessage()); - return R.ok(); - } - ybBaseService.saveInventoryCheckRecord(medicalInventory3501Param, resultInfo.getMessage()); - return R.fail(); - } - - /** - * 【3502】商品信息变更 - * - * @param medicalInventory3502Param 供应申请详细信息 - * @return 结果 - */ - public R updateInventoryCount(MedicalInventory3502Param medicalInventory3502Param) { - Result resultInfo = ybHttpService.updateInventoryCount(medicalInventory3502Param); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveInventoryChangeRecord(medicalInventory3502Param, resultInfo.getMessage()); - return R.ok(); - } - ybBaseService.saveInventoryChangeRecord(medicalInventory3502Param, resultInfo.getMessage()); - return R.fail(); - } - - /** - * 【3503】商品采购 - * - * @param medical3503Param 供应申请详细信息 - * @return 结果 - */ - public R procurement(Medical3503Param medical3503Param) { - Result resultInfo = ybHttpService.procurement(medical3503Param); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveInventoryPurchaseRecord(medical3503Param, resultInfo.getMessage()); - return R.ok(); - } - ybBaseService.saveInventoryPurchaseRecord(medical3503Param, resultInfo.getMessage()); - return R.fail(); - } - - /** - * 【3504】商品采购退货 - * - * @param medicalPurchase3504Param 供应申请详细信息 - * @return 结果 - */ - public R cancelProcurement(MedicalPurchase3504Param medicalPurchase3504Param) { - Result resultInfo = ybHttpService.cancelProcurement(medicalPurchase3504Param); - if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveInventoryPurchaseReturnRecord(medicalPurchase3504Param, resultInfo.getMessage()); - return R.ok(); - } - ybBaseService.saveInventoryPurchaseReturnRecord(medicalPurchase3504Param, resultInfo.getMessage()); - return R.fail(); - } - - /** - * 【3505】商品销售 - * - * @param medical3505Param 发药详细信息 - * @return 结果 - */ - public R merchandise(Medical3505Param medical3505Param) { - - Result result = ybHttpService.merchandise(medical3505Param); - Medical3505Result medical3505Result = - JSON.parseObject(JSON.toJSONString(result.getResult()), Medical3505Result.class); - if ("1".equals(medical3505Result.getRetRslt())) { - ybBaseService.saveInventorySaleRecord(medical3505Param, medical3505Result.getMsgRslt()); - return R.ok(); - } - ybBaseService.saveInventorySaleRecord(medical3505Param, medical3505Result.getMsgRslt()); - return R.fail(); - } - - /** - * 【3506】商品销售退货 - * - * @param medical3506Param 退货详细信息 - * @return 结果 - */ - public R cancelMerchandise(Medical3506Param medical3506Param) { - Result result = ybHttpService.cancelMerchandise(medical3506Param); - Medical3505Result medical3505Result = - JSON.parseObject(JSON.toJSONString(result.getResult()), Medical3505Result.class); - if ("1".equals(medical3505Result.getRetRslt())) { - ybBaseService.saveInventorySaleReturnRecord(medical3506Param, medical3505Result.getMsgRslt()); - return R.ok(); - } - ybBaseService.saveInventorySaleReturnRecord(medical3506Param, medical3505Result.getMsgRslt()); - return R.fail(); - } - - /** - * 【3507】商品信息删除 - * - * @param id 供应申请id - * @return 结果 - */ - public R deleteGoodsInfo(Long id, String ListType) { - Medical3507Param medical3507Param = ybBaseService.getMedical3507Param(id, ListType); - Result resultBody = ybHttpService.deleteGoodsInfo(medical3507Param); - if (resultBody.getCode().equals(CommonConstant.SC_OK_200)) { - ybBaseService.saveInventoryDelRecord(medical3507Param); - return R.ok(); - } - return R.fail(); - } - - /** - * 【门诊结算-2207结算】 - * - * @param contract 合同 - * @param chrgBchno 支付批次号 - * @param ybMdtrtCertType 凭证类型 - * @param busiCardInfo 读卡获取到的凭证 - * @param minpacuntDrugTracCnt 追溯码相关信息 - * @param mcsTracCnt 追溯码相关信息 - * @return 结算结果 - */ - public Clinic2207OrderModel settle(Contract contract, String chrgBchno, String busiCardInfo, - YbMdtrtCertType ybMdtrtCertType, Integer minpacuntDrugTracCnt, Integer mcsTracCnt) { - // 分别查询2206和2201记录的参数信息 - ClinicPreSettle clinicPreSettle = iClinicPreSettleService - .getOne(new LambdaQueryWrapper().eq(ClinicPreSettle::getChrgBchno, chrgBchno)); - if (clinicPreSettle == null) { - throw new ServiceException("为查询到预结算信息"); - } - ClinicReg clinicReg = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicPreSettle.getMdtrtId())); - if (clinicReg == null) { - throw new ServiceException("为查询到挂号信息"); - } - Clinic2206OrderOutput clinic2206OrderResult = - JSONObject.parseObject(clinicPreSettle.getResult2206(), Clinic2206OrderOutput.class); - // 组装2207接口参数 - Clinic2207OrderParam clinicOrder = new Clinic2207OrderParam(); - clinicOrder.setPsnNo(clinicPreSettle.getPsnNo()).setMdtrtCertType(ybMdtrtCertType.getValue()) - .setMdtrtCertNo(busiCardInfo).setMedType(clinic2206OrderResult.getMedType()) - .setMedfeeSumamt(clinic2206OrderResult.getMedfeeSumamt().doubleValue()).setPsnSetlway("01") - .setMdtrtId(clinic2206OrderResult.getMdtrtId()).setChrgBchno(chrgBchno) - .setAcctUsedFlag(Whether.YES.getValue().toString()).setInsutype(clinic2206OrderResult.getInsutype()) - .setFulamtOwnpayAmt(clinic2206OrderResult.getFulamtOwnpayAmt().doubleValue()) - .setOverlmtSelfpay(clinic2206OrderResult.getOverlmtSelfpay().doubleValue()) - .setPreselfpayAmt(clinic2206OrderResult.getPreselfpayAmt().doubleValue()) - .setInscpScpAmt(clinic2206OrderResult.getInscpScpAmt().doubleValue()) - .setInsuplcAdmdvs(clinicReg.getInsuplcAdmdvs()).setMinpacuntDrugTracCnt(minpacuntDrugTracCnt) - .setMcsTracCnt(mcsTracCnt); - // 发送http请求给app - Clinic2207OrderModel settle = ybHttpService.settle(clinicOrder, contract); - if (settle == null) { - throw new ServiceException("未接收2207接口参数"); - } - // 保存记录通信记录 - ybBaseService.saveClinic2207Record(clinicOrder, settle); - return settle.setChrgBchno(chrgBchno); - } - - /** - * 【门诊挂号收费-2207】 - * - * @param contract 合同 - * @param chrgBchno 收费批次号 - * @return 结果 - */ - public PaymentResult settle(Contract contract, String chrgBchno) { - - ClinicPreSettle clinicPreSettle = iClinicPreSettleService - .getOne(new LambdaQueryWrapper().eq(ClinicPreSettle::getChrgBchno, chrgBchno)); - - if (clinicPreSettle == null) { - throw new ServiceException("未查询到预结算信息"); - } - ClinicReg clinicReg = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicPreSettle.getMdtrtId())); - - if (clinicReg == null) { - throw new ServiceException("未查询到挂号信息"); - } - - Clinic2206OrderOutput clinic2206OrderResult = - JSONObject.parseObject(clinicPreSettle.getResult2206(), Clinic2206OrderOutput.class); - - Clinic2207OrderParam clinicOrder = new Clinic2207OrderParam(); - clinicOrder.setPsnNo(clinicPreSettle.getPsnNo()).setMdtrtCertType(clinic2206OrderResult.getMdtrtCertType()) - // todo:sjq 医疗费用总额需要用ChargeItem的和 - .setMdtrtCertNo(clinic2206OrderResult.getMdtrtCertNo()).setMedType(clinic2206OrderResult.getMedType()) - .setMedfeeSumamt(clinic2206OrderResult.getMedfeeSumamt().doubleValue()).setPsnSetlway("01") - .setMdtrtId(clinic2206OrderResult.getMdtrtId()).setChrgBchno(chrgBchno) - .setAcctUsedFlag(Whether.YES.getValue().toString()).setInsutype(clinic2206OrderResult.getInsutype()) - .setFulamtOwnpayAmt(clinic2206OrderResult.getFulamtOwnpayAmt().doubleValue()) - .setOverlmtSelfpay(clinic2206OrderResult.getOverlmtSelfpay().doubleValue()) - .setPreselfpayAmt(clinic2206OrderResult.getPreselfpayAmt().doubleValue()) - .setInscpScpAmt(clinic2206OrderResult.getInscpScpAmt().doubleValue()) - .setInsuplcAdmdvs(clinicReg.getInsuplcAdmdvs()); - - Clinic2207OrderModel settle = ybHttpService.settle(clinicOrder, contract); - - if (settle == null) { - throw new ServiceException("未接收2207接口参数"); - } - // 统一生成业务流水 - String paymentNo = assignSeqUtil.getSeqByDay(AssignSeqEnum.PAYMENT_NO.getPrefix(), 20); - // 业务表中进行操作 - ybBaseService.saveClinic2207Record(paymentNo, clinicOrder, settle); - PaymentResult paymentResult = new com.openhis.financial.model.PaymentResult(); - BeanUtils.copyProperties(settle, paymentResult); - paymentResult.setPaymentNo(paymentNo); - return paymentResult; - } - - public ClinicReg2201Output getClinicRegByEncounterId(Long encounterId) { - return ybBaseService.getClinicRegByEncounterId(encounterId); - } - - public void unPreSettle(Long encounterId, String s) { - Clinic2205OrderParam clinic2205OrderParam = ybBaseService.getClinic2205OrderParam(encounterId, s); - if (clinic2205OrderParam == null) { - throw new ServiceException("未生成2205接口参数"); - } - Contract contract = iContractService.getContractByInsuplcAdmdvs(clinic2205OrderParam.getInsuplcAdmdvs()); - ybHttpService.unPreSettle(clinic2205OrderParam, contract); - } - - /** - * 医保预结算返回信息 - * - * @return 预结算结果 - */ - public Yb2303OutputSetInfo preSettleInpatient(PrePaymentDto prePaymentDto) { - - Encounter encounter = iEncounterService.getById(prePaymentDto.getEncounterId()); - if (encounter == null) { - throw new ServiceException("未查询到就诊记录"); - } - - InpatientReg inpatientReg = inpatientRegService - .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) - .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); - if (inpatientReg == null) { - throw new ServiceException("未查询到医保就诊记录"); - } - - InfoPerson infoPerson = iPerinfoService.getByPsnNo(inpatientReg.getPsnNo()); - if (infoPerson == null) { - throw new ServiceException("未查询到患者信息"); - } - - // 获取今天和昨天的上午10点时间 - // LocalDateTime today10AM = LocalDateTime.of(LocalDate.now(), LocalTime.of(10, 0)); // 今天10点 - // LocalDateTime yesterday10AM = today10AM.minusDays(1); // 昨天10点(自动处理跨月/年) - - // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() - // .eq(ChargeItem::getEncounterId, encounterId).between(ChargeItem::getEnteredDate, yesterday10AM, today10AM)); - // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() - // .eq(ChargeItem::getEncounterId, encounterId).in(ChargeItem::getId, chargeItemIds)); - List chargeItemBaseInfoDtos = - iChargeItemService.getChargeItemBaseInfoByIds(prePaymentDto.getChargeItemIds()); - List chargeItemBaseInfoDtosList = new ArrayList<>(); - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { - if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - continue; - } - if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { - // 反序列化:将JSON数组字符串转为List<> - List chargeItemBaseInfoList = - JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); - chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); - } else { - chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); - } - } - Yb2301InputFeeDetail yb2301InputFeeDetail; - List yb2301InputFeeDetailList = new ArrayList(); - // int i = 1; - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { - yb2301InputFeeDetail = new Yb2301InputFeeDetail(); - yb2301InputFeeDetail.setFeedetlSn(chargeItemBaseInfoDto.getBusNo()).setMdtrtId(inpatientReg.getMdtrtId()) - .setPsnNo(inpatientReg.getPsnNo()).setMedType(String.valueOf(encounter.getYbClassEnum())) - .setFeeOcurTime(chargeItemBaseInfoDto.getEnteredDate()).setMedListCodg(chargeItemBaseInfoDto.getYbNo()) - .setMedinsListCodg(chargeItemBaseInfoDto.getBaseBusNo()) - .setDetItemFeeSumamt(chargeItemBaseInfoDto.getTotalPrice()) - .setCnt(chargeItemBaseInfoDto.getQuantityValue()).setPric(chargeItemBaseInfoDto.getUnitPrice()) - .setBilgDeptName(chargeItemBaseInfoDto.getDeptName()).setBilgDrName(chargeItemBaseInfoDto.getDoctName()) - .setBilgDeptCodg(chargeItemBaseInfoDto.getDeptYbNo()) - .setBilgDrCodg(chargeItemBaseInfoDto.getDoctYbNo()); - - yb2301InputFeeDetailList.add(yb2301InputFeeDetail); - } - - Yb2301InputFeeDetailModel yb2301InputFeeDetailModel = new Yb2301InputFeeDetailModel(); - yb2301InputFeeDetailModel.setFeedetail(yb2301InputFeeDetailList) - .setInsuplcAdmdvs(inpatientReg.getInsuplcAdmdvs()); - - List yb2301OutputResults = ybHttpService.upload2301FeeDetail(yb2301InputFeeDetailModel); - // todo :数据保存 - - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { - if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { - continue; - } - if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { - // 反序列化:将JSON数组字符串转为List<> - List chargeItemBaseInfoList = - JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); - chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); - } else { - chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); - } - } - // 计算医疗总费用 - BigDecimal medfeeSumamt = BigDecimal.ZERO; - for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { - medfeeSumamt = medfeeSumamt.add(chargeItemBaseInfoDto.getTotalPrice()); - } - - Yb2303InputInpatient yb2303InputInpatient = new Yb2303InputInpatient(); - yb2303InputInpatient.setPsnNo(infoPerson.getPsnNo()) - .setMdtrtCertType(YbMdtrtCertType.getByValue(prePaymentDto.getYbMdtrtCertType()) == null ? null - : YbMdtrtCertType.getByValue(prePaymentDto.getYbMdtrtCertType()).getValue()) - .setMdtrtCertNo(prePaymentDto.getBusiCardInfo()).setMedfeeSumamt(medfeeSumamt) - .setPsnSetlway(YbPsnSetlWay.PSN_SETLWAY01.getValue()).setMdtrtId(inpatientReg.getMdtrtId()) - .setInsutype(infoPerson.getInsutype()).setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) - .setMdtrtareaAdmvs(iContractService.getContractListByYb().get(0).getAdmVs()); - - // todo:中如结算标志需要判断一下,待2304接口开发完成后编辑 - - Yb2303OutputSetInfo yb2303OutputSetInfo = ybHttpService.inpatientPreSettle(yb2303InputInpatient); - - if (yb2303OutputSetInfo == null) { - throw new ServiceException("医保预结算失败"); - } - // todo:数据保存 - - return yb2303OutputSetInfo; - } - - /** - * 【住院结算】 - * - * @param contract 合同 - * @param paymentDto 结算参数 - * @return 结果 - */ - public Yb2304OutputSetlInfo inpatientSettle(Contract contract, PaymentInpatientDto paymentDto) { - - Yb2304InputInpatient yb2304InpatientParam = ybBaseService.getYb2304InpatientParam(paymentDto); - - Yb2304OutputSetlInfo yb2304OutputSetlInfo = ybHttpService.inpatientSettle(contract, yb2304InpatientParam); - if (yb2304OutputSetlInfo == null) { - throw new ServiceException("医保结算失败,请稍后重试"); - } - return yb2304OutputSetlInfo; - } - - /** - * 【取消住院结算】 - * - * @param contract 合同 - * @param inpatientSettle 医保结算实体 - * @return 医保结果 - */ - public Yb2305OutputSetlInfo inpatientUnSettle(Contract contract, InpatientSettle inpatientSettle) { - - Yb2305InputInpatient yb2305InpatientParam = ybBaseService.getYb2305InpatientParam(inpatientSettle); - - Yb2305OutputSetlInfo yb2305OutputSetlInfo = ybHttpService.inpatientUnSettle(contract, yb2305InpatientParam); - - return yb2305OutputSetlInfo; - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java deleted file mode 100644 index 3ac30b1f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.openhis.yb.domain.ClinicPreSettle; -import com.openhis.yb.mapper.ClinicPreSettleMapper; -import com.openhis.yb.service.IClinicPreSettleService; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -/** - * 【请填写功能名称】Service业务层处理 - * - * @author system - * @date 2025-04-20 - */ -@Service -public class ClinicPreSettleServiceImpl extends ServiceImpl implements IClinicPreSettleService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java deleted file mode 100644 index 72adc29c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.domain.ClinicSettle; -import com.openhis.yb.mapper.ClinicSettleMapper; -import com.openhis.yb.service.IClinicSettleService; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -import java.util.List; - -/** - * 【请填写功能名称】Service业务层处理 - * - * @author system - * @date 2025-04-20 - */ -@Service -public class ClinicSettleServiceImpl extends ServiceImpl implements IClinicSettleService { - - /** - * 通过结算id查询 - * - * @param paymentId 结算id - * @return - */ - @Override - public ClinicSettle getByPaymentId(Long paymentId){ - return baseMapper.selectOne(new LambdaQueryWrapper().eq(ClinicSettle::getSetlId, paymentId)); - } - - - @Override - public ClinicSettle getBySettleId(String settleId) { - return baseMapper.selectOne(new LambdaQueryWrapper().eq(ClinicSettle::getSetlId, settleId)); - } - - @Override - public List getBySettleIds(List settleIds) { - return baseMapper.selectList(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settleIds)); - } -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java deleted file mode 100644 index a2192ad5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.openhis.yb.domain.ClinicUnReg; -import com.openhis.yb.service.IClinicUnRegService; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.mapper.ClinicUnRegMapper; - - -/** - * 撤销挂号记录Service业务层处理 - * - * @author system - * @date 2025-04-21 - */ -@Service -public class ClinicUnRegServiceImpl extends ServiceImpl implements IClinicUnRegService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java deleted file mode 100644 index 933831a2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.openhis.yb.service.impl; - -import java.util.List; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.common.enums.DelFlag; -import com.openhis.yb.domain.ClinicUnSettle; -import com.openhis.yb.mapper.ClinicUnSettleMapper; -import com.openhis.yb.service.IClinicUnSettleService; - -/** - * 【请填写功能名称】Service业务层处理 - * - * @author system - * @date 2025-04-20 - */ -@Service -public class ClinicUnSettleServiceImpl extends ServiceImpl - implements IClinicUnSettleService { - - /** - * 根据settleId查询集合 - * - * @param settleIds 集合 - * @return 集合 - */ - @Override - public List getBySettleIds(List settleIds) { - return baseMapper.selectList(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settleIds) - .eq(ClinicUnSettle::getDeleteFlag, DelFlag.NO.getCode())); - } -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java deleted file mode 100644 index 44016e87..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.DirectoryCheckRecord; -import com.openhis.yb.mapper.DirectoryCheckRecordMapper; -import com.openhis.yb.service.IDirectoryCheckRecordService; - -/** - * 医保Service业务层处理 - * - * @author system - * @date 2025-04-27 - */ -@Service -public class DirectoryCheckRecordServiceImpl extends ServiceImpl - implements IDirectoryCheckRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java deleted file mode 100644 index 8dd2dc88..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.FinancialApplyRecord; -import com.openhis.yb.mapper.FinancialApplyRecordMapper; -import com.openhis.yb.service.IFinancialApplyRecordService; - -/** - * 医保财务申请记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class FinancialApplyRecordServiceImpl extends ServiceImpl implements IFinancialApplyRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java deleted file mode 100644 index b9bd9dc3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.openhis.yb.domain.FinancialReconcileRecord; -import com.openhis.yb.mapper.FinancialReconcileRecordMapper; -import com.openhis.yb.service.IFinancialReconcileRecordService; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - - -/** - * ybService业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class FinancialReconcileRecordServiceImpl extends ServiceImpl implements IFinancialReconcileRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java deleted file mode 100644 index 88ac2528..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InpatientFeeDetail; -import com.openhis.yb.mapper.InpatientFeeDetailMapper; -import com.openhis.yb.service.IInpatientFeeDetailService; -import org.springframework.stereotype.Service; - -@Service -public class InpatientFeeDetailServiceImpl extends ServiceImpl implements IInpatientFeeDetailService { -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java deleted file mode 100644 index 0ba8e4e8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.common.enums.DelFlag; -import com.openhis.yb.domain.InpatientReg; -import com.openhis.yb.mapper.InpatientRegMapper; -import com.openhis.yb.service.IInpatientRegService; -import org.springframework.stereotype.Service; - -/** - * TODO:请概括描述当前类的主要用途和注意事项 - * - * @author SunJQ - * @date 2025-07-31 - */ -@Service -public class InpatientRegServiceImpl extends ServiceImpl - implements IInpatientRegService { - - @Override - public InpatientReg getInpatientRegByIptNo(String busNo) { - return baseMapper.selectOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, busNo) - .eq(InpatientReg::getDeleteFlag, DelFlag.NO.getCode())); - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java deleted file mode 100644 index 3646a739..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.common.constant.YbCommonConstants; -import com.openhis.common.enums.Whether; -import com.openhis.yb.domain.InpatientSettle; -import com.openhis.yb.mapper.InpatientSettleMapper; -import com.openhis.yb.service.IInpatientSettleService; -import org.springframework.stereotype.Service; - -@Service -public class InpatientSettleServiceImpl extends ServiceImpl implements IInpatientSettleService { - @Override - public InpatientSettle getBySettleId(String ybSettleIds) { - return baseMapper.selectOne(new LambdaQueryWrapper().eq(InpatientSettle::getSetlId,ybSettleIds).eq(InpatientSettle::getDeleteFlag, Whether.NO.getValue()).last(YbCommonConstants.sqlConst.LIMIT1)); - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java deleted file mode 100644 index 18bc971f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventoryChangeRecord; -import com.openhis.yb.mapper.InventoryChangeRecordMapper; -import com.openhis.yb.service.IInventoryChangeRecordService; - -/** - * 库存信息变更记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventoryChangeRecordServiceImpl extends ServiceImpl implements IInventoryChangeRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java deleted file mode 100644 index aaa60e85..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventoryCheckRecord; -import com.openhis.yb.mapper.InventoryCheckRecordMapper; -import com.openhis.yb.service.IInventoryCheckRecordService; - -/** - * 库存盘点记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventoryCheckRecordServiceImpl extends ServiceImpl implements IInventoryCheckRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java deleted file mode 100644 index 551e4324..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventoryDelRecord; -import com.openhis.yb.mapper.InventoryDelRecordMapper; -import com.openhis.yb.service.IInventoryDelRecordService; - -/** - * 库存删除记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventoryDelRecordServiceImpl extends ServiceImpl implements IInventoryDelRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java deleted file mode 100644 index e2e1d060..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventoryPurchaseRecord; -import com.openhis.yb.mapper.InventoryPurchaseRecordMapper; -import com.openhis.yb.service.IInventoryPurchaseRecordService; - -/** - * 库存采购/退货记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventoryPurchaseRecordServiceImpl extends ServiceImpl implements IInventoryPurchaseRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java deleted file mode 100644 index b305809b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventoryPurchaseReturnRecord; -import com.openhis.yb.mapper.InventoryPurchaseReturnRecordMapper; -import com.openhis.yb.service.IInventoryPurchaseReturnRecordService; - -/** - * 采购/退货记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventoryPurchaseReturnRecordServiceImpl extends ServiceImpl implements IInventoryPurchaseReturnRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java deleted file mode 100644 index f5f572b7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventorySaleRecord; -import com.openhis.yb.mapper.InventorySaleRecordMapper; -import com.openhis.yb.service.IInventorySaleRecordService; - -/** - * 销售/退货记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventorySaleRecordServiceImpl extends ServiceImpl implements IInventorySaleRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java deleted file mode 100644 index 27d0e30a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.yb.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.domain.InventorySaleReturnRecord; -import com.openhis.yb.mapper.InventorySaleReturnRecordMapper; -import com.openhis.yb.service.IInventorySaleReturnRecordService; - -/** - * 销售/退货记录Service业务层处理 - * - * @author system - * @date 2025-04-30 - */ -@Service -public class InventorySaleReturnRecordServiceImpl extends ServiceImpl implements IInventorySaleReturnRecordService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java deleted file mode 100644 index 29412e3e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.core.common.exception.ServiceException; -import com.core.common.utils.StringUtils; -import com.openhis.common.constant.YbCommonConstants; -import com.openhis.financial.domain.Contract; -import com.openhis.yb.domain.InfoPerson; -import com.openhis.yb.service.IPerinfoService; -import com.openhis.yb.mapper.PerinfoMapper; - -import org.springframework.stereotype.Service; - -/** - * @Description: 人员基础信息 - * @Author: jeecg-boot - * @Date: 2021-08-27 - * @Version: V1.0 - */ -@Service -public class PerinfoServiceImpl extends ServiceImpl implements IPerinfoService { - @Override - public InfoPerson getPerInfoByIdCard(String idCard,Integer tenantId) { - return baseMapper.selectOne(new LambdaQueryWrapper() - .eq(InfoPerson::getCertno, idCard).eq(InfoPerson::getTenantId, tenantId) - .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); - } - - @Override - public InfoPerson getByPsnNo(String psnNo) { - return baseMapper.selectOne(new LambdaQueryWrapper() - .eq(InfoPerson::getPsnNo, psnNo).orderByDesc(InfoPerson::getCreateTime) - .last(YbCommonConstants.sqlConst.LIMIT1)); - } - - @Override - public boolean assessInterCrossRegionalSettlement(String psnNo, String admVs) { - InfoPerson infoPerson = getByPsnNo(psnNo); - if(infoPerson==null){ - throw new ServiceException("未查询到身份信息"); - } - //参保地 - String insuplcAdmdvs = infoPerson.getInsuplcAdmdvs(); - return admVs.equals(insuplcAdmdvs); - } - - @Override - public boolean assessIntraCrossRegionalSettlement(String psnNo, String admVs){ - InfoPerson infoPerson = getByPsnNo(psnNo); - if(infoPerson==null){ - throw new ServiceException("未查询到身份信息"); - } - //参保地 - String insuplcAdmdvs = infoPerson.getInsuplcAdmdvs(); - if(StringUtils.isEmpty(insuplcAdmdvs)){ - throw new ServiceException("该患者查询不到参保地信息"); - } - return insuplcAdmdvs.startsWith(admVs.substring(0,2)); - } - - public boolean assessCrossRegionalSettlement(String psnNo, String admVs){ - return assessIntraCrossRegionalSettlement(psnNo,admVs)||assessIntraCrossRegionalSettlement(psnNo,admVs); - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java deleted file mode 100644 index 3efec7bf..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.workflow.domain.SupplyRequest; -import com.openhis.yb.service.IRegService; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.mapper.RegMapper; - -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 挂号管理-服务 - */ -@Service -public class RegServiceImpl extends ServiceImpl implements IRegService { - @Override - public void updateStatus(Long id, String status) { - ClinicReg reg = new ClinicReg(); - reg.setId(id); - reg.setStatus(status); - updateById(reg); - } - - /** - * 通过单据号查询 - * - * @param busNo 单据号 - * @return - */ - @Override - public ClinicReg getByBusNo(String busNo) { - return baseMapper.selectOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, busNo) - .orderByDesc(ClinicReg::getCreateTime) - .last("LIMIT 1")); - } -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java deleted file mode 100644 index fffa2503..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.openhis.yb.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.yb.service.ISignService; -import com.openhis.yb.domain.Sign; -import com.openhis.yb.mapper.SignMapper; - -import org.springframework.stereotype.Service; - -/** - * 签到管理-服务 - */ -@Service -public class SignServiceImpl extends ServiceImpl implements ISignService { - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java deleted file mode 100644 index ffce7919..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java +++ /dev/null @@ -1,327 +0,0 @@ -package com.openhis.yb.util; - -public interface CommonConstant { - - /** - * 正常状态 - */ - public static final Integer STATUS_NORMAL = 0; - - /** - * 禁用状态 - */ - public static final Integer STATUS_DISABLE = -1; - - /** - * 删除标志 - */ - public static final Integer DEL_FLAG_1 = 1; - - /** - * 未删除 - */ - public static final Integer DEL_FLAG_0 = 0; - - /** - * 系统日志类型: 登录 - */ - public static final int LOG_TYPE_1 = 1; - - /** - * 系统日志类型: 操作 - */ - public static final int LOG_TYPE_2 = 2; - - /** - * 操作日志类型: 查询 - */ - public static final int OPERATE_TYPE_1 = 1; - - /** - * 操作日志类型: 添加 - */ - public static final int OPERATE_TYPE_2 = 2; - - /** - * 操作日志类型: 更新 - */ - public static final int OPERATE_TYPE_3 = 3; - - /** - * 操作日志类型: 删除 - */ - public static final int OPERATE_TYPE_4 = 4; - - /** - * 操作日志类型: 倒入 - */ - public static final int OPERATE_TYPE_5 = 5; - - /** - * 操作日志类型: 导出 - */ - public static final int OPERATE_TYPE_6 = 6; - - - /** {@code 500 Server Error} (HTTP/1.0 - RFC 1945) */ - public static final Integer SC_INTERNAL_SERVER_ERROR_500 = 500; - /** {@code 200 OK} (HTTP/1.0 - RFC 1945) */ - public static final Integer SC_OK_200 = 200; - - /**访问权限认证未通过 510*/ - public static final Integer SC_JEECG_NO_AUTHZ=510; - - /** 登录用户Shiro权限缓存KEY前缀 */ - public static String PREFIX_USER_SHIRO_CACHE = "shiro:cache:org.jeecg.config.shiro.ShiroRealm.authorizationCache:"; - /** 登录用户Token令牌缓存KEY前缀 */ - public static final String PREFIX_USER_TOKEN = "prefix_user_token_"; - /** Token缓存时间:3600秒即一小时 */ - public static final int TOKEN_EXPIRE_TIME = 3600; - - - /** - * 0:一级菜单 - */ - public static final Integer MENU_TYPE_0 = 0; - /** - * 1:子菜单 - */ - public static final Integer MENU_TYPE_1 = 1; - /** - * 2:按钮权限 - */ - public static final Integer MENU_TYPE_2 = 2; - - /**通告对象类型(USER:指定用户,ALL:全体用户)*/ - public static final String MSG_TYPE_UESR = "USER"; - public static final String MSG_TYPE_ALL = "ALL"; - - /**发布状态(0未发布,1已发布,2已撤销)*/ - public static final String NO_SEND = "0"; - public static final String HAS_SEND = "1"; - public static final String HAS_CANCLE = "2"; - - /**阅读状态(0未读,1已读)*/ - public static final String HAS_READ_FLAG = "1"; - public static final String NO_READ_FLAG = "0"; - - /**优先级(L低,M中,H高)*/ - public static final String PRIORITY_L = "L"; - public static final String PRIORITY_M = "M"; - public static final String PRIORITY_H = "H"; - - /** - * 短信模板方式 0 .登录模板、1.注册模板、2.忘记密码模板 - */ - public static final String SMS_TPL_TYPE_0 = "0"; - public static final String SMS_TPL_TYPE_1 = "1"; - public static final String SMS_TPL_TYPE_2 = "2"; - - /** - * 状态(0无效1有效) - */ - public static final String STATUS_0 = "0"; - public static final String STATUS_1 = "1"; - - /** - * 同步工作流引擎1同步0不同步 - */ - public static final Integer ACT_SYNC_1 = 1; - public static final Integer ACT_SYNC_0 = 0; - - /** - * 消息类型1:通知公告2:系统消息 - */ - public static final String MSG_CATEGORY_1 = "1"; - public static final String MSG_CATEGORY_2 = "2"; - - /** - * 是否配置菜单的数据权限 1是0否 - */ - public static final Integer RULE_FLAG_0 = 0; - public static final Integer RULE_FLAG_1 = 1; - - /** - * 是否用户已被冻结 1正常(解冻) 2冻结 - */ - public static final Integer USER_UNFREEZE = 1; - public static final Integer USER_FREEZE = 2; - - /**字典翻译文本后缀*/ - public static final String DICT_TEXT_SUFFIX = "_dictText"; - - /** - * 表单设计器主表类型 - */ - public static final Integer DESIGN_FORM_TYPE_MAIN = 1; - - /** - * 表单设计器子表表类型 - */ - public static final Integer DESIGN_FORM_TYPE_SUB = 2; - - /** - * 表单设计器URL授权通过 - */ - public static final Integer DESIGN_FORM_URL_STATUS_PASSED = 1; - - /** - * 表单设计器URL授权未通过 - */ - public static final Integer DESIGN_FORM_URL_STATUS_NOT_PASSED = 2; - - /** - * 表单设计器新增 Flag - */ - public static final String DESIGN_FORM_URL_TYPE_ADD = "add"; - /** - * 表单设计器修改 Flag - */ - public static final String DESIGN_FORM_URL_TYPE_EDIT = "edit"; - /** - * 表单设计器详情 Flag - */ - public static final String DESIGN_FORM_URL_TYPE_DETAIL = "detail"; - /** - * 表单设计器复用数据 Flag - */ - public static final String DESIGN_FORM_URL_TYPE_REUSE = "reuse"; - /** - * 表单设计器编辑 Flag (已弃用) - */ - public static final String DESIGN_FORM_URL_TYPE_VIEW = "view"; - - /** - * online参数值设置(是:Y, 否:N) - */ - public static final String ONLINE_PARAM_VAL_IS_TURE = "Y"; - public static final String ONLINE_PARAM_VAL_IS_FALSE = "N"; - - /** - * 文件上传类型(本地:local,Minio:minio,阿里云:alioss) - */ - public static final String UPLOAD_TYPE_LOCAL = "local"; - public static final String UPLOAD_TYPE_MINIO = "minio"; - public static final String UPLOAD_TYPE_OSS = "alioss"; - - /** - * 文档上传自定义桶名称 - */ - public static final String UPLOAD_CUSTOM_BUCKET = "eoafile"; - /** - * 文档上传自定义路径 - */ - public static final String UPLOAD_CUSTOM_PATH = "eoafile"; - /** - * 文件外链接有效天数 - */ - public static final Integer UPLOAD_EFFECTIVE_DAYS = 1; - - /** - * 员工身份 (1:普通员工 2:上级) - */ - public static final Integer USER_IDENTITY_1 = 1; - public static final Integer USER_IDENTITY_2 = 2; - - /** sys_user 表 username 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_SYS_USER_USERNAME = "uniq_sys_user_username"; - /** sys_user 表 work_no 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_SYS_USER_WORK_NO = "uniq_sys_user_work_no"; - /** sys_user 表 phone 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_SYS_USER_PHONE = "uniq_sys_user_phone"; - /** sys_user 表 email 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_SYS_USER_EMAIL = "uniq_sys_user_email"; - /** sys_quartz_job 表 job_class_name 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_JOB_CLASS_NAME = "uniq_job_class_name"; - /** sys_position 表 code 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_CODE = "uniq_code"; - /** sys_role 表 code 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_SYS_ROLE_CODE = "uniq_sys_role_role_code"; - /** sys_depart 表 code 唯一键索引 */ - public static final String SQL_INDEX_UNIQ_DEPART_ORG_CODE = "uniq_depart_org_code"; - /** - * 在线聊天 是否为默认分组 - */ - public static final String IM_DEFAULT_GROUP = "1"; - /** - * 在线聊天 图片文件保存路径 - */ - public static final String IM_UPLOAD_CUSTOM_PATH = "imfile"; - /** - * 在线聊天 用户状态 - */ - public static final String IM_STATUS_ONLINE = "online"; - - /** - * 在线聊天 SOCKET消息类型 - */ - public static final String IM_SOCKET_TYPE = "chatMessage"; - - /** - * 在线聊天 是否开启默认添加好友 1是 0否 - */ - public static final String IM_DEFAULT_ADD_FRIEND = "1"; - - /** - * 在线聊天 用户好友缓存前缀 - */ - public static final String IM_PREFIX_USER_FRIEND_CACHE = "sys:cache:im:im_prefix_user_friend_"; - - /** - * 考勤补卡业务状态 (1:同意 2:不同意) - */ - public static final String SIGN_PATCH_BIZ_STATUS_1 = "1"; - public static final String SIGN_PATCH_BIZ_STATUS_2 = "2"; - - /** - * 公文文档上传自定义路径 - */ - public static final String UPLOAD_CUSTOM_PATH_OFFICIAL = "officialdoc"; - /** - * 公文文档下载自定义路径 - */ - public static final String DOWNLOAD_CUSTOM_PATH_OFFICIAL = "officaldown"; - - /** - * WPS存储值类别(1 code文号 2 text(WPS模板还是公文发文模板)) - */ - public static final String WPS_TYPE_1="1"; - public static final String WPS_TYPE_2="2"; - - - public final static String X_ACCESS_TOKEN = "X-Access-Token"; - public final static String X_SIGN = "X-Sign"; - public final static String X_TIMESTAMP = "X-TIMESTAMP"; - - /** - * 多租户 请求头 - */ - public final static String TENANT_ID = "tenant-id"; - - /** - * 微服务读取配置文件属性 服务地址 - */ - public final static String CLOUD_SERVER_KEY = "spring.cloud.nacos.discovery.server-addr"; - - /** - * 第三方登录 验证密码/创建用户 都需要设置一个操作码 防止被恶意调用 - */ - public final static String THIRD_LOGIN_CODE = "third_login_code"; - - /** - * 第三方APP同步方向:本地 --> 第三方APP - */ - String THIRD_SYNC_TO_APP = "SYNC_TO_APP"; - /** - * 第三方APP同步方向:第三方APP --> 本地 - */ - String THIRD_SYNC_TO_LOCAL = "SYNC_TO_LOCAL"; - - /** 系统通告消息状态:0=未发布 */ - String ANNOUNCEMENT_SEND_STATUS_0 = "0"; - /** 系统通告消息状态:1=已发布 */ - String ANNOUNCEMENT_SEND_STATUS_1 = "1"; - /** 系统通告消息状态:2=已撤销 */ - String ANNOUNCEMENT_SEND_STATUS_2 = "2"; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java deleted file mode 100644 index 8243ee86..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java +++ /dev/null @@ -1,2440 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.yb.util; - -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.util.*; -import java.util.stream.Collectors; - -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import com.alibaba.fastjson2.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.core.common.core.domain.model.LoginUser; -import com.core.common.enums.TenantOptionDict; -import com.core.common.exception.ServiceException; -import com.core.common.utils.AssignSeqUtil; -import com.core.common.utils.DateUtils; -import com.core.common.utils.SecurityUtils; -import com.core.common.utils.StringUtils; -import com.core.system.service.impl.SysUserServiceImpl; -import com.core.web.util.TenantOptionUtil; -import com.openhis.administration.domain.*; -import com.openhis.administration.service.*; -import com.openhis.clinical.domain.Condition; -import com.openhis.clinical.domain.ConditionDefinition; -import com.openhis.clinical.service.IConditionDefinitionService; -import com.openhis.clinical.service.IConditionService; -import com.openhis.common.constant.CommonConstants; -import com.openhis.common.constant.YbCommonConstants; -import com.openhis.common.enums.*; -import com.openhis.common.enums.ybenums.*; -import com.openhis.financial.domain.Contract; -import com.openhis.financial.domain.PaymentRecDetail; -import com.openhis.financial.domain.PaymentReconciliation; -import com.openhis.financial.service.IContractService; -import com.openhis.financial.service.IPaymentRecDetailService; -import com.openhis.financial.service.IPaymentReconciliationService; -import com.openhis.medication.domain.Medication; -import com.openhis.medication.domain.MedicationDefinition; -import com.openhis.medication.domain.MedicationDispense; -import com.openhis.medication.domain.MedicationRequest; -import com.openhis.medication.service.IMedicationDefinitionService; -import com.openhis.medication.service.IMedicationDispenseService; -import com.openhis.medication.service.IMedicationRequestService; -import com.openhis.medication.service.IMedicationService; -import com.openhis.workflow.domain.*; -import com.openhis.workflow.service.*; -import com.openhis.workflow.service.impl.InventoryItemServiceImpl; -import com.openhis.yb.domain.ClinicPreSettle; -import com.openhis.yb.domain.ClinicReg; -import com.openhis.yb.domain.ClinicSettle; -import com.openhis.yb.domain.InfoPerson; -import com.openhis.yb.dto.*; -import com.openhis.yb.mapper.MedicalInsuranceMapper; -import com.openhis.yb.model.Clinic2207OrderParam; -import com.openhis.yb.service.*; -import com.openhis.ybcatalog.domain.CatalogDrugInfo; -import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; -import com.openhis.ybcatalog.service.ICatalogDrugInfoService; -import com.openhis.ybcatalog.service.ICatalogMedicalHerbInfoService; - -/** - * 医保接口调用工具 todo:sjq 若部署云服务,该工具类内所有的查询原则上增加租户的查询条件 - * - * @author SunJQ - * @date 2025-04-03 - */ -@Component -public class YbParamBuilderUtil { - - /********************* Mapper服务 *******************/ - @Autowired - private MedicalInsuranceMapper medicalInsuranceMapper; - /********************* 业务实体服务 *******************/ - @Autowired - private IEncounterService iEncounterService; - @Autowired - private IAccountService accountService; - @Autowired - private IEncounterDiagnosisService iEncounterDiagnosisService; - @Autowired - private IConditionService iConditionService; - @Autowired - private IConditionDefinitionService iConditionDefinitionService; - @Autowired - private IEncounterParticipantService iEncounterParticipantService; - @Autowired - private IPractitionerService iPractitionerService; - @Autowired - private IOrganizationService iOrganizationService; - @Autowired - private IChargeItemService iChargeItemService; - @Autowired - private IMedicationDefinitionService iMedicationDefinitionService; - @Autowired - private IDeviceDefinitionService iDeviceDefinitionService; - @Autowired - private IActivityDefinitionService iActivityDefinitionService; - @Autowired - private IContractService iContractService; - @Autowired - private IPatientService iPatientService; - @Autowired - private IPaymentReconciliationService iPaymentReconciliationService; - @Autowired - private IPaymentRecDetailService iPaymentRecDetailService; - @Autowired - private IServiceRequestService iServiceRequestService; - @Autowired - private IMedicationRequestService iMedicationRequestService; - @Autowired - private IDeviceRequestService iDeviceRequestService; - @Autowired - private IMedicationService iMedicationService; - @Autowired - private IDeviceService iDeviceService; - @Autowired - private IMedicationDispenseService iMedicationDispenseService; - @Autowired - private IDeviceDispenseService iDeviceDispenseService; - @Autowired - private InventoryItemServiceImpl inventoryItemService; - @Autowired - private IChargeItemDefinitionService iChargeItemDefinitionService; - @Autowired - private IChargeItemDefDetailService iChargeItemDefDetailService; - @Autowired - private ISupplyRequestService iSupplyRequestService; - @Autowired - private ISupplyDeliveryService iSupplyDeliveryService; - @Autowired - private ISupplierService iSupplierService; - @Autowired - private IInvoiceService iInvoiceService; - @Autowired - private SysUserServiceImpl userService; - @Autowired - private IHealthcareServiceService iHealthcareServiceService; - @Autowired - private AssignSeqUtil assignSeqUtil; - /********************* 医保实体服务 *******************/ - // @Autowired - // private IReadcardService iReadcardService; - @Autowired - private ICatalogDrugInfoService iCatalogDrugInfoService; - @Autowired - private ICatalogMedicalHerbInfoService iCatalogMedicalHerbInfoService; - @Autowired - private IPerinfoService iPerinfoService; - @Autowired - private IRegService iRegService; - @Autowired - private IClinicPreSettleService iClinicPreSettleService; - @Autowired - private IClinicSettleService iClinicSettleService; - @Autowired - private IClinicUnSettleService iClinicUnSettleService; - - /** - * 获取基础读卡实体 - * - * @param certType 就诊凭证 - * @param certNo 凭证编号 - * @return 读卡基础实体 - */ - public Info1101ReadcardParam getReadCard(String certType, String certNo) { - YbMdtrtCertType ybCertType = YbMdtrtCertType.getByValue(certType); - // YbPsnCertType ybPsnCertType = YbPsnCertType.getByValue(psnCertType); - if (ybCertType == null) { - throw new ServiceException("未选择就诊凭证类型"); - } - Info1101ReadcardParam readcard = new Info1101ReadcardParam(); - readcard.setMdtrtCertNo(certNo).setMdtrtCertType(ybCertType.getValue()); - // if (ybPsnCertType != null) { - // readcard.setPsnCertType(ybPsnCertType.getValue()); - // } else { - // readcard.setPsnCertType(ybCertType.getValue()); - // } - return readcard; - } - - /** - * 【2201】组装医保挂号参数 - * - * @return - */ - public ClinicReg getReg(YbMdtrtCertType ybMdtrtCertType, String busiCardInfo, Long encounterId, YbMedType medType, - Integer tenantId) { - // 查询此次就诊信息(此处需要业务上保证下述两个实体一对一关系) - Encounter encounter = iEncounterService.getById(encounterId); - Account account = - accountService.getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, encounterId) - .eq(Account::getTenantId, tenantId).ne(Account::getTypeCode, AccountType.PERSONAL_CASH_ACCOUNT) - .eq(Account::getEncounterFlag, Whether.YES.getValue())); - if (account == null || encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - Patient patient = iPatientService.getById(encounter.getPatientId()); - if (patient == null) { - throw new ServiceException("未查询到患者信息"); - } - YbMdtrtCertType certType = YbMdtrtCertType.getByValue(account.getTypeCode());// 2025/05/28 该值存01/02/03 - if (certType == null) { - throw new ServiceException("未查询到就诊凭证信息"); - } - InfoPerson perinfo = iPerinfoService.getOne(new LambdaQueryWrapper() - .eq(InfoPerson::getCertno, patient.getIdCard()).eq(InfoPerson::getTenantId, tenantId) - .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); - if (perinfo == null) { - throw new ServiceException("未查询到就诊凭证信息"); - } - // InfoReadcard1101Param readcard = iReadcardService.getOne(new LambdaQueryWrapper() - // .eq(InfoReadcard1101Param::getPsnCertType, certType.getValue()) - // .eq(InfoReadcard1101Param::getCertno, account.getNo()).eq(InfoReadcard1101Param::getTenantId, tenantId)); - // Info1101ReadcardParam readcard = JSONObject.parseObject(perinfo.getResult1101(), - // Info1101ReadcardParam.class); - // if (readcard == null) { - // throw new ServiceException("未查询到就诊凭证信息"); - // } - // 主治医生查询 - EncounterParticipant participant = null; - Practitioner doctor = null; - List list = - iEncounterParticipantService.list(new LambdaQueryWrapper() - .eq(EncounterParticipant::getEncounterId, encounterId).eq(EncounterParticipant::getTenantId, tenantId)); - for (EncounterParticipant encounterParticipant : list) { - if (ParticipantType.ADMITTER.getCode().equals(encounterParticipant.getTypeCode())) { - participant = encounterParticipant; - } - } - if (participant == null) { - throw new ServiceException("未查询到就诊医生信息"); - } - doctor = iPractitionerService.getById(participant.getPractitionerId()); - if (doctor == null) { - throw new ServiceException("未查询到就诊医生信息"); - } - - // 查询科室信息 - Organization organization = iOrganizationService.getById(doctor.getOrgId()); - if (organization == null) { - throw new ServiceException("未查询到就诊科室信息"); - } - - ClinicReg reg = new ClinicReg(); - reg.setPsnNo(perinfo.getPsnNo()).setInsutype(perinfo.getInsutype()).setBegntime(new Date()) - .setMdtrtCertType(ybMdtrtCertType.getValue()).setMdtrtCertNo(busiCardInfo) - .setIptOtpNo(encounter.getBusNo() + "-" + medType.getValue()).setAtddrNo(doctor.getYbNo()) - .setDrName(doctor.getName()).setDeptCode(organization.getYbNo()).setDeptName(organization.getName()) - .setCaty(organization.getCaty()).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()) - .setMedType(medType.getValue()); - - return reg; - } - - /** - * 【2203】组装就诊信息参数 - * - * @return - */ - public Clinic2203MedicalParam getClinicMedical2203Param(Long encounterId, Integer tenantId, - ClinicReg2201Output reg2201Output, YbMedType ybMedType) { - - // 查询诊断信息 - EncounterDiagnosis mainEncounterDiagnosis = null; - List encounterDiagnosis = - iEncounterDiagnosisService.list(new LambdaQueryWrapper() - .eq(EncounterDiagnosis::getEncounterId, encounterId).eq(EncounterDiagnosis::getTenantId, tenantId) - .eq(EncounterDiagnosis::getMedTypeCode, ybMedType.getValue()));// 2025/08/05 - // 农大患者结算慢病时会上传普通门诊的疾病,医保回复该参保人未做该病种的门慢门特备案,故此修正根据门诊类型去上传 - for (EncounterDiagnosis diagnosis : encounterDiagnosis) { - if (Objects.equals(Whether.YES.getValue(), diagnosis.getMaindiseFlag())) { - mainEncounterDiagnosis = diagnosis; - break; - } - } - if (mainEncounterDiagnosis == null && (ybMedType == YbMedType.CHRONIC_DISEASE_OUTPATIENT - || ybMedType == YbMedType.SPECIAL_DISEASE_OUTPATIENT)) { - mainEncounterDiagnosis = encounterDiagnosis.get(0); - } - if (encounterDiagnosis.isEmpty()) { - throw new ServiceException("未查询到诊断信息"); - } - if (mainEncounterDiagnosis == null) { - throw new ServiceException("未查询到主诊断信息"); - } - // 查询主诊断 - Condition mainCondition = iConditionService.getById(mainEncounterDiagnosis.getConditionId()); - if (mainCondition == null) { - throw new ServiceException("未查询到主诊断信息"); - } - // 查询诊断定义信息 - ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(mainCondition.getDefinitionId()); - if (conditionDefinition == null) { - throw new ServiceException("未查询到诊断定义信息"); - } - - // 组装诊断信息参数 - List diseinfo = getDiseinfo(encounterDiagnosis); - - Clinic2203MedicalParam medical2203Param = new Clinic2203MedicalParam(); - - medical2203Param.setMdtrtId(reg2201Output.getMdtrtId()).setPsnNo(reg2201Output.getPsnNo()) - .setBegntime(reg2201Output.getBegntime()).setMedType(reg2201Output.getMedType()) - .setMainCondDscr(mainCondition.getDescription()).setInsuplcAdmdvs(reg2201Output.getInsuplcAdmdvs()) - .setDiseCodg(mainCondition.getYbNo()).setDiseName(conditionDefinition.getName()).setDiseinfoList(diseinfo); - - return medical2203Param; - } - - /** - * 【2203】组装诊断信息参数 - * - * @return - */ - public List getDiseinfo(List encounterDiagnosisList) { - List diseinfos = new ArrayList<>(); - for (EncounterDiagnosis encounterDiagnosis : encounterDiagnosisList) { - Condition condition = iConditionService.getById(encounterDiagnosis.getConditionId()); - if (condition == null) { - continue; - } - ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(condition.getDefinitionId()); - Practitioner doctor = iPractitionerService.getById(condition.getRecorderId()); - if (doctor == null) { - continue; - } - // 查询科室信息 - Organization organization = iOrganizationService.getById(doctor.getOrgId()); - if (organization == null) { - throw new ServiceException("未查询到科室信息"); - } - - Clinic2203DiseInfoParam diseinfo = new Clinic2203DiseInfoParam(); - diseinfo.setDiagCode(condition.getYbNo()).setDiagName(conditionDefinition.getName()) - .setDiagDept(organization.getYbNo()).setDiseDorName(doctor.getName()).setDiseDorNo(doctor.getYbNo()) - .setDiagTime(condition.getRecordedDatetime()).setValiFlag(Whether.YES.getValue().toString()) - .setDiagType(conditionDefinition.getTypeCode()) - .setDiagSrtNo(encounterDiagnosis.getDiagSrtNo().toString()); - - diseinfos.add(diseinfo); - - } - return diseinfos; - } - - /** - * 【2204】组装费用明细参数 - * - * @return - */ - public List getClinicFeedetailList(Integer tenantId, ClinicReg2201Output reg, - String chrgBchno, List chargeItemIds) { - - List clincFeedetailList = new ArrayList(); - // 查询收费项 - List ChargeItemList = iChargeItemService.list(new LambdaQueryWrapper() - .in(ChargeItem::getId, chargeItemIds).eq(ChargeItem::getTenantId, tenantId)); - - // 是否是电子处方 - Whether eFlag = Whether.getByValue(0); - - for (ChargeItem chargeItem : ChargeItemList) { - Clinic2204FeeDetailParam clinicFeedetail = new Clinic2204FeeDetailParam(); - // 查询项目信息 - String productTable = chargeItem.getProductTable(); - if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(productTable)) { - MedicationDefinition medication = iMedicationDefinitionService.getById(chargeItem.getProductId()); - if (medication == null) { - throw new ServiceException("未查询到药品信息"); - } - clinicFeedetail.setMedListCodg(medication.getYbNo()).setMedinsListCodg(medication.getBusNo()); - } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(productTable)) { - DeviceDefinition device = iDeviceDefinitionService.getById(chargeItem.getProductId()); - if (device == null) { - throw new ServiceException("未查询到药品信息"); - } - clinicFeedetail.setMedListCodg(device.getYbNo()).setMedinsListCodg(device.getYbOrgNo()); - } else { - ActivityDefinition activity = iActivityDefinitionService.getById(chargeItem.getProductId()); - if (activity == null) { - throw new ServiceException("未查询到药品信息"); - } - clinicFeedetail.setMedListCodg(activity.getYbNo()).setMedinsListCodg(activity.getBusNo()); - } - - // 开单科室查询 - Organization org = iOrganizationService.getById(chargeItem.getRequestingOrgId()); - if (org == null) { - throw new ServiceException("未查询到开单科室信息"); - } - // 开立医生查询 - Practitioner doctor = iPractitionerService.getById(chargeItem.getEntererId()); - if (doctor == null) { - throw new ServiceException("未查询到开立医生信息"); - } - - // 外购处方标志(文档上没有详细介绍) 2025/04/14经确认,暂定非处方流转传0,处方流转传1 - clinicFeedetail - .setFeedetlSn( - chargeItem.getBusNo() + assignSeqUtil.getSeqByDay(AssignSeqEnum.YB_CLINIC_FEE.getPrefix(), 5)) - .setMdtrtId(reg.getMdtrtId()).setPsnNo(reg.getPsnNo()).setChrgBchno(chrgBchno) - .setFeeOcurTime(chargeItem.getEnteredDate()) - .setDetItemFeeSumamt(chargeItem.getTotalPrice().doubleValue()) - .setCnt(chargeItem.getQuantityValue().doubleValue()).setPric(chargeItem.getUnitPrice().doubleValue()) - .setBilgDeptCodg(org.getYbNo()).setBilgDeptName(org.getName()).setBilgDrCodg(doctor.getYbNo()) - // 默认无需审批 - .setBilgDrName(doctor.getName()).setHospApprFlag(YbHospApprFlag.NO_APPROVAL_REQUIRED.getValue()) - .setRxCircFlag(eFlag.getValue().toString()); - - clincFeedetailList.add(clinicFeedetail); - } - return clincFeedetailList; - } - - /** - * 【2204】门诊费用明细信息 - * - * @param tenantId 租户id - * @return - */ - public Clinic2204OrderParam getClinicOrder2204Param(Integer tenantId, List chargeItemIds, - ClinicReg2201Output reg2201Output) { - - Clinic2204OrderParam clinicOrderPage = new Clinic2204OrderParam(); - - // 排番 - clinicOrderPage.setChrgBchno(assignSeqUtil.getSeqByDay(AssignSeqEnum.YB_CLINIC_ORDER.getPrefix(), 12)); - clinicOrderPage.setChrgBchno(clinicOrderPage.getChrgBchno()); - - List clincFeedetailList = - getClinicFeedetailList(tenantId, reg2201Output, clinicOrderPage.getChrgBchno(), chargeItemIds); - - clinicOrderPage.setFeedetail(clincFeedetailList).setInsuplcAdmdvs(reg2201Output.getInsuplcAdmdvs()); - return clinicOrderPage; - } - - /** - * 【2205】费用明细撤销 - * - * @return - */ - public Clinic2205OrderParam getClinic2205OrderParam(Long encounterId, String ChrgBchno) { - Clinic2205OrderParam clinicOrderPage = new Clinic2205OrderParam(); - Encounter encounter = iEncounterService.getById(encounterId); - ClinicReg reg = - iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); - return clinicOrderPage.setMdtrtId(reg.getMdtrtId()).setPsnNo(reg.getPsnNo()).setChrgBchno(ChrgBchno) - .setInsuplcAdmdvs(reg.getInsuplcAdmdvs()); - } - - /** - * 【2206】门诊预结算参数 - * - * @return - */ - /** - * 【2206】门诊预结算参数 - * - * @param payFee 2204返回的费用总额 - * @param chrgBchno 收费批次号 - * @return - */ - public Clinic2206OrderParam getClinicOrder2206Param(BigDecimal payFee, ClinicReg2201Output reg, String chrgBchno, - String busiCardInfo) { - - // 个人结算方式 - YbPsnSetlWay setlWay = YbPsnSetlWay.getByValue("01"); - - Clinic2206OrderParam clinicOrder = new Clinic2206OrderParam(); - clinicOrder.setPsnNo(reg.getPsnNo()).setMdtrtCertType(reg.getMdtrtCertType()).setMdtrtCertNo(busiCardInfo) - .setMedType(reg.getMedType()).setMedfeeSumamt(payFee.doubleValue()).setPsnSetlway(setlWay.getValue()) - .setMdtrtId(reg.getMdtrtId()).setChrgBchno(chrgBchno).setAcctUsedFlag(Whether.YES.getCode()) - .setInsutype(reg.getInsutype()).setInsuplcAdmdvs(reg.getInsuplcAdmdvs()); - - return clinicOrder; - } - - /** - * 【2207】门诊结算参数 - * - * @return - */ - public Clinic2207OrderParam getClinicOrder2207(Long encounterId, Integer tenantId, String psnSetlWay, - String chrgBchno, String medType) { - // 查询此次就诊信息(此处需要业务上保证下述两个实体一对一关系) - Encounter encounter = iEncounterService.getById(encounterId); - - YbMedType ybMedType = YbMedType.getByValue(medType); - if (ybMedType == null) { - ybMedType = YbMedType.GENERAL_OUTPATIENT; - } - - // 院内唯一流水号查询挂号信息 - String busNo = encounter.getBusNo(); - ClinicReg reg = iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, busNo) - .eq(ClinicReg::getTenantId, tenantId).eq(ClinicReg::getMedType, ybMedType.getValue())); - - // 个人结算方式 - YbPsnSetlWay setlWay = YbPsnSetlWay.getByValue(psnSetlWay); - if (setlWay == null) { - setlWay = YbPsnSetlWay.PSN_SETLWAY01; - } - - // ClinicSetlinfo2208Param clinicSetlinfo = iClincSetlinfoService.getOne( - // new LambdaQueryWrapper().eq(ClinicSetlinfo2208Param::getMdtrtId, reg.getMdtrtId()) - // .eq(ClinicSetlinfo2208Param::getOrderId, chrgBchno)); - - ClinicPreSettle clinicPreSettle = iClinicPreSettleService.getOne(new LambdaQueryWrapper() - .eq(ClinicPreSettle::getMdtrtId, reg.getMdtrtId()).eq(ClinicPreSettle::getChrgBchno, chrgBchno)); - - Clinic2206OrderResult clinic2206OrderResult = - JSONObject.parseObject(clinicPreSettle.getResult2206(), Clinic2206OrderResult.class); - - Clinic2207OrderParam clinicOrder = new Clinic2207OrderParam(); - clinicOrder.setPsnNo(reg.getPsnNo()).setMdtrtCertType(reg.getMdtrtCertType()) - // todo:sjq 医疗费用总额需要用ChargeItem的和 - .setMdtrtCertNo(reg.getMdtrtCertNo()).setMedType(reg.getMedType()) - .setMedfeeSumamt(clinic2206OrderResult.getMedfeeSumamt().doubleValue()).setPsnSetlway(setlWay.getValue()) - .setMdtrtId(reg.getMdtrtId()).setChrgBchno(chrgBchno).setAcctUsedFlag(Whether.YES.getCode()) - .setInsutype(reg.getInsutype()).setFulamtOwnpayAmt(clinic2206OrderResult.getFulamtOwnpayAmt().doubleValue()) - .setOverlmtSelfpay(clinic2206OrderResult.getOverlmtSelfpay().doubleValue()) - .setPreselfpayAmt(clinic2206OrderResult.getPreselfpayAmt().doubleValue()) - .setInscpScpAmt(clinic2206OrderResult.getInscpScpAmt().doubleValue()); - - return clinicOrder; - } - - /** - * 【2208】门诊结算撤销参数 - * - * @return - */ - public Clinic2208UnSetlInfoParam getClinicOrder2208(Integer tenantId, String settleId) { - // 查询此次就诊信息(此处需要业务上保证下述两个实体一对一关系) - // Encounter encounter = iEncounterService.getById(encounterId); - - ClinicSettle clinicSettle = iClinicSettleService.getBySettleId(settleId); - if (clinicSettle == null) { - throw new ServiceException("未查询到医保结算信息"); - } - - // 院内唯一流水号查询挂号信息 - // String busNo = encounter.getBusNo(); - ClinicReg reg = - iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicSettle.getMdtrtId()) - .eq(ClinicReg::getTenantId, tenantId).eq(ClinicReg::getMdtrtId, clinicSettle.getMdtrtId())); - if (reg == null) { - throw new ServiceException("未查询到医保结算信息"); - } - Clinic2208UnSetlInfoParam clinicSetl = new Clinic2208UnSetlInfoParam(); - clinicSetl.setPsnNo(reg.getPsnNo()).setMdtrtId(clinicSettle.getMdtrtId()).setSetlId(settleId) - .setInsuplcAdmdvs(reg.getInsuplcAdmdvs()); - - return clinicSetl; - } - - /** - * 【3201】结算对总账 - * - * @return - */ - public Financial3201Param getFinancial3201Param(Settlement3201WebParam settlement3201WebParam, - Settlement3201DetailDto reconciliation) { - - // 查询合同信息 - Contract contract = iContractService.getByContractNo(settlement3201WebParam.getContractNo()); - if (contract == null) { - throw new ServiceException("未查询到合同信息"); - } - YbClrType clrType = YbClrType.getByValue(settlement3201WebParam.getClrType()); - YbInsuType insuType = YbInsuType.getByValue(settlement3201WebParam.getInsuType().toString()); - if (clrType == null) { - clrType = YbClrType.OUTPATIENT_CLINIC; - } - if (insuType == null) { - insuType = YbInsuType.YB_INSU_TYPE310; - } - - Financial3201Param financial3201Param = new Financial3201Param(); - financial3201Param.setInsutype(insuType.getValue()).setClrType(clrType.getValue()) - .setSetlOptins(contract.getAdmVs()).setStmtBegndate(settlement3201WebParam.getStmtBegnDate()) - .setStmtEnddate(settlement3201WebParam.getStmtEndDate()) - .setMedfeeSumamt(reconciliation.getMedFeeSumAmt().doubleValue()) - .setFundPaySumamt(reconciliation.getFundPaySumAmt().doubleValue()) - .setAcctPay(reconciliation.getAcctPay().add(reconciliation.getAcctGjPay()).doubleValue()) - .setFixmedinsSetlCnt(reconciliation.getFixMedInsSetlCnt()) - .setInsuplcAdmdvs(SecurityUtils.getLoginUser().getOptionJson().getString("admvs")); - - return financial3201Param; - } - - /** - * 【3203】清算申请 - * - * @param financial3203WebParam 前台参数 - * @return 3203参数 - */ - public Financial3203Param getFinancial3203Param(Financial3203WebParam financial3203WebParam) { - Long orgId = SecurityUtils.getLoginUser().getHospitalId(); - iOrganizationService.getById(orgId); - - YbClrType clrType = YbClrType.getByValue(financial3203WebParam.getClrType()); - if (clrType == null) { - clrType = YbClrType.OUTPATIENT_CLINIC; - } - - Financial3203Dto financial3203VO = medicalInsuranceMapper.get3203Param(financial3203WebParam.getBegndate(), - financial3203WebParam.getEnddate(), SecurityUtils.getLoginUser().getTenantId(), - financial3203WebParam.getClrType(), YbPayment.SELF_YB_ZH_PAY.getValue(), - YbPayment.SELF_YB_ZH_GJ_VALUE.getValue(), YbPayment.SELF_CASH_VALUE.getValue(), - YbPayment.SELF_CASH_VX_VALUE.getValue(), YbPayment.SELF_CASH_ALI_VALUE.getValue(), - YbPayment.SELF_CASH_UNION_VALUE.getValue(), YbPayment.YB_FUND_PAY.getValue()); - - // 数据处理 - financial3203VO - .setAcctGjPay(financial3203VO.getAcctGjPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctGjPay()); - financial3203VO - .setAcctPay(financial3203VO.getAcctPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctPay()); - financial3203VO.setFundPaySumAmt( - financial3203VO.getFundPaySumAmt() == null ? BigDecimal.ZERO : financial3203VO.getFundPaySumAmt()); - financial3203VO.setMedFeeSumAmt( - financial3203VO.getMedFeeSumAmt() == null ? BigDecimal.ZERO : financial3203VO.getMedFeeSumAmt()); - financial3203VO.setSelfPayCash( - financial3203VO.getSelfPayCash() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayCash()); - financial3203VO - .setSelfPayALI(financial3203VO.getSelfPayALI() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayALI()); - financial3203VO - .setSelfPayVX(financial3203VO.getSelfPayVX() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayVX()); - financial3203VO.setSelfPayUNION( - financial3203VO.getSelfPayUNION() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayUNION()); - - BigDecimal cashSum = financial3203VO.getSelfPayCash().add(financial3203VO.getSelfPayVX()) - .add(financial3203VO.getSelfPayUNION()).add(financial3203VO.getSelfPayALI()); - - Financial3203Param financial3203Param = new Financial3203Param(); - financial3203Param.setClrType(financial3203WebParam.getClrType()) - .setMedfeeSumamt(financial3203VO.getMedFeeSumAmt()).setMedSumfee(financial3203VO.getMedSumfee()) - .setCashPayamt(cashSum).setAcctPay(financial3203VO.getAcctPay()) - .setBegndate(financial3203WebParam.getBegndate()).setEnddate(financial3203WebParam.getEnddate()) - .setClrWay(financial3203WebParam.getClrWay()) - .setSetlym(financial3203WebParam.getBegndate().toString().substring(0, 7)) - .setFundAppySum(financial3203VO.getFundPaySumAmt()).setPsntime(financial3203VO.getPsntime()); - - return financial3203Param; - } - - /** - * 【3203A】清算申请【吉林省】 - * - * @param financial3203AWebParam - * @return - */ - // public Financial3203AParam getFinancial3203AParam(Financial3203AWebParam financial3203AWebParam) { - // - // YbClrType clrType = YbClrType.getByValue(financial3203AWebParam.getClrType()); - // if (clrType == null) { - // clrType = YbClrType.OUTPATIENT_CLINIC; - // } - // - // //Financial3203Dto financial3203VO = - // medicalInsuranceMapper.get3203Param(financial3203AWebParam.getStmtBegnDate(), - // // financial3203AWebParam.getStmtEndDate(), SecurityUtils.getLoginUser().getTenantId(), clrType.getValue(), - // // YbPayment.SELF_YB_ZH_PAY.getValue(), YbPayment.SELF_YB_ZH_GJ_VALUE.getValue(), - // // YbPayment.SELF_CASH_VALUE.getValue(), YbPayment.SELF_CASH_VX_VALUE.getValue(), - // // YbPayment.SELF_CASH_ALI_VALUE.getValue(), YbPayment.SELF_CASH_UNION_VALUE.getValue(), - // // YbPayment.YB_FUND_PAY.getValue()); - // - // - // // 数据处理 - // financial3203VO - // .setAcctGjPay(financial3203VO.getAcctGjPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctGjPay()); - // financial3203VO - // .setAcctPay(financial3203VO.getAcctPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctPay()); - // financial3203VO.setFundPaySumAmt( - // financial3203VO.getFundPaySumAmt() == null ? BigDecimal.ZERO : financial3203VO.getFundPaySumAmt()); - // financial3203VO.setMedFeeSumAmt( - // financial3203VO.getMedFeeSumAmt() == null ? BigDecimal.ZERO : financial3203VO.getMedFeeSumAmt()); - // financial3203VO.setSelfPayCash( - // financial3203VO.getSelfPayCash() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayCash()); - // financial3203VO - // .setSelfPayALI(financial3203VO.getSelfPayALI() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayALI()); - // financial3203VO - // .setSelfPayVX(financial3203VO.getSelfPayVX() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayVX()); - // financial3203VO.setSelfPayUNION( - // financial3203VO.getSelfPayUNION() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayUNION()); - // - // BigDecimal cashSum = financial3203VO.getSelfPayCash().add(financial3203VO.getSelfPayVX()) - // .add(financial3203VO.getSelfPayUNION()).add(financial3203VO.getSelfPayALI()); - // - // Financial3203AParam busMonthSetlApply = new Financial3203AParam(); - // busMonthSetlApply.setClrType(clrType.getValue()).setMedfeeSumamt() - // .setMedSumfee().setCashPayamt() - // .setAcctPay() - // .setBegndate(DateUtils.dateTime("yyyy-MM-dd", financial3203AWebParam.getStmtBegnDate().toString())) - // .setEnddate(DateUtils.dateTime("yyyy-MM-dd", financial3203AWebParam.getStmtEndDate().toString())) - // .setClrOptins(financial3203AWebParam.getClrOptins()); - // - // return busMonthSetlApply; - // } - - /** - * 【3101】明细审核事前分析服务参数 - * - * @return - */ - public FsiConsultation3101Param getHealthcareConsultationDetail3101(String syscode, List encounterId, - YbPayLoc payLoc, Whether inOutDiagType) { - - Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); - // 查询就诊记录 - List encounters = iEncounterService.list( - new LambdaQueryWrapper().in(Encounter::getId, encounterId).eq(Encounter::getTenantId, tenantId)); - - List patients = new ArrayList<>(); - for (Encounter encounter : encounters) { - // 查询账户信息 - Account account = accountService.getOne(new LambdaQueryWrapper() - .eq(Account::getEncounterId, encounter.getId()).eq(Account::getEncounterFlag, Whether.YES.getValue()) - .orderByDesc(Account::getId).last(YbCommonConstants.sqlConst.LIMIT1)); - // 查询患者信息 - Patient patient = iPatientService.getOne(new LambdaQueryWrapper() - .in(Patient::getId, encounter.getPatientId()).eq(Patient::getTenantId, tenantId) - .orderByDesc(Patient::getId).last(YbCommonConstants.sqlConst.LIMIT1)); - - // 查询就诊信息集合 - List list = getFsiEncounterList(encounter, patient, tenantId, payLoc, inOutDiagType); - - FsiPatient3101Param patientYb = new FsiPatient3101Param(); - // 患者唯一标识暂定使用id - patientYb.setPatnId(patient.getId().toString()).setPatnName(patient.getName()) - .setGend(patient.getGenderEnum().toString()).setBrdy(patient.getBirthDate()) - .setPoolarea(account.getYbAreaNo()).setCurrMdtrtId(encounter.getBusNo()).setFsiEncounterDtos(list); - - patients.add(patientYb); - } - - // 创建实体 - FsiConsultation3101Param healthcareConsultationDetail = new FsiConsultation3101Param(); - healthcareConsultationDetail.setSyscode(syscode).setPatientDtos(patients); - - return healthcareConsultationDetail; - } - - /** - * [3101]明细审核事前分析服务参数-就诊信息集合 - * - * @return - */ - private List getFsiEncounterList(Encounter encounter, Patient patient, Integer tenantId, - YbPayLoc payLoc, Whether outSetlFlag) { - // 查询就诊记录 - List encounters = iEncounterService.list(new LambdaQueryWrapper() - .eq(Encounter::getPatientId, patient.getId()).eq(Encounter::getTenantId, tenantId)); - - List list = new ArrayList(); - for (Encounter enc : encounters) { - // 查询机构信息 - Long hospitalIdByOrgId = userService.getHospitalIdByOrgId(enc.getOrganizationId()); - Organization organization = iOrganizationService.getById(hospitalIdByOrgId); - // 查询医嘱信息 - List fsiOrders = getFsiOrderList(enc, patient, tenantId); - // 查询手术信息 - List fsiOperations = getFsiOperationList(enc, patient, tenantId); - - YbMedinsType medinsType = YbMedinsType.getByValue(organization.getMedinsType()); - if (medinsType == null) { - medinsType = YbMedinsType.FIXMEDINS_TYPE1; - } - - // 查询诊断信息 - List encounterDiagnosisList = iEncounterDiagnosisService - .list(new LambdaQueryWrapper().eq(EncounterDiagnosis::getEncounterId, enc.getId()) - .eq(EncounterDiagnosis::getTenantId, enc.getTenantId())); - EncounterDiagnosis mainEncounterDiagnosis = null; - - for (EncounterDiagnosis encounterDiagnosis : encounterDiagnosisList) { - if (Whether.YES.getValue().equals(encounterDiagnosis.getMaindiseFlag())) { - mainEncounterDiagnosis = encounterDiagnosis; - } - } - - Condition condition = iConditionService.getById(mainEncounterDiagnosis.getConditionId()); - ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(condition.getDefinitionId()); - // 查询诊断信息集合 - List fsiDiagnoses = getFsiDiagnoseList(encounterDiagnosisList, tenantId); - // 查询主治医生 - EncounterParticipant encounterParticipant = iEncounterParticipantService.getOne( - new LambdaQueryWrapper().eq(EncounterParticipant::getEncounterId, enc.getId()) - .eq(EncounterParticipant::getTypeCode, ParticipantType.ATTENDING_DOCTOR.getCode())); - Practitioner doctor = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, encounterParticipant.getPractitionerId())); - // 查询科室 - Organization org = iOrganizationService.getById(doctor.getOrgId()); - // 查询医疗类别 - YbClrType clrType = YbClrType.getByValue(enc.getYbClassEnum().toString()); - YbMedMdtrtType ybMedMdtrtType = null; - switch (clrType) { - case OUTPATIENT_CLINIC: - ybMedMdtrtType = YbMedMdtrtType.OUTPATIENT_CLINIC; - break; - case INPATIENT_CARE: - ybMedMdtrtType = YbMedMdtrtType.INPATIENT_CARE; - break; - default: - ybMedMdtrtType = YbMedMdtrtType.OTHER; - break; - } - // 院内唯一流水号查询挂号信息 - String busNo = encounter.getBusNo(); - ClinicReg reg = iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, busNo) - .eq(ClinicReg::getTenantId, tenantId)); - // 查询付款实体 - List payList = iPaymentReconciliationService.list( - new LambdaQueryWrapper().eq(PaymentReconciliation::getEncounterId, enc.getId()) - .eq(PaymentReconciliation::getTenantId, tenantId)); - // 自费金额 - BigDecimal ownPay = BigDecimal.ZERO; - // 自付金额 - BigDecimal selfPay = BigDecimal.ZERO; - for (PaymentReconciliation paymentReconciliation : payList) { - // 查询付款详情 - List details = - iPaymentRecDetailService.list(new LambdaQueryWrapper() - .eq(PaymentRecDetail::getReconciliationId, paymentReconciliation.getId()) - .eq(PaymentRecDetail::getTenantId, tenantId)); - for (PaymentRecDetail detail : details) { - if (YbPayment.SELF_PAY.getValue().equals(detail.getPayEnum())) { - ownPay = ownPay.add(detail.getAmount()); - } - if (YbPayment.SELF_CASH_VALUE.getValue().equals(detail.getPayEnum()) - || YbPayment.SELF_CASH_VX_VALUE.getValue().equals(detail.getPayEnum()) - || YbPayment.SELF_CASH_ALI_VALUE.getValue().equals(detail.getPayEnum()) - || YbPayment.SELF_CASH_UNION_VALUE.getValue().equals(detail.getPayEnum())) { - selfPay = selfPay.add(detail.getAmount()); - } - } - } - - FsiEncounter3101Param fsiEncounter = new FsiEncounter3101Param(); - fsiEncounter.setMdtrtId(enc.getBusNo()).setMedinsId(organization.getYbNo()) - .setMedinsName(organization.getName()).setMedinsAdmdvs(organization.getMedinsAdmdvs()) - .setMedinsType(medinsType.getValue()).setMedinsLv(organization.getMedinsLv()) - .setAdmDate(enc.getStartTime()).setDscgDate(enc.getEndTime()).setDscgMainDiseCodg(condition.getYbNo()) - .setDscgMainDiseName(conditionDefinition.getName()).setDrCodg(doctor.getYbNo()) - .setAdmDeptCodg(org.getYbNo()).setAdmDeptName(org.getName()) - // 门诊的入院出院暂定相同,住院的情况应分出一个if - .setDscgDeptCodg(org.getYbNo()).setDscgDeptName(org.getName()) - .setMedMdtrtType(ybMedMdtrtType.getValue()) - // 生育状态默认未知 - .setMedType(reg.getMedType()).setMedType(YbMatnStas.UNKNOWN.getValue()).setOwnpayAmt(ownPay) - .setSelfpayAmt(selfPay).setSetlTotlnum(payList.size()).setInsutype(reg.getInsutype()) - .setReimFlag(payLoc.getValue()).setOutSetlFlag(outSetlFlag.getValue().toString()); - - list.add(fsiEncounter); - } - - return list; - } - - /** - * [3101]明细审核事前分析服务参数-手术集合 - * - * @return - */ - private List getFsiOperationList(Encounter enc, Patient patient, Integer tenantId) { - return null; - } - - /** - * [3101]明细审核事前分析服务参数-诊断集合 - * - * @return - */ - private List getFsiDiagnoseList(List encounterDiagnosisList, - Integer tenantId) { - - List fsiDiagnoses = new ArrayList(); - // List conditionIdList = encounterDiagnosisList.stream() - // .map(EncounterDiagnosis::getConditionId) - // .collect(Collectors.toList()); - // - // List conditionList = iConditionService.list(new - // LambdaQueryWrapper().in(Condition::getId, conditionIdList).eq(Condition::getTenantId, tenantId)); - // - // List definitionList = conditionList.stream() - // .map(Condition::getDefinitionId) - // .collect(Collectors.toList()); - // - // List conditionDefinitions = iConditionDefinitionService.list(new - // LambdaQueryWrapper().in(ConditionDefinition::getId, - // definitionList).eq(ConditionDefinition::getTenantId, tenantId)); - - Condition condition = null; - ConditionDefinition conditionDefinition = null; - int sort = 1; - for (EncounterDiagnosis encounterDiagnosis : encounterDiagnosisList) { - FsiDiagnose3101Param fsiDiagnose = new FsiDiagnose3101Param(); - // 出入院诊断及门诊诊断 - if (YbIptDiseTypeCode.DISCHARGE_DIAGNOSIS.getValue() - .equals(encounterDiagnosis.getIptDiseTypeCode().toString())) { - fsiDiagnose.setInoutDiseType(YbInOutDiagType.YB_OUT_DIAG_TYPE.getValue()); - } else if (YbIptDiseTypeCode.ADMISSION_DIAGNOSIS.getValue() - .equals(encounterDiagnosis.getIptDiseTypeCode().toString())) { - fsiDiagnose.setInoutDiseType(YbInOutDiagType.YB_IN_DIAG_TYPE.getValue()); - } else if (YbIptDiseTypeCode.OUTPATIENT_DIAGNOSIS.getValue() - .equals(encounterDiagnosis.getIptDiseTypeCode().toString())) { - //// TODO: sjq 门诊诊断怎么存? - } else { - continue; - } - condition = iConditionService.getOne(new LambdaQueryWrapper() - .eq(Condition::getId, encounterDiagnosis.getConditionId()).eq(Condition::getTenantId, tenantId)); - if (condition == null) { - continue; - } else { - conditionDefinition = iConditionDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ConditionDefinition::getId, condition.getDefinitionId()) - .eq(ConditionDefinition::getTenantId, tenantId)); - if (conditionDefinition == null) { - continue; - } - } - // 主诊断判断 - if (Whether.YES.getValue().equals(encounterDiagnosis.getMaindiseFlag())) { - fsiDiagnose.setMaindiseFlag(Whether.YES.getValue().toString()); - } - - fsiDiagnose.setDiseId(condition.getBusNo()).setDiasSrtNo(String.valueOf(sort)) - .setDiseCodg(conditionDefinition.getYbNo()).setDiseName(conditionDefinition.getName()) - .setDiseDate(condition.getRecordedDatetime()); - - sort++; - - fsiDiagnoses.add(fsiDiagnose); - } - - return fsiDiagnoses; - } - - /** - * [3101]明细审核事前分析服务参数-处方(医嘱)集合 - * - * @return - */ - private List getFsiOrderList(Encounter enc, Patient patient, Integer tenantId) { - // 查询医嘱信息 - List medicationRequests = - iMedicationRequestService.list(new LambdaQueryWrapper() - .eq(MedicationRequest::getEncounterId, enc.getId()).eq(MedicationRequest::getTenantId, tenantId)); - - List deviceRequests = iDeviceRequestService.list(new LambdaQueryWrapper() - .eq(DeviceRequest::getEncounterId, enc.getId()).eq(DeviceRequest::getTenantId, tenantId)); - - List serviceRequests = iServiceRequestService.list(new LambdaQueryWrapper() - .eq(ServiceRequest::getEncounterId, enc.getId()).eq(ServiceRequest::getTenantId, tenantId)); - - for (MedicationRequest medicationRequest : medicationRequests) { - // 查询药品定义 - Medication medication = iMedicationService.getById(medicationRequest.getDeviceDefId()); - if (medication == null) { - continue; - } - MedicationDefinition medicationDefinition = - iMedicationDefinitionService.getById(medication.getMedicationDefId()); - if (medicationDefinition == null) { - continue; - } - // 是否是长期医嘱 - Whether whether = Whether.NO; - if (TherapyTimeType.LONG_TERM.getValue().equals(medicationRequest.getTherapyEnum())) { - whether = Whether.YES; - } - // 查询收费项 - ChargeItem chargeItem = iChargeItemService - .getOne(new LambdaQueryWrapper().eq(ChargeItem::getEncounterId, enc.getId()) - .eq(ChargeItem::getServiceTable, CommonConstants.TableName.MED_MEDICATION_REQUEST) - .eq(ChargeItem::getTenantId, tenantId)); - if (chargeItem == null) { - continue; - } - YbMedChrgItmType medChrgItmType = YbMedChrgItmType.getByCode(chargeItem.getContextEnum()); - if (medChrgItmType == null) { - continue; - } - // 查询医保等级 - YbChrgitmLv chrgitmLv = YbChrgitmLv.getByValue(medicationDefinition.getChrgitmLv()); - if (chrgitmLv == null) { - chrgitmLv = YbChrgitmLv.SELF_PAY; - } - // 查询医保目录价格 - Double price; - String ybNo = medicationDefinition.getYbNo(); - CatalogDrugInfo drugInfo = iCatalogDrugInfoService.getOne(new LambdaQueryWrapper() - .eq(CatalogDrugInfo::getMedicalCatalogCode, ybNo).last(YbCommonConstants.sqlConst.LIMIT1)); - if (drugInfo == null) { - CatalogMedicalHerbInfo herbInfo = - iCatalogMedicalHerbInfoService.getOne(new LambdaQueryWrapper() - .eq(CatalogMedicalHerbInfo::getMedicalCatalogCode, ybNo) - .last(YbCommonConstants.sqlConst.LIMIT1)); - } else { - - } - // 查询医院信息 - Long hospitalId = userService.getHospitalIdByOrgId(enc.getOrganizationId()); - Organization org = iOrganizationService.getById(hospitalId); - - FsiOrder3101Param fsiOrder = new FsiOrder3101Param(); - fsiOrder.setRxId(medicationRequest.getBusNo()).setRxno(medicationRequest.getPrescriptionNo()) - .setLongDrordFlag(whether.getCode()).setHilistCode(medicationDefinition.getCategoryCode()) - // 医嘱类别暂定全部使用其他 - .setChrgType(medChrgItmType.getValue()).setDrordBhvr(YbDrordBhvr.OTHER.getValue()) - .setHilistCode(medicationDefinition.getYbNo()) - // 医保目录价格未定义 - .setHilistName(medicationDefinition.getName()).setHilistLv(chrgitmLv.getValue().toString()) - .setHosplistCode(org.getYbNo()).setHosplistName(org.getName()) - .setCnt(new BigDecimal(chargeItem.getQuantityValue().toString())).setPric(chargeItem.getUnitPrice()) - .setSumamt(chargeItem.getTotalPrice()); - // todo:sjq 从第23项后面的值越来越离谱,暂定先停止3101和3103的开发 - - } - - return null; - } - - /** - * 【3202】医药机构费用结算对明细账 - * - * @param settlement3202WebParam 费用结算对明细账前端入参 - * @return 医保参数 - */ - public FinancialSettlement3202Param getFinancialSettlement3202Param(Settlement3202WebParam settlement3202WebParam) { - // 数据库查询 - Settlement3202Dto reconciliation = - medicalInsuranceMapper.get3202Param(settlement3202WebParam.getStmtBegnDate().toString(), - settlement3202WebParam.getStmtEndDate().toString(), SecurityUtils.getLoginUser().getTenantId(), - settlement3202WebParam.getOrgId(), settlement3202WebParam.getClrType(), - settlement3202WebParam.getSetlOptins(), YbPayment.SELF_YB_ZH_PAY.getValue(), - YbPayment.SELF_YB_ZH_GJ_VALUE.getValue(), YbPayment.SELF_CASH_VALUE.getValue(), - YbPayment.SELF_CASH_VX_VALUE.getValue(), YbPayment.SELF_CASH_ALI_VALUE.getValue(), - YbPayment.SELF_CASH_UNION_VALUE.getValue(), YbPayment.YB_FUND_PAY.getValue()); - // 数据处理 - reconciliation - .setAcctGjPay(reconciliation.getAcctGjPay() == null ? BigDecimal.ZERO : reconciliation.getAcctGjPay()); - reconciliation.setAcctPay(reconciliation.getAcctPay() == null ? BigDecimal.ZERO : reconciliation.getAcctPay()); - reconciliation.setFundPaySumAmt( - reconciliation.getFundPaySumAmt() == null ? BigDecimal.ZERO : reconciliation.getFundPaySumAmt()); - reconciliation.setMedFeeSumAmt( - reconciliation.getMedFeeSumAmt() == null ? BigDecimal.ZERO : reconciliation.getMedFeeSumAmt()); - reconciliation.setSelfPayCash( - reconciliation.getSelfPayCash() == null ? BigDecimal.ZERO : reconciliation.getSelfPayCash()); - reconciliation - .setSelfPayALI(reconciliation.getSelfPayALI() == null ? BigDecimal.ZERO : reconciliation.getSelfPayALI()); - reconciliation - .setSelfPayVX(reconciliation.getSelfPayVX() == null ? BigDecimal.ZERO : reconciliation.getSelfPayVX()); - reconciliation.setSelfPayUNION( - reconciliation.getSelfPayUNION() == null ? BigDecimal.ZERO : reconciliation.getSelfPayUNION()); - - BigDecimal cashSum = reconciliation.getSelfPayCash().add(reconciliation.getSelfPayVX()) - .add(reconciliation.getSelfPayUNION()).add(reconciliation.getSelfPayALI()); - // BigDecimal zhSum = reconciliation.getAcctGjPay().add(reconciliation.getAcctPay()); - // 组装参数 - FinancialSettlement3202Param financialSettlement3202Param = new FinancialSettlement3202Param(); - financialSettlement3202Param.setClrType(settlement3202WebParam.getClrType()).setCashPayamt(cashSum) - .setFileQuryNo(settlement3202WebParam.getFileQuryNo()) - .setFixmedinsSetlCnt(reconciliation.getFixMedInsSetlCnt()).setMedfeeSumamt(reconciliation.getMedFeeSumAmt()) - .setSetlOptins(settlement3202WebParam.getSetlOptins()) - .setStmtBegndate(DateUtils.parseDate(settlement3202WebParam.getStmtBegnDate())) - .setStmtEnddate(DateUtils.parseDate(settlement3202WebParam.getStmtEndDate())) - .setFundPaySumamt(reconciliation.getFundPaySumAmt()); - // 返回结果 - return financialSettlement3202Param; - } - - /** - * 【3202】对账明细的文件数据 - * - * @param paymentIds 付款实体ids - * @return 查询结果 - */ - public List getFinancial3202FileParam(List paymentIds) { - List list = new ArrayList<>(); - for (Long paymentId : paymentIds) { - - // 查询基础信息 - List paymentRecDetails = iPaymentRecDetailService - .list(new LambdaQueryWrapper().eq(PaymentRecDetail::getReconciliationId, paymentId)); - PaymentReconciliation paymentReconciliation = iPaymentReconciliationService.getById(paymentId); - if (paymentReconciliation == null) { - throw new ServiceException("未查询到付款信息"); - } - String ybSettleIds = paymentReconciliation.getYbSettleIds(); - if (StringUtils.isEmpty(ybSettleIds)) { - continue; - } - List settleIdList = - Arrays.stream(ybSettleIds.split(",")).map(String::trim).filter(s -> !s.isEmpty()).map(s -> { - try { - return Long.valueOf(s); - } catch (NumberFormatException e) { - return null; - } - }).filter(Objects::nonNull).collect(Collectors.toList()); - for (Long settleId : settleIdList) { - ClinicSettle clinicSettle = iClinicSettleService - .getOne(new LambdaQueryWrapper().eq(ClinicSettle::getSetlId, settleId)); - if (paymentReconciliation == null || paymentRecDetails.isEmpty() || clinicSettle == null) { - continue; - } - ClinicReg clinicReg = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicSettle.getMdtrtId())); - - // 计算金额 - BigDecimal fundPay = BigDecimal.ZERO; - BigDecimal accountPay = BigDecimal.ZERO; - for (PaymentRecDetail paymentRecDetail : paymentRecDetails) { - if (YbPayment.YB_FUND_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { - fundPay = fundPay.add(paymentRecDetail.getAmount()); - } else if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentRecDetail.getPayEnum()) - || YbPayment.SELF_YB_ZH_GJ_VALUE.getValue().equals(paymentRecDetail.getPayEnum())) { - accountPay = accountPay.add(paymentRecDetail.getAmount()); - } - } - - // 反结标志 - String refdSetlFlag = Whether.NO.getValue().toString(); - if (paymentReconciliation.getPaymentEnum().equals(PaymentType.UN_PAY.getValue())) { - refdSetlFlag = Whether.YES.getValue().toString();// 1 是退费 2 否退费 - } - Financial3202FileParam financial3202FileParam = new Financial3202FileParam(); - financial3202FileParam.setSetlId(clinicSettle.getSetlId()).setMdtrtId(clinicSettle.getMdtrtId()) - .setPsnNo(clinicReg.getPsnNo()).setMedfeeSumamt(paymentReconciliation.getTenderedAmount()) - .setFundPaySumamt(fundPay).setAcctPay(accountPay).setRefdSetlFlag(refdSetlFlag); - // 添加集合 - list.add(financial3202FileParam); - } - } - return list; - } - - /** - * 【3301】获取医保目录对照入参 - * - * @param tableName 对应定义表 - * @param id 主键 - * @return 医保参数 - */ - public MedicalDirectory3301Param getMedicalDirectory3301Param(String tableName, Long id) { - MedicalDirectory3301Param medicalDirectory3301Param = new MedicalDirectory3301Param(); - if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(tableName)) { - // 耗材 - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(id); - if (deviceDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - YbListType listType = YbListType.getByValue(deviceDefinition.getCategoryCode()); - if (listType == null) { - listType = YbListType.MEDICAL_CONSUMABLES; - } - medicalDirectory3301Param.setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(deviceDefinition.getName()).setListType(listType.getValue()) - .setMedListCodg(deviceDefinition.getYbNo()) - .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) - .setEnddate(YbCommonConstants.constants.END_TIME); - } else if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(tableName)) { - // 药品 - MedicationDefinition medicationDefinition = iMedicationDefinitionService.getById(id); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 项目类型为中成药(1)、西药(2)、外购药品(3)、中草药(4)时查药品表;为耗材(9)时查器材表 - YbListType listType = YbListType.getByValue(medicationDefinition.getCategoryCode()); - if (listType == null) { - listType = switch (medicationDefinition.getCategoryCode()) { - case "1", "2" -> YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE; - case "4" -> YbListType.IMPORTANT_HERBAL_SLICES; - default -> throw new ServiceException("未查询到目录类别"); - }; - } - medicalDirectory3301Param.setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(medicationDefinition.getName()).setListType(listType.getValue()) - .setMedListCodg(medicationDefinition.getYbNo()) - .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) - .setEnddate(YbCommonConstants.constants.END_TIME); - } else if (CommonConstants.TableName.WOR_ACTIVITY_DEFINITION.equals(tableName)) { - // 医疗项目 - ActivityDefinition activityDefinition = iActivityDefinitionService.getById(id); - if (activityDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - YbListType listType = YbListType.getByValue(activityDefinition.getCategoryCode()); - if (listType == null) { - listType = YbListType.MEDICAL_SERVICE_ITEM; - } - medicalDirectory3301Param.setFixmedinsHilistId(activityDefinition.getBusNo()) - .setFixmedinsHilistName(activityDefinition.getName()).setListType(listType.getValue()) - .setMedListCodg(activityDefinition.getYbNo()) - .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) - .setEnddate(YbCommonConstants.constants.END_TIME); - } else if (CommonConstants.TableName.ADM_HEALTHCARE_SERVICE.equals(tableName)) { - // 医疗服务 - HealthcareService healthcareServiceService = iHealthcareServiceService.getById(id); - if (healthcareServiceService == null) { - throw new ServiceException("未查询到药品信息"); - } - YbListType listType = YbListType.getByValue(healthcareServiceService.getCategoryCode()); - if (listType == null) { - listType = YbListType.MEDICAL_SERVICE_ITEM; - } - medicalDirectory3301Param.setFixmedinsHilistId(String.valueOf(healthcareServiceService.getId())) - .setFixmedinsHilistName(healthcareServiceService.getName()).setListType(listType.getValue()) - .setMedListCodg(healthcareServiceService.getYbNo()) - .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) - .setEnddate(YbCommonConstants.constants.END_TIME); - } else { - throw new ServiceException("未查询到医疗项目"); - } - return medicalDirectory3301Param; - } - - /** - * 【3301】医保目录对照参数作成(药品) - * - * @param categoryCode 药品分类 - * @param busNo 药品编号 - * @param name 药品编号 - * @param ybNo 医保编码 - * @return 医保目录对照参数 - */ - public MedicalDirectory3301Param getMedicalDirectory3301ParamMedication(String categoryCode, String busNo, - String name, String ybNo) { - String listType; - if (MedCategoryCode.TRADITIONAL_CHINESE_MEDICINE.getValue().equals(categoryCode) - || MedCategoryCode.WESTERN_MEDICINE.getValue().equals(categoryCode)) { - listType = YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE.getValue(); - } else if (MedCategoryCode.CHINESE_HERBAL_MEDICINE.getValue().equals(categoryCode)) { - listType = YbListType.IMPORTANT_HERBAL_SLICES.getValue(); - } else { - throw new ServiceException("无效的目录类别"); - } - return new MedicalDirectory3301Param().setFixmedinsHilistId(busNo).setFixmedinsHilistName(name) - .setListType(listType).setMedListCodg(ybNo) - .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) - .setEnddate(YbCommonConstants.constants.END_TIME); - } - - /** - * 【3302】医保目录对照撤销 - * - * @param tableName 对应定义表 - * @param id 主键 - * @return - */ - public MedicalDirectory3302Param getMedicalDirectory3302Param(String tableName, Long id) { - MedicalDirectory3302Param medicalDirectory3302Param = new MedicalDirectory3302Param(); - if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(tableName)) { - // 耗材 - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(id); - if (deviceDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - YbListType listType = YbListType.getByValue(deviceDefinition.getCategoryCode()); - if (listType == null) { - listType = YbListType.MEDICAL_CONSUMABLES; - } - medicalDirectory3302Param.setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) - .setListType(listType.getValue()).setMedListCodg(deviceDefinition.getYbNo()); - } else if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(tableName)) { - // 药品 - MedicationDefinition medicationDefinition = iMedicationDefinitionService.getById(id); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 项目类型为中成药(1)、西药(2)、外购药品(3)、中草药(4)时查药品表;为耗材(9)时查器材表 - YbListType listType = YbListType.getByValue(medicationDefinition.getCategoryCode()); - if (listType == null) { - listType = switch (medicationDefinition.getCategoryCode()) { - case "1", "2" -> YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE; - case "4" -> YbListType.IMPORTANT_HERBAL_SLICES; - default -> throw new ServiceException("未查询到目录类别"); - }; - } - medicalDirectory3302Param.setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) - .setListType(listType.getValue()).setMedListCodg(medicationDefinition.getYbNo()); - } else if (CommonConstants.TableName.WOR_ACTIVITY_DEFINITION.equals(tableName)) { - // 医疗项目 - ActivityDefinition activityDefinition = iActivityDefinitionService.getById(id); - if (activityDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - YbListType listType = YbListType.getByValue(activityDefinition.getCategoryCode()); - if (listType == null) { - listType = YbListType.MEDICAL_SERVICE_ITEM; - } - medicalDirectory3302Param.setFixmedinsHilistId(activityDefinition.getBusNo()) - .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) - .setListType(listType.getValue()).setMedListCodg(activityDefinition.getYbNo()); - } else { - // 医疗项目 - HealthcareService healthcareService = iHealthcareServiceService.getById(id); - if (healthcareService == null) { - throw new ServiceException("未查询到药品信息"); - } - YbListType listType = YbListType.getByValue(healthcareService.getCategoryCode()); - if (listType == null) { - listType = YbListType.MEDICAL_SERVICE_ITEM; - } - medicalDirectory3302Param.setFixmedinsHilistId(healthcareService.getId().toString()) - .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) - .setListType(listType.getValue()).setMedListCodg(healthcareService.getYbNo()); - } - return medicalDirectory3302Param; - } - - /** - * 【3302】医保目录对照撤销参数作成(药品) - * - * @param categoryCode 药品分类 - * @param busNo 药品编号 - * @param ybNo 医保编码 - * @return 医保目录对照撤销参数 - */ - public MedicalDirectory3302Param getMedicalDirectory3302ParamMedication(String categoryCode, String busNo, - String ybNo) { - String listType; - if (MedCategoryCode.TRADITIONAL_CHINESE_MEDICINE.getValue().equals(categoryCode) - || MedCategoryCode.WESTERN_MEDICINE.getValue().equals(categoryCode)) { - listType = YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE.getValue(); - } else if (MedCategoryCode.CHINESE_HERBAL_MEDICINE.getValue().equals(categoryCode)) { - listType = YbListType.IMPORTANT_HERBAL_SLICES.getValue(); - } else { - throw new ServiceException("无效的目录类别"); - } - return new MedicalDirectory3302Param().setFixmedinsHilistId(busNo) - .setFixmedinsCode(TenantOptionUtil.getOptionContent(TenantOptionDict.FIXMEDINS_CODE)).setListType(listType) - .setMedListCodg(ybNo); - } - - /** - * - * @param clearing3205AWebParma [3205]前台传参 - * @return 医保入参 - */ - public Clearing3205AParma getClearing3205AParma(Clearing3205AWebParma clearing3205AWebParma) { - String clrStas = clearing3205AWebParma.getClrStas(); - // 10 已申请20 已受理50 已清算如不填写,默认为10 - if (StringUtils.isEmpty(clrStas)) { - clrStas = YbClrStas.CLR_STAS10.getValue(); - } - YbClrStas ybClrStas = YbClrStas.getByValue(clrStas); - // 年月格式,例如:202310 - // 查询clr_sta为20、50的时候,该值必填 - if (ybClrStas != YbClrStas.CLR_STAS10 && StringUtils.isEmpty(clearing3205AWebParma.getClrYm())) { - throw new ServiceException("请填写清算状态"); - } - Clearing3205AParma clearing3205AParma = new Clearing3205AParma(); - clearing3205AParma.setClrOptins(clearing3205AWebParma.getClrOptins()) - .setClrStas(clearing3205AWebParma.getClrStas()).setClrYm(clearing3205AWebParma.getClrYm()); - return clearing3205AParma; - } - - /** - * 【3501】库存明细上传 - * - * @param id 供应申请id - * @return 3501医保参数 - */ - public MedicalInventory3501Param getMedicalInventory3501Param(Long id, Integer talentId) { - MedicalInventory3501Param medicalInventory3501Param = new MedicalInventory3501Param(); - // 查库存 - InventoryItem inventoryItem = inventoryItemService.getById(id); - if (inventoryItem == null) { - throw new ServiceException("未查询到库存信息"); - } - if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(inventoryItem.getItemTable())) { - // 查询药品 - MedicationDefinition medicationDefinition = iMedicationDefinitionService.getById(inventoryItem.getItemId()); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 查询盘存数据 - SupplyDelivery one = iSupplyDeliveryService.getOne(new LambdaQueryWrapper() - .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .eq(SupplyDelivery::getItemId, medicationDefinition.getId()).eq(SupplyDelivery::getTenantId, talentId)); - medicalInventory3501Param.setMedListCodg(medicationDefinition.getYbNo()) - .setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setRxFlag(medicationDefinition.getRxFlag().toString()).setInvdate(one.getOccurrenceEndTime()) - .setInvCnt(inventoryItem.getQuantity()).setFixmedinsBchno(inventoryItem.getLotNumber()) - .setManuDate(inventoryItem.getProductionDate()).setExpyEnd(inventoryItem.getExpirationDate()); - } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(inventoryItem.getItemTable())) { - // 查询器材 - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(inventoryItem.getItemId()); - if (deviceDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 查询盘存数据 - SupplyDelivery one = iSupplyDeliveryService.getOne(new LambdaQueryWrapper() - .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(SupplyDelivery::getItemId, deviceDefinition.getId()).eq(SupplyDelivery::getTenantId, talentId)); - medicalInventory3501Param.setMedListCodg(deviceDefinition.getYbNo()) - .setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setRxFlag(deviceDefinition.getRxFlag().toString()).setInvdate(one.getOccurrenceEndTime()) - .setInvCnt(inventoryItem.getQuantity()).setFixmedinsBchno(inventoryItem.getLotNumber()) - .setManuDate(inventoryItem.getProductionDate()).setExpyEnd(inventoryItem.getExpirationDate()); - } else { - throw new ServiceException("未查询到信息"); - } - return medicalInventory3501Param; - } - - /** - * 【3502】库存信息变更 - * - * @param id 供应发放id - * @param invChgType 变更类型 参考枚举 - * @param talentId 租户id - * @return - */ - public MedicalInventory3502Param getMedicalInventory3502Param(Long id, String invChgType, Integer talentId) { - MedicalInventory3502Param medicalInventory3502Param = new MedicalInventory3502Param(); - - // 查供应发放实体 - SupplyDelivery supplyDelivery = iSupplyDeliveryService.getById(id); - if (supplyDelivery == null) { - throw new ServiceException("未查询到供应信息"); - } - - // 库存变更类型 - YbInvChgType chgType = YbInvChgType.getByValue(invChgType); - if (chgType == null) { - throw new ServiceException("未查询到付款信息"); - } - - if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(supplyDelivery.getItemTable())) { - // 查询药品信息 - MedicationDefinition medicationDefinition = - iMedicationDefinitionService.getById(supplyDelivery.getItemId()); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 查询定价信息 - ChargeItemDefinition chargeItemDefinition = - iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .eq(ChargeItemDefinition::getInstanceId, medicationDefinition.getId()) - .eq(ChargeItemDefinition::getTenantId, talentId)); - if (chargeItemDefinition == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查查询定价子表 - ChargeItemDefDetail chargeItemDefDetail = - iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) - .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) - .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) - .last(YbCommonConstants.sqlConst.LIMIT1)); - if (chargeItemDefDetail == null) { - throw new ServiceException("未查询到定价信息"); - } - // 最小单位售卖价格 - BigDecimal price; - if (medicationDefinition.getPartPercent().compareTo(BigDecimal.ZERO) > 0) { - price = - chargeItemDefDetail.getAmount().divide(medicationDefinition.getPartPercent(), RoundingMode.HALF_UP); - } else { - price = chargeItemDefDetail.getAmount().divide(BigDecimal.ONE, RoundingMode.HALF_UP); - } - - medicalInventory3502Param.setMedListCodg(medicationDefinition.getYbNo()).setInvChgType(chgType.getValue()) - .setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setRxFlag(medicationDefinition.getRxFlag().toString()).setPric(price) - .setCnt(supplyDelivery.getQuantity()).setInvChgTime(supplyDelivery.getUpdateTime()); - } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(supplyDelivery.getItemTable())) { - // 查询耗材信息 - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(supplyDelivery.getItemId()); - if (deviceDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 查询定价信息 - ChargeItemDefinition chargeItemDefinition = - iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(ChargeItemDefinition::getInstanceId, deviceDefinition.getId()) - .eq(ChargeItemDefinition::getTenantId, talentId)); - if (chargeItemDefinition == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查查询定价子表 - ChargeItemDefDetail chargeItemDefDetail = - iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) - .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) - .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) - .last(YbCommonConstants.sqlConst.LIMIT1)); - if (chargeItemDefDetail == null) { - throw new ServiceException("未查询到定价信息"); - } - // 最小单位售卖价格 - BigDecimal price; - if (deviceDefinition.getPartPercent().compareTo(BigDecimal.ZERO) > 0) { - price = chargeItemDefDetail.getAmount().divide(deviceDefinition.getPartPercent(), RoundingMode.HALF_UP); - } else { - price = chargeItemDefDetail.getAmount().divide(BigDecimal.ONE, RoundingMode.HALF_UP); - } - - medicalInventory3502Param.setMedListCodg(deviceDefinition.getYbNo()).setInvChgType(chgType.getValue()) - .setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setRxFlag(deviceDefinition.getRxFlag().toString()).setPric(price).setCnt(supplyDelivery.getQuantity()) - .setInvChgTime(supplyDelivery.getUpdateTime()); - } else { - throw new ServiceException("未查询到信息"); - } - return medicalInventory3502Param; - } - - /** - * 【3503】商品采购 - * - * @param id 供应发放id - * @param talentId 租户id - * @return - */ - public Medical3503Param getMedical3503Param(Long id, Integer talentId) { - Medical3503Param medical3503Param = new Medical3503Param(); - // 查供应发放实体 - SupplyDelivery supplyDelivery = iSupplyDeliveryService.getById(id); - if (supplyDelivery == null) { - throw new ServiceException("未查询到供应发放信息"); - } - // 查询发放请求实体 - SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() - .eq(SupplyRequest::getId, supplyDelivery.getRequestId()).eq(SupplyRequest::getTenantId, talentId) - .eq(SupplyRequest::getTypeEnum, SupplyType.PURCHASE_INVENTORY.getValue())); - if (supplyRequest == null) { - throw new ServiceException("未查询到供应信息"); - } - // 查库存信息 - InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() - .eq(InventoryItem::getLocationStoreId, supplyRequest.getSourceLocationStoreId()) - .eq(InventoryItem::getLocationId, supplyRequest.getPurposeLocationId()) - .eq(InventoryItem::getTenantId, talentId)); - - // 查询经办人 - Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, supplyDelivery.getReceiverId()).eq(Practitioner::getTenantId, talentId)); - - if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(supplyDelivery.getItemTable())) { - // 查询药品信息 - MedicationDefinition medicationDefinition = - iMedicationDefinitionService.getById(supplyDelivery.getItemId()); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 查询定价信息 - ChargeItemDefinition chargeItemDefinition = - iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .eq(ChargeItemDefinition::getInstanceId, medicationDefinition.getId()) - .eq(ChargeItemDefinition::getTenantId, talentId)); - if (chargeItemDefinition == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查查询定价子表 - ChargeItemDefDetail chargeItemDefDetail = - iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) - .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) - .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) - .last(YbCommonConstants.sqlConst.LIMIT1)); - if (chargeItemDefDetail == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查询供应商 - Supplier supplier = iSupplierService.getById(medicationDefinition.getSupplyId()); - - medical3503Param.setMedListCodg(medicationDefinition.getYbNo()) - .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setRxFlag(medicationDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) - .setManuLotnum(supplyDelivery.getLotNumber()) - .setProdentpName(medicationDefinition.getManufacturerText()) - .setAprvno(medicationDefinition.getApprovalNumber()).setManuDate(inventoryItem.getProductionDate()) - .setExpyEnd(inventoryItem.getExpirationDate()).setPurcRetnCnt(supplyDelivery.getQuantity()) - .setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()).setPurcRetnOpterName(practitioner.getName()); - } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(supplyDelivery.getItemTable())) { - // 查询耗材信息 - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(supplyDelivery.getItemId()); - if (deviceDefinition == null) { - throw new ServiceException("未查询到耗材信息"); - } - // 查询定价信息 - ChargeItemDefinition chargeItemDefinition = - iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(ChargeItemDefinition::getInstanceId, deviceDefinition.getId()) - .eq(ChargeItemDefinition::getTenantId, talentId)); - if (chargeItemDefinition == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查查询定价子表 - ChargeItemDefDetail chargeItemDefDetail = - iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) - .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) - .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) - .last(YbCommonConstants.sqlConst.LIMIT1)); - if (chargeItemDefDetail == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查询供应商 - Supplier supplier = iSupplierService.getById(deviceDefinition.getSupplyId()); - - medical3503Param.setMedListCodg(deviceDefinition.getYbNo()).setFixmedinsBchno(inventoryItem.getLotNumber()) - .setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .setRxFlag(deviceDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) - .setManuLotnum(supplyDelivery.getLotNumber()).setProdentpName(deviceDefinition.getManufacturerText()) - .setAprvno(deviceDefinition.getApprovalNumber()).setManuDate(inventoryItem.getProductionDate()) - .setExpyEnd(inventoryItem.getExpirationDate()).setPurcRetnCnt(supplyDelivery.getQuantity()) - .setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()).setPurcRetnOpterName(practitioner.getName()); - } else { - throw new ServiceException("未查询到信息"); - } - return medical3503Param; - } - - /** - * 【3504】商品采购退货 - * - * @param id 供应发放id - * @param talentId 租户id - * @return - */ - public MedicalPurchase3504Param getMedicalPurchase3504Param(Long id, Integer talentId) { - - MedicalPurchase3504Param medicalPurchase3504Param = new MedicalPurchase3504Param(); - // 查供应发放实体 - SupplyDelivery supplyDelivery = iSupplyDeliveryService.getById(id); - if (supplyDelivery == null) { - throw new ServiceException("未查询到供应信息"); - } - // 查询发放请求实体 - SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() - .eq(SupplyRequest::getId, supplyDelivery.getRequestId()).eq(SupplyRequest::getTenantId, talentId) - .eq(SupplyRequest::getTypeEnum, SupplyType.PRODUCT_RETURN.getValue())); - if (supplyRequest == null) { - throw new ServiceException("未查询到供应信息"); - } - // 查库存信息 - InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() - .eq(InventoryItem::getLocationStoreId, supplyRequest.getSourceLocationStoreId()) - .eq(InventoryItem::getLocationId, supplyRequest.getPurposeLocationId()) - .eq(InventoryItem::getTenantId, talentId)); - - // 查询经办人 - Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, supplyDelivery.getReceiverId()).eq(Practitioner::getTenantId, talentId)); - - if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(supplyDelivery.getItemTable())) { - // 查询药品信息 - MedicationDefinition medicationDefinition = - iMedicationDefinitionService.getById(supplyDelivery.getItemId()); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - // 查询定价信息 - ChargeItemDefinition chargeItemDefinition = - iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .eq(ChargeItemDefinition::getInstanceId, medicationDefinition.getId()) - .eq(ChargeItemDefinition::getTenantId, talentId)); - if (chargeItemDefinition == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查查询定价子表 - ChargeItemDefDetail chargeItemDefDetail = - iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) - .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) - .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) - .last(YbCommonConstants.sqlConst.LIMIT1)); - if (chargeItemDefDetail == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查询供应商 - Supplier supplier = iSupplierService.getById(medicationDefinition.getSupplyId()); - if (supplier == null) { - throw new ServiceException("未查询到供应商信息"); - } - medicalPurchase3504Param.setMedListCodg(medicationDefinition.getYbNo()) - .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .setRxFlag(medicationDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) - .setPurcInvoNo(supplyRequest.getInvoiceNo()).setManuDate(inventoryItem.getProductionDate()) - .setExpyEnd(inventoryItem.getExpirationDate()).setPurcRetnCnt(supplyDelivery.getQuantity()) - .setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()).setPurcRetnOpterName(practitioner.getName()); - } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(supplyDelivery.getItemTable())) { - // 查询耗材信息 - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(supplyDelivery.getItemId()); - if (deviceDefinition == null) { - throw new ServiceException("未查询到耗材信息"); - } - // 查询定价信息 - ChargeItemDefinition chargeItemDefinition = - iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(ChargeItemDefinition::getInstanceId, deviceDefinition.getId()) - .eq(ChargeItemDefinition::getTenantId, talentId)); - if (chargeItemDefinition == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查查询定价子表 - ChargeItemDefDetail chargeItemDefDetail = - iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() - .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) - .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) - .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) - .last(YbCommonConstants.sqlConst.LIMIT1)); - if (chargeItemDefDetail == null) { - throw new ServiceException("未查询到定价信息"); - } - // 查询供应商 - Supplier supplier = iSupplierService.getById(deviceDefinition.getSupplyId()); - if (supplier == null) { - throw new ServiceException("未查询到供应商信息"); - } - medicalPurchase3504Param.setMedListCodg(deviceDefinition.getYbNo()) - .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .setRxFlag(deviceDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) - .setManuDate(inventoryItem.getProductionDate()).setExpyEnd(inventoryItem.getExpirationDate()) - .setPurcRetnCnt(supplyDelivery.getQuantity()).setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()) - .setPurcRetnOpterName(practitioner.getName()).setPurcInvoNo(supplyRequest.getInvoiceNo()); - } else { - throw new ServiceException("未查询到信息"); - } - return medicalPurchase3504Param; - } - - /** - * 【3505】商品销售 - * - * @param id 发放id - * @param ListType 耗材/药品 - * @param tenantId 租户id - * @return - */ - public Medical3505Param getMedical3505Param(Long id, String ListType, Integer tenantId) { - Medical3505Param medical3505Param = new Medical3505Param(); - // 销售商品的种类 - YbListType type = YbListType.getByValue(ListType); - if (type == YbListType.MEDICAL_CONSUMABLES) { - // 耗材的相关处理 - DeviceDispense deviceDispense = iDeviceDispenseService.getById(id); - if (deviceDispense == null) { - throw new ServiceException("未查询到耗材信息"); - } - if (!deviceDispense.getStatusEnum().equals(DispenseStatus.COMPLETED.getValue())) { - throw new ServiceException("耗材未发放"); - } - DeviceRequest deviceRequest = iDeviceRequestService.getById(deviceDispense.getDeviceReqId()); - if (deviceRequest == null) { - throw new ServiceException("未查询到耗材请求信息"); - } - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(deviceDispense.getDeviceDefId()); - if (deviceDefinition == null) { - throw new ServiceException("未查询到耗材信息"); - } - // 查询库存信息 - InventoryItem inventoryItem = inventoryItemService.getOne( - new LambdaQueryWrapper().eq(InventoryItem::getLotNumber, deviceDispense.getLotNumber()) - .eq(InventoryItem::getLocationId, deviceDispense.getLocationId()) - .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(InventoryItem::getItemId, deviceDispense.getDeviceDefId()) - .eq(InventoryItem::getTenantId, tenantId)); - if (inventoryItem == null) { - throw new ServiceException("未查询到库存信息"); - } - // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 - // SupplyRequest supplyRequest = iSupplyRequestService.getOne( - // new LambdaQueryWrapper().eq(SupplyRequest::getLotNumber, deviceDispense.getLotNumber()) - // .eq(SupplyRequest::getPurposeLocationId, deviceDispense.getLocationId()) - // .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - // .eq(SupplyRequest::getItemId, deviceDispense.getDeviceDefId()) - // .eq(SupplyRequest::getTenantId, tenantId)); - // if (supplyRequest == null) { - // return null; - // } - // 查询开方医生姓名 - Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, deviceRequest.getRequesterId()).eq(Practitioner::getTenantId, tenantId)); - // 查询当前登录用户的姓名(药师) - Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); - // 查询发药人 - Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, deviceDispense.getPerformerId()).eq(Practitioner::getTenantId, tenantId)); - // 查询费用结算信息 - ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() - .eq(ChargeItem::getServiceTable, CommonConstants.TableName.WOR_DEVICE_REQUEST) - .eq(ChargeItem::getServiceId, deviceRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); - if (chargeItem == null) { - throw new ServiceException("未查询到收费项信息"); - } - // 查询付款信息 - PaymentReconciliation paymentReconciliation = - iPaymentReconciliationService.getOne(new LambdaQueryWrapper() - .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) - .eq(PaymentReconciliation::getTenantId, tenantId) - .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) - .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) - .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) - .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); - if (paymentReconciliation == null) { - throw new ServiceException("未查询到付款信息"); - } - // 查询合同实体 - Contract contract = iContractService.getOne( - new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); - if (contract == null) { - throw new ServiceException("未查询到合同信息"); - } - // 查询就诊信息 - Encounter encounter = iEncounterService.getById(deviceDispense.getEncounterId()); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - // 查询账户信息 - Account account = accountService - .getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, chargeItem.getEncounterId()) - .eq(Account::getTenantId, tenantId).eq(Account::getEncounterFlag, Whether.YES.getValue())); - if (account == null) { - throw new ServiceException("未查询到账户信息"); - } - YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); - if (mdtrtCertType == null) { - throw new ServiceException("未查询到就诊凭证类型"); - } - // 查询就诊id - if (contract.getCategoryEnum().equals(Category.SELF.getValue()) - || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { - medical3505Param.setMdtrtSn(encounter.getBusNo()); - } else { - ClinicReg one = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) - .eq(ClinicReg::getMdtrtCertNo, account.getNo())); - if (one != null) { - medical3505Param.setMdtrtSn(one.getMdtrtId()); - } - } - // 判断拆零标志 - Whether flag; - if (deviceDefinition.getSalesUnitCode().equals(deviceDispense.getUnitCode())) { - flag = Whether.NO; - } else { - flag = Whether.YES; - } - // 查询发票信息 - Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); - if (invoice == null) { - throw new ServiceException("未查询到发票信息"); - } - medical3505Param.setMedListCodg(deviceDefinition.getYbNo()).setFixmedinsBchno(inventoryItem.getLotNumber()) - .setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .setPrscDrName(practitioner.getName()).setPharName(medDoctor.getName()) - .setPharPracCertNo(medDoctor.getPharPracCertNo()).setPsnCertType(mdtrtCertType.getValue()) - .setManuLotnum(deviceDispense.getLotNumber()).setManuDate(inventoryItem.getProductionDate()) - .setTrdnFlag(flag.getCode()).setRtalDocno(invoice.getId().toString()) - .setSelRetnCnt(deviceDispense.getQuantity()).setSelRetnTime(deviceDispense.getDispenseTime()) - .setSelRetnOpterName(performer.getName()).setRxFlag(deviceDefinition.getRxFlag().toString()) - .setExpyEnd(inventoryItem.getExpirationDate()); - - // 溯源码 - SupplyDelivery supplyDelivery = iSupplyDeliveryService.getOne( - new LambdaQueryWrapper().eq(SupplyDelivery::getLotNumber, deviceDispense.getLotNumber()) - .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(SupplyDelivery::getItemId, deviceDispense.getDeviceDefId())); - if (supplyDelivery != null) { - Map map = new HashMap<>(); - map.put("drug_trac_codg", supplyDelivery.getTraceNo()); - // medical3505Param.setDrugtracinfo(JSON.toJSONString(map)); - } - - } else if (type != YbListType.MEDICAL_SERVICE_ITEM) { - // 药品的相关处理 - MedicationDispense medicationDispense = iMedicationDispenseService.getById(id); - if (medicationDispense == null) { - throw new ServiceException("未查询到药品信息"); - } - if (medicationDispense.getStatusEnum() != DispenseStatus.COMPLETED.getValue()) { - throw new ServiceException("未发药"); - } - MedicationRequest medicationRequest = iMedicationRequestService.getById(medicationDispense.getMedReqId()); - if (medicationRequest == null) { - throw new ServiceException("未查询到药品请求信息"); - } - MedicationDefinition medicationDefinition = - iMedicationDefinitionService.getById(medicationDispense.getMedicationId()); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - - // 查询库存信息 - InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() - .eq(InventoryItem::getLotNumber, medicationDispense.getLotNumber()) - .eq(InventoryItem::getLocationId, medicationDispense.getLocationId()) - .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(InventoryItem::getItemId, medicationDispense.getMedicationId()) - .eq(InventoryItem::getTenantId, tenantId)); - if (inventoryItem == null) { - throw new ServiceException("未查询到库存信息"); - } - // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 - // SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() - // .eq(SupplyRequest::getLotNumber, medicationDispense.getLotNumber()) - // .eq(SupplyRequest::getPurposeLocationId, medicationDispense.getLocationId()) - // .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - // .eq(SupplyRequest::getItemId, medicationDispense.getMedicationId()) - // .eq(SupplyRequest::getTenantId, tenantId)); - // if (supplyRequest == null) { - // return null; - // } - // 查询开方医生姓名 - Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, medicationRequest.getPractitionerId()) - .eq(Practitioner::getTenantId, tenantId)); - // 查询当前登录用户的姓名(药师) - Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); - // 查询发药人 - Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, medicationDispense.getPractitionerId()) - .eq(Practitioner::getTenantId, tenantId)); - // 查询费用结算信息 - ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() - .eq(ChargeItem::getServiceTable, CommonConstants.TableName.MED_MEDICATION_REQUEST) - .eq(ChargeItem::getServiceId, medicationRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); - if (chargeItem == null) { - throw new ServiceException("未查询到收费信息"); - } - // 查询付款信息 - PaymentReconciliation paymentReconciliation = - iPaymentReconciliationService.getOne(new LambdaQueryWrapper() - .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) - .eq(PaymentReconciliation::getTenantId, tenantId) - .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) - .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) - .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) - .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); - if (paymentReconciliation == null) { - throw new ServiceException("未查询到收费信息"); - } - // 查询合同实体 - Contract contract = iContractService.getOne( - new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); - if (contract == null) { - throw new ServiceException("未查询到合同信息"); - } - // 查询就诊信息 - Encounter encounter = iEncounterService.getById(medicationDispense.getEncounterId()); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - // 查询账户信息 - Account account = accountService - .getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, chargeItem.getEncounterId()) - .eq(Account::getTenantId, tenantId).eq(Account::getEncounterFlag, Whether.YES.getValue())); - if (account == null) { - throw new ServiceException("未查询到账号信息"); - } - YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); - if (mdtrtCertType == null) { - throw new ServiceException("未查询到就诊凭证信息"); - } - // 查询就诊id - if (contract.getCategoryEnum().equals(Category.SELF.getValue()) - || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { - medical3505Param.setMdtrtSn(encounter.getBusNo()); - } else { - ClinicReg one = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) - .eq(ClinicReg::getMdtrtCertNo, account.getNo())); - if (one != null) { - medical3505Param.setMdtrtSn(one.getMdtrtId()); - } - } - // 判断拆零标志 - Whether flag; - if (medicationDefinition.getDefEncounterUnitCode().equals(medicationDispense.getUnitCode())) { - flag = Whether.NO; - } else { - flag = Whether.YES; - } - // 查询发票信息 - Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); - if (invoice == null) { - throw new ServiceException("未查询到发票信息"); - } - // todo:sjq 商品销售的数量是根据是否拆零计算出来的数量吗? - medical3505Param.setMedListCodg(medicationDefinition.getYbNo()) - .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .setPrscDrName(practitioner.getName()).setPharName(medDoctor.getName()) - .setPharPracCertNo(medDoctor.getPharPracCertNo()).setPsnCertType(mdtrtCertType.getValue()) - .setManuLotnum(medicationDispense.getLotNumber()).setManuDate(inventoryItem.getProductionDate()) - .setTrdnFlag(flag.getCode()).setRtalDocno(invoice.getBusNo()) - .setSelRetnCnt(new BigDecimal(medicationDispense.getQuantity().toString())) - .setSelRetnTime(medicationDispense.getDispenseTime()).setSelRetnOpterName(performer.getName()) - .setRxFlag(medicationDefinition.getRxFlag().toString()).setExpyEnd(inventoryItem.getExpirationDate()); - - // 溯源码 - SupplyDelivery supplyDelivery = iSupplyDeliveryService.getOne(new LambdaQueryWrapper() - .eq(SupplyDelivery::getLotNumber, medicationDispense.getLotNumber()) - .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) - .eq(SupplyDelivery::getItemId, medicationDispense.getMedicationId())); - if (supplyDelivery != null) { - Map map = new HashMap<>(); - map.put("drug_trac_codg", supplyDelivery.getTraceNo()); - // medical3505Param.setDrugtracinfo(JSON.toJSONString(map)); - } - } - return medical3505Param; - } - - /** - * 【3506】商品销售退货 - * - * @param id 对应发放业务的主键id - * @param ListType 目录种类 - * @param tenantId 租户id - * @return 3506参数 - */ - public Medical3506Param getMedical3506Param(Long id, String ListType, Integer tenantId) { - Medical3506Param medical3506Param = new Medical3506Param(); - // 销售商品的种类 - YbListType type = YbListType.getByValue(ListType); - if (type == YbListType.MEDICAL_CONSUMABLES) { - // 耗材的相关处理 - DeviceDispense deviceDispense = iDeviceDispenseService.getById(id); - if (deviceDispense == null) { - throw new ServiceException("未查询到耗材信息"); - } - if (deviceDispense.getStatusEnum() != DispenseStatus.REFUNDED.getValue()) { - throw new ServiceException("未退耗材"); - } - DeviceRequest deviceRequest = iDeviceRequestService.getById(deviceDispense.getDeviceReqId()); - if (deviceRequest == null) { - throw new ServiceException("未查询到耗材请求信息"); - } - DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(deviceDispense.getDeviceDefId()); - if (deviceDefinition == null) { - throw new ServiceException("未查询到耗材信息"); - } - // 查询库存信息 - InventoryItem inventoryItem = inventoryItemService.getOne( - new LambdaQueryWrapper().eq(InventoryItem::getLotNumber, deviceDispense.getLotNumber()) - .eq(InventoryItem::getLocationId, deviceDispense.getLocationId()) - .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(InventoryItem::getItemId, deviceDispense.getDeviceDefId()) - .eq(InventoryItem::getTenantId, tenantId)); - if (inventoryItem == null) { - throw new ServiceException("未查询到库存信息"); - } - // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 - SupplyRequest supplyRequest = iSupplyRequestService.getOne( - new LambdaQueryWrapper().eq(SupplyRequest::getLotNumber, deviceDispense.getLotNumber()) - .eq(SupplyRequest::getPurposeLocationId, deviceDispense.getLocationId()) - .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(SupplyRequest::getItemId, deviceDispense.getDeviceDefId()) - .eq(SupplyRequest::getTenantId, tenantId)); - if (supplyRequest == null) { - throw new ServiceException("未查询到供应信息"); - } - // 查询开方医生姓名 - Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, deviceRequest.getRequesterId()).eq(Practitioner::getTenantId, tenantId)); - // 查询当前登录用户的姓名(药师) - Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); - // 查询发药人 - Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, deviceDispense.getPerformerId()).eq(Practitioner::getTenantId, tenantId)); - // 查询费用结算信息 - ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() - .eq(ChargeItem::getServiceTable, CommonConstants.TableName.WOR_DEVICE_REQUEST) - .eq(ChargeItem::getServiceId, deviceRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); - if (chargeItem == null) { - throw new ServiceException("未查询到收费信息"); - } - // 查询付款信息 - PaymentReconciliation paymentReconciliation = - iPaymentReconciliationService.getOne(new LambdaQueryWrapper() - .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) - .eq(PaymentReconciliation::getTenantId, tenantId) - .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) - .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) - .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) - .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); - if (paymentReconciliation == null) { - throw new ServiceException("未查询到付款信息"); - } - // 查询合同实体 - Contract contract = iContractService.getOne( - new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); - if (contract == null) { - throw new ServiceException("未查询到合同信息"); - } - // 查询就诊信息 - Encounter encounter = iEncounterService.getById(deviceDispense.getEncounterId()); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - // 查询账户信息 - Account account = accountService.getOne(new LambdaQueryWrapper() - .eq(Account::getEncounterId, chargeItem.getEncounterId()).eq(Account::getTenantId, tenantId)); - if (account == null) { - throw new ServiceException("未查询到账户信息"); - } - YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); - if (mdtrtCertType == null) { - throw new ServiceException("未查询到就诊凭证信息"); - } - // 查询就诊id - if (contract.getCategoryEnum().equals(Category.SELF.getValue()) - || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { - medical3506Param.setMdtrtSn(encounter.getBusNo()); - } else { - ClinicReg one = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) - .eq(ClinicReg::getMdtrtCertNo, account.getNo())); - if (one != null) { - medical3506Param.setMdtrtSn(one.getMdtrtId()); - } - } - // 判断拆零标志 - Whether flag; - if (deviceDefinition.getSalesUnitCode().equals(deviceDispense.getUnitCode())) { - flag = Whether.NO; - } else { - flag = Whether.YES; - } - // 查询发票信息 - Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); - if (invoice == null) { - throw new ServiceException("未查询到发票信息"); - } - medical3506Param.setMedListCodg(deviceDefinition.getYbNo()).setTrdnFlag(flag.getCode()) - .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(deviceDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .setPsnCertType(mdtrtCertType.getValue()).setManuLotnum(deviceDispense.getLotNumber()) - .setManuDate(inventoryItem.getProductionDate()).setTrdnFlag(flag.getCode()) - .setSelRetnCnt(new BigDecimal(deviceDispense.getQuantity().toString())) - .setSelRetnTime(deviceDispense.getDispenseTime()).setSelRetnOpterName(performer.getName()) - .setRxFlag(deviceDefinition.getRxFlag().toString()).setExpyEnd(inventoryItem.getExpirationDate()); - - } else if (type != YbListType.MEDICAL_SERVICE_ITEM) { - // 药品的相关处理 - MedicationDispense medicationDispense = iMedicationDispenseService.getById(id); - if (medicationDispense == null) { - throw new ServiceException("未查询到药品信息"); - } - if (medicationDispense.getStatusEnum() != DispenseStatus.REFUNDED.getValue()) { - throw new ServiceException("未退药"); - } - MedicationRequest medicationRequest = iMedicationRequestService.getById(medicationDispense.getMedReqId()); - if (medicationRequest == null) { - throw new ServiceException("未查询到药品信息"); - } - MedicationDefinition medicationDefinition = - iMedicationDefinitionService.getById(medicationDispense.getMedicationId()); - if (medicationDefinition == null) { - throw new ServiceException("未查询到药品信息"); - } - - // 查询库存信息 - InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() - .eq(InventoryItem::getLotNumber, medicationDispense.getLotNumber()) - .eq(InventoryItem::getLocationId, medicationDispense.getLocationId()) - .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(InventoryItem::getItemId, medicationDispense.getMedicationId()) - .eq(InventoryItem::getTenantId, tenantId)); - if (inventoryItem == null) { - throw new ServiceException("未查询到库存信息"); - } - // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 - SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() - .eq(SupplyRequest::getLotNumber, medicationDispense.getLotNumber()) - .eq(SupplyRequest::getPurposeLocationId, medicationDispense.getLocationId()) - .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .eq(SupplyRequest::getItemId, medicationDispense.getMedicationId()) - .eq(SupplyRequest::getTenantId, tenantId)); - if (supplyRequest == null) { - throw new ServiceException("未查询到供应信息"); - } - // 查询开方医生姓名 - Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, medicationRequest.getPractitionerId()) - .eq(Practitioner::getTenantId, tenantId)); - // 查询当前登录用户的姓名(药师) - Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); - // 查询发药人 - Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() - .eq(Practitioner::getUserId, medicationDispense.getPractitionerId()) - .eq(Practitioner::getTenantId, tenantId)); - // 查询费用结算信息 - ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() - .eq(ChargeItem::getServiceTable, CommonConstants.TableName.MED_MEDICATION_REQUEST) - .eq(ChargeItem::getServiceId, medicationRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); - if (chargeItem == null) { - throw new ServiceException("未查询到收费信息"); - } - // 查询付款信息 - PaymentReconciliation paymentReconciliation = - iPaymentReconciliationService.getOne(new LambdaQueryWrapper() - .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) - .eq(PaymentReconciliation::getTenantId, tenantId) - .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) - .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) - .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) - .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); - if (paymentReconciliation == null) { - throw new ServiceException("未查询到付款信息"); - } - // 查询合同实体 - Contract contract = iContractService.getOne( - new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); - if (contract == null) { - throw new ServiceException("未查询到合同信息"); - } - // 查询就诊信息 - Encounter encounter = iEncounterService.getById(medicationDispense.getEncounterId()); - if (encounter == null) { - throw new ServiceException("未查询到就诊信息"); - } - // 查询账户信息 - Account account = accountService - .getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, chargeItem.getEncounterId()) - .eq(Account::getTenantId, tenantId).eq(Account::getEncounterFlag, Whether.YES.getValue())); - if (account == null) { - throw new ServiceException("未查询到账户信息"); - } - YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); - if (mdtrtCertType == null) { - throw new ServiceException("未查询到就诊凭证信息"); - } - // 查询就诊id - if (contract.getCategoryEnum().equals(Category.SELF.getValue()) - || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { - medical3506Param.setMdtrtSn(encounter.getBusNo()); - } else { - ClinicReg one = iRegService - .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) - .eq(ClinicReg::getMdtrtCertNo, account.getNo())); - if (one != null) { - medical3506Param.setMdtrtSn(one.getMdtrtId()); - } - } - // 判断拆零标志 - Whether flag; - if (medicationDefinition.getDefEncounterUnitCode().equals(medicationDispense.getUnitCode())) { - flag = Whether.NO; - } else { - flag = Whether.YES; - } - // 查询发票信息 - Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); - if (invoice == null) { - throw new ServiceException("未查询到发票信息"); - } - // todo:sjq 商品销售的数量是根据是否拆零计算出来的数量吗? - medical3506Param.setMedListCodg(medicationDefinition.getYbNo()) - .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) - .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) - .setPsnCertType(mdtrtCertType.getValue()).setManuLotnum(medicationDispense.getLotNumber()) - .setManuDate(inventoryItem.getProductionDate()).setTrdnFlag(flag.getCode()) - .setSelRetnCnt(new BigDecimal(medicationDispense.getQuantity().toString())) - .setSelRetnTime(medicationDispense.getDispenseTime()).setSelRetnOpterName(performer.getName()) - .setRxFlag(medicationDefinition.getRxFlag().toString()).setExpyEnd(inventoryItem.getExpirationDate()); - } - return medical3506Param; - } - - /** - * 【3507】商品信息删除参数 - * - * @param id 库存项目id - * @param invDataType 进销存类型 - * @return 3507参数 - */ - public Medical3507Param getMedical3507Param(Long id, String invDataType) { - InventoryItem inventoryItem = inventoryItemService.getById(id); - if (inventoryItem == null) { - throw new ServiceException("未查询到库存信息"); - } - YbInvDataType dataType = YbInvDataType.getByValue(invDataType); - if (dataType == null) { - throw new ServiceException("未查询进销存类型"); - } - Medical3507Param medical3507Param = new Medical3507Param(); - medical3507Param.setFixmedinsBchno(inventoryItem.getLotNumber()).setInvDataType(dataType.getValue()); - return medical3507Param; - } - - /** - * 【9001】签到 - * - * @param id 员工id - * @return 9001参数 - */ - public Sign getSignParam(Long id, String mac) { - Practitioner practitioner = iPractitionerService.getPractitionerByUserId(id); - if (practitioner == null) { - return null; - } - - Sign sign = new Sign(); - sign.setOpterNo(practitioner.getBusNo()).setMac(mac); - return sign; - } - - /** - * 【3209A】查询跨省三方对账未成功数据(吉林省) - * - * @param settlement3209AWebParam 前台参数 - * @return 3209A参数 - */ - public FinancialSettlement3209AParam - getFinancialSettlement3209AParam(Settlement3209AWebParam settlement3209AWebParam) { - FinancialSettlement3209AParam financialSettlement3209AParam = new FinancialSettlement3209AParam(); - BeanUtils.copyProperties(settlement3209AWebParam, financialSettlement3209AParam); - return financialSettlement3209AParam; - } - - /** - * 【13203】医药机构费用结算日对账结果查询 - * - * @param financial13203WebParam 13203 前台参数 - * @return 13203参数 - */ - public Financial13203Param getFinancial13203Param(Financial13203WebParam financial13203WebParam) { - Financial13203Param financial13203Param = new Financial13203Param(); - BeanUtils.copyProperties(financial13203WebParam, financial13203Param); - return financial13203Param; - } - - /** - * 基础信息获取 - * - * @return 基础信息 - */ - public BaseInfo getBaseInfo(JSONObject jsonObj, Contract contract) { - LoginUser loginUser = SecurityUtils.getLoginUser(); - Long hospitalId = loginUser.getHospitalId(); - // Organization hospital = iOrganizationService.getById(hospitalId); - BaseInfo baseInfo = new BaseInfo(); - if (jsonObj != null && jsonObj.get("insuplc_admdvs") != null) { - baseInfo.setInsuplcAdmdvs(String.valueOf(jsonObj.get("insuplc_admdvs"))); - } - // 异地患者问题 - // if (contract.getBusNo() != null) { - // baseInfo.setInsuplcAdmdvs(contract.getBusNo()); - // } - if (jsonObj != null && jsonObj.get("decrypt_flag") != null) { - baseInfo.setDecryptFlag(String.valueOf(jsonObj.get("decrypt_flag"))); - } else { - baseInfo.setDecryptFlag("1"); - } - // 电子处方 - // JSONObject optionJson = SecurityUtils.getLoginUser().getOptionJson(); - - if (contract == null) { - List redisContractList = iContractService.getContractListByYb(); - Optional max = redisContractList.stream().max(Comparator.comparingInt(Contract::getSort)); - if (max.isPresent()) { - contract = max.get(); - } else { - throw new ServiceException("没有对合同进行优先级排序"); - } - } - - return baseInfo.setUserId(loginUser.getUserId()).setRealname(loginUser.getUsername()) - .setFixmedinsCode(contract.getFixmedinsCode()).setFixmedinsName(contract.getFixmedinsName()) - .setYbClientSecret(contract.getClientSecret()).setYbUsername(contract.getUsername()) - .setYbPassword(contract.getPassword()).setYbGrantType(contract.getGrantType()) - .setYbScope(contract.getScope()).setYbCliPrvKey(contract.getCliPrvKey()) - .setYbClientId(contract.getClientId()).setAdmvs(contract.getAdmVs()); - } - - public BaseInfo getBaseInfo(String medType, String dutyDoctorName) { - // 随机获取一个合同 - List contractListByYb = iContractService.getContractListByYb(); - if (contractListByYb.isEmpty()) { - throw new ServiceException("无医保配置信息"); - } - Contract contract = contractListByYb.get(0); - LoginUser loginUser = SecurityUtils.getLoginUser(); - Long hospitalId = loginUser.getHospitalId(); - Organization hospital = iOrganizationService.getById(hospitalId); - BaseInfo baseInfo = new BaseInfo(); - // 电子处方 - JSONObject optionJson = SecurityUtils.getLoginUser().getOptionJson(); - String prePrvKey = optionJson.getString(CommonConstants.Option.APP_PRVKEY); - String prePubKey = contract.getCliPubKey(); - String clientId = contract.getClientId(); - String eleAddress = optionJson.getString(CommonConstants.Option.ELE_ADDRESS); - String username = contract.getUsername(); - String password = contract.getPassword(); - String scope = contract.getScope(); - String grantType = contract.getGrantType(); - String clientSecret = contract.getClientSecret(); - String time = optionJson.getString(CommonConstants.Option.TIME); - String preAppId = optionJson.getString(CommonConstants.Option.PRE_APP_ID); - String preAppSecret = optionJson.getString(CommonConstants.Option.PRE_APP_SECRET); - String templatePath = optionJson.getString(CommonConstants.Option.TEMPLATE_PATH); - String outputPath = optionJson.getString(CommonConstants.Option.OUTPUT_PATH); - String hospitalSealPath = optionJson.getString(CommonConstants.Option.HOSPITAL_SEAL_PATH); - - return baseInfo.setUserId(loginUser.getUserId()).setRealname(loginUser.getUsername()) - .setAdmvs(contract.getAdmVs()).setFixmedinsCode(contract.getFixmedinsCode()) - .setFixmedinsName(contract.getFixmedinsName()).setPrePrvKey(prePrvKey).setPrePubKey(prePubKey) - .setClientId(clientId).setEleAddress(eleAddress).setUsername(username).setPassword(password).setScope(scope) - .setGrantType(grantType).setClientSecret(clientSecret).setTime(time).setPreAppId(preAppId) - .setPreAppSecret(preAppSecret).setTemplatePath(templatePath).setOutputPath(outputPath) - .setHospitalSealPath(hospitalSealPath).setMedType(medType).setDutyDoctorName(dutyDoctorName); - - } - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java deleted file mode 100644 index c4f61d04..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java +++ /dev/null @@ -1,319 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 西药中成药目录Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_drug_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogDrugInfo { - - /** 医疗目录编码 */ - @TableId(type = IdType.ASSIGN_ID) - private String medicalCatalogCode; - - /** 药品商品名 */ - private String drugTradeName; - - /** 通用名编号 */ - private String genericNameId; - - /** 药品通用名 */ - private String drugGenericName; - - /** 化学名称 */ - private String chemicalName; - - /** 别名 */ - private String alias; - - /** 英文名称 */ - private String englishName; - - /** 注册名称 */ - private String registeredName; - - /** 药监本位码 */ - private String drugSupervisionCode; - - /** 药品剂型 */ - private String drugForm; - - /** 药品剂型名称 */ - private String drugFormName; - - /** 药品类别 */ - private String drugCategory; - - /** 药品类别名称 */ - private String drugCategoryName; - - /** 药品规格 */ - private String drugSpecification; - - /** 药品规格代码 */ - private String drugSpecCode; - - /** 注册剂型 */ - private String registeredForm; - - /** 注册规格 */ - private String registeredSpec; - - /** 注册规格代码 */ - private String registeredSpecCode; - - /** 每次用量 */ - private String dosage; - - /** 使用频次 */ - private String frequency; - - /** 酸根盐基 */ - private String acidBase; - - /** 国家药品编号 */ - private String nationalDrugCode; - - /** 用法 */ - private String usage; - - /** 中成药标志 */ - private String tcmFlag; - - /** 生产地类别 */ - private String productionAreaType; - - /** 生产地类别名称 */ - private String productionAreaName; - - /** 计价单位类型 */ - private String pricingUnitType; - - /** 非处方药标志 */ - private String otcFlag; - - /** 非处方药标志名称 */ - private String otcFlagName; - - /** 包装材质 */ - private String packagingMaterial; - - /** 包装材质名称 */ - private String packagingMaterialName; - - /** 包装规格 */ - private String packagingSpec; - - /** 包装数量 */ - private String packagingQuantity; - - /** 功能主治 */ - private String functionIndication; - - /** 给药途径 */ - private String administrationRoute; - - /** 说明书 */ - private String instructions; - - /** 开始日期 */ - private String startDate; - - /** 结束日期 */ - private String endDate; - - /** 最小使用单位 */ - private String minUseUnit; - - /** 最小销售单位 */ - private String minSaleUnit; - - /** 最小计量单位 */ - private String minMeasurementUnit; - - /** 最小包装数量 */ - private String minPackageQuantity; - - /** 最小包装单位 */ - private String minPackageUnit; - - /** 最小制剂单位 */ - private String minPreparationUnit; - - /** 最小包装单位名称 */ - private String minPackageUnitName; - - /** 最小制剂单位名称 */ - private String minPreparationUnitName; - - /** 转换比 */ - private String conversionRatio; - - /** 药品有效期 */ - private String shelfLife; - - /** 最小计价单位 */ - private String minPricingUnit; - - /** 五笔助记码 */ - private String wubiCode; - - /** 拼音助记码 */ - private String pinyinCode; - - /** 分包装厂家 */ - private String repackager; - - /** 生产企业编号 */ - private String manufacturerCode; - - /** 生产企业名称 */ - private String manufacturerName; - - /** 特殊限价药品标志 */ - private String specialPriceLimitFlag; - - /** 特殊药品标志 */ - private String specialDrugFlag; - - /** 限制使用范围 */ - private String useRestriction; - - /** 限制使用标志 */ - private String useRestrictionFlag; - - /** 药品注册证号 */ - private String registrationCertNo; - - /** 药品注册证号开始日期 */ - private String regCertStartDate; - - /** 药品注册证号结束日期 */ - private String regCertEndDate; - - /** 批准文号 */ - private String approvalNo; - - /** 批准文号开始日期 */ - private String approvalStartDate; - - /** 批准文号结束日期 */ - private String approvalEndDate; - - /** 市场状态 */ - private String marketStatus; - - /** 市场状态名称 */ - private String marketStatusName; - - /** 药品注册批件电子档案 */ - private String regDocumentArchive; - - /** 药品补充申请批件电子档案 */ - private String suppApplicationArchive; - - /** 国家医保药品目录备注 */ - private String nationalInsuranceNotes; - - /** 基本药物标志名称 */ - private String essentialDrugFlagName; - - /** 基本药物标志 */ - private String essentialDrugFlag; - - /** 增值税调整药品标志 */ - private String vatAdjustmentFlag; - - /** 增值税调整药品名称 */ - private String vatAdjustmentName; - - /** 上市药品目录集药品 */ - private String listedDrugFlag; - - /** 医保谈判药品标志 */ - private String negotiationDrugFlag; - - /** 医保谈判药品名称 */ - private String negotiationDrugName; - - /** 卫健委药品编码 */ - private String nhcDrugCode; - - /** 备注 */ - private String remarks; - - /** 有效标志 */ - private String validFlag; - - /** 唯一记录号 */ - private String uniqueRecordId; - - /** 数据创建时间 */ - private String createdAt; - - /** 数据更新时间 */ - private String updatedAt; - - /** 版本号 */ - private String version; - - /** 版本名称 */ - private String versionName; - - /** 儿童用药 */ - private String pediatricUse; - - /** 公司名称 */ - private String companyName; - - /** 仿制药一致性评价药品 */ - private String genericEvaluationFlag; - - /** 经销企业 */ - private String distributionCompany; - - /** 经销企业联系人 */ - private String distributionContact; - - /** 经销企业授权书电子档案 */ - private String distributionAuthArchive; - - /** 国家医保药品目录剂型 */ - private String insuranceForm; - - /** 国家医保药品目录甲乙类标识 */ - private String insuranceClass; - - /** 上市许可证持有人 */ - private String marketingAuthorizationHolder; - - /** 下发标志 */ - private String releaseFlag; - - /** 传输数据ID */ - private String transmissionDataId; - - /** 生效时间 */ - private String validFrom; - - /** 失效时间 */ - private String validTo; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java deleted file mode 100644 index bdad01c8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java +++ /dev/null @@ -1,319 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 西药中成药目录Entity实体 - * - * @author system - * @date 2025-07-02 - */ -@Data -@TableName("yb_catalog_drug_info_usual") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogDrugInfoUsual { - - /** 医疗目录编码 */ - @TableId(type = IdType.ASSIGN_ID) - private String medicalCatalogCode; - - /** 药品商品名 */ - private String drugTradeName; - - /** 通用名编号 */ - private String genericNameId; - - /** 药品通用名 */ - private String drugGenericName; - - /** 化学名称 */ - private String chemicalName; - - /** 别名 */ - private String alias; - - /** 英文名称 */ - private String englishName; - - /** 注册名称 */ - private String registeredName; - - /** 药监本位码 */ - private String drugSupervisionCode; - - /** 药品剂型 */ - private String drugForm; - - /** 药品剂型名称 */ - private String drugFormName; - - /** 药品类别 */ - private String drugCategory; - - /** 药品类别名称 */ - private String drugCategoryName; - - /** 药品规格 */ - private String drugSpecification; - - /** 药品规格代码 */ - private String drugSpecCode; - - /** 注册剂型 */ - private String registeredForm; - - /** 注册规格 */ - private String registeredSpec; - - /** 注册规格代码 */ - private String registeredSpecCode; - - /** 每次用量 */ - private String dosage; - - /** 使用频次 */ - private String frequency; - - /** 酸根盐基 */ - private String acidBase; - - /** 国家药品编号 */ - private String nationalDrugCode; - - /** 用法 */ - private String usage; - - /** 中成药标志 */ - private String tcmFlag; - - /** 生产地类别 */ - private String productionAreaType; - - /** 生产地类别名称 */ - private String productionAreaName; - - /** 计价单位类型 */ - private String pricingUnitType; - - /** 非处方药标志 */ - private String otcFlag; - - /** 非处方药标志名称 */ - private String otcFlagName; - - /** 包装材质 */ - private String packagingMaterial; - - /** 包装材质名称 */ - private String packagingMaterialName; - - /** 包装规格 */ - private String packagingSpec; - - /** 包装数量 */ - private String packagingQuantity; - - /** 功能主治 */ - private String functionIndication; - - /** 给药途径 */ - private String administrationRoute; - - /** 说明书 */ - private String instructions; - - /** 开始日期 */ - private String startDate; - - /** 结束日期 */ - private String endDate; - - /** 最小使用单位 */ - private String minUseUnit; - - /** 最小销售单位 */ - private String minSaleUnit; - - /** 最小计量单位 */ - private String minMeasurementUnit; - - /** 最小包装数量 */ - private String minPackageQuantity; - - /** 最小包装单位 */ - private String minPackageUnit; - - /** 最小制剂单位 */ - private String minPreparationUnit; - - /** 最小包装单位名称 */ - private String minPackageUnitName; - - /** 最小制剂单位名称 */ - private String minPreparationUnitName; - - /** 转换比 */ - private String conversionRatio; - - /** 药品有效期 */ - private String shelfLife; - - /** 最小计价单位 */ - private String minPricingUnit; - - /** 五笔助记码 */ - private String wubiCode; - - /** 拼音助记码 */ - private String pinyinCode; - - /** 分包装厂家 */ - private String repackager; - - /** 生产企业编号 */ - private String manufacturerCode; - - /** 生产企业名称 */ - private String manufacturerName; - - /** 特殊限价药品标志 */ - private String specialPriceLimitFlag; - - /** 特殊药品标志 */ - private String specialDrugFlag; - - /** 限制使用范围 */ - private String useRestriction; - - /** 限制使用标志 */ - private String useRestrictionFlag; - - /** 药品注册证号 */ - private String registrationCertNo; - - /** 药品注册证号开始日期 */ - private String regCertStartDate; - - /** 药品注册证号结束日期 */ - private String regCertEndDate; - - /** 批准文号 */ - private String approvalNo; - - /** 批准文号开始日期 */ - private String approvalStartDate; - - /** 批准文号结束日期 */ - private String approvalEndDate; - - /** 市场状态 */ - private String marketStatus; - - /** 市场状态名称 */ - private String marketStatusName; - - /** 药品注册批件电子档案 */ - private String regDocumentArchive; - - /** 药品补充申请批件电子档案 */ - private String suppApplicationArchive; - - /** 国家医保药品目录备注 */ - private String nationalInsuranceNotes; - - /** 基本药物标志名称 */ - private String essentialDrugFlagName; - - /** 基本药物标志 */ - private String essentialDrugFlag; - - /** 增值税调整药品标志 */ - private String vatAdjustmentFlag; - - /** 增值税调整药品名称 */ - private String vatAdjustmentName; - - /** 上市药品目录集药品 */ - private String listedDrugFlag; - - /** 医保谈判药品标志 */ - private String negotiationDrugFlag; - - /** 医保谈判药品名称 */ - private String negotiationDrugName; - - /** 卫健委药品编码 */ - private String nhcDrugCode; - - /** 备注 */ - private String remarks; - - /** 有效标志 */ - private String validFlag; - - /** 唯一记录号 */ - private String uniqueRecordId; - - /** 数据创建时间 */ - private String createdAt; - - /** 数据更新时间 */ - private String updatedAt; - - /** 版本号 */ - private String version; - - /** 版本名称 */ - private String versionName; - - /** 儿童用药 */ - private String pediatricUse; - - /** 公司名称 */ - private String companyName; - - /** 仿制药一致性评价药品 */ - private String genericEvaluationFlag; - - /** 经销企业 */ - private String distributionCompany; - - /** 经销企业联系人 */ - private String distributionContact; - - /** 经销企业授权书电子档案 */ - private String distributionAuthArchive; - - /** 国家医保药品目录剂型 */ - private String insuranceForm; - - /** 国家医保药品目录甲乙类标识 */ - private String insuranceClass; - - /** 上市许可证持有人 */ - private String marketingAuthorizationHolder; - - /** 下发标志 */ - private String releaseFlag; - - /** 传输数据ID */ - private String transmissionDataId; - - /** 生效时间 */ - private String validFrom; - - /** 失效时间 */ - private String validTo; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java deleted file mode 100644 index ee71a46b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java +++ /dev/null @@ -1,241 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 医疗耗材信息Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_medical_consumables") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogMedicalConsumables { - - /** 医疗目录编码 */ - @TableId(type = IdType.ASSIGN_ID) - private String medicalCatalogCode; - - /** $column.columnComment */ - private String consumableName; - - /** $column.columnComment */ - private String deviceUniqueId; - - /** $column.columnComment */ - private String insuranceGenericCode; - - /** $column.columnComment */ - private String insuranceGenericName; - - /** $column.columnComment */ - private String productModel; - - /** $column.columnComment */ - private String specCode; - - /** $column.columnComment */ - private String specification; - - /** $column.columnComment */ - private String consumableCategory; - - /** $column.columnComment */ - private String specModel; - - /** $column.columnComment */ - private String materialCode; - - /** $column.columnComment */ - private String materialType; - - /** $column.columnComment */ - private String packageSpec; - - /** $column.columnComment */ - private String packageQuantity; - - /** $column.columnComment */ - private String packageMaterial; - - /** $column.columnComment */ - private String packageUnit; - - /** $column.columnComment */ - private String conversionRatio; - - /** $column.columnComment */ - private String minUsageUnit; - - /** $column.columnComment */ - private String productionAreaType; - - /** $column.columnComment */ - private String productionAreaName; - - /** $column.columnComment */ - private String productStandard; - - /** $column.columnComment */ - private String expiryDate; - - /** $column.columnComment */ - private String structureComposition; - - /** $column.columnComment */ - private String applicableScope; - - /** $column.columnComment */ - private String usageMethod; - - /** $column.columnComment */ - private String imageCode; - - /** $column.columnComment */ - private String qualityStandard; - - /** $column.columnComment */ - private String instructions; - - /** $column.columnComment */ - private String proofMaterials; - - /** $column.columnComment */ - private String specialDeviceFlag; - - /** $column.columnComment */ - private String specialDeviceName; - - /** $column.columnComment */ - private String kitName; - - /** $column.columnComment */ - private String kitFlag; - - /** $column.columnComment */ - private String usageRestrictionFlag; - - /** $column.columnComment */ - private String insuranceRestriction; - - /** $column.columnComment */ - private String minSaleUnit; - - /** 高值耗材标志(true:是 false:否) */ - private String highValueFlag; - - /** $column.columnComment */ - private String medicalMaterialCode; - - /** $column.columnComment */ - private String implantFlag; - - /** $column.columnComment */ - private String sterilizationFlag; - - /** $column.columnComment */ - private String sterilizationName; - - /** $column.columnComment */ - private String implantInterventionFlag; - - /** $column.columnComment */ - private String implantInterventionName; - - /** $column.columnComment */ - private String disposableFlag; - - /** $column.columnComment */ - private String disposableFlagName; - - /** $column.columnComment */ - private String registrantName; - - /** $column.columnComment */ - private String startDate; - - /** $column.columnComment */ - private String endDate; - - /** $column.columnComment */ - private String deviceManagementCategory; - - /** $column.columnComment */ - private String deviceCategoryName; - - /** $column.columnComment */ - private String registrationNo; - - /** $column.columnComment */ - private String registeredProductName; - - /** $column.columnComment */ - private String structureDetails; - - /** $column.columnComment */ - private String otherContent; - - /** $column.columnComment */ - private String approvalDate; - - /** $column.columnComment */ - private String registrantAddress; - - /** $column.columnComment */ - private String certEffectiveStart; - - /** $column.columnComment */ - private String certEffectiveEnd; - - /** $column.columnComment */ - private String manufacturerCode; - - /** $column.columnComment */ - private String manufacturerName; - - /** $column.columnComment */ - private String productionAddress; - - /** $column.columnComment */ - private String agentCompany; - - /** $column.columnComment */ - private String agentAddress; - - /** $column.columnComment */ - private String productionCountry; - - /** $column.columnComment */ - private String serviceAgency; - - /** $column.columnComment */ - private String certArchivePath; - - /** $column.columnComment */ - private String productImages; - - /** 有效标志(true:有效 false:无效) */ - private String validFlag; - - /** $column.columnComment */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String versionNumber; - - /** $column.columnComment */ - private String versionName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java deleted file mode 100644 index a3b6147d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 中药材信息Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_medical_herb_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogMedicalHerbInfo { - - /** 医疗目录编码 */ - @TableId(type = IdType.ASSIGN_ID) - private String medicalCatalogCode; - - /** $column.columnComment */ - private String singleDrugName; - - /** 单复方标志(true:复方 false:单方) */ - private String singleCompoundFlag; - - /** $column.columnComment */ - private String qualityGrade; - - /** 中草药年份 */ - private String herbalYear; - - /** $column.columnComment */ - private String medicinalPart; - - /** $column.columnComment */ - private String safeDosage; - - /** $column.columnComment */ - private String conventionalUsage; - - /** $column.columnComment */ - private String propertiesTaste; - - /** $column.columnComment */ - private String meridianAttribution; - - /** $column.columnComment */ - private String species; - - /** $column.columnComment */ - private String startDate; - - /** $column.columnComment */ - private String endDate; - - /** 有效标志(true:有效 false:无效) */ - private String validFlag; - - /** $column.columnComment */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String versionNumber; - - /** $column.columnComment */ - private String versionName; - - /** $column.columnComment */ - private String herbName; - - /** $column.columnComment */ - private String indications; - - /** $column.columnComment */ - private String processingMethod; - - /** $column.columnComment */ - private String efficacyClassification; - - /** $column.columnComment */ - private String herbSource; - - /** $column.columnComment */ - private String nationalInsurancePolicy; - - /** $column.columnComment */ - private String provincialInsurancePolicy; - - /** $column.columnComment */ - private String standardName; - - /** $column.columnComment */ - private String standardPage; - - /** $column.columnComment */ - private String electronicRecord; - - /** $column.columnComment */ - private String issuanceFlag; - - /** $column.columnComment */ - private String transferDataId; - - /** $column.columnComment */ - private String effectiveTime; - - /** $column.columnComment */ - private String expiryTime; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java deleted file mode 100644 index e09a5cd3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 医疗服务项目Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_medical_service") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogMedicalService { - - /** 医疗目录编码 */ - @TableId(type = IdType.ASSIGN_ID) - private String medicalCatalogCode; - - /** 计价单位 */ - private String billingUnit; - - /** $column.columnComment */ - private String billingUnitName; - - /** $column.columnComment */ - private String medicalItemDesc; - - /** $column.columnComment */ - private String exclusionContent; - - /** $column.columnComment */ - private String medicalItemConnotation; - - /** 有效标志(true:有效 false:无效) */ - private String validFlag; - - /** $column.columnComment */ - private String remarks; - - /** $column.columnComment */ - private String serviceCategory; - - /** $column.columnComment */ - private String medicalServiceName; - - /** $column.columnComment */ - private String projectDescription; - - /** $column.columnComment */ - private String startDate; - - /** $column.columnComment */ - private String endDate; - - /** 唯一记录号(UUID) */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String versionNumber; - - /** $column.columnComment */ - private String versionName; - - /** $column.columnComment */ - private String issuanceFlag; - - /** $column.columnComment */ - private String transferDataId; - - /** $column.columnComment */ - private String effectiveTime; - - /** $column.columnComment */ - private String expiryTime; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java deleted file mode 100644 index 2a75cda8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 特慢病目录Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_special_disease") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogSpecialDisease { - /** 门慢门特病种目录代码 */ - @TableId(type = IdType.ASSIGN_ID) - private String diseaseCatalogCode; - - /** 门慢门特病种大类名称 */ - private String diseaseCategoryName; - - /** 门慢门特病种细分类名称 */ - private String diseaseSubcategoryName; - - /** 医保区划 */ - private String medicalInsuranceArea; - - /** 备注 */ - private String remarks; - - /** 有效标志 */ - private String validFlag; - - /** 唯一记录号 */ - private String uniqueRecordId; - - /** 数据创建时间 */ - private String createTime; - - /** 数据更新时间 */ - private String updateTime; - - /** 版本号 */ - private String versionNumber; - - /** 病种内涵 */ - private String diseaseConnotation; - - /** 版本名称 */ - private String versionName; - - /** 诊疗指南页码 */ - private String treatmentGuidePage; - - /** 诊疗指南电子档案 */ - private String treatmentGuideFile; - - /** 门慢门特病种名称 */ - private String diseaseName; - - /** 门慢门特病种大类代码 */ - private String diseaseCategoryCode; -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java deleted file mode 100644 index 08881c0d..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -@Data -@TableName("yb_catalog_special_insurance_disease") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogSpecialInsuranceDisease { - - private String diseaseCode; // 门慢门特病种目录代码 - private String diseaseCategoryName; // 门慢门特病种大类名称 - private String diseaseSubcategoryName; // 门慢门特病种细分类名称 - private String medicalInsuranceZone; // 医保区划 - private String remark; // 备注 - private String validFlag; // 有效标志 - private String uniqueRecordId; // 唯一记录号 - private String dataCreateTime; // 数据创建时间 - private String dataUpdateTime; // 数据更新时间 - private String versionNumber; // 版本号 - private String diseaseDescription; // 病种内涵 - private String versionName; // 版本名称 - private String guidePageNumber; // 诊疗指南页码 - private String guideElectronicFile; // 诊疗指南电子档案 - private String diseaseName; // 门慢门特病种名称 - private String diseaseCategoryCode; // 门慢门特病种大类代码 -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java deleted file mode 100644 index 951b21a8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 手术标准目录Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_surgery_standard_directory") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogSurgeryStandardDirectory { - - /** $column.columnComment */ - @TableId(type = IdType.ASSIGN_ID) - private String id; - - /** $column.columnComment */ - private String chapter; - - /** $column.columnComment */ - private String chapterCodeRange; - - /** $column.columnComment */ - private String chapterName; - - /** $column.columnComment */ - private String categoryCode; - - /** $column.columnComment */ - private String categoryName; - - /** $column.columnComment */ - private String subcategoryCode; - - /** $column.columnComment */ - private String subcategoryName; - - /** $column.columnComment */ - private String itemCode; - - /** $column.columnComment */ - private String itemName; - - /** $column.columnComment */ - private String operationCode; - - /** $column.columnComment */ - private String operationName; - - /** $column.columnComment */ - private String usageFlag; - - /** $column.columnComment */ - private String groupStandardOperationCode; - - /** $column.columnComment */ - private String groupStandardOperationName; - - /** $column.columnComment */ - private String clinicalVersionOperationCode; - - /** $column.columnComment */ - private String clinicalVersionOperationName; - - /** $column.columnComment */ - private String remarks; - - /** $column.columnComment */ - private String validFlag; - - /** $column.columnComment */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String versionNumber; - - /** $column.columnComment */ - private String versionName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java deleted file mode 100644 index 98d89df3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 西医疾病诊断信息Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_western_disease") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogWesternDisease { - - /** $column.columnComment */ - @TableId(type = IdType.ASSIGN_ID) - private String diseaseId; - - /** $column.columnComment */ - private String chapter; - - /** $column.columnComment */ - private String chapterCodeRange; - - /** $column.columnComment */ - private String chapterName; - - /** $column.columnComment */ - private String sectionCodeRange; - - /** $column.columnComment */ - private String sectionName; - - /** $column.columnComment */ - private String categoryCode; - - /** $column.columnComment */ - private String categoryName; - - /** $column.columnComment */ - private String subcategoryCode; - - /** $column.columnComment */ - private String subcategoryName; - - /** 诊断代码 */ - private String diagnosisCode; - - /** $column.columnComment */ - private String diagnosisName; - - /** 使用标记(true:启用 false:停用) */ - private String usageFlag; - - /** $column.columnComment */ - private String gbDiagnosisCode; - - /** $column.columnComment */ - private String gbDiagnosisName; - - /** $column.columnComment */ - private String clinicalCode; - - /** $column.columnComment */ - private String clinicalName; - - /** $column.columnComment */ - private String remarks; - - /** 有效标志(true:有效 false:无效) */ - private String validFlag; - - /** $column.columnComment */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String versionNumber; - - /** $column.columnComment */ - private String versionName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java deleted file mode 100644 index 33087520..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 中医疾病诊断Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_zy_disease_diagnosis") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogZyDiseaseDiagnosis { - - /** $column.columnComment */ - @TableId(type = IdType.ASSIGN_ID) - private String id; - - /** $column.columnComment */ - private String categoryCode; - - /** $column.columnComment */ - private String categoryName; - - /** $column.columnComment */ - private String specialtySystemCategoryCode; - - /** $column.columnComment */ - private String specialtySystemCategoryName; - - /** $column.columnComment */ - private String diseaseCategoryCode; - - /** $column.columnComment */ - private String diseaseCategoryName; - - /** $column.columnComment */ - private String remarks; - - /** $column.columnComment */ - private String validFlag; - - /** $column.columnComment */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String versionNumber; - - /** $column.columnComment */ - private String versionName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java deleted file mode 100644 index 97fa7a00..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.openhis.ybcatalog.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【中医症候】Entity实体 - * - * @author system - * @date 2025-04-09 - */ -@Data -@TableName("yb_catalog_zy_syndrome") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class CatalogZySyndrome { - - /** $column.columnComment */ - @TableId(type = IdType.ASSIGN_ID) - private String tcmSyndromeId; - - /** $column.columnComment */ - private String syndromeClassCode; - - /** $column.columnComment */ - private String syndromeClassName; - - /** $column.columnComment */ - private String syndromePropertyCode; - - /** $column.columnComment */ - private String syndromeProperty; - - /** $column.columnComment */ - private String syndromeTypeCode; - - /** $column.columnComment */ - private String syndromeTypeName; - - /** $column.columnComment */ - private String activeFlag; - - /** $column.columnComment */ - private String uniqueRecordId; - - /** $column.columnComment */ - private String craetTime; - - /** $column.columnComment */ - private String version; - - /** $column.columnComment */ - private String versionName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java deleted file mode 100644 index 27c7b4ad..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import com.openhis.ybcatalog.domain.CatalogDrugInfo; -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** - * 西药中成药目录Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogDrugInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java deleted file mode 100644 index da48c179..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; - -/** - * 西药中成药目录Mapper接口 - * - * @author system - * @date 2025-07-02 - */ -@Repository -public interface CatalogDrugInfoUsualMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java deleted file mode 100644 index ea63f13b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogMedicalConsumables; - -/** - * 医疗耗材信息Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogMedicalConsumablesMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java deleted file mode 100644 index 42f7ff9e..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; - -/** - * 中药材信息Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogMedicalHerbInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java deleted file mode 100644 index aa72230a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogMedicalService; - -/** - * 医疗服务项目Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogMedicalServiceMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java deleted file mode 100644 index fce2ee22..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogSpecialDisease; - -/** - * 特慢病目录 Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogSpecialDiseaseMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java deleted file mode 100644 index bb7f413c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogSurgeryStandardDirectory; - -/** - * 手术标准目录Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogSurgeryStandardDirectoryMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java deleted file mode 100644 index 9d0a2251..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogWesternDisease; - -/** - * 西医疾病诊断信息Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogWesternDiseaseMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java deleted file mode 100644 index f501c91b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogZyDiseaseDiagnosis; - -/** - * 中医疾病诊断Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogZyDiseaseDiagnosisMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java deleted file mode 100644 index 58c72619..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybcatalog.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybcatalog.domain.CatalogZySyndrome; - -/** - * 【请填写功能名称】Mapper接口 - * - * @author system - * @date 2025-04-09 - */ -@Repository -public interface CatalogZySyndromeMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java deleted file mode 100644 index 5c986199..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.workflow.domain.ElepMedicationRequest; -import com.openhis.ybcatalog.domain.CatalogDrugInfo; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 西药中成药目录Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogDrugInfoService extends IService { -// /** -// * 获取药品信息 -// * -// * @param pageNo 当前页 -// * @param pageSize 每页多少条 -// */ -// Page selectCatalogDrugInfo(Integer pageNo, -// Integer pageSize, String searchKey); - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java deleted file mode 100644 index 88b1ae67..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; - -/** - * 西药中成药目录Service接口 - * - * @author system - * @date 2025-07-02 - */ -public interface ICatalogDrugInfoUsualService extends IService { - /** - * 获取药品信息 - * - * @param pageNo 当前页 - * @param pageSize 每页多少条 - */ - Page selectCatalogDrugInfoUsual(Integer pageNo, - Integer pageSize, String searchKey); -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java deleted file mode 100644 index 77b9a399..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogMedicalConsumables; - -/** - * 医疗耗材信息Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogMedicalConsumablesService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java deleted file mode 100644 index ee5f75cc..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; - -/** - * 中药材信息Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogMedicalHerbInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java deleted file mode 100644 index d71c2dff..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogMedicalService; - -/** - * 医疗服务项目Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogMedicalServiceService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java deleted file mode 100644 index 437d05fd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogSpecialDisease; - -/** - * 特慢病目录 Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogSpecialDiseaseService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java deleted file mode 100644 index 895c4492..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogSurgeryStandardDirectory; - -/** - * 手术标准目录Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogSurgeryStandardDirectoryService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java deleted file mode 100644 index 9665f44a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogWesternDisease; - -/** - * 西医疾病诊断信息Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogWesternDiseaseService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java deleted file mode 100644 index 6708fb82..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogZyDiseaseDiagnosis; - -/** - * 中医疾病诊断Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogZyDiseaseDiagnosisService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java deleted file mode 100644 index 19a6a2df..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybcatalog.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybcatalog.domain.CatalogZySyndrome; - -/** - * 【请填写功能名称】Service接口 - * - * @author system - * @date 2025-04-09 - */ -public interface ICatalogZySyndromeService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java deleted file mode 100644 index 343dd4ce..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.openhis.ybcatalog.domain.CatalogDrugInfo; -import com.openhis.ybcatalog.mapper.CatalogDrugInfoMapper; -import com.openhis.ybcatalog.service.ICatalogDrugInfoService; -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -/** - * 西药中成药目录Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogDrugInfoServiceImpl extends ServiceImpl implements ICatalogDrugInfoService { -// /** -// * 获取药品信息 -// */ -// -// @Override -// public Page selectCatalogDrugInfo(Integer pageNo, -// Integer pageSize, String searchKey) { -// Page page = new Page<>(pageNo, pageSize); -// return (baseMapper.selectPage(page, new LambdaQueryWrapper().like(CatalogDrugInfo::getRegisteredName, searchKey).or().like(CatalogDrugInfo::getPinyinCode, searchKey).or().like(CatalogDrugInfo::getWubiCode, searchKey))); -// } -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java deleted file mode 100644 index 0c19a2f6..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; -import com.openhis.ybcatalog.mapper.CatalogDrugInfoUsualMapper; -import com.openhis.ybcatalog.service.ICatalogDrugInfoUsualService; - -/** - * 西药中成药目录Service业务层处理 - * - * @author system - * @date 2025-07-02 - */ -@Service -public class CatalogDrugInfoUsualServiceImpl extends ServiceImpl - implements ICatalogDrugInfoUsualService { - /** - * 获取药品信息 - */ - - @Override - public Page selectCatalogDrugInfoUsual(Integer pageNo, Integer pageSize, String searchKey) { - Page page = new Page<>(pageNo, pageSize); - return (baseMapper.selectPage(page, - new LambdaQueryWrapper().like(CatalogDrugInfoUsual::getRegisteredName, searchKey).or() - .like(CatalogDrugInfoUsual::getPinyinCode, searchKey).or() - .like(CatalogDrugInfoUsual::getWubiCode, searchKey).or() - .like(CatalogDrugInfoUsual::getApprovalNo, searchKey).or() - .like(CatalogDrugInfoUsual::getManufacturerName, searchKey))); - } -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java deleted file mode 100644 index ccaaad58..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogMedicalConsumables; -import com.openhis.ybcatalog.mapper.CatalogMedicalConsumablesMapper; -import com.openhis.ybcatalog.service.ICatalogMedicalConsumablesService; - -/** - * 医疗耗材信息Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogMedicalConsumablesServiceImpl extends ServiceImpl implements ICatalogMedicalConsumablesService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java deleted file mode 100644 index d480d0ba..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; -import com.openhis.ybcatalog.mapper.CatalogMedicalHerbInfoMapper; -import com.openhis.ybcatalog.service.ICatalogMedicalHerbInfoService; - -/** - * 中药材信息Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogMedicalHerbInfoServiceImpl extends ServiceImpl implements ICatalogMedicalHerbInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java deleted file mode 100644 index d00089c9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogMedicalService; -import com.openhis.ybcatalog.mapper.CatalogMedicalServiceMapper; -import com.openhis.ybcatalog.service.ICatalogMedicalServiceService; - -/** - * 医疗服务项目Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogMedicalServiceServiceImpl extends ServiceImpl implements ICatalogMedicalServiceService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java deleted file mode 100644 index 24fa1c6a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogSpecialDisease; -import com.openhis.ybcatalog.mapper.CatalogSpecialDiseaseMapper; -import com.openhis.ybcatalog.service.ICatalogSpecialDiseaseService; - -/** - * 特慢病目录 Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogSpecialDiseaseServiceImpl extends ServiceImpl - implements ICatalogSpecialDiseaseService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java deleted file mode 100644 index 46bf5e8f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogSurgeryStandardDirectory; -import com.openhis.ybcatalog.mapper.CatalogSurgeryStandardDirectoryMapper; -import com.openhis.ybcatalog.service.ICatalogSurgeryStandardDirectoryService; - -/** - * 手术标准目录Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogSurgeryStandardDirectoryServiceImpl extends ServiceImpl implements ICatalogSurgeryStandardDirectoryService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java deleted file mode 100644 index 47f3448f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogWesternDisease; -import com.openhis.ybcatalog.mapper.CatalogWesternDiseaseMapper; -import com.openhis.ybcatalog.service.ICatalogWesternDiseaseService; - -/** - * 西医疾病诊断信息Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogWesternDiseaseServiceImpl extends ServiceImpl implements ICatalogWesternDiseaseService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java deleted file mode 100644 index e62f8b59..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogZyDiseaseDiagnosis; -import com.openhis.ybcatalog.mapper.CatalogZyDiseaseDiagnosisMapper; -import com.openhis.ybcatalog.service.ICatalogZyDiseaseDiagnosisService; - -/** - * 中医疾病诊断Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogZyDiseaseDiagnosisServiceImpl extends ServiceImpl implements ICatalogZyDiseaseDiagnosisService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java deleted file mode 100644 index ab75747f..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybcatalog.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybcatalog.domain.CatalogZySyndrome; -import com.openhis.ybcatalog.mapper.CatalogZySyndromeMapper; -import com.openhis.ybcatalog.service.ICatalogZySyndromeService; - -/** - * 【请填写功能名称】Service业务层处理 - * - * @author system - * @date 2025-04-09 - */ -@Service -public class CatalogZySyndromeServiceImpl extends ServiceImpl implements ICatalogZySyndromeService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java deleted file mode 100644 index adc73783..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_medresult_detail") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepMedresultDetail extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医疗目录编码 */ - private String medListCodg; - - /** 药品通用名 */ - private String drugGenname; - - /** 药品商品名 */ - private String drugProdname; - - /** 药品剂型 */ - private String drugDosform; - - /** 药品规格 */ - private BigDecimal drugSpec; - - /** 数量 */ - private BigDecimal cnt; - - /** 批准文号 */ - private String aprvno; - - /** 批次号 */ - private String bchno; - - /** 生产批号 */ - private String manuLotnum; - - /** 生产厂家 */ - private String prdrName; - - /** 取药标志位 */ - private String takeDrugFlag; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java deleted file mode 100644 index 565ec192..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方取药结果查询-输出】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_medresult_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepMedresultInfo extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医保处方编号 */ - private String hiRxno; - - /** 医保结算时间(yyyy-MM-dd HH:mm:ss) */ - private String setlTime; - - /** 医保处方状态编码(参考rx_stas_codg) */ - private String rxStasCodg; - - /** 医保处方状态名称 */ - private String rxStasName; - - /** 处方使用状态编号(参考rx_used_stas_codg) */ - private String rxUsedStasCodg; - - /** 处方使用状态名称 */ - private String rxUsedStasName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java deleted file mode 100644 index 00b7ac22..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方取药结果查询-输入】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_medresult_input") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepMedresultInput extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 医保处方编号 */ - private String hiRxno; - - /** 医保就诊ID(医保门诊挂号时返回) */ - private String mdtrtId; - - /** 人员名称 */ - private String psnName; - - /** 人员证件类型 */ - private String psnCertType; - - /** 证件号码 */ - private String certno; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java deleted file mode 100644 index 7d07dcab..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_quer_diagnosis_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepQuerDiagnosisInfo extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 诊断类别 */ - private String diagType; - - /** 主诊断标志 */ - private String maindiagFlag; - - /** 诊断排序号 */ - private String diagSrtNo; - - /** 诊断代码 */ - private String diagCode; - - /** 诊断名称 */ - private String diagName; - - /** 诊断科室 */ - private String diagDept; - - /** 诊断科室代码 */ - private String diagDeptCode; - - /** 诊断医生编码 */ - private String diagDrNo; - - /** 诊断医生姓名 */ - private String diagDrName; - - /** 诊断时间(yyyy-MM-dd HH:mm:ss) */ - private String diagTime; - - /** 中医病名代码 */ - private String tcmDiseCode; - - /** 中医病名名称 */ - private String tcmDiseName; - - /** 中医症候代码 */ - private String tcmsympCode; - - /** 中医症候 */ - private String tcmsymp; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java deleted file mode 100644 index 7d8b1050..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList) 】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_quer_prescription_detail") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepQuerPrescriptionDetail extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医疗目录编码(医保目录编码) */ - private String medListCodg; - - /** 定点医药机构目录编号(院内药品编码) */ - private String fixmedinsHilistId; - - /** 院内制剂标志(Y/N) */ - private String hospPrepFlag; - - /** 处方项目分类代码 */ - private String rxItemTypeCode; - - /** 处方项目分类名称 */ - private String rxItemTypeName; - - /** 中药类别名称 */ - private String tcmdrugTypeName; - - /** 中药类别代码 */ - private String tcmdrugTypeCode; - - /** 草药脚注 */ - private String tcmherbFoote; - - /** 药物类型代码 */ - private String mednTypeCode; - - /** 药物类型 */ - private String mednTypeName; - - /** 主要用药标志 */ - private String mainMedcFlag; - - /** 加急标志 */ - private String urgtFlag; - - /** 基本药物标志(Y/N) */ - private String basMednFlag; - - /** 基本药物标志(Y/N) */ - private String impDrugFlag; - - /** 药品商品名 */ - private String drugProdname; - - /** 药品通用名 */ - private String drugGenname; - - /** 药品剂型 */ - private String drugDosform; - - /** 药品规格 */ - private String drugSpec; - - /** 生产厂家 */ - private String prdrName; - - /** 用药途径代码 */ - private String medcWayCodg; - - /** 用药途径描述 */ - private String medcWayDscr; - - /** 用药开始时间(yyyy-MM-dd HH:mm:ss) */ - private String medcBegntime; - - /** 用药结束时间(yyyy-MM-dd HH:mm:ss) */ - private String medcEndtime; - - /** 用药天数 */ - private BigDecimal medcDays; - - /** 药品总用药量 */ - private BigDecimal drugCnt; - - /** 药品总用药量单位 */ - private String drugDosunt; - - /** 单次用量 */ - private BigDecimal sinDoscnt; - - /** 单次剂量单位 */ - private String sinDosunt; - - /** 使用频次编码 */ - private String usedFrquCodg; - - /** 使用频次名称 */ - private String usedFrquName; - - /** 医院审批标志(Y/N) */ - private String hospApprFlag; - - /** 取药标志位(Y/N) */ - private String takeDrugFlag; - - /** 是否OTC药品(0-处方药品、1-OTC药品) */ - private String otcFlag; - - /** 自费原因类型 */ - private String selfPayRea; - - /** 自费原因描述 */ - private String realDscr; - - /** 所需药品库存数量 */ - private String drugTotlcnt; - - /** 所需药品库存单位 */ - private String drugTotlcntEmp; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java deleted file mode 100644 index 1905d5e8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方信息查询-输出-处方信息 】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_quer_prescription_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepQuerPrescriptionInfo extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医保处方编号 */ - private String hiRxno; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 定点医疗机构名称 */ - private String fixmedinsName; - - /** 医保处方状态编码 */ - private String rxStasCodg; - - /** 医保处方状态名称 */ - private String rxStasName; - - /** 医保处方使用状态编码 */ - private String rxUsedStasCodg; - - /** 医保处方使用状态名称 */ - private String rxUsedStasName; - - /** 开方时间 */ - private String prscTime; - - /** 药品总用量(剂数) */ - private BigDecimal rxDrugCnt; - - /** 处方整剂用法编码 */ - private String rxUsedWayCodg; - - /** 处方整剂用法名称 */ - private String rxUsedWayName; - - /** 处方整剂频次编号 */ - private String rxFrquCodg; - - /** 处方整剂频次名称 */ - private String rxFrquName; - - /** 处方整剂剂量单位 */ - private String rxDosunt; - - /** 处方整剂单次剂量数 */ - private BigDecimal rxDoscnt; - - /** 处方整剂医嘱说明 */ - private String rxDrordDscr; - - /** 处方有效天数 */ - private BigDecimal valiDays; - - /** 有效截止时间 */ - private String valiEndTime; - - /** 复用(多次)使用标志,0-否、1-是 */ - private String reptFlag; - - /** 最大复用次数 */ - private BigDecimal maxReptCnt; - - /** 已复用次数 */ - private BigDecimal reptdCnt; - - /** 使用最小间隔(天数) */ - private BigDecimal minInrvDays; - - /** 处方类别编码 */ - private String rxTypeCode; - - /** 处方类别名称 */ - private String rxTypeName; - - /** 长期处方标志,0-否、1-是 */ - private String longRxFlag; - - /** 业务类型代码 */ - private String bizTypeCode; - - /** 业务类型名称 */ - private String bizTypeName; - - /** 处方附加属性代码 */ - private String rxExraAttrCode; - - /** 处方附加属性名称 */ - private String rxExraAttrName; - - /** 处方循环限制标志 */ - private String rxCircLimitFlag; -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java deleted file mode 100644 index ff9def00..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方信息查询-输入】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_quer_prescription_input") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepQuerPrescriptionInput extends HisBaseEntity { - - /** 定点医疗机构编号 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 医保处方编号 */ - private String hiRxno; - - /** 医保就诊 ID */ - private String mdtrtId; - - /** 人员名称 */ - private String psnName; - - /** 人员证件类型 */ - private String psnCertType; - - /** 证件号码 */ - private String certno; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java deleted file mode 100644 index a507455c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_quer_visit_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepQuerVisitInfo extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医疗类别(参考医疗类别med_type) */ - private String medType; - - /** 门诊/住院号 */ - private String iptOtpNo; - - /** 门诊住院标志(1-门诊,2-住院) */ - private String otpIptFlag; - - /** 患者姓名 */ - private String patnName; - - /** 年龄 */ - private BigDecimal patnAge; - - /** 患者身高(cm) */ - private BigDecimal patnHgt; - - /** 患者体重(kg) */ - private BigDecimal patnWt; - - /** 性别 */ - private String gend; - - /** 妊娠(孕周) */ - private Integer gesoVal; - - /** 新生儿标志(0-否、1-是) */ - private String nwbFlag; - - /** 新生儿日、月龄 */ - private String nwbAge; - - /** 哺乳期标志(0-否、1-是) */ - private Integer suckPrdFlag; - - /** 过敏史 */ - private String algsHis; - - /** 险种类型 */ - private String insutype; - - /** 开方科室名称 */ - private String prscDeptName; - - /** 开方医师姓名 */ - private String prscDrName; - - /** 药师姓名 */ - private String pharName; - - /** 医疗机构药师审方时间(yyyy-MM-dd HH:mm:ss) */ - private String pharChkTime; - - /** 就诊时间(yyyy-MM-dd HH:mm:ss) */ - private String mdtrtTime; - - /** 病种编码(按病种结算病种目录代码/门诊慢特病种目录代码) */ - private String diseCodg; - - /** 病种名称 */ - private String diseName; - - /** 是否特殊病种 */ - private String spDiseFlag; - - /** 主诊断代码 */ - private String maindiagCode; - - /** 主诊断名称 */ - private String maindiagName; - - /** 疾病病情描述 */ - private String diseCondDscr; - - /** 是否初诊(0-否、1-是) */ - private String fstdiagFlag; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java deleted file mode 100644 index a851c9d1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【电子处方撤销-输入】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_revoke_input") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepRevokeInput extends HisBaseEntity { - - /** 医保处方编号 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医保处方编号 */ - private String hiRxno; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 撤销医师的医保医师代码 */ - private String drCode; - - /** 撤销医师姓名 */ - private String undoDrName; - - /** 撤销医师证件类型 */ - private String undoDrCertType; - - /** 撤销医师证件号码 */ - private String undoDrCertno; - - /** 撤销原因描述 */ - private String undoRea; - - /** 撤销时间,格式:yyyy-MM-dd HH:mm:ss */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date undoTime; -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java deleted file mode 100644 index 6c56f408..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方撤销-输出】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_revoke_output") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepRevokeOutput extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医保处方编号 */ - - private String hiRxno; - - /** 医保处方状态编码 */ - private String rxStasCodg; - - /** 医保处方状态名称 */ - private String rxStasName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java deleted file mode 100644 index f33c54fd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方医保电子签名 -输入】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_signature_input") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepSignatureInput extends HisBaseEntity { - - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 定点机构代码,定点机构唯一标识,用于识别机构对应的医保数字证书 */ - private String fixmedinsCode; - - /** 原始待签名处方信息,JSONString序列化后的base64字符值 */ - private String originalValue; - - /** 原始待签名处方文件,文件base64的字符值 */ - private String originalRxFile; - - /** 扩展字段,JSON序列化成字符串后长度不能超过4000 */ - private String extras; - - /** 医保处方编号 */ - @JSONField(serialize=false) - private String hiRxno; - - /** 院内内部处方号 */ - private String prescriptionNo; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java deleted file mode 100644 index a5aa89be..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方医保电子签名 -输出】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_signature_output") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepSignatureOutput extends HisBaseEntity { - - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 处方文件,医保电子签名后处方文件originalRxFile的base64值 */ - private String rxFile; - - /** 签名摘要值,医保电子签名后处方信息originalValue的签名结果值 */ - private String signDigest; - - /** 签名机构证书SN */ - private String signCertSn; - - /** 签名机构证书DN */ - private String signCertDn; - - /** 医保处方编号 */ - @JSONField(serialize=false) - private String hiRxno; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java deleted file mode 100644 index 7d3289ff..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【电子处方上传-输入】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_upload_input") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepUploadInput extends HisBaseEntity { - - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 处方追溯码 */ - private String rxTraceCode; - - /** 医保处方编号 */ - private String hiRxno; - - /** 医院就诊 ID */ - private String mdtrtId; - - /** 患者姓名 */ - private String patnName; - - /** 人员证件类型 */ - private String psnCertType; - - /** 证件号码 */ - private String certno; - - /** 定点医疗机构名称 */ - private String fixmedinsName; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 开方医保医师代码 */ - private String drCode; - - /** 开方医师姓名 */ - private String prscDrName; - - /** 审方药师科室名称 */ - private String pharDeptName; - - /** 审方药师科室编号 */ - private String pharDeptCode; - - /** 审方药师职称编码 */ - private String pharProfttlCodg; - - /** 审方药师职称名称 */ - private String pharProfttlName; - - /** 审方医保药师代码 */ - private String pharCode; - - /** 审方药师证件类型 */ - private String pharCertType; - - /** 审方药师证件号码 */ - private String pharCertno; - - /** 审方药师姓名 */ - private String pharName; - - /** 审方药师执业资格证号 */ - private String pharPracCertNo; - - /** 医疗机构药师审方时间,格式:yyyy-MM-dd HH:mm:ss */ - private String pharChkTime; - - /** 处方原件,医保电子签名后的处方文件base64字符(PDF或OFD格式) */ - private String rxFile; - - /** 处方信息签名值 */ - private String signDigest; - - /** 扩展字段,JSON格式,长度不超过4000 */ - private String extras; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java deleted file mode 100644 index 8bdb8224..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方上传-输出】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_upload_output") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepUploadOutput extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 医保处方编号 */ - private String hiRxno; - - /** 医保处方状态编码 */ - private String rxStasCodg; - - /** 医保处方状态名称 */ - private String rxStasName; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java deleted file mode 100644 index 71e878fa..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_veri_diagnosis_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepVeriDiagnosisInfo extends HisBaseEntity { - - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 诊断类别,参考诊断类别(diag_type) */ - private String diagType; - - /** 主诊断标志,0-否、1-是 */ - private String maindiagFlag; - - /** 诊断排序号 */ - private String diagSrtNo; - - /** 诊断代码,医保疾病诊断代码 */ - private String diagCode; - - /** 诊断名称 */ - private String diagName; - - /** 诊断科室名称 */ - private String diagDept; - - /** 诊断科室代码,与科室信息上传中的hosp_dept_codg医院科室编码保持一致 */ - private String diagDeptCode; - - /** 诊断医生编码,国家医保医师代码 */ - private String diagDrNo; - - /** 诊断医生姓名 */ - private String diagDrName; - - /** 诊断时间,格式:yyyy-MM-dd HH:mm:ss */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date diagTime; - - /** 中医病名代码,diag_type为中医诊断(值为2,3)时上传 */ - private String tcmDiseCode; - - /** 中医病名,diag_type为中医诊断(值为2,3)时上传 */ - private String tcmDiseName; - - /** 中医证候代码,diag_type为中医诊断(值为2,3)时上传 */ - private String tcmsympCode; - - /** 中医证候,diag_type为中医诊断(值为2,3)时上传 */ - private String tcmsymp; - - /** 院内内部处方号 */ - @JSONField(serialize=false) - private String prescriptionNo; - - /** 医保处方编号(电子处方信息查询返回时插入记录) */ - @JSONField(serialize=false) - private String hiRxno; -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java deleted file mode 100644 index 377c4997..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java +++ /dev/null @@ -1,157 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_veri_prescription_detail") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepVeriPrescriptionDetail extends HisBaseEntity { - - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - /** 医疗目录编码(医保药品编码) */ - private String medListCodg; - - /** 定点医药机构目录编号(院内药品编码) */ - private String fixmedinsHilistId; - - /** 医疗机构制剂标志(0-否、1-是) */ - private String hospPrepFlag; - - /** 处方项目分类代码(11:西药,12:中成药,13:中药饮片) */ - private String rxItemTypeCode; - - /** 处方项目分类名称 */ - private String rxItemTypeName; - - /** 中药类别代码(中药饮片固定传3) */ - private String tcmdrugTypeCode; - - /** 中药类别名称 */ - private String tcmdrugTypeName; - - /** 草药脚注 */ - private String tcmherbFoote; - - /** 药物类型代码(参考medn_type_code) */ - private String mednTypeCode; - - /** 药物类型名称 */ - private String mednTypeName; - - /** 主要用药标志(0-否、1-是) */ - private String mainMedcFlag; - - /** 加急标志(0-否、1-是) */ - private String urgtFlag; - - /** 基本药物标志(0-否、1-是) */ - private String basMednFlag; - - /** 是否进口药品(0-否、1-是) */ - private String impDrugFlag; - - /** 是否OTC药品(0-处方药品、1-OTC药品) */ - private String otcFlag; - - /** 药品通用名 */ - private String drugGenname; - - /** 药品剂型 */ - private String drugDosform; - - /** 药品规格 */ - private String drugSpec; - - /** 药品商品名(非必填) */ - private String drugProdname; - - /** 生产厂家(非必填) */ - private String prdrName; - - /** 用药途径代码(西药/中成药必填) */ - private String medcWayCodg; - - /** 用药途径描述(西药/中成药必填) */ - private String medcWayDscr; - - /** 用药开始时间(yyyy-MM-dd HH:mm:ss) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date medcBegntime; - - /** 用药结束时间(yyyy-MM-dd HH:mm:ss) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date medcEndtime; - - /** 用药天数 */ - private String medcDays; - - /** 单次剂量单位(西药/中成药必填) */ - private String sinDosunt; - - /** 单次用量(西药/中成药必填) */ - private String sinDoscnt; - - /** 使用频次编码(西药/中成药必填) */ - private String usedFrquCodg; - - /** 使用频次名称(西药/中成药必填) */ - private String usedFrquName; - - /** 药品总用药量单位(发药计价单位) */ - private String drugDosunt; - - /** 药品总用药量(医保结算数量) */ - private String drugCnt; - - /** 药品单价(按drug_dosunt计价) */ - private String drugPric; - - /** 药品总金额(drug_cnt×drug_pric) */ - private String drugSumamt; - - /** 医院审批标志(1-纳入报销,2-自费) */ - private String hospApprFlag; - - /** 自费原因类型(hosp_appr_flag=2时必填) */ - private String selfPayRea; - - /** 自费原因描述(自费原因类型为6时必填) */ - private String realDscr; - - /** 扩展数据(地方业务扩展信息) */ - private String extras; - - /** 院内内部处方号 */ - @JSONField(serialize=false) - private String prescriptionNo; - - /** 医保处方编号(电子处方信息查询返回时插入记录) */ - @JSONField(serialize=false) - private String hiRxno; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java deleted file mode 100644 index d27f326b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java +++ /dev/null @@ -1,126 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【电子处方上传预核验-输入-处方信息】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_veri_prescription_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepVeriPrescriptionInfo extends HisBaseEntity { - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 就诊凭证类型(01-电子凭证令牌、02-身份证号、03-社会保障卡号) */ - private String mdtrtCertType; - - /** 就诊凭证编号 */ - private String mdtrtCertNo; - - /** 卡识别码(就诊凭证类型为"03"时必填) */ - private String cardSn; - - /** 业务类型代码(01-定点医疗机构就诊,02-互联网医院问诊) */ - private String bizTypeCode; - - /** 处方附加属性代码(01-双通道处方,02-门诊统筹处方,99-其他) */ - private String rxExraAttrCode; - - /** 电子凭证令牌(使用医保电子凭证就诊时必填) */ - private String ecToken; - - /** 电子凭证线上身份核验流水号(线上场景互联网医院问诊时使用) */ - private String authNo; - - /** 参保地编号 */ - private String insuPlcNo; - - /** 就医地编号 */ - private String mdtrtareaNo; - - /** 定点医疗机构处方编号(院内内部处方号) */ - private String hospRxno; - - /** 续方的原处方编号 */ - private String initRxno; - - /** 处方类别代码(参考rx_type_code) */ - private String rxTypeCode; - - /** 开方时间(yyyy-MM-dd HH:mm:ss) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date prscTime; - - /** 药品类目数(剂数) */ - private String rxDrugCnt; - - /** 处方整剂用法编号 */ - private String rxUsedWayCodg; - - /** 处方整剂用法名称 */ - private String rxUsedWayName; - - /** 处方整剂频次编号(参考used_frequ) */ - private String rxFrquCodg; - - /** 处方整剂频次名称 */ - private String rxFrquName; - - /** 处方整剂剂量单位 */ - private String rxDosunt; - - /** 处方整剂单次剂量数 */ - private String rxDoscnt; - - /** 处方整剂医嘱说明 */ - private String rxDrordDscr; - - /** 处方有效天数 */ - private String valiDays; - - /** 有效截止时间(开方时间+处方有效天数) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date valiEndTime; - - /** 复用(多次)使用标志(0-否、1-是) */ - private String reptFlag; - - /** 最大使用次数(预留字段) */ - private String maxReptCnt; - - /** 使用最小间隔(天数)(预留字段) */ - private String minInvDays; - - /** 续方标志(0-否、1-是) */ - private String rxCotnFlag; - - /** 长期处方标志(0-否、1-是) */ - private String longRxFlag; - - /** 医保处方编号(电子处方信息查询返回时插入记录) */ - @JSONField(serialize=false) - private String hiRxno; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java deleted file mode 100644 index 2ab37b3a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.openhis.ybelep.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.core.common.core.domain.HisBaseEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 【电子处方上传预核验-输出】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_veri_prescription_output") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepVeriPrescriptionOutput extends HisBaseEntity { - - /** 自增主键 */ - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 处方追溯码 */ - private String rxTraceCode; - - /** 医保处方编号 */ - private String hiRxno; - - /** 药品请求的处方号 */ - private String prescriptionNo; -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java deleted file mode 100644 index ae7f14c8..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java +++ /dev/null @@ -1,182 +0,0 @@ -package com.openhis.ybelep.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; - -import com.core.common.core.domain.HisBaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -/** - * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo) 】Entity实体 - * - * @author system - * @date 2025-04-17 - */ -@Data -@TableName("yb_elep_veri_visit_info") -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class ElepVeriVisitInfo extends HisBaseEntity { - /** 自增主键 */ - @JSONField(serialize=false) - @TableId(type = IdType.ASSIGN_ID) - private Long id; - - /** 定点医疗机构名称 */ - private String fixmedinsName; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 医保就诊ID(医保门诊挂号时返回) */ - private String mdtrtId; - - /** 医疗类别(参考med_type) */ - private String medType; - - /** 门诊/住院号 */ - private String iptOtpNo; - - /** 门诊住院标识(1-门诊、2-住院) */ - private String otpIptFlag; - - /** 医保人员编号 */ - private String psnNo; - - /** 患者姓名 */ - private String patnName; - - /** 人员证件类型(参考psn_cert_type) */ - private String psnCertType; - - /** 证件号码 */ - private String certno; - - /** 年龄 */ - private String patnAge; - - /** 患者身高(cm) */ - private String patnHgt; - - /** 患者体重(kg) */ - private String patnWt; - - /** 性别(参考gend) */ - private String gend; - - /** 计划生育手术类别 */ - private String birctrlType; - - /** 计划生育手术或生育日期(yyyy-MM-dd) */ - private String birctrlMatnDate; - - /** 生育类别 */ - private String matnType; - - /** 妊娠(孕周) */ - private String gesoVal; - - /** 新生儿标志(0-否、1-是) */ - private String nwbFlag; - - /** 新生儿日、月龄 */ - private String nwbAge; - - /** 哺乳期标志(0-否、1-是) */ - private String suckPrdFlag; - - /** 过敏史 */ - private String algsHis; - - /** 开方科室名称 */ - private String prscDeptName; - - /** 开方科室编号(与医药机构服务的科室管理保持一致) */ - private String prscDeptCode; - - /** 开方医保医师代码(国家医保医师代码) */ - private String drCode; - - /** 开方医师姓名 */ - private String prscDrName; - - /** 开方医师证件类型(参考psn_cert_type) */ - private String prscDrCertType; - - /** 开方医师证件号码 */ - private String prscDrCertno; - - /** 医生职称编码(参考drord_dr_proftt1) */ - private String drProfttlCodg; - - /** 医生职称名称 */ - private String drProfttlName; - - /** 医生科室编码(与医院科室编码字段保持一致) */ - private String drDeptCode; - - /** 医生科室名称 */ - private String drDeptName; - - /** 科别(参考科室代码dept) */ - private String caty; - - /** 就诊时间(yyyy-MM-dd HH:mm:ss) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date mdtrtTime; - - /** 病种编码 */ - private String diseCodg; - - /** 病种名称 */ - private String diseName; - - /** 特殊病种标志(0-否、1-是) */ - private String spDiseFlag; - - /** 主诊断代码(医保疾病诊断代码) */ - private String maindiagCode; - - /** 主诊断名称 */ - private String maindiagName; - - /** 疾病病情描述 */ - private String diseCondDscr; - - /** 医保费用结算类型(参考hi_feeset1_type) */ - private String hiFeesetlType; - - /** 医保费用类别名称 */ - private String hiFeesetlName; - - /** 挂号费 */ - private String rgstFee; - - /** 医疗费总额 */ - private String medfeeSumamt; - - /** 是否初诊(0-否、1-是) */ - private String fstdiagFlag; - - /** 扩展数据(地方业务扩展信息) */ - private String extras; - - /** 院内内部处方号 */ - @JSONField(serialize=false) - private String prescriptionNo; - - /** 医保处方编号(电子处方信息查询返回时插入记录) */ - @JSONField(serialize=false) - private String hiRxno; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java deleted file mode 100644 index b0bb5b59..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.openhis.ybelep.domain; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.List; - -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class InformationInquiry { - - // 处方信息 - private ElepQuerPrescriptionInfo prescriptionInfo; - - // 处方明细信息 - private List rxDetlList; - - // 就诊信息 - private List rxOtpinfo; - - // 诊断信息 - private List rxDiseList; - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java deleted file mode 100644 index a835ce2c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.openhis.ybelep.domain; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.util.Date; -import java.util.List; - -/** - * 电子处方取药结果查询 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class MedicationResultInquiry { - - /** 医保处方编号 */ - private String hiRxno; - - /** 医保结算时间(yyyy-MM-dd HH:mm:ss) */ - private String setlTime; - - /** 医保处方状态编码(参考rx_stas_codg) */ - private String rxStasCodg; - - /** 医保处方状态名称 */ - private String rxStasName; - - /** 处方使用状态编号(参考rx_used_stas_codg) */ - private String rxUsedStasCodg; - - /** 处方使用状态名称 */ - private String rxUsedStasName; - - // 输出明细信息 - private List seltdelts; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java deleted file mode 100644 index 48f3f508..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java +++ /dev/null @@ -1,129 +0,0 @@ -package com.openhis.ybelep.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - - -/** - * 电子处方上传预核验 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class PreCheckPrescription { - - // 处方信息 - - /** 就诊凭证类型(01-电子凭证令牌、02-身份证号、03-社会保障卡号) */ - private String mdtrtCertType; - - /** 就诊凭证编号 */ - private String mdtrtCertNo; - - /** 卡识别码(就诊凭证类型为"03"时必填) */ - private String cardSn; - - /** 业务类型代码(01-定点医疗机构就诊,02-互联网医院问诊) */ - private String bizTypeCode; - - /** 处方附加属性代码(01-双通道处方,02-门诊统筹处方,99-其他) */ - private String rxExraAttrCode; - - /** 电子凭证令牌(使用医保电子凭证就诊时必填) */ - private String ecToken; - - /** 电子凭证线上身份核验流水号(线上场景互联网医院问诊时使用) */ - private String authNo; - - /** 参保地编号 */ - private String insuPlcNo; - - /** 就医地编号 */ - private String mdtrtareaNo; - - /** 定点医疗机构处方编号(院内内部处方号) */ - private String hospRxno; - - /** 续方的原处方编号 */ - private String initRxno; - - /** 处方类别代码(参考rx_type_code) */ - private String rxTypeCode; - - /** 开方时间(yyyy-MM-dd HH:mm:ss) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date prscTime; - - /** 药品类目数(剂数) */ - private String rxDrugCnt; - - /** 处方整剂用法编号 */ - private String rxUsedWayCodg; - - /** 处方整剂用法名称 */ - private String rxUsedWayName; - - /** 处方整剂频次编号(参考used_frequ) */ - private String rxFrquCodg; - - /** 处方整剂频次名称 */ - /** 处方整剂频次名称 */ - private String rxFrquName; - - /** 处方整剂剂量单位 */ - private String rxDosunt; - - /** 处方整剂单次剂量数 */ - private String rxDoscnt; - - /** 处方整剂医嘱说明 */ - private String rxDrordDscr; - - /** 处方有效天数 */ - private String valiDays; - - /** 有效截止时间(开方时间+处方有效天数) */ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - private Date valiEndTime; - - /** 复用(多次)使用标志(0-否、1-是) */ - private String reptFlag; - - /** 最大使用次数(预留字段) */ - private String maxReptCnt; - - /** 使用最小间隔(天数)(预留字段) */ - private String minInvDays; - - /** 续方标志(0-否、1-是) */ - private String rxCotnFlag; - - /** 长期处方标志(0-否、1-是) */ - private String longRxFlag; - - /** 医保处方编号(电子处方信息查询返回时插入记录) */ - @JSONField(serialize=false) - private String hiRxno; - - // 处方明细信息 - private List rxdrugdetail; - - // 就诊信息 - private ElepVeriVisitInfo mdtrtinfo; - - // 诊断信息 - private ElepVeriDiagnosisInfo diseinfo; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java deleted file mode 100644 index 53589f3c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.openhis.ybelep.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; -import org.springframework.format.annotation.DateTimeFormat; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - - -/** - * 电子处方上传预核验 - */ -@Data -@Accessors(chain = true) -@EqualsAndHashCode(callSuper = false) -public class QueryPrescription { - - /** 医保处方编号 */ - private String hiRxno; - - /** 定点医疗机构编号 */ - private String fixmedinsCode; - - /** 定点医疗机构名称 */ - private String fixmedinsName; - - /** 医保处方状态编码 */ - private String rxStasCodg; - - /** 医保处方状态名称 */ - private String rxStasName; - - /** 医保处方使用状态编码 */ - private String rxUsedStasCodg; - - /** 医保处方使用状态名称 */ - private String rxUsedStasName; - - /** 开方时间 */ - private String prscTime; - - /** 药品总用量(剂数) */ - private BigDecimal rxDrugCnt; - - /** 处方整剂用法编码 */ - private String rxUsedWayCodg; - - /** 处方整剂用法名称 */ - private String rxUsedWayName; - - /** 处方整剂频次编号 */ - private String rxFrquCodg; - - /** 处方整剂频次名称 */ - private String rxFrquName; - - /** 处方整剂剂量单位 */ - private String rxDosunt; - - /** 处方整剂单次剂量数 */ - private BigDecimal rxDoscnt; - - /** 处方整剂医嘱说明 */ - private String rxDrordDscr; - - /** 处方有效天数 */ - private BigDecimal valiDays; - - /** 有效截止时间 */ - private String valiEndTime; - - /** 复用(多次)使用标志,0-否、1-是 */ - private String reptFlag; - - /** 最大复用次数 */ - private BigDecimal maxReptCnt; - - /** 已复用次数 */ - private BigDecimal reptdCnt; - - /** 使用最小间隔(天数) */ - private BigDecimal minInrvDays; - - /** 处方类别编码 */ - private String rxTypeCode; - - /** 处方类别名称 */ - private String rxTypeName; - - /** 长期处方标志,0-否、1-是 */ - private String longRxFlag; - - /** 业务类型代码 */ - private String bizTypeCode; - - /** 业务类型名称 */ - private String bizTypeName; - - /** 处方附加属性代码 */ - private String rxExraAttrCode; - - /** 处方附加属性名称 */ - private String rxExraAttrName; - - /** 处方循环限制标志 */ - private String rxCircLimitFlag; - - // 处方明细信息 - private List rxDetlList; - - // 就诊信息 - private ElepQuerVisitInfo rxOtpinfo; - - // 诊断信息 - private List rxDiseList; - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java deleted file mode 100644 index 04583e7b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepMedresultDetail; - -/** - * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepMedresultDetailMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java deleted file mode 100644 index 65c926c5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepMedresultInfo; - -/** - * 【电子处方取药结果查询-输出】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepMedresultInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java deleted file mode 100644 index cef07dfb..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepMedresultInput; - -/** - * 【电子处方取药结果查询-输入】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepMedresultInputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java deleted file mode 100644 index f1f10f15..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepQuerDiagnosisInfo; - -/** - * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepQuerDiagnosisInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java deleted file mode 100644 index 1165239c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepQuerPrescriptionDetail; - -/** - * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList) 】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepQuerPrescriptionDetailMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java deleted file mode 100644 index 231c401b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepQuerPrescriptionInfo; - -/** - * 【电子处方信息查询-输出-处方信息 】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepQuerPrescriptionInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java deleted file mode 100644 index 314dd9a7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepQuerPrescriptionInput; - -/** - * 【电子处方信息查询-输入】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepQuerPrescriptionInputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java deleted file mode 100644 index ed6459d0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepQuerVisitInfo; - -/** - * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepQuerVisitInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java deleted file mode 100644 index 64423fac..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepRevokeInput; - -/** - * 【电子处方撤销-输入】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepRevokeInputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java deleted file mode 100644 index 0b8240b0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepRevokeOutput; - -/** - * 【电子处方撤销-输出】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepRevokeOutputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java deleted file mode 100644 index 2b2913a3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepSignatureInput; - -/** - * 【电子处方医保电子签名 -输入】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepSignatureInputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java deleted file mode 100644 index 6696a938..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepSignatureOutput; - -/** - * 【电子处方医保电子签名 -输出】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepSignatureOutputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java deleted file mode 100644 index 435e0496..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepUploadInput; - -/** - * 【电子处方上传-输入】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepUploadInputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java deleted file mode 100644 index edf63ffe..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepUploadOutput; - -/** - * 【电子处方上传-输出】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepUploadOutputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java deleted file mode 100644 index b348be66..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepVeriDiagnosisInfo; - -/** - * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepVeriDiagnosisInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java deleted file mode 100644 index d735b38b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepVeriPrescriptionDetail; - -/** - * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepVeriPrescriptionDetailMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java deleted file mode 100644 index afd3cfdc..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepVeriPrescriptionInfo; - -/** - * 【电子处方上传预核验-输入-处方信息】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepVeriPrescriptionInfoMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java deleted file mode 100644 index 0183f2ec..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.openhis.ybelep.domain.ElepVeriPrescriptionOutput; - -/** - * 【电子处方上传预核验-输出】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepVeriPrescriptionOutputMapper extends BaseMapper { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java deleted file mode 100644 index bbde3421..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.openhis.ybelep.mapper; - -import com.openhis.ybelep.domain.ElepVeriVisitInfo; -import org.springframework.stereotype.Repository; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** - * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo) 】Mapper接口 - * - * @author system - * @date 2025-04-17 - */ -@Repository -public interface ElepVeriVisitInfoMapper extends BaseMapper { - -} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java deleted file mode 100644 index a1eebf48..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepMedresultDetail; - -/** - * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepMedresultDetailService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java deleted file mode 100644 index e6994723..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepMedresultInfo; - -/** - * 【电子处方取药结果查询-输出】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepMedresultInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java deleted file mode 100644 index 3985b0a7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepMedresultInput; - -/** - * 【电子处方取药结果查询-输入】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepMedresultInputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java deleted file mode 100644 index 3a47ee59..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepQuerDiagnosisInfo; - -/** - * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepQuerDiagnosisInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java deleted file mode 100644 index 75b5dab1..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepQuerPrescriptionDetail; - -/** - * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList)】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepQuerPrescriptionDetailService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java deleted file mode 100644 index a7f93640..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepQuerPrescriptionInfo; - -/** - * 【电子处方信息查询-输出-处方信息 】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepQuerPrescriptionInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java deleted file mode 100644 index f5682adc..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepQuerPrescriptionInput; - -/** - * 【电子处方信息查询-输入】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepQuerPrescriptionInputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java deleted file mode 100644 index e139469a..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepQuerVisitInfo; - -/** - * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepQuerVisitInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java deleted file mode 100644 index 61cf1478..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepRevokeInput; - -/** - * 【电子处方撤销-输入】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepRevokeInputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java deleted file mode 100644 index 5c4d4528..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepRevokeOutput; - -/** - * 【电子处方撤销-输出】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepRevokeOutputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java deleted file mode 100644 index b1e24161..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepSignatureInput; - -/** - * 【电子处方医保电子签名 -输入】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepSignatureInputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java deleted file mode 100644 index 22a8a8ca..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepSignatureOutput; - -/** - * 【电子处方医保电子签名 -输出】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepSignatureOutputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java deleted file mode 100644 index 0f985498..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepUploadInput; - -/** - * 【电子处方上传-输入】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepUploadInputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java deleted file mode 100644 index 4a789dc0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepUploadOutput; - -/** - * 【电子处方上传-输出】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepUploadOutputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java deleted file mode 100644 index 7b2f6fcf..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepVeriDiagnosisInfo; - -/** - * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepVeriDiagnosisInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java deleted file mode 100644 index bca472bd..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepVeriPrescriptionDetail; - -/** - * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepVeriPrescriptionDetailService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java deleted file mode 100644 index e8e69f80..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepVeriPrescriptionInfo; - -/** - * 【电子处方上传预核验-输入-处方信息】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepVeriPrescriptionInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java deleted file mode 100644 index 818a1208..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepVeriPrescriptionOutput; - -/** - * 【电子处方上传预核验-输出】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepVeriPrescriptionOutputService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java deleted file mode 100644 index b8ebd450..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.openhis.ybelep.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.openhis.ybelep.domain.ElepVeriVisitInfo; - -/** - * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo)】Service接口 - * - * @author system - * @date 2025-04-17 - */ -public interface IElepVeriVisitInfoService extends IService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java deleted file mode 100644 index 71204bb2..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepMedresultDetail; -import com.openhis.ybelep.mapper.ElepMedresultDetailMapper; -import com.openhis.ybelep.service.IElepMedresultDetailService; - -/** - * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepMedresultDetailServiceImpl extends ServiceImpl implements IElepMedresultDetailService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java deleted file mode 100644 index 1e3b8f50..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepMedresultInfo; -import com.openhis.ybelep.mapper.ElepMedresultInfoMapper; -import com.openhis.ybelep.service.IElepMedresultInfoService; - -/** - * 【电子处方取药结果查询-输出】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepMedresultInfoServiceImpl extends ServiceImpl implements IElepMedresultInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java deleted file mode 100644 index 43ade099..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepMedresultInput; -import com.openhis.ybelep.mapper.ElepMedresultInputMapper; -import com.openhis.ybelep.service.IElepMedresultInputService; - -/** - * 【电子处方取药结果查询-输入】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepMedresultInputServiceImpl extends ServiceImpl implements IElepMedresultInputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java deleted file mode 100644 index 3db579d3..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepQuerDiagnosisInfo; -import com.openhis.ybelep.mapper.ElepQuerDiagnosisInfoMapper; -import com.openhis.ybelep.service.IElepQuerDiagnosisInfoService; - -/** - * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepQuerDiagnosisInfoServiceImpl extends ServiceImpl implements IElepQuerDiagnosisInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java deleted file mode 100644 index db388ede..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepQuerPrescriptionDetail; -import com.openhis.ybelep.mapper.ElepQuerPrescriptionDetailMapper; -import com.openhis.ybelep.service.IElepQuerPrescriptionDetailService; - -/** - * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList) 】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepQuerPrescriptionDetailServiceImpl extends ServiceImpl implements IElepQuerPrescriptionDetailService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java deleted file mode 100644 index 21665826..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepQuerPrescriptionInfo; -import com.openhis.ybelep.mapper.ElepQuerPrescriptionInfoMapper; -import com.openhis.ybelep.service.IElepQuerPrescriptionInfoService; - -/** - * 【电子处方信息查询-输出-处方信息 】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepQuerPrescriptionInfoServiceImpl extends ServiceImpl implements IElepQuerPrescriptionInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java deleted file mode 100644 index 7e25f9f0..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepQuerPrescriptionInput; -import com.openhis.ybelep.mapper.ElepQuerPrescriptionInputMapper; -import com.openhis.ybelep.service.IElepQuerPrescriptionInputService; - -/** - * 【电子处方信息查询-输入】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepQuerPrescriptionInputServiceImpl extends ServiceImpl implements IElepQuerPrescriptionInputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java deleted file mode 100644 index b2c95cc9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepQuerVisitInfo; -import com.openhis.ybelep.mapper.ElepQuerVisitInfoMapper; -import com.openhis.ybelep.service.IElepQuerVisitInfoService; - -/** - * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepQuerVisitInfoServiceImpl extends ServiceImpl implements IElepQuerVisitInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java deleted file mode 100644 index 9ef553a9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepRevokeInput; -import com.openhis.ybelep.mapper.ElepRevokeInputMapper; -import com.openhis.ybelep.service.IElepRevokeInputService; - -/** - * 【电子处方撤销-输入】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepRevokeInputServiceImpl extends ServiceImpl implements IElepRevokeInputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java deleted file mode 100644 index 1944c013..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepRevokeOutput; -import com.openhis.ybelep.mapper.ElepRevokeOutputMapper; -import com.openhis.ybelep.service.IElepRevokeOutputService; - -/** - * 【电子处方撤销-输出】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepRevokeOutputServiceImpl extends ServiceImpl implements IElepRevokeOutputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java deleted file mode 100644 index 98afa448..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepSignatureInput; -import com.openhis.ybelep.mapper.ElepSignatureInputMapper; -import com.openhis.ybelep.service.IElepSignatureInputService; - -/** - * 【电子处方医保电子签名 -输入】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepSignatureInputServiceImpl extends ServiceImpl implements IElepSignatureInputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java deleted file mode 100644 index 6d891be5..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepSignatureOutput; -import com.openhis.ybelep.mapper.ElepSignatureOutputMapper; -import com.openhis.ybelep.service.IElepSignatureOutputService; - -/** - * 【电子处方医保电子签名 -输出】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepSignatureOutputServiceImpl extends ServiceImpl implements IElepSignatureOutputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java deleted file mode 100644 index 7b9af381..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepUploadInput; -import com.openhis.ybelep.mapper.ElepUploadInputMapper; -import com.openhis.ybelep.service.IElepUploadInputService; - -/** - * 【电子处方上传-输入】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepUploadInputServiceImpl extends ServiceImpl implements IElepUploadInputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java deleted file mode 100644 index d701464b..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepUploadOutput; -import com.openhis.ybelep.mapper.ElepUploadOutputMapper; -import com.openhis.ybelep.service.IElepUploadOutputService; - -/** - * 【电子处方上传-输出】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepUploadOutputServiceImpl extends ServiceImpl implements IElepUploadOutputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java deleted file mode 100644 index 08e32083..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepVeriDiagnosisInfo; -import com.openhis.ybelep.mapper.ElepVeriDiagnosisInfoMapper; -import com.openhis.ybelep.service.IElepVeriDiagnosisInfoService; - -/** - * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepVeriDiagnosisInfoServiceImpl extends ServiceImpl implements IElepVeriDiagnosisInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java deleted file mode 100644 index 099cae6c..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepVeriPrescriptionDetail; -import com.openhis.ybelep.mapper.ElepVeriPrescriptionDetailMapper; -import com.openhis.ybelep.service.IElepVeriPrescriptionDetailService; - -/** - * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepVeriPrescriptionDetailServiceImpl extends ServiceImpl implements IElepVeriPrescriptionDetailService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java deleted file mode 100644 index 138bdbf7..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepVeriPrescriptionInfo; -import com.openhis.ybelep.mapper.ElepVeriPrescriptionInfoMapper; -import com.openhis.ybelep.service.IElepVeriPrescriptionInfoService; - -/** - * 【电子处方上传预核验-输入-处方信息】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepVeriPrescriptionInfoServiceImpl extends ServiceImpl implements IElepVeriPrescriptionInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java deleted file mode 100644 index 33e8afd9..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepVeriPrescriptionOutput; -import com.openhis.ybelep.mapper.ElepVeriPrescriptionOutputMapper; -import com.openhis.ybelep.service.IElepVeriPrescriptionOutputService; - -/** - * 【电子处方上传预核验-输出】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepVeriPrescriptionOutputServiceImpl extends ServiceImpl implements IElepVeriPrescriptionOutputService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java deleted file mode 100644 index 8bc26f85..00000000 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.openhis.ybelep.service.impl; - -import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.openhis.ybelep.domain.ElepVeriVisitInfo; -import com.openhis.ybelep.mapper.ElepVeriVisitInfoMapper; -import com.openhis.ybelep.service.IElepVeriVisitInfoService; - -/** - * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo) 】Service业务层处理 - * - * @author system - * @date 2025-04-17 - */ -@Service -public class ElepVeriVisitInfoServiceImpl extends ServiceImpl implements IElepVeriVisitInfoService { - -} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/resources/mapper/administration/EncounterDiagnosisMapper.xml b/openhis-server-new/openhis-domain/src/main/resources/mapper/administration/EncounterDiagnosisMapper.xml index f206fec3..59e8ac00 100644 --- a/openhis-server-new/openhis-domain/src/main/resources/mapper/administration/EncounterDiagnosisMapper.xml +++ b/openhis-server-new/openhis-domain/src/main/resources/mapper/administration/EncounterDiagnosisMapper.xml @@ -17,5 +17,16 @@ WHERE encounter_id = #{encounterId} AND tcm_flag = 0 + \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/resources/mapper/financial/PaymentReconciliationMapper.xml b/openhis-server-new/openhis-domain/src/main/resources/mapper/financial/PaymentReconciliationMapper.xml index b92d5095..d0c35081 100644 --- a/openhis-server-new/openhis-domain/src/main/resources/mapper/financial/PaymentReconciliationMapper.xml +++ b/openhis-server-new/openhis-domain/src/main/resources/mapper/financial/PaymentReconciliationMapper.xml @@ -16,6 +16,7 @@ AND payment.delete_flag = '0' AND payment.status_enum IN (#{success}, #{returnAll}) AND payment.kind_enum = #{clinic} + AND account.contract_no IS NOT NULL AND payment.enterer_id = #{entererId} diff --git a/openhis-server-new/openhis-domain/src/main/resources/mapper/yb/MedicalInsuranceMapper.xml b/openhis-server-new/openhis-domain/src/main/resources/mapper/yb/MedicalInsuranceMapper.xml index 951662fd..d72d163f 100644 --- a/openhis-server-new/openhis-domain/src/main/resources/mapper/yb/MedicalInsuranceMapper.xml +++ b/openhis-server-new/openhis-domain/src/main/resources/mapper/yb/MedicalInsuranceMapper.xml @@ -123,7 +123,9 @@ t2.contract_no, t5.insutype, t5.med_type, - t7.medfee_sumamt + t6.kind_enum, + t7.medfee_sumamt, + t8.medfee_sumamt as return_medfee_sumamt FROM fin_payment_rec_detail t1 LEFT JOIN adm_account t2 on t1.account_id = t2.id @@ -132,11 +134,13 @@ LEFT JOIN yb_clinc_reg t5 on t4.bus_no = t5.ipt_otp_no AND t4.delete_flag = '0' LEFT JOIN fin_payment_reconciliation t6 on t6.id = t1.reconciliation_id AND t6.delete_flag = '0' LEFT JOIN yb_clinc_settle t7 on t1.pay_trans_text = t7.setl_id + LEFT JOIN yb_clinc_un_settle t8 on t6.yb_settle_ids = t8.settle_id WHERE 1=1 AND t6.bill_date > #{startTime} AND t6.bill_date < #{endTime} AND t6.status_enum != #{draft} + AND t5.med_type IS NOT NULL AND t1.account_id IS NOT NULL AND t1.reconciliation_id IN @@ -144,6 +148,5 @@ #{item} - \ No newline at end of file diff --git a/openhis-server-new/openhis-einvoiceapp/pom.xml b/openhis-server-new/openhis-einvoiceapp/pom.xml deleted file mode 100644 index 0069eb70..00000000 --- a/openhis-server-new/openhis-einvoiceapp/pom.xml +++ /dev/null @@ -1,149 +0,0 @@ - - - - openhis-server - com.openhis - 0.0.1-SNAPSHOT - - 4.0.0 - - openhis-einvoiceapp - - - 17 - 17 - - - - - - - - - - - - org.springframework.boot - spring-boot-starter - 2.5.15 - - - com.alibaba - fastjson - 2.0.43 - compile - - - org.apache.httpcomponents - httpclient - - - - com.openhis - openhis-common - 0.0.1-SNAPSHOT - - - - - com.yomahub - liteflow-spring-boot-starter - 2.12.4.1 - - - org.springframework.boot - spring-boot-configuration-processor - true - - - cn.hutool - hutool-all - 5.3.8 - - - org.bouncycastle - bcprov-jdk15on - 1.69 - - - com.alibaba - fastjson - 2.0.43 - - - commons-httpclient - commons-httpclient - 3.1 - - - org.apache.httpcomponents - httpclient - 4.5.5 - - - com.itextpdf - kernel - 7.1.2 - - - org.apache.httpcomponents - httpmime - 4.5 - - - - - com.itextpdf - itextpdf - 5.5.12 - - - com.itextpdf - itext-asian - 5.2.0 - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - 2.5.15 - - true - - - - - repackage - - - - - - org.apache.maven.plugins - maven-war-plugin - 3.1.0 - - false - ${project.artifactId} - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - 9 - 9 - - - - ${project.artifactId} - - - \ No newline at end of file diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/OpenHisInvoiceApplication.java b/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/OpenHisInvoiceApplication.java deleted file mode 100644 index 5da7d726..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/OpenHisInvoiceApplication.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.openhis; - -import java.net.InetAddress; -import java.net.UnknownHostException; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; -import org.springframework.context.ConfigurableApplicationContext; -import org.springframework.core.env.Environment; - -/** - * 启动程序 - * - * @author system - */ -@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}, scanBasePackages = {"com.core", "com.openhis"}) -public class OpenHisInvoiceApplication { - public static void main(String[] args) throws UnknownHostException { - // System.setProperty("spring.devtools.restart.enabled", "false"); - ConfigurableApplicationContext application = SpringApplication.run(OpenHisInvoiceApplication.class, args); - Environment env = application.getEnvironment(); - String ip = InetAddress.getLocalHost().getHostAddress(); - String port = env.getProperty("server.port"); - String path = env.getProperty("server.servlet.context-path"); - System.out.println("电子处方程序启动"); - - System.out.println("\n----------------------------------------------------------\n\t" - + "Application OpenHis-YB is running! Access URLs:\n\t" + "Local: \t\thttp://localhost:" + port + path - + "/\n\t" + "External: \thttp://" + ip + ":" + port + path + "/\n" - + "----------------------------------------------------------"); - } -} diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/controller/YbController.java b/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/controller/YbController.java deleted file mode 100644 index 9eec242f..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/controller/YbController.java +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Copyright ©2023 CJB-CNIT Team. All rights reserved - */ -package com.openhis.controller; - -import com.alibaba.fastjson2.JSONObject; -import com.core.common.utils.StringUtils; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.openhis.vo.EleInvioceBillDto; -import org.apache.commons.codec.digest.DigestUtils; -import org.apache.http.HttpResponse; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.web.bind.annotation.*; - -import com.core.common.annotation.Anonymous; - -import java.nio.charset.Charset; -import java.nio.charset.StandardCharsets; -import java.util.Base64; -import java.util.HashMap; -import java.util.Map; -import java.util.UUID; - -/** - * TODO:医保控制层 - * - * @author SunJQ - * @date 2025-03-18 - */ -@RestController -@RequestMapping("/eleInvoice") -public class YbController { - - Logger logger = LoggerFactory.getLogger(YbController.class); - // logger.debug("这是专用日志测试"); - - @PostMapping(value = "/forward") - @Anonymous - public JSONObject signIn(@RequestBody EleInvioceBillDto eleInvioceBillDto) { - - JSONObject result = new JSONObject(); - // 获取当前租户的option信息 - //JSONObject optionJson = SecurityUtils.getLoginUser().getOptionJson(); - - String baseUrl = eleInvioceBillDto.getBaseUrl(); - // 拼接成完整 URL(作为路径) - String cleanUrl = baseUrl + "/" + eleInvioceBillDto.getEndpoint(); // 确保用 "/" 分隔 - String url = cleanUrl.trim().replaceAll("^\"|\"$", "") // 去除首尾引号 - .replaceAll("\\s+", "")// 去除首尾引号 - .replaceAll("\"", ""); // 去除中间引号 - - //String appID = optionJson.getString(CommonConstants.Option.APP_ID); - String appID = eleInvioceBillDto.getAppID(); - //String appKey = optionJson.getString(CommonConstants.Option.KEY); - String appKey = eleInvioceBillDto.getAppKey(); - String data = eleInvioceBillDto.getJsonObject().toJSONString(); - String version = "1.0"; - // 请求随机标识 noise - String noise = UUID.randomUUID().toString(); - - data = Base64.getEncoder().encodeToString(data.getBytes(StandardCharsets.UTF_8)); - - StringBuilder str = new StringBuilder(); - str.append("appid=").append(appID); - str.append("&data=").append(data); - str.append("&noise=").append(noise); - str.append("&key=").append(appKey); - str.append("&version=").append(version); - String sign = DigestUtils.md5Hex(str.toString().getBytes(Charset.forName("UTF-8"))).toUpperCase(); - - Map map = new HashMap<>(); - map.put("appid", appID); - map.put("data", data); - map.put("noise", noise); - map.put("sign", sign); - map.put("version", version); - - try { - HttpPost httpPost = new HttpPost(url); - CloseableHttpClient client = HttpClients.createDefault(); - String respContent = null; - // 请求参数转JOSN字符串 - StringEntity entity = new StringEntity(new ObjectMapper().writeValueAsString(map), "utf-8"); - entity.setContentEncoding("UTF-8"); - entity.setContentType("application/json"); - httpPost.setEntity(entity); - HttpResponse resp = client.execute(httpPost); - - if (resp.getStatusLine().getStatusCode() == 200) { - String rev = EntityUtils.toString(resp.getEntity()); - // System.out.println("返回串--》"+rev); - Map resultData = new ObjectMapper().readValue(rev, Map.class); - String rdata = resultData.get("data").toString(); - String rnoise = resultData.get("noise").toString(); - // 1、拼接返回验签参数 - StringBuilder str1 = new StringBuilder(); - str1.append("appid=").append(appID); - str1.append("&data=").append(rdata); - str1.append("&noise=").append(rnoise); - str1.append("&key=").append(appKey); - str1.append("&version=").append(version); - // 3.MD5加密 生成sign - String rmd5 = DigestUtils.md5Hex(str1.toString().getBytes(Charset.forName("UTF-8"))).toUpperCase(); - String rsign = resultData.get("sign").toString(); - System.out.println("验签-》" + (StringUtils.equals(rsign, rmd5))); - String busData = - new String(Base64.getDecoder().decode(resultData.get("data").toString()), StandardCharsets.UTF_8); - System.out.println("返回业务数据--》" + busData); - Map busDataMap = new ObjectMapper().readValue(busData, Map.class); - System.out - .println("业务信息解密--》" + new String(Base64.getDecoder().decode(busDataMap.get("message").toString()), - StandardCharsets.UTF_8)); - - JSONObject resobj = JSONObject.parseObject(busData); - result.put("success", true); - result.put("result", resobj); - } else { - result.put("msg", "web响应失败!"); - result.put("success", false); - } - } catch (Exception e) { - result.put("msg", e.getMessage()); - result.put("success", false); - } - return result; - } - -} diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/vo/EleInvioceBillDto.java b/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/vo/EleInvioceBillDto.java deleted file mode 100644 index c4f1c3dd..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/java/com/openhis/vo/EleInvioceBillDto.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.openhis.vo; - -import com.alibaba.fastjson2.JSONObject; -import lombok.Data; - -@Data -public class EleInvioceBillDto { - - JSONObject jsonObject; - - String endpoint; - - String baseUrl; - - String appID; - - String appKey; -} diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/application-druid.yml b/openhis-server-new/openhis-einvoiceapp/src/main/resources/application-druid.yml deleted file mode 100644 index fa3440c8..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/application-druid.yml +++ /dev/null @@ -1,63 +0,0 @@ -# 数据源配置 -spring: - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: org.postgresql.Driver - druid: - # 主库数据源 - master: - # url: jdbc:postgresql://localhost:5432/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 - url: jdbc:postgresql://192.168.10.242:5432/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 - # url: jdbc:postgresql://localhost:8020/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 - username: postgres - password: root - # 从库数据源 - slave: - # 从数据源开关/默认关闭 - enabled: false - url: - username: - password: - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置连接超时时间 - connectTimeout: 30000 - # 配置网络超时时间 - socketTimeout: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 # FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: openhis - login-password: 123456 - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true \ No newline at end of file diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/application-prod.yml b/openhis-server-new/openhis-einvoiceapp/src/main/resources/application-prod.yml deleted file mode 100644 index 59aa507d..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/application-prod.yml +++ /dev/null @@ -1,61 +0,0 @@ -# 数据源配置 -spring: - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: org.postgresql.Driver - druid: - # 主库数据源 - master: - url: jdbc:postgresql://localhost:5432/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 - username: postgres - password: root - # 从库数据源 - slave: - # 从数据源开关/默认关闭 - enabled: false - url: - username: - password: - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置连接超时时间 - connectTimeout: 30000 - # 配置网络超时时间 - socketTimeout: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 # FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: openhis - login-password: 123456 - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true \ No newline at end of file diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/application.yml b/openhis-server-new/openhis-einvoiceapp/src/main/resources/application.yml deleted file mode 100644 index 9ad5c9dd..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/application.yml +++ /dev/null @@ -1,159 +0,0 @@ -# 项目相关配置 -core: - # 名称 - name: OpenHis_eInvoice - # 版本 - version: 0.0.1 - # 版权年份 - copyrightYear: 2025 - # 文件路径 - profile: D:/home/uploadPath - # 获取ip地址开关 - addressEnabled: false - # 验证码类型 math 数字计算 char 字符验证 - captchaType: math - -# 开发环境配置 -server: - # 服务器的HTTP端口,默认为18080 - port: 18078 - servlet: - # 应用的访问路径 - context-path: /openhis/eInvoice - tomcat: - # tomcat的URI编码 - uri-encoding: UTF-8 - # 连接数满后的排队数,默认为100 - accept-count: 1000 - threads: - # tomcat最大线程数,默认为200 - max: 800 - # Tomcat启动初始化的线程数,默认值10 - min-spare: 100 - -# 日志配置 -logging: - level: - com.openhis: debug - org.springframework: warn - -# 用户配置 -user: - password: - # 密码最大错误次数 - maxRetryCount: 5 - # 密码锁定时间(默认10分钟) - lockTime: 10 - -# Spring配置 -spring: - main: - allow-circular-references: true - # 资源信息 - messages: - # 国际化资源文件路径 - basename: i18n/messages - profiles: - active: druid #生产 prod #本地 druid - # 文件上传 - servlet: - multipart: - # 单个文件大小 - max-file-size: 10MB - # 设置总上传的文件大小 - max-request-size: 20MB - # 服务模块 - devtools: - restart: - # 热部署开关 - enabled: true - # redis 配置 - redis: - # 地址 - # host: 127.0.0.1 - host: 192.168.10.242 - # 端口,默认为6379 - port: 6379 - # 数据库索引 - database: 1 - # 密码 - password: redis - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池中的最小空闲连接 - min-idle: 0 - # 连接池中的最大空闲连接 - max-idle: 8 - # 连接池的最大数据库连接数 - max-active: 8 - # #连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms - # 文言 - messages: - basename: i18n/general_message/messages - encoding: utf-8 - -# token配置 -token: - # 令牌自定义标识 - header: Authorization - # 令牌密钥 - secret: abcdefghijklmnopqrstuvwxyz - # 令牌有效期(默认30分钟) - expireTime: 30 - -# MyBatis配置 -mybatis-plus: - # 搜索指定包别名 - typeAliasesPackage: com.core.**.domain,com.openhis.**.domain - # 配置mapper的扫描,找到所有的mapper.xml映射文件 - mapperLocations: classpath*:mapper/**/*Mapper.xml - # 加载全局的配置文件 - configLocation: classpath:mybatis/mybatis-config.xml - -# PageHelper分页插件 -pagehelper: - #helperDialect: mysql - supportMethodsArguments: true - params: count=countSql - # 分页插件会自动检测当前的数据库链接,自动选择合适的分页方式 - auto-dialect: true - # 默认值为 false。设置为 true 时,允许在运行时根据多数据源自动识别对应方言的分页 - auto-runtime-dialect: true - -# Swagger配置 -swagger: - # 是否开启swagger - enabled: true - # 请求前缀 - pathMapping: /dev-api - -# 防止XSS攻击 -xss: - # 过滤开关 - enabled: true - # 排除链接(多个用逗号分隔) - excludes: /system/notice - # 匹配链接 - urlPatterns: /system/*,/monitor/*,/tool/* - -# flowable相关表 -flowable: - # true 会对数据库中所有表进行更新操作。如果表不存在,则自动创建(建议开发时使用) - database-schema-update: false - # 关闭定时任务JOB - async-executor-activate: false - -## liteflow配置 -#liteflow: -# #规则文件路径 -# rule-source: config/flow.el.xml -# #liteflow是否开启,默认为true -# enable: true -# #liteflow的banner打印是否开启,默认为true -# print-banner: false - - - diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/banner.txt b/openhis-server-new/openhis-einvoiceapp/src/main/resources/banner.txt deleted file mode 100644 index f95701d8..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/banner.txt +++ /dev/null @@ -1,10 +0,0 @@ - - :::::::: ::::::::: :::::::::: :::: ::: ::: ::: ::::::::::: :::::::: - :+: :+: :+: :+: :+: :+:+: :+: :+: :+: :+: :+: :+: - +:+ +:+ +:+ +:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ - +#+ +:+ +#++:++#+ +#++:++# +#+ +:+ +#+ +#++:++#++ +#+ +#++:++#++ - +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ -#+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# -######## ### ########## ### #### ### ### ########### ######## - -Application Version: ${core.version} diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/flow.el.xml b/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/flow.el.xml deleted file mode 100644 index 049210cf..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/flow.el.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - THEN(a, b, c); - - \ No newline at end of file diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/hospital-config.properties b/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/hospital-config.properties deleted file mode 100644 index e69de29b..00000000 diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/sys-config.properties b/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/sys-config.properties deleted file mode 100644 index b57fd4e8..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/config/sys-config.properties +++ /dev/null @@ -1,21 +0,0 @@ -# ???????? -dev.address=http://88.9.0.126:8080 -dev.time=600 -dev.isEncrypt=false - -# ???????? -prod.address=http://ddjk.jlhs.gov.cn:20215 -prod.time=600 -prod.isEncrypt=true - - -dev.cliPubKey=PubKey -dev.cliPrvKey=PrvKey -dev.clientId=Id -dev.filePath="C:/Users/user/Desktop/" - -prod.cliPubKey=PubKey2 -prod.cliPrvKey=PrvKey2 -prod.clientId=Id2 -prod.filePath="C:/Users/user/Desktop/" -prod.eleAddress=http://10.49.24.194:8080/epc/api/ diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/logback.xml b/openhis-server-new/openhis-einvoiceapp/src/main/resources/logback.xml deleted file mode 100644 index d534b70b..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/logback.xml +++ /dev/null @@ -1,112 +0,0 @@ - - - - - - - - - - - ${log.pattern} - - - - - - ${log.path}/sys-info.log - - - - ${log.path}/sys-info.%d{yyyy-MM-dd}.log - - 60 - - - ${log.pattern} - - - - INFO - - ACCEPT - - DENY - - - - - ${log.path}/sys-error.log - - - - ${log.path}/sys-error.%d{yyyy-MM-dd}.log - - 60 - - - ${log.pattern} - - - - ERROR - - ACCEPT - - DENY - - - - - - ${log.path}/sys-user.log - - - ${log.path}/sys-user.%d{yyyy-MM-dd}.log - - 60 - - - ${log.pattern} - - - - - - - ${log.path}/e-invoice-service.log - - - ${log.path}/e-invoice-service.%d{yyyy-MM-dd}.log - 60 - - - ${log.pattern} - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/openhis-server-new/openhis-einvoiceapp/src/main/resources/mybatis/mybatis-config.xml b/openhis-server-new/openhis-einvoiceapp/src/main/resources/mybatis/mybatis-config.xml deleted file mode 100644 index c39d4382..00000000 --- a/openhis-server-new/openhis-einvoiceapp/src/main/resources/mybatis/mybatis-config.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/openhis-server-new/openhis-miniapp/pom.xml b/openhis-server-new/openhis-miniapp/pom.xml deleted file mode 100644 index 7b251573..00000000 --- a/openhis-server-new/openhis-miniapp/pom.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - com.openhis - openhis-server - 0.0.1-SNAPSHOT - - - 4.0.0 - openhis-miniapp - 0.0.1-SNAPSHOT - - - 小程序应用 - - - - - - - com.openhis - openhis-domain - 0.0.1-SNAPSHOT - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - 2.5.15 - - true - - - - - repackage - - - - - - org.apache.maven.plugins - maven-war-plugin - 3.1.0 - - false - ${project.artifactId} - - - - org.apache.maven.plugins - maven-compiler-plugin - - 8 - 8 - - - - ${project.artifactId} - - - diff --git a/openhis-server-new/openhis-miniapp/src/main/java/com/openhis/OpenHisMiniApp.java b/openhis-server-new/openhis-miniapp/src/main/java/com/openhis/OpenHisMiniApp.java deleted file mode 100644 index 08547d6d..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/java/com/openhis/OpenHisMiniApp.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.openhis; - -import java.net.InetAddress; -import java.net.UnknownHostException; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; -import org.springframework.context.ConfigurableApplicationContext; -import org.springframework.core.env.Environment; - -@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}, scanBasePackages = {"com.core", "com.openhis"}) -public class OpenHisMiniApp { - public static void main(String[] args) throws UnknownHostException { - // System.setProperty("spring.devtools.restart.enabled", "false"); - ConfigurableApplicationContext application = SpringApplication.run(OpenHisMiniApp.class, args); - Environment env = application.getEnvironment(); - String ip = InetAddress.getLocalHost().getHostAddress(); - String port = env.getProperty("server.port"); - String path = env.getProperty("server.servlet.context-path"); - System.out.println("\n----------------------------------------------------------\n\t" - + "Application OpenHis is running! Access URLs:\n\t" + "Local: \t\thttp://localhost:" + port + path - + "/\n\t" + "External: \thttp://" + ip + ":" + port + path + "/\n" - + "----------------------------------------------------------"); - } -} diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/META-INF/spring-devtools.properties b/openhis-server-new/openhis-miniapp/src/main/resources/META-INF/spring-devtools.properties deleted file mode 100644 index 37e7b580..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/META-INF/spring-devtools.properties +++ /dev/null @@ -1 +0,0 @@ -restart.include.json=/com.alibaba.fastjson2.*.jar \ No newline at end of file diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/application-druid.yml b/openhis-server-new/openhis-miniapp/src/main/resources/application-druid.yml deleted file mode 100644 index aedc7639..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/application-druid.yml +++ /dev/null @@ -1,61 +0,0 @@ -# 数据源配置 -spring: - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: org.postgresql.Driver - druid: - # 主库数据源 - master: - url: jdbc:postgresql://od32215110g.vicp.fun:15008/openhis?currentSchema=public&characterEncoding=UTF-8&client_encoding=UTF-8 - username: postgres - password: root - # 从库数据源 - slave: - # 从数据源开关/默认关闭 - enabled: false - url: - username: - password: - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置连接超时时间 - connectTimeout: 30000 - # 配置网络超时时间 - socketTimeout: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 # FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: openhis - login-password: 123456 - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/application.yml b/openhis-server-new/openhis-miniapp/src/main/resources/application.yml deleted file mode 100644 index f07ee76f..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/application.yml +++ /dev/null @@ -1,149 +0,0 @@ -# 项目相关配置 -core: - # 名称 - name: OpenHis-MiniApp - # 版本 - version: 0.0.1 - # 版权年份 - copyrightYear: 2025 - # 文件路径 - profile: D:/home/uploadPath - # 获取ip地址开关 - addressEnabled: false - # 验证码类型 math 数字计算 char 字符验证 - captchaType: math - -# 开发环境配置 -server: - # 服务器的HTTP端口,默认为18080,此服务为18081 - port: 18081 - servlet: - # 应用的访问路径 - context-path: /openhis - tomcat: - # tomcat的URI编码 - uri-encoding: UTF-8 - # 连接数满后的排队数,默认为100 - accept-count: 1000 - threads: - # tomcat最大线程数,默认为200 - max: 800 - # Tomcat启动初始化的线程数,默认值10 - min-spare: 100 - -# 日志配置 -logging: - level: - com.openhis: debug - org.springframework: warn - -# 用户配置 -user: - password: - # 密码最大错误次数 - maxRetryCount: 5 - # 密码锁定时间(默认10分钟) - lockTime: 10 - -# Spring配置 -spring: - main: - allow-circular-references: true - # 资源信息 - messages: - # 国际化资源文件路径 - basename: i18n/messages - profiles: - active: druid - # 文件上传 - servlet: - multipart: - # 单个文件大小 - max-file-size: 10MB - # 设置总上传的文件大小 - max-request-size: 20MB - # 服务模块 - devtools: - restart: - # 热部署开关 - enabled: true - # redis 配置 - redis: - # 地址 - host: 192.168.30.199 - # 端口,默认为6379 - port: 6379 - # 数据库索引 - database: 2 - # 密码 - password: redis - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池中的最小空闲连接 - min-idle: 0 - # 连接池中的最大空闲连接 - max-idle: 8 - # 连接池的最大数据库连接数 - max-active: 8 - # #连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms - # 文言 - messages: - basename: i18n/general_message/messages - encoding: utf-8 - -# token配置 -token: - # 令牌自定义标识 - header: Authorization - # 令牌密钥 - secret: abcdefghijklmnopqrstuvwxyz - # 令牌有效期(默认30分钟) - expireTime: 30 - -# MyBatis配置 -mybatis-plus: - # 搜索指定包别名 - typeAliasesPackage: com.core.**.domain,com.openhis.**.domain - # 配置mapper的扫描,找到所有的mapper.xml映射文件 - mapperLocations: classpath*:mapper/**/*Mapper.xml - # 加载全局的配置文件 - configLocation: classpath:mybatis/mybatis-config.xml - -# PageHelper分页插件 -pagehelper: - #helperDialect: mysql - supportMethodsArguments: true - params: count=countSql - # 分页插件会自动检测当前的数据库链接,自动选择合适的分页方式 - auto-dialect: true - # 默认值为 false。设置为 true 时,允许在运行时根据多数据源自动识别对应方言的分页 - auto-runtime-dialect: true - -# Swagger配置 -swagger: - # 是否开启swagger - enabled: true - # 请求前缀 - pathMapping: /dev-api - -# 防止XSS攻击 -xss: - # 过滤开关 - enabled: true - # 排除链接(多个用逗号分隔) - excludes: /system/notice - # 匹配链接 - urlPatterns: /system/*,/monitor/*,/tool/* - -# flowable相关表 -flowable: - # true 会对数据库中所有表进行更新操作。如果表不存在,则自动创建(建议开发时使用) - database-schema-update: false - # 关闭定时任务JOB - async-executor-activate: false - - - diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/banner.txt b/openhis-server-new/openhis-miniapp/src/main/resources/banner.txt deleted file mode 100644 index 2e99e749..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/banner.txt +++ /dev/null @@ -1,10 +0,0 @@ - - :::::::: ::::::::: :::::::::: :::: ::: ::: ::: ::::::::::: :::::::: ::: ::: ::::::::::: :::: ::: ::::::::::: ::: ::::::::: ::::::::: - :+: :+: :+: :+: :+: :+:+: :+: :+: :+: :+: :+: :+: :+:+: :+:+: :+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: - +:+ +:+ +:+ +:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ - +#+ +:+ +#++:++#+ +#++:++# +#+ +:+ +#+ +#++:++#++ +#+ +#++:++#++ +#+ +:+ +#+ +#+ +#+ +:+ +#+ +#+ +#++:++#++: +#++:++#+ +#++:++#+ - +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ -#+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# -######## ### ########## ### #### ### ### ########### ######## ### ### ########### ### #### ########### ### ### ### ### - -Application Version: ${core.version} diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/i18n/messages.properties b/openhis-server-new/openhis-miniapp/src/main/resources/i18n/messages.properties deleted file mode 100644 index 4550ad81..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/i18n/messages.properties +++ /dev/null @@ -1,46 +0,0 @@ -#错误消息 -not.null=* 必须填写 -user.jcaptcha.error=验证码错误 -user.jcaptcha.expire=验证码已失效 -user.not.exists=用户不存在/密码错误 -user.password.not.match=用户不存在/密码错误 -user.password.retry.limit.count=密码输入错误{0}次 -user.password.retry.limit.exceed=密码输入错误{0}次,帐户锁定{1}分钟 -user.password.delete=对不起,您的账号已被删除 -user.blocked=用户已封禁,请联系管理员 -role.blocked=角色已封禁,请联系管理员 -login.blocked=很遗憾,访问IP已被列入系统黑名单 -user.logout.success=退出成功 -length.not.valid=长度必须在{min}到{max}个字符之间 -user.username.not.valid=* 2到20个汉字、字母、数字或下划线组成,且必须以非数字开头 -user.password.not.valid=* 5-50个字符 -user.email.not.valid=邮箱格式错误 -user.mobile.phone.number.not.valid=手机号格式错误 -user.login.success=登录成功 -user.register.success=注册成功 -user.notfound=请重新登录 -user.forcelogout=管理员强制退出,请重新登录 -user.unknown.error=未知错误,请重新登录 -##文件上传消息 -upload.exceed.maxSize=上传的文件大小超出限制的文件大小!
允许的文件最大大小是:{0}MB! -upload.filename.exceed.length=上传的文件名最长{0}个字符 -##权限 -no.permission=您没有数据的权限,请联系管理员添加权限 [{0}] -no.create.permission=您没有创建数据的权限,请联系管理员添加权限 [{0}] -no.update.permission=您没有修改数据的权限,请联系管理员添加权限 [{0}] -no.delete.permission=您没有删除数据的权限,请联系管理员添加权限 [{0}] -no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}] -no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}] - - - -apl.common.M00001={0}添加成功 -apl.common.M00002={0}保存成功 -apl.common.M00003={0}已经存在 -apl.common.M00004={0}操作成功 -apl.common.M00005={0}删除成功 -apl.common.M00006=操作失败,该数据已被他人删除,请刷新后重试 -apl.common.M00007=操作失败,该数据已被他人更改,请刷新后重试 -apl.common.M00008=请勿重复提交 -apl.common.M00009=查询成功 -apl.common.M00010=操作失败,请联系管理员 diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/logback.xml b/openhis-server-new/openhis-miniapp/src/main/resources/logback.xml deleted file mode 100644 index bc63c109..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/logback.xml +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - ${log.pattern} - - - - - - ${log.path}/sys-info.log - - - - ${log.path}/sys-info.%d{yyyy-MM-dd}.log - - 60 - - - ${log.pattern} - - - - INFO - - ACCEPT - - DENY - - - - - ${log.path}/sys-error.log - - - - ${log.path}/sys-error.%d{yyyy-MM-dd}.log - - 60 - - - ${log.pattern} - - - - ERROR - - ACCEPT - - DENY - - - - - - ${log.path}/sys-user.log - - - ${log.path}/sys-user.%d{yyyy-MM-dd}.log - - 60 - - - ${log.pattern} - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/openhis-server-new/openhis-miniapp/src/main/resources/mybatis/mybatis-config.xml b/openhis-server-new/openhis-miniapp/src/main/resources/mybatis/mybatis-config.xml deleted file mode 100644 index c39d4382..00000000 --- a/openhis-server-new/openhis-miniapp/src/main/resources/mybatis/mybatis-config.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/openhis-server-new/package-lock.json b/openhis-server-new/package-lock.json new file mode 100644 index 00000000..9a7a49f3 --- /dev/null +++ b/openhis-server-new/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "openhis-server", + "lockfileVersion": 3, + "requires": true, + "packages": {} +} diff --git a/openhis-server-new/pom.xml b/openhis-server-new/pom.xml index 00cba842..61e75d4e 100644 --- a/openhis-server-new/pom.xml +++ b/openhis-server-new/pom.xml @@ -300,7 +300,6 @@ - openhis-miniapp openhis-application openhis-domain openhis-common -- Gitee From e4c5f36f2ed5891be87ed0edddf2587611b7f6a9 Mon Sep 17 00:00:00 2001 From: "Zhang.WH" Date: Thu, 16 Oct 2025 17:38:08 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../openhis/yb/domain/ClinicPreSettle.java | 62 + .../java/com/openhis/yb/domain/ClinicReg.java | 109 + .../com/openhis/yb/domain/ClinicSettle.java | 112 + .../com/openhis/yb/domain/ClinicUnReg.java | 47 + .../com/openhis/yb/domain/ClinicUnSettle.java | 111 + .../yb/domain/DirectoryCheckRecord.java | 46 + .../main/java/com/openhis/yb/domain/File.java | 39 + .../yb/domain/FinancialApplyRecord.java | 72 + .../yb/domain/FinancialReconcileRecord.java | 68 + .../com/openhis/yb/domain/InfoPerson.java | 93 + .../openhis/yb/domain/InpatientDischarge.java | 180 ++ .../openhis/yb/domain/InpatientFeeDetail.java | 227 ++ .../openhis/yb/domain/InpatientPreSettle.java | 338 ++ .../com/openhis/yb/domain/InpatientReg.java | 262 ++ .../domain/InpatientRegInfoUpdateRecorde.java | 241 ++ .../openhis/yb/domain/InpatientSettle.java | 319 ++ .../yb/domain/InpatientUnDischarge.java | 53 + .../com/openhis/yb/domain/InpatientUnReg.java | 53 + .../openhis/yb/domain/InpatientUnSettle.java | 258 ++ .../yb/domain/InpatientcancelFeeDetail.java | 66 + .../yb/domain/InventoryChangeRecord.java | 95 + .../yb/domain/InventoryCheckRecord.java | 82 + .../openhis/yb/domain/InventoryDelRecord.java | 42 + .../yb/domain/InventoryPurchaseRecord.java | 121 + .../domain/InventoryPurchaseReturnRecord.java | 109 + .../yb/domain/InventorySaleRecord.java | 193 ++ .../yb/domain/InventorySaleReturnRecord.java | 132 + .../main/java/com/openhis/yb/domain/Sign.java | 76 + .../java/com/openhis/yb/dto/BaseInfo.java | 96 + .../java/com/openhis/yb/dto/BaseParam.java | 14 + .../com/openhis/yb/dto/CancelPaymentDto.java | 59 + .../openhis/yb/dto/CancelRegPaymentDto.java | 50 + .../openhis/yb/dto/Catalogue1312Output.java | 117 + .../yb/dto/Catalogue1312QueryParam.java | 50 + .../openhis/yb/dto/ChargeItemDetailVO.java | 13 + .../com/openhis/yb/dto/ChargeItemDto.java | 22 + .../openhis/yb/dto/ChargeItemGroupDto.java | 30 + .../openhis/yb/dto/Clearing3204AParam.java | 29 + .../openhis/yb/dto/Clearing3205AParma.java | 33 + .../openhis/yb/dto/Clearing3205AResult.java | 91 + .../openhis/yb/dto/Clearing3205AWebParma.java | 27 + .../openhis/yb/dto/Clearing3206AParam.java | 33 + .../openhis/yb/dto/Clearing3206AResult.java | 33 + .../yb/dto/Clinic2203DiseInfoParam.java | 110 + .../com/openhis/yb/dto/Clinic2203Medical.java | 83 + .../yb/dto/Clinic2203MedicalParam.java | 79 + .../yb/dto/Clinic2204FeeDetailParam.java | 242 ++ .../yb/dto/Clinic2204FeeDetailResult.java | 63 + .../openhis/yb/dto/Clinic2204OrderParam.java | 37 + .../openhis/yb/dto/Clinic2204OrderResult.java | 26 + .../openhis/yb/dto/Clinic2205OrderParam.java | 39 + .../yb/dto/Clinic2206FundPaymentResult.java | 42 + .../openhis/yb/dto/Clinic2206OrderOutput.java | 140 + .../openhis/yb/dto/Clinic2206OrderParam.java | 110 + .../openhis/yb/dto/Clinic2206OrderResult.java | 161 + .../yb/dto/Clinic2206OrderResultDto.java | 90 + .../yb/dto/Clinic2206SetldetaiResult.java | 59 + .../openhis/yb/dto/Clinic2207OrderResult.java | 158 + .../yb/dto/Clinic2207OrderResultDto.java | 14 + .../yb/dto/Clinic2207OrderResultInfoDto.java | 74 + .../yb/dto/Clinic2208UnSetlInfoOutput.java | 106 + .../yb/dto/Clinic2208UnSetlInfoParam.java | 43 + .../yb/dto/Clinic2208UnSetlInfoResult.java | 137 + .../java/com/openhis/yb/dto/ClinicReg.java | 116 + .../openhis/yb/dto/ClinicReg2201Output.java | 66 + .../yb/dto/DispenseInventory3505Dto.java | 103 + .../yb/dto/EleInvoiceChargeDetailDto.java | 34 + .../yb/dto/EleInvoiceListDetailDto.java | 46 + .../yb/dto/EleInvoicePatientInfoDto.java | 75 + .../yb/dto/EleInvoicePaymentInfoDto.java | 60 + .../openhis/yb/dto/EleInvoiceResultDto.java | 73 + .../com/openhis/yb/dto/File9101Param.java | 14 + .../java/com/openhis/yb/dto/FileDownload.java | 26 + .../java/com/openhis/yb/dto/FileResult.java | 43 + .../openhis/yb/dto/Financial13203Param.java | 53 + .../openhis/yb/dto/Financial13203Result.java | 58 + .../yb/dto/Financial13203WebParam.java | 49 + .../openhis/yb/dto/Financial3201Output.java | 19 + .../openhis/yb/dto/Financial3201Param.java | 81 + .../yb/dto/Financial3202FileParam.java | 76 + .../yb/dto/Financial3202FileResult.java | 56 + .../yb/dto/Financial3202OtherParam.java | 21 + .../openhis/yb/dto/Financial3203AParam.java | 75 + .../yb/dto/Financial3203AWebParam.java | 37 + .../com/openhis/yb/dto/Financial3203Dto.java | 39 + .../openhis/yb/dto/Financial3203Param.java | 72 + .../openhis/yb/dto/Financial3203WebParam.java | 42 + .../openhis/yb/dto/Financial3204Param.java | 32 + .../dto/FinancialClearing3203AWebParam.java | 19 + .../yb/dto/FinancialSettlement3202Param.java | 68 + .../yb/dto/FinancialSettlement3202Result.java | 37 + .../yb/dto/FinancialSettlement3209AParam.java | 40 + .../dto/FinancialSettlement3209AResult.java | 28 + .../yb/dto/FsiConsultation3101Param.java | 46 + .../openhis/yb/dto/FsiDiagnose3101Param.java | 57 + .../openhis/yb/dto/FsiEncounter3101Param.java | 167 + .../yb/dto/FsiFeedback3103DataParam.java | 27 + .../yb/dto/FsiFeedback3103WarnsParam.java | 31 + .../openhis/yb/dto/FsiOperation3101Param.java | 67 + .../com/openhis/yb/dto/FsiOrder3101Param.java | 168 + .../openhis/yb/dto/FsiPatient3101Param.java | 61 + .../yb/dto/FsiViolation3101Result.java | 72 + .../yb/dto/FsiViolationDetail3101Result.java | 43 + .../yb/dto/HospAdm2401DiseInfoParam.java | 70 + .../yb/dto/HospAdm2401MdtInfoParam.java | 193 ++ .../yb/dto/HospAdm2402DiseInfoParam.java | 72 + .../yb/dto/HospAdm2402DscgInfoParam.java | 131 + .../yb/dto/HospAdm2403AdmInfoParam.java | 182 ++ .../yb/dto/HospAdm2403DiseInfoParam.java | 76 + .../yb/dto/HospAdm2404AdmCnlParam.java | 32 + .../yb/dto/HospAdm2406SmAttrUpParam.java | 62 + .../yb/dto/HospAdm2407SmAttrSelectParam.java | 78 + .../yb/dto/HospAdm2407SmAttrSelectResult.java | 67 + .../openhis/yb/dto/HospDept3401AParam.java | 19 + .../com/openhis/yb/dto/HospDept3401Param.java | 89 + .../com/openhis/yb/dto/HospDept3402Param.java | 89 + .../com/openhis/yb/dto/HospDept3403Param.java | 28 + .../yb/dto/HospTrf2501ARefmedinParam.java | 109 + .../yb/dto/HospTrf2501RefmedinParam.java | 108 + .../openhis/yb/dto/HospTrfCxl2502Param.java | 31 + .../com/openhis/yb/dto/Info1101Output.java | 68 + .../openhis/yb/dto/Info1101PerinfoResult.java | 58 + .../openhis/yb/dto/Info1101ReadcardParam.java | 45 + .../com/openhis/yb/dto/Info5301Param.java | 14 + .../dto/Info5301SpecialConditionResult.java | 21 + .../openhis/yb/dto/InvoiceBaseInfoDto.java | 104 + .../openhis/yb/dto/MatAllowReg25007Param.java | 58 + .../yb/dto/MatAllowReg25007Result.java | 84 + .../yb/dto/MatAllowRegSel25008Param.java | 84 + .../com/openhis/yb/dto/Medical3503Param.java | 113 + .../com/openhis/yb/dto/Medical3505Param.java | 179 ++ .../com/openhis/yb/dto/Medical3505Result.java | 29 + .../com/openhis/yb/dto/Medical3506Param.java | 118 + .../com/openhis/yb/dto/Medical3507Param.java | 29 + .../com/openhis/yb/dto/Medical3508Param.java | 102 + .../com/openhis/yb/dto/Medical3508Result.java | 104 + .../yb/dto/MedicalDirectory3301ListParam.java | 16 + .../yb/dto/MedicalDirectory3301Param.java | 69 + .../yb/dto/MedicalDirectory3302Param.java | 32 + .../yb/dto/MedicalInventory3501Param.java | 72 + .../yb/dto/MedicalInventory3502Param.java | 81 + .../yb/dto/MedicalPurchase3504Param.java | 95 + .../com/openhis/yb/dto/MedicalTraceNoDto.java | 28 + .../com/openhis/yb/dto/PatientInfoDto.java | 84 + .../yb/dto/PaymentDecDetailUniAccountDto.java | 31 + .../com/openhis/yb/dto/PaymentDetailDto.java | 37 + .../java/com/openhis/yb/dto/PaymentDto.java | 45 + .../openhis/yb/dto/PaymentInpatientDto.java | 55 + .../com/openhis/yb/dto/PaymentSettleDto.java | 19 + .../dto/PersBirthApprovalCnl25004Param.java | 27 + .../dto/PersBirthApprovalSel25005Param.java | 66 + .../yb/dto/PersBirthRecord25003Param.java | 126 + .../openhis/yb/dto/PersChrDis2503Param.java | 83 + .../yb/dto/PersChrDisCxl2504Param.java | 30 + .../openhis/yb/dto/PersDesigPt2505Param.java | 100 + .../yb/dto/PersDesigPtCxl2506Param.java | 30 + .../yb/dto/PersMedApprovalCnl25006Param.java | 26 + .../yb/dto/PersMedRecord25001Param.java | 86 + .../yb/dto/PersMedSelect25002Param.java | 39 + .../yb/dto/PersMedSelect25002Result.java | 91 + .../openhis/yb/dto/PersUnintInj2507Param.java | 168 + .../com/openhis/yb/dto/PrePaymentDto.java | 46 + .../main/java/com/openhis/yb/dto/Result.java | 48 + .../java/com/openhis/yb/dto/ResultBody.java | 39 + .../yb/dto/Settlement3201DetailDto.java | 39 + .../com/openhis/yb/dto/Settlement3201Dto.java | 28 + .../yb/dto/Settlement3201WebParam.java | 38 + .../com/openhis/yb/dto/Settlement3202Dto.java | 45 + .../yb/dto/Settlement3202WebParam.java | 37 + .../yb/dto/Settlement3209AWebParam.java | 30 + .../main/java/com/openhis/yb/dto/Sign.java | 62 + .../com/openhis/yb/dto/Sign1101Param.java | 19 + .../com/openhis/yb/dto/Sign9001Result.java | 24 + .../yb/dto/SupplyItemDetail3503Dto.java | 126 + .../yb/dto/VeriPrescriptionDetailInfoDto.java | 101 + .../yb/dto/VeriPrescriptionInfoDto.java | 53 + .../openhis/yb/dto/VeriPrescriptionParam.java | 21 + .../openhis/yb/dto/Yb2301InputFeeDetail.java | 194 ++ .../yb/dto/Yb2301InputFeeDetailModel.java | 29 + .../openhis/yb/dto/Yb2301OutputResult.java | 124 + .../openhis/yb/dto/Yb2302InputInpatient.java | 35 + .../openhis/yb/dto/Yb2303InputInpatient.java | 123 + .../openhis/yb/dto/Yb2303OutputSetInfo.java | 292 ++ .../openhis/yb/dto/Yb2304InputExpContent.java | 31 + .../openhis/yb/dto/Yb2304InputInpatient.java | 115 + .../openhis/yb/dto/Yb2304OutputSetlInfo.java | 279 ++ .../openhis/yb/dto/Yb2305InputInpatient.java | 35 + .../openhis/yb/dto/Yb2305OutputSetlInfo.java | 224 ++ .../yb/dto/Yb2401InputInpatientDiseInfo.java | 82 + .../yb/dto/Yb2401InputInpatientMdtrtInfo.java | 239 ++ .../dto/Yb2401InputInpatientTrumContent.java | 38 + .../yb/dto/Yb2402InputInpatientDiseInfo.java | 88 + .../yb/dto/Yb2402InputInpatientDscgInfo.java | 164 + .../com/openhis/yb/dto/Yb2402InputParam.java | 26 + .../openhis/yb/dto/Yb2403InputAdmInfo.java | 226 ++ .../openhis/yb/dto/Yb2403InputDiseInfo.java | 92 + .../yb/dto/Yb2403InputMdtrtGrpContent.java | 20 + .../com/openhis/yb/dto/Yb2403InputParam.java | 30 + .../yb/dto/Yb2403InputTrumContent.java | 30 + .../openhis/yb/dto/Yb2404InputInpatient.java | 36 + .../openhis/yb/dto/Yb2405InputInpatient.java | 39 + .../Yb3101AdapterEncounterDiagnoseInfo.java | 52 + .../Yb3101AdapterEncounterPatientInfo.java | 128 + .../yb/dto/Yb3101AdapterOrderInfo.java | 118 + .../com/openhis/yb/dto/Yb3101InputData.java | 58 + .../yb/dto/Yb3101InputFsiDiagnoseDto.java | 81 + .../yb/dto/Yb3101InputFsiEncounterDto.java | 283 ++ .../yb/dto/Yb3101InputFsiOperationDto.java | 94 + .../yb/dto/Yb3101InputFsiOrderDto.java | 281 ++ .../openhis/yb/dto/Yb3101InputPatientDto.java | 88 + .../dto/Yb3101OutputJudgeResultDetailDto.java | 69 + .../openhis/yb/dto/Yb3101OutputResult.java | 124 + .../com/openhis/yb/dto/Yb3103InputData.java | 39 + .../com/openhis/yb/dto/Yb3103InputWarn.java | 42 + .../yb/dto/Yb4101AAdapterSettleInfo.java | 67 + .../openhis/yb/dto/Yb4101AInputBldinfo.java | 40 + .../openhis/yb/dto/Yb4101AInputDiseinfo.java | 61 + .../openhis/yb/dto/Yb4101AInputIcuinfo.java | 54 + .../openhis/yb/dto/Yb4101AInputOprninfo.java | 98 + .../yb/dto/Yb4101AInputOpspdiseinfo.java | 53 + .../openhis/yb/dto/Yb4101AInputSetlinfo.java | 446 +++ .../com/openhis/yb/dto/Yb4101AOutputData.java | 29 + .../yb/dto/Yb5205InputSpecialDisease.java | 43 + .../yb/dto/Yb5205OutputSpecialDisease.java | 219 ++ .../main/java/com/openhis/yb/dto/extData.java | 96 + .../yb/mapper/ClinicPreSettleMapper.java | 17 + .../openhis/yb/mapper/ClinicSettleMapper.java | 17 + .../openhis/yb/mapper/ClinicUnRegMapper.java | 17 + .../yb/mapper/ClinicUnSettleMapper.java | 17 + .../yb/mapper/DirectoryCheckRecordMapper.java | 17 + .../yb/mapper/FinancialApplyRecordMapper.java | 17 + .../FinancialReconcileRecordMapper.java | 17 + .../yb/mapper/InpatientFeeDetailMapper.java | 10 + .../openhis/yb/mapper/InpatientRegMapper.java | 19 + .../yb/mapper/InpatientSettleMapper.java | 10 + .../mapper/InventoryChangeRecordMapper.java | 17 + .../yb/mapper/InventoryCheckRecordMapper.java | 17 + .../yb/mapper/InventoryDelRecordMapper.java | 17 + .../mapper/InventoryPurchaseRecordMapper.java | 17 + .../InventoryPurchaseReturnRecordMapper.java | 17 + .../yb/mapper/InventorySaleRecordMapper.java | 17 + .../InventorySaleReturnRecordMapper.java | 17 + .../yb/mapper/MedicalInsuranceMapper.java | 60 + .../com/openhis/yb/mapper/PerinfoMapper.java | 11 + .../java/com/openhis/yb/mapper/RegMapper.java | 13 + .../com/openhis/yb/mapper/SignMapper.java | 12 + .../yb/model/CancelRegPaymentModel.java | 53 + .../yb/model/Clinic2207OrderModel.java | 126 + .../yb/model/Clinic2207OrderParam.java | 88 + .../yb/model/OutpatientRegistrationModel.java | 19 + .../yb/service/IClinicPreSettleService.java | 14 + .../yb/service/IClinicSettleService.java | 39 + .../yb/service/IClinicUnRegService.java | 14 + .../yb/service/IClinicUnSettleService.java | 23 + .../service/IDirectoryCheckRecordService.java | 14 + .../service/IFinancialApplyRecordService.java | 14 + .../IFinancialReconcileRecordService.java | 14 + .../service/IInpatientFeeDetailService.java | 8 + .../yb/service/IInpatientRegService.java | 25 + .../yb/service/IInpatientSettleService.java | 14 + .../IInventoryChangeRecordService.java | 14 + .../service/IInventoryCheckRecordService.java | 14 + .../service/IInventoryDelRecordService.java | 14 + .../IInventoryPurchaseRecordService.java | 14 + ...IInventoryPurchaseReturnRecordService.java | 14 + .../service/IInventorySaleRecordService.java | 14 + .../IInventorySaleReturnRecordService.java | 14 + .../openhis/yb/service/IPerinfoService.java | 44 + .../com/openhis/yb/service/IRegService.java | 23 + .../com/openhis/yb/service/ISignService.java | 11 + .../java/com/openhis/yb/service/YbDao.java | 2800 +++++++++++++++++ .../com/openhis/yb/service/YbHttpUtils.java | 1079 +++++++ .../com/openhis/yb/service/YbManager.java | 1034 ++++++ .../impl/ClinicPreSettleServiceImpl.java | 19 + .../service/impl/ClinicSettleServiceImpl.java | 44 + .../service/impl/ClinicUnRegServiceImpl.java | 20 + .../impl/ClinicUnSettleServiceImpl.java | 35 + .../impl/DirectoryCheckRecordServiceImpl.java | 20 + .../impl/FinancialApplyRecordServiceImpl.java | 19 + .../FinancialReconcileRecordServiceImpl.java | 20 + .../impl/InpatientFeeDetailServiceImpl.java | 11 + .../service/impl/InpatientRegServiceImpl.java | 29 + .../impl/InpatientSettleServiceImpl.java | 18 + .../InventoryChangeRecordServiceImpl.java | 19 + .../impl/InventoryCheckRecordServiceImpl.java | 19 + .../impl/InventoryDelRecordServiceImpl.java | 19 + .../InventoryPurchaseRecordServiceImpl.java | 19 + ...entoryPurchaseReturnRecordServiceImpl.java | 19 + .../impl/InventorySaleRecordServiceImpl.java | 19 + .../InventorySaleReturnRecordServiceImpl.java | 19 + .../yb/service/impl/PerinfoServiceImpl.java | 65 + .../yb/service/impl/RegServiceImpl.java | 39 + .../yb/service/impl/SignServiceImpl.java | 16 + .../com/openhis/yb/util/CommonConstant.java | 327 ++ .../openhis/yb/util/YbParamBuilderUtil.java | 2440 ++++++++++++++ .../ybcatalog/domain/CatalogDrugInfo.java | 319 ++ .../domain/CatalogDrugInfoUsual.java | 319 ++ .../domain/CatalogMedicalConsumables.java | 241 ++ .../domain/CatalogMedicalHerbInfo.java | 121 + .../domain/CatalogMedicalService.java | 88 + .../domain/CatalogSpecialDisease.java | 70 + .../CatalogSpecialInsuranceDisease.java | 30 + .../CatalogSurgeryStandardDirectory.java | 94 + .../domain/CatalogWesternDisease.java | 94 + .../domain/CatalogZyDiseaseDiagnosis.java | 64 + .../ybcatalog/domain/CatalogZySyndrome.java | 64 + .../mapper/CatalogDrugInfoMapper.java | 17 + .../mapper/CatalogDrugInfoUsualMapper.java | 17 + .../CatalogMedicalConsumablesMapper.java | 17 + .../mapper/CatalogMedicalHerbInfoMapper.java | 17 + .../mapper/CatalogMedicalServiceMapper.java | 17 + .../mapper/CatalogSpecialDiseaseMapper.java | 17 + ...CatalogSurgeryStandardDirectoryMapper.java | 17 + .../mapper/CatalogWesternDiseaseMapper.java | 17 + .../CatalogZyDiseaseDiagnosisMapper.java | 17 + .../mapper/CatalogZySyndromeMapper.java | 17 + .../service/ICatalogDrugInfoService.java | 28 + .../service/ICatalogDrugInfoUsualService.java | 23 + .../ICatalogMedicalConsumablesService.java | 14 + .../ICatalogMedicalHerbInfoService.java | 14 + .../ICatalogMedicalServiceService.java | 14 + .../ICatalogSpecialDiseaseService.java | 14 + ...atalogSurgeryStandardDirectoryService.java | 14 + .../ICatalogWesternDiseaseService.java | 14 + .../ICatalogZyDiseaseDiagnosisService.java | 14 + .../service/ICatalogZySyndromeService.java | 14 + .../impl/CatalogDrugInfoServiceImpl.java | 31 + .../impl/CatalogDrugInfoUsualServiceImpl.java | 35 + .../CatalogMedicalConsumablesServiceImpl.java | 19 + .../CatalogMedicalHerbInfoServiceImpl.java | 19 + .../CatalogMedicalServiceServiceImpl.java | 19 + .../CatalogSpecialDiseaseServiceImpl.java | 20 + ...ogSurgeryStandardDirectoryServiceImpl.java | 19 + .../CatalogWesternDiseaseServiceImpl.java | 19 + .../CatalogZyDiseaseDiagnosisServiceImpl.java | 19 + .../impl/CatalogZySyndromeServiceImpl.java | 19 + .../ybelep/domain/ElepMedresultDetail.java | 64 + .../ybelep/domain/ElepMedresultInfo.java | 49 + .../ybelep/domain/ElepMedresultInput.java | 49 + .../ybelep/domain/ElepQuerDiagnosisInfo.java | 73 + .../domain/ElepQuerPrescriptionDetail.java | 142 + .../domain/ElepQuerPrescriptionInfo.java | 120 + .../domain/ElepQuerPrescriptionInput.java | 49 + .../ybelep/domain/ElepQuerVisitInfo.java | 109 + .../ybelep/domain/ElepRevokeInput.java | 60 + .../ybelep/domain/ElepRevokeOutput.java | 41 + .../ybelep/domain/ElepSignatureInput.java | 52 + .../ybelep/domain/ElepSignatureOutput.java | 49 + .../ybelep/domain/ElepUploadInput.java | 104 + .../ybelep/domain/ElepUploadOutput.java | 40 + .../ybelep/domain/ElepVeriDiagnosisInfo.java | 86 + .../domain/ElepVeriPrescriptionDetail.java | 157 + .../domain/ElepVeriPrescriptionInfo.java | 126 + .../domain/ElepVeriPrescriptionOutput.java | 36 + .../ybelep/domain/ElepVeriVisitInfo.java | 182 ++ .../ybelep/domain/InformationInquiry.java | 26 + .../domain/MedicationResultInquiry.java | 41 + .../ybelep/domain/PreCheckPrescription.java | 129 + .../ybelep/domain/QueryPrescription.java | 122 + .../mapper/ElepMedresultDetailMapper.java | 17 + .../mapper/ElepMedresultInfoMapper.java | 17 + .../mapper/ElepMedresultInputMapper.java | 17 + .../mapper/ElepQuerDiagnosisInfoMapper.java | 17 + .../ElepQuerPrescriptionDetailMapper.java | 17 + .../ElepQuerPrescriptionInfoMapper.java | 17 + .../ElepQuerPrescriptionInputMapper.java | 17 + .../mapper/ElepQuerVisitInfoMapper.java | 17 + .../ybelep/mapper/ElepRevokeInputMapper.java | 17 + .../ybelep/mapper/ElepRevokeOutputMapper.java | 17 + .../mapper/ElepSignatureInputMapper.java | 17 + .../mapper/ElepSignatureOutputMapper.java | 17 + .../ybelep/mapper/ElepUploadInputMapper.java | 17 + .../ybelep/mapper/ElepUploadOutputMapper.java | 17 + .../mapper/ElepVeriDiagnosisInfoMapper.java | 17 + .../ElepVeriPrescriptionDetailMapper.java | 17 + .../ElepVeriPrescriptionInfoMapper.java | 17 + .../ElepVeriPrescriptionOutputMapper.java | 17 + .../mapper/ElepVeriVisitInfoMapper.java | 17 + .../service/IElepMedresultDetailService.java | 14 + .../service/IElepMedresultInfoService.java | 14 + .../service/IElepMedresultInputService.java | 14 + .../IElepQuerDiagnosisInfoService.java | 14 + .../IElepQuerPrescriptionDetailService.java | 14 + .../IElepQuerPrescriptionInfoService.java | 14 + .../IElepQuerPrescriptionInputService.java | 14 + .../service/IElepQuerVisitInfoService.java | 14 + .../service/IElepRevokeInputService.java | 14 + .../service/IElepRevokeOutputService.java | 14 + .../service/IElepSignatureInputService.java | 14 + .../service/IElepSignatureOutputService.java | 14 + .../service/IElepUploadInputService.java | 14 + .../service/IElepUploadOutputService.java | 14 + .../IElepVeriDiagnosisInfoService.java | 14 + .../IElepVeriPrescriptionDetailService.java | 14 + .../IElepVeriPrescriptionInfoService.java | 14 + .../IElepVeriPrescriptionOutputService.java | 14 + .../service/IElepVeriVisitInfoService.java | 14 + .../impl/ElepMedresultDetailServiceImpl.java | 19 + .../impl/ElepMedresultInfoServiceImpl.java | 19 + .../impl/ElepMedresultInputServiceImpl.java | 19 + .../ElepQuerDiagnosisInfoServiceImpl.java | 19 + ...ElepQuerPrescriptionDetailServiceImpl.java | 19 + .../ElepQuerPrescriptionInfoServiceImpl.java | 19 + .../ElepQuerPrescriptionInputServiceImpl.java | 19 + .../impl/ElepQuerVisitInfoServiceImpl.java | 19 + .../impl/ElepRevokeInputServiceImpl.java | 19 + .../impl/ElepRevokeOutputServiceImpl.java | 19 + .../impl/ElepSignatureInputServiceImpl.java | 19 + .../impl/ElepSignatureOutputServiceImpl.java | 19 + .../impl/ElepUploadInputServiceImpl.java | 19 + .../impl/ElepUploadOutputServiceImpl.java | 19 + .../ElepVeriDiagnosisInfoServiceImpl.java | 19 + ...ElepVeriPrescriptionDetailServiceImpl.java | 19 + .../ElepVeriPrescriptionInfoServiceImpl.java | 19 + ...ElepVeriPrescriptionOutputServiceImpl.java | 19 + .../impl/ElepVeriVisitInfoServiceImpl.java | 19 + openhis-ui-vue3/.gitignore | 24 + openhis-ui-vue3/HospitalRecordForm.vue | 116 + openhis-ui-vue3/package-lock.json | 903 ++++-- openhis-ui-vue3/src/assets/images/ty.jpg | Bin 0 -> 39365 bytes .../src/template/nursingRecordSheet.vue | 392 +++ .../src/template/surgicalPatientHandover.vue | 90 +- .../src/template/useOptionsList.js | 21 + openhis-ui-vue3/src/utils/his.js | 272 +- .../caseTemplatesStatistics/api.js | 80 + .../components/editStatistics.vue | 132 + .../caseTemplatesStatistics/index.vue | 298 ++ .../caseTemplatesStatistics/index1.vue | 144 + .../device/components/deviceDialog.vue | 2 +- .../catalog/diagnosistreatment/index.vue | 78 + .../medicine/components/medicineDialog.vue | 2 +- .../medicine/components/medicineYbDialog.vue | 48 +- .../cliniccharge/components/chargeDialog.vue | 13 +- .../cliniccharge/components/template.json | 187 +- .../src/views/charge/cliniccharge/index.vue | 113 +- .../components/patientAddDialog.vue | 2 +- .../dayEnd/component/template.json | 191 +- .../clinicmanagement/dayEnd/indexccu.vue | 49 +- .../views/clinicmanagement/disposal/index.vue | 1 - .../components/adviceBaseList.vue | 28 +- .../src/views/doctorstation/components/api.js | 33 + .../diagnosis/addDiagnosisDialog.vue | 4 +- .../components/diagnosis/diagnosis.vue | 15 +- .../components/diagnosis/diagnosisdialog.vue | 49 +- .../components/emr/emrtemplate.vue | 51 +- .../components/eprescriptiondialog.vue | 71 +- .../prescription/prescriptionHistory.vue | 7 +- .../prescription/prescriptionlist.vue | 58 +- .../hospitalRecord/HospitalRecordForm.vue | 269 ++ .../components/medicalRecordFirst.vue | 472 +++ .../components/medicalRecordFirstPrint.json | 3 + .../components/medicalRecordSecond.vue | 345 ++ .../components/medicalRecordThird.vue | 10 + openhis-ui-vue3/src/views/index.vue | 6 +- .../src/views/inpatientDoctor/home/emr/api.js | 36 + .../home/emr/components/history.vue | 2 +- .../home/emr/components/template.vue | 112 + .../home/emr/components/templateEdit.vue | 133 + .../views/inpatientDoctor/home/emr/index.vue | 169 +- .../medicalOrderExecution/components/api.js | 22 + .../components/prescriptionList.vue | 257 +- .../medicalOrderExecution/index.vue | 39 +- .../medicalOrderProofread/components/api.js | 22 + .../components/patientList.vue | 4 +- .../components/prescriptionList.vue | 249 +- .../medicalOrderProofread/index.vue | 83 +- openhis-ui-vue3/src/views/login.vue | 12 +- .../adjustmentProfitLossRecord/index.vue | 165 + .../chkstock/chkstockBatch/index.vue | 7 +- .../chkstock/chkstockPart/index.vue | 2144 ++++++++----- .../chkstock/chkstockRecord/index.vue | 3 +- .../lossReporting/index.vue | 7 +- .../components/api.js | 58 + .../components/medicineList.vue | 74 + .../priceAdjustmentManagement/index.vue | 636 ++++ .../purchaseDocument/index.vue | 859 ++--- .../requisitionManagement/index.vue | 7 +- .../returningInventory/index.vue | 7 +- .../returnedPurchase/index.vue | 6 +- .../liquidationRecords.vue | 654 ++-- .../purchaseDocumentDetsils.vue | 142 +- .../statisticalManagement/reconciliation.vue | 109 +- .../transferManagent/batchTransfer/index.vue | 7 +- .../transferManagent/index.vue | 14 +- .../components/templateJson.json | 24 +- .../westernmedicine/index.vue | 343 +- .../src/views/system/dict/index.vue | 447 +-- openhis-ui-vue3/vite.config.js | 2 +- 488 files changed, 41334 insertions(+), 2799 deletions(-) create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java create mode 100644 openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java create mode 100644 openhis-ui-vue3/.gitignore create mode 100644 openhis-ui-vue3/HospitalRecordForm.vue create mode 100644 openhis-ui-vue3/src/assets/images/ty.jpg create mode 100644 openhis-ui-vue3/src/template/nursingRecordSheet.vue create mode 100644 openhis-ui-vue3/src/template/useOptionsList.js create mode 100644 openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/api.js create mode 100644 openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/components/editStatistics.vue create mode 100644 openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index.vue create mode 100644 openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index1.vue create mode 100644 openhis-ui-vue3/src/views/hospitalRecord/HospitalRecordForm.vue create mode 100644 openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirst.vue create mode 100644 openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirstPrint.json create mode 100644 openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordSecond.vue create mode 100644 openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordThird.vue create mode 100644 openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue create mode 100644 openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/templateEdit.vue create mode 100644 openhis-ui-vue3/src/views/medicationmanagement/adjustmentProfitLossRecord/index.vue create mode 100644 openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/api.js create mode 100644 openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/medicineList.vue create mode 100644 openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/index.vue diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java new file mode 100644 index 00000000..9425c687 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicPreSettle.java @@ -0,0 +1,62 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + * 【2206】医保预结算实体 + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@TableName("yb_clinc_pre_settle") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ClinicPreSettle extends HisBaseEntity implements Serializable { + + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + + //内部就诊ID + @JSONField(serialize=false) + private String regId; + + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + + //结算批次号 + @JSONField(name="chrg_bchno") + private String chrgBchno;//对应payment的显示用流水 + + private String param2203; + + private String result2203; + + private String param2204; + + private String result2204; + + private String param2206; + + private String result2206; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java new file mode 100644 index 00000000..69ea4795 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicReg.java @@ -0,0 +1,109 @@ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.Date; + +/** + *【2201】【2202】挂号 退号 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@TableName("yb_clinc_reg") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ClinicReg extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + //参保地医保区划 + @JSONField(name="insuplc_admdvs") + private String insuplcAdmdvs; + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + //险种类型 + @Dict(dictCode = "insutype") + @JSONField(name="insutype") + private String insutype; + //医疗类别 + @Dict(dictCode = "med_type") + @JSONField(serialize=false) + private String medType; + //挂号时间 + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(name="begntime") + private Date begntime; + //就诊凭证类型 + @JSONField(name="mdtrt_cert_type") + private String mdtrtCertType; + //就诊凭证编号 + @JSONField(name="mdtrt_cert_no") + private String mdtrtCertNo; + //证件加密串 + @JSONField(serialize=false) + @TableField(exist = false) + private String busiCardInfo; + //住院/门诊号 + @JSONField(name="ipt_otp_no") + private String iptOtpNo; + //医师编码 + @JSONField(name="atddr_no") + private String atddrNo; + //医师姓名 + @JSONField(name="dr_name") + private String drName; + //科室编码 + @JSONField(name="dept_code") + private String deptCode; + //科室名称 + @JSONField(name="dept_name") + private String deptName; + //科别 + @JSONField(name="caty") + private String caty; + //挂号费 + @JSONField(serialize=false) + private Double regFee; + //检查费 + @JSONField(serialize=false) + private Double checkFee; + //应收金额 + @JSONField(serialize=false) + private Double totalFee; + //状态,0-挂号,1-看诊,2-费用明细,3-预结算,4-结算 + @JSONField(serialize=false) + private String status; + @JSONField(name="psn_cert_type") + @TableField(exist = false) + private String psnCertType; + @JSONField(name="certno") + @TableField(exist = false) + private String certno; + @JSONField(name="psn_type") + @TableField(exist = false) + private String psnType; + @JSONField(name="psn_name") + @TableField(exist = false) + private String psnName; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java new file mode 100644 index 00000000..c13484b4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicSettle.java @@ -0,0 +1,112 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【2207结算记录】 + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@TableName("yb_clinc_settle") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ClinicSettle { + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + + private String setlId;//结算id + + private String mdtrtId; // 就诊ID + + private String psnName; // 人员姓名 + + private String psnCertType; // 人员证件类型 + + private String certno; // 证件号码 + + private String insutype; // 险种类型 + + private String psnType; // 人员类别 + + private String cvlservFlag; // 公务员标志 + + private Date setlTime; // 结算时间 + + private String mdtrtCertType; // 就诊凭证类型 + + private String medType; // 医疗类别 + + private BigDecimal medfeeSumamt; // 医疗费总额 + + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + private BigDecimal preselfpayAmt; // 先行自付金额 + + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + private BigDecimal actPayDedc; // 实际支付起付线 + + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + private BigDecimal mafPay; // 医疗救助基金支出 + + private BigDecimal othPay; // 其他支出 + + private BigDecimal fundPaySumamt; // 基金支付总额 + + private BigDecimal psnPartAmt; // 个人负担总金额 + + private BigDecimal acctPay; // 个人账户支出 + + private BigDecimal psnCashPay; // 个人现金支出 + + private BigDecimal hospPartAmt; // 医院负担金额 + + private BigDecimal balc; // 余额 + + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + private String medinsSetlId; // 医药机构结算ID + + private String clrOptins; // 清算经办机构 + + private String clrWay; // 清算方式 + + private String clrType; // 清算类别 + + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + private String paymentNo;//结算业务流水号 Payment与ClinicSettle是1:N + + private String param2207; + + private String result2207; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java new file mode 100644 index 00000000..975bfe52 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnReg.java @@ -0,0 +1,47 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * 【2202】挂号撤销 + * + * @author SunJQ + * @date 2025-04-21 + */ +@Data +@TableName("yb_clinc_un_reg") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ClinicUnReg { + + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + + //住院/门诊号 + @JSONField(name="ipt_otp_no") + private String iptOtpNo; + + //取消挂号时间 + private Date unRegTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java new file mode 100644 index 00000000..d4a2e15b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/ClinicUnSettle.java @@ -0,0 +1,111 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【2208结算撤销】 + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@TableName("yb_clinc_un_settle") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ClinicUnSettle extends HisBaseEntity { + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + + private String mdtrtId; // 就诊ID + + private String psnName; // 人员姓名 + + private String psnCertType; // 人员证件类型 + + private String certno; // 证件号码 + + private String insutype; // 险种类型 + + private String psnType; // 人员类别 + + private String cvlservFlag; // 公务员标志 + + private Date setlTime; // 结算时间 + + private String mdtrtCertType; // 就诊凭证类型 + + private String medType; // 医疗类别 + + private BigDecimal medfeeSumamt; // 医疗费总额 + + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + private BigDecimal preselfpayAmt; // 先行自付金额 + + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + private BigDecimal actPayDedc; // 实际支付起付线 + + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + private BigDecimal mafPay; // 医疗救助基金支出 + + private BigDecimal othPay; // 其他支出 + + private BigDecimal fundPaySumamt; // 基金支付总额 + + private BigDecimal psnPartAmt; // 个人负担总金额 + + private BigDecimal acctPay; // 个人账户支出 + + private BigDecimal psnCashPay; // 个人现金支出 + + private BigDecimal hospPartAmt; // 医院负担金额 + + private BigDecimal balc; // 余额 + + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + private String medinsSetlId; // 医药机构结算ID + + private String clrOptins; // 清算经办机构 + + private String clrWay; // 清算方式 + + private String clrType; // 清算类别 + + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + private String param2208; + + private String result2208; + + private String settleId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java new file mode 100644 index 00000000..dca97849 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/DirectoryCheckRecord.java @@ -0,0 +1,46 @@ +package com.openhis.yb.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3301、3302】医保目录对照历史表 + * + * @author SunJQ + * @date 2025-04-27 + */ +@Data +@TableName("yb_directory_check_record") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class DirectoryCheckRecord extends HisBaseEntity { + + /** 主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 3301/3302 */ + private Integer type; + + /** 表名 */ + private String tableName; + + /** 业务表主键 */ + private Long tableId; + + /** 组织机构id */ + private Long orgId; + + /** 参数 */ + private String param; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java new file mode 100644 index 00000000..df2445a5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/File.java @@ -0,0 +1,39 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * 【9101】【9102】公用 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class File { + + // 文件查询号 + private String fileQuryNo; + + // 文件名称 + private String filename; + + // 下载截止时间 + private Date dldEndtime; + + // 文件数据 + private byte[] fileData; + + // 医药机构编号 + private String fixmedinsCode; + + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java new file mode 100644 index 00000000..ddec6451 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialApplyRecord.java @@ -0,0 +1,72 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.data.redis.core.index.PathBasedRedisIndexDefinition; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【3203】清算申请记录 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_financial_apply_record") +@EqualsAndHashCode(callSuper = false) +public class FinancialApplyRecord { + //主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + //医院id + private Long orgId; + + //开始时间 + private Date begndate; + + //结束时间 + private Date enddate; + + //清算类别 + private String clrType; + + //医疗费总额 + private BigDecimal medfeeSumamt; + + //医保认可费用总额 + private BigDecimal medSumfee; + + //基金申报总额 + private BigDecimal fundAppySum; + + //现金支付金额 + private BigDecimal cashPayamt; + + //个人账户支出 + private BigDecimal acctPay; + + //申请人 + private Long praId; + + //入参 + private String param; + + //医保输出参数:申请清算id + private String outResult; + + //申请状态 + private String status; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java new file mode 100644 index 00000000..3b2eb85b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/FinancialReconcileRecord.java @@ -0,0 +1,68 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.HisBaseEntity; +import com.openhis.common.annotation.Dict; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * [3201]对账记录 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +@Accessors(chain = true) +@TableName("yb_financial_reconcile_record") +@EqualsAndHashCode(callSuper = false) +public class FinancialReconcileRecord extends HisBaseEntity { + //主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + //定点医药机构编号 + private String fixmedinsCode; + //定点医药机构名称 + private String fixmedinsName; + //医保区划 + private String admvs; + //险种 + private String insutype; + //清算类别 + private String clrType; + //结算经办机构 + private String setlOptins; + //对账开始日期 + private String stmtBegndate; + //对账结束日期 + private String stmtEnddate; + //医疗费总额 + private Double medfeeSumamt; + //基金支付总额 + private Double fundPaySumamt; + //个人账户支付金额 + private Double acctPay; + //定点医药机构结算笔数 + private Integer fixmedinsSetlCnt; + //对账结果 + private String stmtRslt; + //对账结果说明 + private String stmtRsltDscr; + + //医院id + private Long orgId; + + //入参 + private String param; + + // + private String result; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java new file mode 100644 index 00000000..610a3470 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InfoPerson.java @@ -0,0 +1,93 @@ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import com.openhis.yb.dto.Info5301SpecialConditionResult; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【1101】获取身份信息 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@TableName("yb_pub_perinfo") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InfoPerson extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + //人员证件类型 + @JSONField(name="psn_cert_type") + private String psnCertType; + //证件号码 + @JSONField(name="certno") + private String certno; + //人员姓名 + @JSONField(name="psn_name") + private String psnName; + //性别 + @JSONField(name="gend") + private String gend; + //民族 + @JSONField(name="naty") + private String naty; + //出生日期 + @JSONField(name="brdy") + private Date brdy; + //年龄 + @JSONField(name="age") + private Double age; + //参保地医保区划 + @JSONField(serialize = false) + private String insuplcAdmdvs; + //险种类型 + @JSONField(serialize = false) + private String insutype; + //余额 + @JSONField(serialize = false) + private String balc; + + private String param1101; + + private String result1101; + + //人员类别 + private String psnType; + + //人员参保状态 + private String psnInsuStas; + + //个人参保日期 + private String psnInsuDate; + + //公务员标志 + private String cvlservFlag; + + //单位名称 + private String empName; + + //特慢病 + @TableField(exist = false) + private List feedetail; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java new file mode 100644 index 00000000..eef815b6 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientDischarge.java @@ -0,0 +1,180 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2402】出院办理 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_discharge") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientDischarge extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 险种类型 + */ + @JSONField(name = "insutype") + private String insutype; + + /** + * 结束时间(出院时间,格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") + private Date endtime; + + /** + * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) + */ + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 病种名称 + */ + @JSONField(name = "dise_name") + private String diseName; + + /** + * 手术操作代码(日间手术病种时必填) + */ + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 手术操作名称 + */ + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 计划生育服务证号 + */ + @JSONField(name = "fpsc_no") + private String fpscNo; + + /** + * 生育类别 + */ + @JSONField(name = "matn_type") + private String matnType; + + /** + * 计划生育手术类别 + */ + @JSONField(name = "birctrl_type") + private String birctrlType; + + /** + * 晚育标志 + */ + @JSONField(name = "latechb_flag") + private String latechbFlag; + + /** + * 孕周数 + */ + @JSONField(name = "esso_val") + private Integer essoVal; + + /** + * 胎次 + */ + @JSONField(name = "fetts") + private Integer fetts; + + /** + * 胎儿数 + */ + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + /** + * 早产标志 + */ + @JSONField(name = "pret_flag") + private String pretFlag; + + /** + * 计划生育手术或生育日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") + private Date birctrlMatnDate; + + /** + * 伴有并发症标志 + */ + @JSONField(name = "cop_flag") + private String copFlag; + + /** + * 出院科室编码 + */ + @JSONField(name = "dscg_dept_codg") + private String dscgDeptCodg; + + /** + * 出院科室名称 + */ + @JSONField(name = "dscg_dept_name") + private String dscgDeptName; + + /** + * 出院床位 + */ + @JSONField(name = "dscg_bed") + private String dscgBed; + + /** + * 离院方式 + */ + @JSONField(name = "dscg_way") + private String dscgWay; + + /** + * 死亡日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "die_date", format = "yyyy-MM-dd") + private Date dieDate; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java new file mode 100644 index 00000000..2a7aeccd --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientFeeDetail.java @@ -0,0 +1,227 @@ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2301】费用明细上传 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_fee_detail") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientFeeDetail extends HisBaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + /** + * 费用明细流水号 单次就诊内唯一(对应chargeItem的busNo) + */ + @JsonProperty("feedetl_sn") + private String feedetlSn; + + /** + * 原费用流水号 退单时传入被退单的费用明细流水号 + */ + @JsonProperty("init_feedetl_sn") + private String initFeedetlSn; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 医嘱号 + */ + @JsonProperty("drord_no") + private String drordNo; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 医疗类别 + */ + @JsonProperty("med_type") + private String medType; + + /** + * 费用发生时间 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("fee_ocur_time") + private Date feeOcurTime; + + /** + * 医保目录编码 + */ + @JsonProperty("med_list_codg") + private String medListCodg; + + /** + * 医药机构目录编码 + */ + @JsonProperty("medins_list_codg") + private String medinsListCodg; + + /** + * 明细项目费用总额 + */ + @JsonProperty("det_item_fee_sumamt") + private BigDecimal detItemFeeSumamt; + + /** + * 数量 退单时数量填写负数 + */ + @JsonProperty("cnt") + private BigDecimal cnt; + + /** + * 单价 + */ + @JsonProperty("pric") + private BigDecimal pric; + + /** + * 开单科室编码 + */ + @JsonProperty("bilg_dept_codg") + private String bilgDeptCodg; + + /** + * 开单科室名称 + */ + @JsonProperty("bilg_dept_name") + private String bilgDeptName; + + /** + * 开单医生编码 + */ + @JsonProperty("bilg_dr_codg") + private String bilgDrCodg; + + /** + * 开单医师姓名 + */ + @JsonProperty("bilg_dr_name") + private String bilgDrName; + + /** + * 定价上限金额 + */ + @JsonProperty("pric_uplmt_amt") + private BigDecimal pricUplmtAmt; + + /** + * 自付比例 + */ + @JsonProperty("selfpay_prop") + private BigDecimal selfpayProp; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价金额 + */ + @JsonProperty("overlmt_amt") + private BigDecimal overlmtAmt; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 收费项目等级 + */ + @JsonProperty("chrgitm_lv") + private String chrgitmLv; + + /** + * 医疗收费项目类别 + */ + @JsonProperty("med_chrgitm_type") + private String medChrgitmType; + + /** + * 基本药物标志 + */ + @JsonProperty("bas_medn_flag") + private String basMednFlag; + + /** + * 医保谈判药品标志 + */ + @JsonProperty("hi_nego_drug_flag") + private String hiNegoDrugFlag; + + /** + * 儿童用药标志 + */ + @JsonProperty("chld_medc_flag") + private String chldMedcFlag; + + /** + * 目录特项标志 + */ + @JsonProperty("list_sp_item_flag") + private String listSpItemFlag; + + /** + * 限制使用标志 + */ + @JsonProperty("lmt_used_flag") + private String lmtUsedFlag; + + /** + * 直报标志 + */ + @JsonProperty("drt_reim_flag") + private String drtReimFlag; + + /** + * 关联就诊id + */ + private String encounterId; + + private String inputParam; + + private String outputResult; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java new file mode 100644 index 00000000..0426d6bb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientPreSettle.java @@ -0,0 +1,338 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2303】住院预结算 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_pre_settle") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientPreSettle extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 就诊凭证类型 + */ + @JsonProperty("mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 就诊凭证编号 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 + */ + @JsonProperty("mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 个人结算方式 + */ + @JsonProperty("psn_setlway") + private String psnSetlway; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 个人账户使用标志 + */ + @JsonProperty("acct_used_flag") + private String acctUsedFlag; + + /** + * 险种类型 + */ + @JsonProperty("insutype") + private String insutype; + + /** + * 参保地医保区划 + */ + @JsonProperty("insuplc_admdvs") + private String insuplcAdmdvs; + + /** + * 就医地医保区划 + */ + @JsonProperty("mdtrtarea_admvs") + private String mdtrtareaAdmvs; + + /** + * 发票号 + */ + @JsonProperty("invono") + private String invono; + + /** + * 中途结算标志 + */ + @JsonProperty("mid_setl_flag") + private String midSetlFlag; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价金额 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 出院时间 格式:yyyy-MM-dd + */ + @JsonProperty("dscgTime") + private Date dscgTime; + + /** + * 人员姓名 + */ + @JsonProperty("psn_name") + private String psnName; + + /** + * 人员证件类型 + */ + @JsonProperty("psn_cert_type") + private String psnCertType; + + /** + * 证件号码 + */ + @JsonProperty("certno") + private String certno; + + /** + * 性别 + */ + @JsonProperty("gend") + private String gend; + + /** + * 民族 + */ + @JsonProperty("naty") + private String naty; + + /** + * 出生日期 格式:yyyy-MM-dd + */ + @JsonProperty("brdy") + private Date brdy; + + /** + * 年龄 + */ + @JsonProperty("age") + private BigDecimal age; + + /** + * 人员类别 + */ + @JsonProperty("psn_type") + private String psnType; + + /** + * 公务员标志 + */ + @JsonProperty("cvlserv_flag") + private String cvlservFlag; + + /** + * 结算时间 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("setl_time") + private Date setlTime; + + /** + * 医疗类别 + */ + @JsonProperty("med_type") + private String medType; + + /** + * 实际支付起付线 + */ + @JsonProperty("act_pay_dedc") + private BigDecimal actPayDedc; + + /** + * 基本医疗保险统筹基金支出 + */ + @JsonProperty("hifp_pay") + private BigDecimal hifpPay; + + /** + * 基本医疗保险统筹基金支付比例 + */ + @JsonProperty("pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + /** + * 公务员医疗补助资金支出 + */ + @JsonProperty("cvlserv_pay") + private BigDecimal cvlservPay; + + /** + * 企业补充医疗保险基金支出 + */ + @JsonProperty("hifes_pay") + private BigDecimal hifesPay; + + /** + * 居民大病保险资金支出 + */ + @JsonProperty("hifmi_pay") + private BigDecimal hifmiPay; + + /** + * 职工大额医疗费用补助基金支出 + */ + @JsonProperty("hifob_pay") + private BigDecimal hifobPay; + + /** + * 医疗救助基金支出 + */ + @JsonProperty("maf_pay") + private BigDecimal mafPay; + + /** + * 其他支出 + */ + @JsonProperty("oth_pay") + private BigDecimal othPay; + + /** + * 基金支付总额 + */ + @JsonProperty("fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + /** + * 个人负担总金额 + */ + @JsonProperty("psn_part_amt") + private BigDecimal psnPartAmt; + + /** + * 个人账户支出 + */ + @JsonProperty("acct_pay") + private BigDecimal acctPay; + + /** + * 个人现金支出 + */ + @JsonProperty("psn_cash_pay") + private BigDecimal psnCashPay; + + /** + * 医院负担金额 + */ + @JsonProperty("hosp_part_amt") + private BigDecimal hospPartAmt; + + /** + * 余额 + */ + @JsonProperty("balc") + private BigDecimal balc; + + /** + * 个人账户共济支付金额 + */ + @JsonProperty("acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + /** + * 医药机构结算ID 存放发送方报文ID + */ + @JsonProperty("medins_setl_id") + private String medinsSetlId; + + /** + * 清算经办机构 + */ + @JsonProperty("clr_optins") + private String clrOptins; + + /** + * 清算方式 + */ + @JsonProperty("clr_way") + private String clrWay; + + /** + * 清算类别 + */ + @JsonProperty("clr_type") + private String clrType; + + /** + * 伤残人员医疗保障基金支出 1.5.4新增 + */ + @JsonProperty("hifdm_pay") + private BigDecimal hifdmPay; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java new file mode 100644 index 00000000..6bf53db0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientReg.java @@ -0,0 +1,262 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2401】入院办理 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_reg") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientReg extends HisBaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 险种类型 + */ + @JSONField(name = "insutype") + private String insutype; + + /** + * 联系人姓名 + */ + @JSONField(name = "coner_name") + private String conerName; + + /** + * 联系电话 + */ + @JSONField(name = "tel") + private String tel; + + /** + * 开始时间(入院时间,格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") + private Date begntime; + + /** + * 就诊凭证类型 + */ + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 就诊凭证编号(就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号) + */ + @JSONField(name = "mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 医疗类别 + */ + @JSONField(name = "med_type") + private String medType; + + /** + * 住院号(院内就诊流水号) + */ + @JSONField(name = "ipt_no") + private String iptNo; + + /** + * 病历号 + */ + @JSONField(name = "medrcdno") + private String medrcdno; + + /** + * 主治医生编码 + */ + @JSONField(name = "atddr_no") + private String atddrNo; + + /** + * 主诊医师姓名 + */ + @JSONField(name = "chfpdr_name") + private String chfpdrName; + + /** + * 入院诊断描述 + */ + @JSONField(name = "adm_diag_dscr") + private String admDiagDscr; + + /** + * 入院科室编码 + */ + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + /** + * 入院科室名称 + */ + @JSONField(name = "adm_dept_name") + private String admDeptName; + + /** + * 入院床位 + */ + @JSONField(name = "adm_bed") + private String admBed; + + /** + * 住院主诊断代码 + */ + @JSONField(name = "dscg_maindiag_code") + private String dscgMaindiagCode; + + /** + * 住院主诊断名称 + */ + @JSONField(name = "dscg_maindiag_name") + private String dscgMaindiagName; + + /** + * 主要病情描述 + */ + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + + /** + * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) + */ + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 病种名称 + */ + @JSONField(name = "dise_name") + private String diseName; + + /** + * 手术操作代码(日间手术病种时必填) + */ + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 手术操作名称 + */ + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 计划生育服务证号 + */ + @JSONField(name = "fpsc_no") + private String fpscNo; + + /** + * 生育类别 + */ + @JSONField(name = "matn_type") + private String matnType; + + /** + * 计划生育手术类别 + */ + @JSONField(name = "birctrl_type") + private String birctrlType; + + /** + * 晚育标志 + */ + @JSONField(name = "latechb_flag") + private String latechbFlag; + + /** + * 孕周数 + */ + @JSONField(name = "geso_val") + private Integer gesoVal; + + /** + * 胎次 + */ + @JSONField(name = "fetts") + private Integer fetts; + + /** + * 胎儿数 + */ + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + /** + * 早产标志 + */ + @JSONField(name = "pret_flag") + private String pretFlag; + + /** + * 计划生育手术或生育日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") + private Date birctrlMatnDate; + + /** + * 病种类型 + */ + @JSONField(name = "dise_type_code") + private String diseTypeCode; + + /** + * 字段扩展 + */ + @JSONField(name = "exp_content") + private String expContent; + + /** + * 参保地医保区划 + */ + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; + + /** + * 就医地医保区划 + */ + @JSONField(name = "mdtrtarea_admvs") + private String mdtrtareaAdmvs; + + /** + * 就诊id + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java new file mode 100644 index 00000000..6de3b953 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientRegInfoUpdateRecorde.java @@ -0,0 +1,241 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2403】住院信息变更 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_info_recorde") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientRegInfoUpdateRecorde extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 联系人姓名 + */ + @JSONField(name = "coner_name") + private String conerName; + + /** + * 联系电话 + */ + @JSONField(name = "tel") + private String tel; + + /** + * 开始时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") + private Date begntime; + + /** + * 结束时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") + private Date endtime; + + /** + * 就诊凭证类型 + */ + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 医疗类别 + */ + @JSONField(name = "med_type") + private String medType; + + /** + * 住院/门诊号 + */ + @JSONField(name = "ipt_otp_no") + private String iptOtpNo; + + /** + * 病历号 + */ + @JSONField(name = "medrcdno") + private String medrcdno; + + /** + * 主治医生编码 + */ + @JSONField(name = "atddr_no") + private String atddrNo; + + /** + * 主诊医师姓名 + */ + @JSONField(name = "chfpdr_name") + private String chfpdrName; + + /** + * 入院诊断描述 + */ + @JSONField(name = "adm_diag_dscr") + private String admDiagDscr; + + /** + * 入院科室编码 + */ + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + /** + * 入院科室名称 + */ + @JSONField(name = "adm_dept_name") + private String admDeptName; + + /** + * 入院床位 + */ + @JSONField(name = "adm_bed") + private String admBed; + + /** + * 住院主诊断代码 + */ + @JSONField(name = "dscg_maindiag_code") + private String dscgMaindiagCode; + + /** + * 住院主诊断名称 + */ + @JSONField(name = "dscg_maindiag_name") + private String dscgMaindiagName; + + /** + * 主要病情描述 + */ + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + + /** + * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) + */ + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 病种名称 + */ + @JSONField(name = "dise_name") + private String diseName; + + /** + * 手术操作代码(日间手术病种时必填) + */ + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 手术操作名称 + */ + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 计划生育服务证号 + */ + @JSONField(name = "fpsc_no") + private String fpscNo; + + /** + * 生育类别 + */ + @JSONField(name = "matn_type") + private String matnType; + + /** + * 计划生育手术类别 + */ + @JSONField(name = "birctrl_type") + private String birctrlType; + + /** + * 晚育标志 + */ + @JSONField(name = "latechb_flag") + private String latechbFlag; + + /** + * 孕周数 + */ + @JSONField(name = "esso_val") + private Integer essoVal; + + /** + * 胎次 + */ + @JSONField(name = "fetts") + private Integer fetts; + + /** + * 胎儿数 + */ + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + /** + * 早产标志 + */ + @JSONField(name = "pret_flag") + private String pretFlag; + + /** + * 计划生育手术或生育日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") + private Date birctrlMatnDate; + + /** + * 病种编号 + */ + @JSONField(name = "dise_type_code") + private String diseTypeCode; + + private String inputParam; + + private String outputResult; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java new file mode 100644 index 00000000..4333dad1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientSettle.java @@ -0,0 +1,319 @@ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【2304】住院结算 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_settle") +@Accessors(chain = true) +public class InpatientSettle extends HisBaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 人员编号 + */ + private String psnNo; + + /** + * 就诊凭证类型 + */ + private String mdtrtCertType; + + /** + * 就诊凭证编号 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 + */ + private String mdtrtCertNo; + + /** + * 医疗费总额 + */ + private BigDecimal medfeeSumamt; + + /** + * 个人结算方式 + */ + private String psnSetlway; + + /** + * 就诊ID + */ + private String mdtrtId; + + /** + * 结算ID + */ + private String setlId; + + /** + * 个人账户使用标志 + */ + private String acctUsedFlag; + + /** + * 险种类型 + */ + private String insutype; + + /** + * 参保地医保区划 + */ + private String insuplcAdmdvs; + + /** + * 就医地医保区划 + */ + private String mdtrtareaAdmvs; + + /** + * 发票号 + */ + private String invono; + + /** + * 中途结算标志 + */ + private String midSetlFlag; + + /** + * 全自费金额 + */ + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价金额 + */ + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + private BigDecimal inscpScpAmt; + + /** + * 出院时间 格式:yyyy-MM-dd + */ + private Date dscgTime; + + /** + * 人员姓名 + */ + @JsonProperty("psn_name") + private String psnName; + + /** + * 人员证件类型 + */ + @JsonProperty("psn_cert_type") + private String psnCertType; + + /** + * 证件号码 + */ + @JsonProperty("certno") + private String certno; + + /** + * 性别 + */ + @JsonProperty("gend") + private String gend; + + /** + * 民族 + */ + @JsonProperty("naty") + private String naty; + + /** + * 出生日期 格式:yyyy-MM-dd + */ + @JsonProperty("brdy") + private Date brdy; + + /** + * 年龄 + */ + @JsonProperty("age") + private BigDecimal age; + + /** + * 人员类别 + */ + @JsonProperty("psn_type") + private String psnType; + + /** + * 公务员标志 + */ + @JsonProperty("cvlserv_flag") + private String cvlservFlag; + + /** + * 结算时间 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("setl_time") + private Date setlTime; + + /** + * 医疗类别 + */ + @JsonProperty("med_type") + private String medType; + + /** + * 实际支付起付线 + */ + @JsonProperty("act_pay_dedc") + private BigDecimal actPayDedc; + + /** + * 基本医疗保险统筹基金支出 + */ + @JsonProperty("hifp_pay") + private BigDecimal hifpPay; + + /** + * 基本医疗保险统筹基金支付比例 + */ + @JsonProperty("pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + /** + * 公务员医疗补助资金支出 + */ + @JsonProperty("cvlserv_pay") + private BigDecimal cvlservPay; + + /** + * 企业补充医疗保险基金支出 + */ + @JsonProperty("hifes_pay") + private BigDecimal hifesPay; + + /** + * 居民大病保险资金支出 + */ + @JsonProperty("hifmi_pay") + private BigDecimal hifmiPay; + + /** + * 职工大额医疗费用补助基金支出 + */ + @JsonProperty("hifob_pay") + private BigDecimal hifobPay; + + /** + * 医疗救助基金支出 + */ + @JsonProperty("maf_pay") + private BigDecimal mafPay; + + /** + * 其他支出 + */ + @JsonProperty("oth_pay") + private BigDecimal othPay; + + /** + * 基金支付总额 + */ + @JsonProperty("fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + /** + * 个人负担总金额 + */ + @JsonProperty("psn_part_amt") + private BigDecimal psnPartAmt; + + /** + * 个人账户支出 + */ + @JsonProperty("acct_pay") + private BigDecimal acctPay; + + /** + * 个人现金支出 + */ + @JsonProperty("psn_cash_pay") + private BigDecimal psnCashPay; + + /** + * 医院负担金额 + */ + @JsonProperty("hosp_part_amt") + private BigDecimal hospPartAmt; + + /** + * 余额 + */ + @JsonProperty("balc") + private BigDecimal balc; + + /** + * 个人账户共济支付金额 + */ + @JsonProperty("acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + /** + * 医药机构结算ID 存放发送方报文ID + */ + @JsonProperty("medins_setl_id") + private String medinsSetlId; + + /** + * 清算经办机构 + */ + @JsonProperty("clr_optins") + private String clrOptins; + + /** + * 清算方式 + */ + @JsonProperty("clr_way") + private String clrWay; + + /** + * 清算类别 + */ + @JsonProperty("clr_type") + private String clrType; + + /** + * 伤残人员医疗保障基金支出 1.5.4新增 + */ + @JsonProperty("hifdm_pay") + private BigDecimal hifdmPay; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java new file mode 100644 index 00000000..6ac8a764 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnDischarge.java @@ -0,0 +1,53 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2405】撤销出院记录 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_un_discharge") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientUnDischarge extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java new file mode 100644 index 00000000..af48ca81 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnReg.java @@ -0,0 +1,53 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2404】【】 入院撤销 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_un_reg") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientUnReg extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java new file mode 100644 index 00000000..bf03617c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientUnSettle.java @@ -0,0 +1,258 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【2305】住院结算策撤销 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_un_settle") +@Accessors(chain = true) +public class InpatientUnSettle extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 结算ID + */ + @JsonProperty("setl_Id") + private String setlId; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 清算经办机构 + */ + @JsonProperty("clr_optins") + private String clrOptins; + + /** + * 结算时间 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("setl_time") + private Date setlTime; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价自费费用 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 实际支付起付线 + */ + @JsonProperty("act_pay_dedc") + private BigDecimal actPayDedc; + + /** + * 基本医疗保险统筹基金支出 + */ + @JsonProperty("hifp_pay") + private BigDecimal hifpPay; + + /** + * 基本医疗保险统筹基金支付比例 + */ + @JsonProperty("pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + /** + * 公务员医疗补助资金支出 + */ + @JsonProperty("cvlserv_pay") + private BigDecimal cvlservPay; + + /** + * 企业补充医疗保险基金支出 + */ + @JsonProperty("hifes_pay") + private BigDecimal hifesPay; + + /** + * 居民大病保险资金支出 + */ + @JsonProperty("hifmi_pay") + private BigDecimal hifmiPay; + + /** + * 职工大额医疗费用补助基金支出 + */ + @JsonProperty("hifob_pay") + private BigDecimal hifobPay; + + /** + * 医疗救助基金支出 + */ + @JsonProperty("maf_pay") + private BigDecimal mafPay; + + /** + * 其他支出 + */ + @JsonProperty("oth_pay") + private BigDecimal othPay; + + /** + * 基金支付总额 + */ + @JsonProperty("fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + /** + * 个人负担总金额 + */ + @JsonProperty("psn_part_amt") + private BigDecimal psnPartAmt; + + /** + * 个人账户支出 + */ + @JsonProperty("acct_pay") + private BigDecimal acctPay; + + /** + * 个人现金支出 + */ + @JsonProperty("psn_cash_pay") + private BigDecimal psnCashPay; + + /** + * 医院负担金额 + */ + @JsonProperty("hosp_part_amt") + private BigDecimal hospPartAmt; + + /** + * 余额 + */ + @JsonProperty("balc") + private BigDecimal balc; + + /** + * 个人账户共济支付金额 + */ + @JsonProperty("acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + /** + * 医药机构结算ID 存放发送方报文ID + */ + @JsonProperty("medins_setl_id") + private String medinsSetlId; + + /** + * 伤残人员医疗保障基金支出 + */ + @JsonProperty("hifdm_pay") + private BigDecimal hifdmPay; + + /** + * 人员参保关系ID + */ + @JsonProperty("psn_insu_rlts_id") + private String psnInsuRltsId; + + /** + * 参保机构行政区划 + */ + @JsonProperty("insu_admdvs") + private String insuAdmdvs; + + /** + * 开始日期 + */ + @JsonProperty("begndate") + private Date begndate; + + /** + * 结算日期 + */ + @JsonProperty("enddate") + private Date enddate; + + /** + * 就诊凭证编号 + */ + @JsonProperty("mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 结算类别 + */ + @JsonProperty("setl_type") + private String setlType; + + /** + * 本次起付线 + */ + @JsonProperty("crt_dedc") + private BigDecimal crtDedc; + + /** + * 发票号 + */ + @JsonProperty("invono") + private String invono; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java new file mode 100644 index 00000000..d78ff89f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InpatientcancelFeeDetail.java @@ -0,0 +1,66 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.io.Serializable; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +@TableName("yb_inpatient_cancel_fee_detail") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InpatientcancelFeeDetail extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize = false) + private Long id; + + /** + * 费用明细流水号 单次就诊内唯一 + */ + @JsonProperty("feedetl_sn") + private String feedetlSn; + + /** + * 人员编号 退单时传入被退单的费用明细流水号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 字段扩展 + */ + @JsonProperty("exp_content") + private String expContent; + + private String inputParam; + + private String outputResult; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java new file mode 100644 index 00000000..f18bddca --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryChangeRecord.java @@ -0,0 +1,95 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.yb.dto.MedicalTraceNoDto; + +import liquibase.pro.packaged.S; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3502】库存信息变更 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_change_record") +@EqualsAndHashCode(callSuper = false) +public class InventoryChangeRecord { + // 主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + // 入参 + private String param; + + // 出参 + private String result; + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 库存变更类型(字符型,6位,必填) + @JSONField(name = "inv_chg_type") + private String invChgType; + + // 3. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 4. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 5. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 6. 单价(数值型,16位含6位小数,必填) + @JSONField(name = "pric") + private BigDecimal pric; + + // 7. 数量(数值型,16位含4位小数,必填) + @JSONField(name = "cnt") + private BigDecimal cnt; + + // 8. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 9. 库存变更时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "inv_chg_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date invChgTime; + + // 10. 库存变更经办人姓名(字符型,50位,非必填) + @JSONField(name = "inv_chg_opter_name") + private String invChgOpterName; + + // 11. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 12. 拆零标志(字符型,2位,必填) + @JSONField(name = "trdn_flag") + private String trdnFlag; + + // 13. 溯源码节点信息(字符型,长度未明确) + @JSONField(name = "drugtracinfo") + private String drugtracinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java new file mode 100644 index 00000000..c834506c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryCheckRecord.java @@ -0,0 +1,82 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import liquibase.pro.packaged.D; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【3502】库存信息变更 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_check_record") +@EqualsAndHashCode(callSuper = false) +public class InventoryCheckRecord { + //主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + //入参 + private String param; + + //出参 + private String result; + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 5. 盘存日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "invdate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date invdate; + + // 6. 库存数量(数值型,16位含2位小数,必填) + @JSONField(name = "inv_cnt") + private BigDecimal invCnt; + + // 7. 生产批号(字符型,30位,非必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 8. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 9. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 10. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java new file mode 100644 index 00000000..bbca2f96 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryDelRecord.java @@ -0,0 +1,42 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3507】 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_del_record") +@EqualsAndHashCode(callSuper = false) +public class InventoryDelRecord { + //主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + //入参 + private String param; + + //出参 + private String outResult; + + // 定点医药机构批次流水号 + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 进销存数据类型 + @JSONField(name = "inv_data_type") + private String invDataType; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java new file mode 100644 index 00000000..7cb616b8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseRecord.java @@ -0,0 +1,121 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【3503】 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_purchase_record") +@EqualsAndHashCode(callSuper = false) +public class InventoryPurchaseRecord { + //主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + //入参 + private String param; + + //出参 + private String outResult; + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 随货单号(字符型,50位,非必填) + @JSONField(name = "dynt_no") + private String dyntNo; + + // 5. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 6. 供应商名称(字符型,200位,必填) + @JSONField(name = "spler_name") + private String splerName; + + // 7. 供应商许可证号(字符型,50位,非必填) + @JSONField(name = "spler_pmtno") + private String splerPmtno; + + // 8. 生产批号(字符型,30位,必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 9. 生产厂家名称(字符型,200位,必填) + @JSONField(name = "prodentp_name") + private String prodentpName; + + // 10. 批准文号(字符型,100位,必填) + @JSONField(name = "aprvno") + private String aprvno; + + // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 13. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 14. 采购/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "purc_retn_cnt") + private BigDecimal purcRetnCnt; + + // 15. 采购发票编码(字符型,50位,非必填) + @JSONField(name = "purc_invo_codg") + private String purcInvoCodg; + + // 16. 采购发票号(字符型,50位,非必填) + @JSONField(name = "purc_invo_no") + private String purcInvoNo; + + // 17. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 18. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "purc_retn_stoin_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date purcRetnStoinTime; + + // 19. 采购/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "purc_retn_opter_name") + private String purcRetnOpterName; + + // 20. 商品赠送标志(字符型,3位,必填) + @JSONField(name = "prod_geay_flag") + private String prodGeayFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java new file mode 100644 index 00000000..efb15c04 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventoryPurchaseReturnRecord.java @@ -0,0 +1,109 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【3504】 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_purchase_return_record") +@EqualsAndHashCode(callSuper = false) +public class InventoryPurchaseReturnRecord { + //主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + //入参 + private String param; + + //出参 + private String outResult; + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 5. 供应商名称(字符型,200位,必填) + @JSONField(name = "spler_name") + private String splerName; + + // 6. 供应商许可证号(字符型,50位,非必填) + @JSONField(name = "spler_pmtno") + private String splerPmtno; + + // 7. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 8. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 9. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 10. 采购/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "purc_retn_cnt") + private BigDecimal purcRetnCnt; + + // 11. 采购发票编码(字符型,50位,非必填) + @JSONField(name = "purc_invo_codg") + private String purcInvoCodg; + + // 12. 采购发票号(字符型,50位,必填) + @JSONField(name = "purc_invo_no") + private String purcInvoNo; + + // 13. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 14. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "purc_retn_stoin_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date purcRetnStoinTime; + + // 15. 采购/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "purc_retn_opter_name") + private String purcRetnOpterName; + + // 16. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 20. 商品采购流水号(字符型,50位,非必填) + @JSONField(name = "medins_prod_purc_no") + private String medinsProdPurcNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java new file mode 100644 index 00000000..ca8db93a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleRecord.java @@ -0,0 +1,193 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.yb.dto.MedicalTraceNoDto; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3505】 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_sale_record") +@EqualsAndHashCode(callSuper = false) +public class InventorySaleRecord { + // 主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + // 入参 + private String param; + + // 出参 + private String outResult; + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 5. 开方医师证件类型(字符型,6位,非必填) + @JSONField(name = "prsc_dr_cert_type") + private String prscDrCertType; + + // 6. 开方医师证件号码(字符型,50位,非必填) + @JSONField(name = "prsc_dr_certno") + private String prscDrCertno; + + // 7. 开方医师姓名(字符型,50位,必填) + @JSONField(name = "prsc_dr_name") + private String prscDrName; + + // 8. 药师证件类型(字符型,6位,非必填) + @JSONField(name = "phar_cert_type") + private String pharCertType; + + // 9. 药师证件号码(字符型,50位,非必填) + @JSONField(name = "phar_certno") + private String pharCertno; + + // 10. 药师姓名(字符型,50位,必填) + @JSONField(name = "phar_name") + private String pharName; + + // 11. 药师执业资格证号(字符型,50位,必填) + @JSONField(name = "phar_prac_cert_no") + private String pharPracCertNo; + + // 12. 医保费用结算类型(字符型,6位,必填) + @JSONField(name = "hi_feesetl_type") + private String hiFeesetlType; + + // 13. 结算ID(字符型,30位,非必填) + @JSONField(name = "setl_id") + private String setlId; + + // 14. 就医流水号(字符型,30位,必填) + @JSONField(name = "mdtrt_sn") + private String mdtrtSn; + + // 15. 人员编号(字符型,30位,非必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 16. 人员证件类型(字符型,6位,必填) + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 17. 证件号码(字符型,50位,非必填) + @JSONField(name = "certno") + private String certno; + + // 18. 人员姓名(字符型,50位,非必填) + @JSONField(name = "psn_name") + private String psnName; + + // 19. 生产批号(字符型,30位,必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 20. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 21. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 22. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 23. 拆零标志(字符型,3位,必填) + @JSONField(name = "trdn_flag") + private String trdnFlag; + + // 24. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 25. 处方号(字符型,40位,非必填) + @JSONField(name = "rxno") + private String rxno; + + // 26. 外购处方标志(字符型,3位,必填) + @JSONField(name = "rx_circ_flag") + private String rxCircFlag; + + // 27. 零售单据号(字符型,40位,必填) + @JSONField(name = "rtal_docno") + private String rtalDocno; + + // 29. 销售出库单据号(字符型,40位,非必填) + @JSONField(name = "stoout_no") + private String stooutNo; + + // 30. 批次号(字符型,30位,非必填) + @JSONField(name = "bchno") + private String bchno; + + // 32. 药品条形码(字符型,30位,非必填) + @JSONField(name = "drug_prod_barc") + private String drugProdBarc; + + // 33. 货架位(字符型,20位,非必填) + @JSONField(name = "shelf_posi") + private String shelfPosi; + + // 34. 销售/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "sel_retn_cnt") + private BigDecimal selRetnCnt; + + // 35. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "sel_retn_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date selRetnTime; + + // 36. 销售/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "sel_retn_opter_name") + private String selRetnOpterName; + + // 37. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 38. 就诊结算类型(字符型,6位,非必填) + @JSONField(name = "mdtrt_setl_type") + private String mdtrtSetlType; + + // 39. 溯源码节点信息(字符型,长度未明确,暂定500位) + @JSONField(name = "drugtracinfo") + private String drugtracinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java new file mode 100644 index 00000000..25eaaf86 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/InventorySaleReturnRecord.java @@ -0,0 +1,132 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.domain; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.yb.dto.MedicalTraceNoDto; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3506】 + * + * @author SunJQ + * @date 2025-04-30 + */ +@Data +@Accessors(chain = true) +@TableName("yb_inventory_sale_return_record") +@EqualsAndHashCode(callSuper = false) +public class InventorySaleReturnRecord { + // 主键 + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + // 入参 + private String param; + + // 出参 + private String outResult; + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 5. 结算ID(字符型,30位,非必填) + @JSONField(name = "setl_id") + private String setlId; + + // 6. 人员编号(字符型,30位,非必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 7. 人员证件类型(字符型,6位,必填) + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 8. 证件号码(字符型,50位,非必填) + @JSONField(name = "certno") + private String certno; + + // 9. 人员姓名(字符型,50位,非必填) + @JSONField(name = "psn_name") + private String psnName; + + // 10. 生产批号(字符型,30位,必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 13. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 14. 拆零标志(字符型,3位,必填) + @JSONField(name = "trdn_flag") + private String trdnFlag; + + // 15. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 16. 销售/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "sel_retn_cnt") + private BigDecimal selRetnCnt; + + // 17. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "sel_retn_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date selRetnTime; + + // 18. 销售/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "sel_retn_opter_name") + private String selRetnOpterName; + + // 19. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 20. 商品销售流水号(字符型,50位,非必填) + @JSONField(name = "medins_prod_sel_no") + private String medinsProdSelNo; + + // 21. 就医流水号(字符型,30位,必填) + @JSONField(name = "mdtrt_sn") + private String mdtrtSn; + + // 22. 溯源码节点信息(字符型,长度未明确,暂定500位) + @JSONField(name = "drugtracinfo") + private String drugtracinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java new file mode 100644 index 00000000..c8cfe9bd --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/domain/Sign.java @@ -0,0 +1,76 @@ +package com.openhis.yb.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; + +/** + *【9001】【9002】签到 签退 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@TableName("yb_pub_sign") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Sign extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private Long id; + /**操作员编号*/ + @JSONField(name="opter_no") + private String opterNo; + /**签到编号*/ + @JSONField(name="sign_no") + private String signNo; + /**签到时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(serialize=false) + private java.util.Date signTime; + /**签退时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(serialize=false) + private java.util.Date signOutTime; + /**状态,0-新建,1-签到,2-签退*/ + @JSONField(serialize=false) + private String status; + /** 签到MAC地址 */ + @JSONField(name="mac") + @TableField(exist = false) + private String mac; + /** 签到IP地址 */ + @JSONField(name="ip") + @TableField(exist = false) + private String ip; +// /**创建人*/ +// private String createBy; +// /**创建日期*/ +// @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") +// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") +// private java.util.Date createTime; +// /**更新人*/ +// private String updateBy; +// /**更新日期*/ +// @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") +// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") +// private java.util.Date updateTime; +// /**所属部门*/ +// private String sysOrgCode; +// /**租户ID*/ +// private String tenantId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java new file mode 100644 index 00000000..56c5ec8d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseInfo.java @@ -0,0 +1,96 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.sun.jna.platform.win32.Winspool; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 医保所需要的基础信息,如医生信息或者医院信息,目的是为医保服务提供数据信息 + * + * @author SunJQ + * @date 2025-05-04 + */ +@Data +@Accessors(chain = true) +public class BaseInfo { + /******************医保机构信息******************/ + + + /********************医院信息********************/ + + /** (必填)统筹区号 */ + private String admvs;// + + /** (必填)定点医药机构编号 */ + private String fixmedinsCode; + + /** (必填)定点医药机构名称 */ + private String fixmedinsName; + + /** (必填)医保app的Controller路径 */ + private String ybUrl; + + /** (必填)客戶端id */ + private String ybClientId;//医保用 2025/05/21 无人解答医保与电子处方的这些信息是否一致,防止修改某一变量导致另一个功能失效,分开保存 + + /** (必填)客戶端安全码 */ + private String ybClientSecret;//医保用 + + /** (必填)医保服务平台账号 */ + private String ybUsername;//医保用 + + /** (必填)医保服务平台密码 */ + private String ybPassword;//医保用 + + /** (必填)终端授权类型 */ + private String ybGrantType;//医保用 + + /** (必填)终端授权范围 */ + private String ybScope;//医保用 + + /** (必填)秘钥 */ + private String ybCliPrvKey;//医保用 + + /********************医护信息********************/ + + /** (必填) 用户id */ + private Long UserId; + + /** (必填)登录人名字 */ + private String realname; + + /********************患者信息********************/ + + /** 参保地医保区划 */ + private String insuplcAdmdvs;//如果交易输入中含有人员编号,此项必填,可通过【1101】人员信息获取交易取得 2025/05/20 经测试发现2201-2208几个接口没传psn_no但是也要传这个 + + /********************电子处方********************/ + //电子处方 + private String cliPrvKey; + private String cliPubKey; + private String clientId; + private String eleAddress; + private String username; + private String password; + private String scope; + private String grantType; + private String clientSecret; + private String time; + private String preAppId; + private String preAppSecret; + private String prePrvKey; + private String prePubKey; + private String templatePath; + private String outputPath; + private String hospitalSealPath; + private String medType; + private String dutyDoctorName; + + /********************共通参数********************/ + //是否解密 + private String decryptFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java new file mode 100644 index 00000000..4e4121cf --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/BaseParam.java @@ -0,0 +1,14 @@ +package com.openhis.yb.dto; + +import com.core.common.core.domain.model.LoginUser; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class BaseParam { + + Object data; + + BaseInfo baseInfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java new file mode 100644 index 00000000..af3e117c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelPaymentDto.java @@ -0,0 +1,59 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; +import java.util.List; + +/** + * 退费入参 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class CancelPaymentDto { + /** + * id + */ + private Long id; + + /** 收款员 */ + private Long entererId; + + /** 支付的患者ID */ + @NotNull + private Long patientId; + + /** 应收金额 */ + private BigDecimal tenderedAmount; + + /** 找零金额 */ + private BigDecimal returnedAmount; + + /** 付款总额 */ + private BigDecimal displayAmount; + + /** 就诊ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long encounterId; + + /** 收费项 */ + private List chargeItemIds;//收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 + + /** 支付详细 */ + @NotEmpty + private List paymentDetails; + + /** 支付批次号 */ + private String chrgBchno;//医保预结算时返回,医保结算时必传,否则结算时一直预结算 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java new file mode 100644 index 00000000..45d33755 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/CancelRegPaymentDto.java @@ -0,0 +1,50 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; +import java.util.List; + +@Data +@Accessors(chain = true) +public class CancelRegPaymentDto { + /** + * id + */ + private Long id; + + /** 收款员 */ + private Long entererId; + + /** 支付的患者ID */ + @NotNull + private Long patientId; + + /** 应收金额 */ + private BigDecimal tenderedAmount; + + /** 找零金额 */ + private BigDecimal returnedAmount; + + /** 付款总额 */ + private BigDecimal displayAmount; + + /** 就诊ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long encounterId; + + /** 收费项 */ + private List chargeItemIds;//收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 + + /** 支付详细 */ + @NotEmpty + private List paymentDetails; + + /** 支付批次号 */ + private String chrgBchno;//医保预结算时返回,医保结算时必传,否则结算时一直预结算 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java new file mode 100644 index 00000000..628da1f1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312Output.java @@ -0,0 +1,117 @@ +package com.openhis.yb.dto; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.Date; + +/** + * 【1312】医保目录信息查询 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Catalogue1312Output extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + // 医保目录编码 + private String hilistCode; + + // 医保目录名称 + private String hilistName; + + // 参保机构医保区划 + private String insuAdmdvs; + + // 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date begndate; + + // 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date enddate; + + // 医疗收费项目类别 + private String medChrgitmType; + + // 收费项目等级 + private String chrgitmLv; + + // 限制使用标志 + private String lmtUsedFlag; + + // 目录类别 + private String listType; + + // 医疗使用标志 + private String medUseFlag; + + // 生育使用标志 + private String matnUsedFlag; + + // 医保目录使用类别 + private String hilistUseType; + + // 限复方使用类型 + private String lmtCpndType; + + // 五笔助记码 + private String wubi; + + // 拼音助记码 + private String pinyin; + + // 备注 + private String memo; + + // 有效标志 + private String valiFlag; + + // 唯一记录号 + private String rid; + + // 更新时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date updtTime; + + // 创建人 + private String crterId; + + // 创建人姓名 + private String crterName; + + // 创建时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date crteTime; + + // 创建机构 + private String crteOptinsNo; + + // 经办人 + private String opterId; + + // 经办人姓名 + private String opterName; + + // 经办时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date optTime; + + // 经办机构 + private String optinsNo; + + // 统筹区 + private String poolareaNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java new file mode 100644 index 00000000..f9ce40b3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Catalogue1312QueryParam.java @@ -0,0 +1,50 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【1312】医保目录信息查询 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Catalogue1312QueryParam { + + // 医保目录编码 + @JSONField(name = "hilist_code") + private String hilistCode; + + // 参保地区编码 + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; + // 更新时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "updt_time") + private Date updtTime; + + // 页数 + @JSONField(name = "page_num") + private Integer pageNum; + // 当前页面查询数量 + @JSONField(name = "page_size") + private Integer pageSize; + + // 解密标记 + @JSONField(name = "decrypt_flag") + private String decryptFlag; + + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java new file mode 100644 index 00000000..eee435e7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDetailVO.java @@ -0,0 +1,13 @@ +package com.openhis.yb.dto; + +import com.openhis.administration.domain.ChargeItem; +import com.openhis.common.annotation.Dict; +import lombok.Data; + +@Data +public class ChargeItemDetailVO extends ChargeItem { + + @Dict(dictCode = "chrgitm_lv") + private String dirClass;//医保等级 + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java new file mode 100644 index 00000000..e3891518 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemDto.java @@ -0,0 +1,22 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.openhis.administration.domain.ChargeItem; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 收费项目 + * + * @author SunJQ + * @date 2025-03-31 + */ +@Data +@Accessors(chain = true) +public class ChargeItemDto extends ChargeItem { + + private String typeCode; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java new file mode 100644 index 00000000..124ce546 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ChargeItemGroupDto.java @@ -0,0 +1,30 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.openhis.administration.domain.ChargeItem; +import com.openhis.financial.domain.Contract; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * chargeItem分组 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class ChargeItemGroupDto { + /** + * 合同 + */ + Contract contract; + /** + * 收费项 + */ + List chargeItemList; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java new file mode 100644 index 00000000..696a69b5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3204AParam.java @@ -0,0 +1,29 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3204A】清算申请撤销(吉林省) + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clearing3204AParam { + + // 机构清算申请事件ID + @JSONField(name = "clr_apply_evt_id") + private String clrApplyEvtId; + + // 清算机构 + @JSONField(name = "clr_optins") + private String clrOptins; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java new file mode 100644 index 00000000..c02df05e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AParma.java @@ -0,0 +1,33 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3205A】清算申请状态查询(吉林省) + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clearing3205AParma extends Financial3203AParam { + + // 清算机构 + @JSONField(name = "clr_optins") + private String clrOptins; + + // 清算状态 + @JSONField(name = "clr_stas") + private String clrStas; + + // 清算月份 + @JSONField(name = "clr_ym") + private String clrYm; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java new file mode 100644 index 00000000..261498ad --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AResult.java @@ -0,0 +1,91 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3205A】清算申请状态查询(吉林省) + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clearing3205AResult { + // 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 清算状态 + @JSONField(name = "clr_stas") + private String clrStas; + + // 经办时间 + @JSONField(name = "opt_time") + private Date optTime; + + // 医疗费总额 + @JSONField(name = "medfee_Sumamt") + private BigDecimal medfeeSumamt; + + // 医保费用总额 + @JSONField(name = "hi_agre_sumfee") + private BigDecimal hiAgreSumfee; + + // 基金申报总额 + @JSONField(name = "fund_appy_sum") + private BigDecimal fundAppySum; + + // 现金支付金额 + @JSONField(name = "cash_payamt") + private BigDecimal cashPayamt; + + // 个人账户支出 + @JSONField(name = "acct_pay") + private BigDecimal acctPay; + + // 开始日期 + @JSONField(name = "begndate") + private Date begndate; + + // 结束日期 + @JSONField(name = "enddate") + private Date enddate; + + // 清算年月 + @JSONField(name = "clr_ym") + private String clrYm; + + // 清算经办机构 + @JSONField(name = "clr_optins") + private String clrOptins; + + // 经办人 + @JSONField(name = "opter_id") + private String opterId; + + // 经办人姓名 + @JSONField(name = "opter_name") + private String opterName; + + // 经办机构 + @JSONField(name = "optins_no") + private String optinsNo; + + // 机构清算申请事件ID + @JSONField(name = "clr_appy_evt_id") + private String clrAppyEvtId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java new file mode 100644 index 00000000..f26b672d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3205AWebParma.java @@ -0,0 +1,27 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * 【3205A】前端入参 + * + * @author SunJQ + * @date 2025-04-17 + */ +@Data +public class Clearing3205AWebParma { + // 清算机构 + @NotNull + private String clrOptins; + + // 清算状态 + private String clrStas; + + // 清算月份 例如:202310 + private String clrYm; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java new file mode 100644 index 00000000..7b3c69e8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AParam.java @@ -0,0 +1,33 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3206A】清算机构查询(吉林省) + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clearing3206AParam { + + //定点编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + //页数 + @JSONField(name = "page_num") + private Integer pageNum = 1; + + //当前页面 + @JSONField(name = "page_size") + private Integer pageSize; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java new file mode 100644 index 00000000..7d229903 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clearing3206AResult.java @@ -0,0 +1,33 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3206A】清算机构查询(吉林省) + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clearing3206AResult { + //总页数 + @JSONField(name = "pages") + private Integer pages; + //清算机构(明细) + @JSONField(name = "clr_optins") + private String clrOptins; + //页数 + @JSONField(name = "page_num") + private Integer pageNum; + //当前页面查询数量 + @JSONField(name = "page_size") + private Integer pageSize; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java new file mode 100644 index 00000000..0546e6d4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203DiseInfoParam.java @@ -0,0 +1,110 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + *【2203】门诊就诊信息上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +public class Clinic2203DiseInfoParam extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + //就诊ID内部 + @Excel(name = "就诊ID内部", width = 15) + @JSONField(serialize=false) + private String encounterId; + //定点医药机构编号 + @JSONField(serialize=false) + private String fixmedinsCode; + + //定点医药机构名称 + @JSONField(serialize=false) + private String fixmedinsName; + // 就医地医保区划 + @JSONField(serialize=false) + private String mdtrtareaAdmvs; + // 参保地医保区划 + @JSONField(serialize=false) + private String insuplcAdmdvs; + // 就诊ID + @Excel(name = "就诊ID", width = 15) + @JSONField(serialize=false) + private String mdtrtId; + // 就诊信息ID + @JSONField(serialize=false) + private String medicalId; + // 诊断类别 + @JSONField(name="diag_type") + private String diagType; + // 诊断排序号 + @JSONField(name="diag_srt_no") + private String diagSrtNo; + // 诊断代码 + @JSONField(name="diag_code") + private String diagCode; + // 诊断名称 + @JSONField(name="diag_name") + private String diagName; + // 诊断科室 + @JSONField(name="diag_dept") + private String diagDept; + // 诊断医生编码 + @JSONField(name="dise_dor_no") + private String diseDorNo; + // 诊断医生姓名 + @JSONField(name="dise_dor_name") + private String diseDorName; + // 诊断时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name="diag_time") + private Date diagTime; + // 有效标志 + @JSONField(name="vali_flag") + private String valiFlag; +// // 创建人 +// @JSONField(serialize=false) +// private String createBy; +// // 创建日期 +// @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") +// @DateTimeFormat(pattern = "yyyy-MM-dd") +// @JSONField(serialize=false) +// private Date createTime; +// // 更新人 +// @JSONField(serialize=false) +// private String updateBy; +// // 更新日期 +// @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") +// @DateTimeFormat(pattern = "yyyy-MM-dd") +// @JSONField(serialize=false) +// private Date updateTime; + // 所属部门 +// @JSONField(serialize=false) +// private String sysOrgCode; +// // 租户编码 +// @JSONField(serialize=false) +// private String tenantId; +// @JSONField(serialize=false) +// private String district; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java new file mode 100644 index 00000000..7794d814 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203Medical.java @@ -0,0 +1,83 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + *【2203】门诊就诊信息上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +public class Clinic2203Medical extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + // 主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + // 就诊ID内部 + @JSONField(serialize=false) + private String regId; + // 定点医药机构编号 + @JSONField(serialize=false) + private String fixmedinsCode; + // 定点医药机构名称 + @JSONField(serialize=false) + private String fixmedinsName; + // 就医地医保区划 + @JSONField(serialize=false) + private String mdtrtareaAdmvs; + // 参保地医保区划 + @JSONField(serialize=false) + private String insuplcAdmdvs; + // 就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + // 人员编号 + @JSONField(name="psn_no") + private String psnNo; + // 医疗类别 + @Dict(dictCode = "med_type") + @JSONField(name="med_type") + private String medType; + // 诊断时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name="begntime") + private Date begntime; + // 主要病情描述 + @JSONField(name="main_cond_dscr") + private String mainCondDscr; + // 病种编码 + @JSONField(name="dise_codg") + private String diseCodg; + // 病种名称 + @JSONField(name="dise_name") + private String diseName; + // 计划生育手术类别 + @Dict(dictCode = "birctrl_type") + @JSONField(name="birctrl_type") + private String birctrlType; + // 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name="birctrl_matn_date") + private Date birctrlMatnDate; + @JSONField(serialize=false) + private String district; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java new file mode 100644 index 00000000..feccd6d7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2203MedicalParam.java @@ -0,0 +1,79 @@ +package com.openhis.yb.dto; + +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson2.annotation.JSONField; +import org.springframework.format.annotation.DateTimeFormat; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2203】门诊就诊信息上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clinic2203MedicalParam { + // 主键 + @JSONField(serialize = false) + private String id; + // 就诊ID内部 + @JSONField(serialize = false) + private String regId; + // 定点医药机构编号 + @JSONField(serialize = false) + private String fixmedinsCode; + // 定点医药机构名称 + @JSONField(serialize = false) + private String fixmedinsName; + // 就医地医保区划 + @JSONField(serialize = false) + private String mdtrtareaAdmvs; + // 参保地医保区划 + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; + // 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + // 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + // 医疗类别 + @Dict(dictCode = "med_type") + @JSONField(name = "med_type") + private String medType; + // 诊断时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "begntime") + private Date begntime; + // 主要病情描述 + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + // 病种编码 + @JSONField(name = "dise_codg") + private String diseCodg; + // 病种名称 + @JSONField(name = "dise_name") + private String diseName; + // 计划生育手术类别 + @Dict(dictCode = "birctrl_type") + @JSONField(name = "birctrl_type") + private String birctrlType; + // 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + @JSONField(name = "diseinfo") + private List diseinfoList; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java new file mode 100644 index 00000000..6fe32f31 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailParam.java @@ -0,0 +1,242 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + *【2204】门诊费用明细信息上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +public class Clinic2204FeeDetailParam extends HisBaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + //就诊ID内部 + @JSONField(serialize=false) + private String regId; + //订单主键 + @JSONField(serialize=false) + private String orderId; + //定点医药机构编号 + @JSONField(serialize=false) + private String fixmedinsCode; + //定点医药机构名称 + @JSONField(serialize=false) + private String fixmedinsName; + //就医地医保区划 + @JSONField(serialize=false) + private String mdtrtareaAdmvs; + //参保地医保区划 + @JSONField(serialize=false) + private String insuplcAdmdvs; + //病历号 + @JSONField(serialize=false) + private String medicalNo; + //费用明细流水号 + @JSONField(name="feedetl_sn") + private String feedetlSn; + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + //收费批次号 + @JSONField(name="chrg_bchno") + private String chrgBchno; + //病种编码 + @JSONField(name="dise_codg") + private String diseCodg; + //处方号 + @JSONField(name="rxno") + private String rxno; + //外购处方标志 + @Dict(dictCode = "rx_circ_flag") + @JSONField(name="rx_circ_flag") + private String rxCircFlag; + //费用发生时间 + @Excel(name = "费用发生时间", width = 20, dateFormat = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(name="fee_ocur_time") + private Date feeOcurTime; + //商品名 + @Excel(name = "商品名", width = 15) + private String tradename; + //药品类别 + @Dict(dictCode = "list_type") + private String drugtype; + //剂型 + @Dict(dictCode = "drug_dosform") + private String dosemodel; + //项目等级 + @Dict(dictCode = "chrgitm_lv") + private String feegrade; + //处方标志 + @Dict(dictCode = "rx_flag") + private String rxflag; + //生产厂家 + @Excel(name = "生产厂家", width = 15) + private String producingarea; + //医疗目录编码 + @Excel(name = "医疗目录编码", width = 15) + @JSONField(name="med_list_codg") + private String medListCodg; + //医药机构目录编码 + @Excel(name = "医药机构目录编码", width = 15) + @JSONField(name="medins_list_codg") + private String medinsListCodg; + //明细项目费用总额 + @Excel(name = "明细项目费用总额", width = 15) + @JSONField(name="det_item_fee_sumamt") + private Double detItemFeeSumamt; + //数量 + @Excel(name = "数量", width = 15) + @JSONField(name="cnt") + private Double cnt; + //单价 + @JSONField(name="pric") + private Double pric; + //单次剂量描述 + @JSONField(name="sin_dos_dscr") + private String sinDosDscr; + //使用频次描述 + @JSONField(name="used_frqu_dscr") + private String usedFrquDscr; + //周期天数 + @JSONField(name="prd_days") + private String prdDays; + //用药途径描述 + @JSONField(name="medc_way_dscr") + private String medcWayDscr; + //开单科室编码 + @JSONField(name="bilg_dept_codg") + private String bilgDeptCodg; + //开单科室名称 + @JSONField(name="bilg_dept_name") + private String bilgDeptName; + //开单医生编码 + @JSONField(name="bilg_dr_codg") + private String bilgDrCodg; + //开单医师姓名 + @JSONField(name="bilg_dr_name") + private String bilgDrName; + //受单科室编码 + @JSONField(name="acord_dept_codg") + private String acordDeptCodg; + //受单科室名称 + @JSONField(name="acord_dept_name") + private String acordDeptName; + //受单医生编码 + @JSONField(name="orders_dr_code") + private String ordersDrCode; + //受单医生姓名 + @JSONField(name="orders_dr_name") + private String ordersDrName; + //医院审批标志 + @Dict(dictCode = "hosp_appr_flag") + @JSONField(name="hosp_appr_flag") + private String hospApprFlag; + //中药使用方式 + @Dict(dictCode = "tcmdrug_used_way") + @JSONField(name="tcmdrug_used_way") + private String tcmdrugUsedWay; + //外检标志 + @Dict(dictCode = "etip_flag") + @JSONField(name="etip_flag") + private String etipFlag; + //外检医院编码 + @JSONField(name="etip_hosp_code") + private String etipHospCode; + //出院带药标志 + @Dict(dictCode = "dscg_tkdrug_flag") + @JSONField(name="dscg_tkdrug_flag") + private String dscgTkdrugFlag; + //生育费用标志 + @Dict(dictCode = "matn_fee_flag") + @JSONField(name="matn_fee_flag") + private String matnFeeFlag; + //定价上限金额 + @JSONField(name="pric_uplmt_amt") + private Double pricUplmtAmt; + //自付比例 + @JSONField(name="selfpay_prop") + private Double selfpayProp; + //全自费金额 + @JSONField(name="fulamt_ownpay_amt") + private Double fulamtOwnpayAmt; + //超限价金额 + @JSONField(name="overlmt_amt") + private Double overlmtAmt; + //先行自付金额 + @JSONField(name="preselfpay_amt") + private Double preselfpayAmt; + //符合政策范围金额 + @JSONField(name="inscp_scp_amt") + private Double inscpScpAmt; + //收费项目等级 + @Dict(dictCode = "chrgitm_lv") + @JSONField(name="chrgitm_lv") + private String chrgitmLv; + //医疗收费项目类别 + @Dict(dictCode = "med_chrgitm_type") + @JSONField(name="med_chrgitm_type") + private String medChrgitmType; + //基本药物标志 + @Dict(dictCode = "bas_medn_flag") + @JSONField(name="bas_medn_flag") + private String basMednFlag; + //医保谈判药品标志 + @Dict(dictCode = "hi_nego_drug_flag") + @JSONField(name="hi_nego_drug_flag") + private String hiNegoDrugFlag; + //儿童用药标志 + @Dict(dictCode = "chld_medc_flag") + @JSONField(name="chld_medc_flag") + private String chldMedcFlag; + //目录特项标志 + @Dict(dictCode = "list_sp_item_flag") + @JSONField(name="list_sp_item_flag") + private String listSpItemFlag; + //限制使用标志 + @Dict(dictCode = "lmt_used_flag") + @JSONField(name="lmt_used_flag") + private String lmtUsedFlag; + //直报标志 + @Dict(dictCode = "drt_reim_flag") + @JSONField(name="drt_reim_flag") + private String drtReimFlag; + //备注 + @JSONField(name="memo") + private String memo; + //上报状态,0-未上报,1-已上报 + @JSONField(serialize=false) + private String status; + private String district; + @TableField(exist = false) + private String setlTimeStart; + @TableField(exist = false) + private String setlTimeEnd; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java new file mode 100644 index 00000000..8986a4f0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204FeeDetailResult.java @@ -0,0 +1,63 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【2204】接口返回参数 + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@Accessors(chain = true) +public class Clinic2204FeeDetailResult { + // 主键字段(根据Y标识判断) + private String feedetlSn; // 费用明细流水号 + + // 数值型字段使用BigDecimal保证精度 + private BigDecimal detItemFeeSumamt; // 明细项目费用总额 + + private BigDecimal cnt; // 数量 + + private BigDecimal pric; // 单价 + + private BigDecimal pricUplmtAmt; // 定价上限金额 + + private BigDecimal selfpayProp; // 自付比例 + + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + private BigDecimal overlmtAmt; // 超限价金额 + + private BigDecimal preselfpayAmt; // 先行自付金额 + + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + // 字符型字段 + private String chrgitmLv; // 收费项目等级 + + private String medChrgitmType; // 医疗收费项目类别 + + private String basMednFlag; // 基本药物标志 + + private String hiNegoDrugFlag; // 医保谈判药品标志 + + private String chldMedcFlag; // 儿童用药标志 + + private String listSpItemFlag; // 目录特项标志 + + private String lmtUsedFlag; // 限制使用标志 + + private String drtReimFlag; // 直报标志 + + private String memo; // 备注 + + private String expContent; // 字段扩展 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java new file mode 100644 index 00000000..6ae4a654 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderParam.java @@ -0,0 +1,37 @@ +package com.openhis.yb.dto; + +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson2.annotation.JSONField; +import org.springframework.format.annotation.DateTimeFormat; + +import com.core.common.annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2204】门诊费用明细信息上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clinic2204OrderParam { + // 就医地医保区划 + @JSONField(serialize = false) + private String mdtrtareaAdmvs; + // 参保地医保区划 + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; + @JSONField(serialize = false) + private String chrgBchno; + @JSONField(name = "feedetail") + private List feedetail; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java new file mode 100644 index 00000000..20d511fa --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2204OrderResult.java @@ -0,0 +1,26 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + *【2204】门诊费用明细信息上传 + * + * @author SunJQ + * @date 2025-04-20 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Clinic2204OrderResult { + //2204门诊费用明细信息上传输出 + @JSONField(name = "result") + List result; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java new file mode 100644 index 00000000..7f634fc6 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2205OrderParam.java @@ -0,0 +1,39 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 就诊明细撤销 + * + * @author SunJQ + * @date 2025-05-07 + */ +@Data +@Accessors(chain = true) +public class Clinic2205OrderParam { + + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + + //收费批次号 + @JSONField(name="chrg_bchno") + private String chrgBchno; + + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + + //人员编号 + @JSONField(name="exp_content") + private String expContent; + + // 参保地医保区划 + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java new file mode 100644 index 00000000..86155328 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206FundPaymentResult.java @@ -0,0 +1,42 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 【2206】医保基金支付详情(【2207】【23系列】住院结算接口共用,后续考虑全局改类名) + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@Accessors(chain = true) +public class Clinic2206FundPaymentResult { + // 主键字段(根据Y标识判断) + //@JSONField(name = "fund_pay_type") + private String fundPayType; // 基金支付类型 + + // 数值型字段使用BigDecimal保证精度 + //@JSONField(name = "inscp_scp_amt") + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + //@JSONField(name = "crt_payb_lmt_amt") + private BigDecimal crtPaybLmtAmt; // 本次可支付限额金额 + + //@JSONField(name = "fund_payamt") + private BigDecimal fundPayamt; // 基金支付金额 + + // 字符型字段 + //@JSONField(name = "fund_pay_type_name") + private String fundPayTypeName; // 基金支付类型名称 + + //@JSONField(name = "setl_proc_info") + private String setlProcInfo; // 结算过程信息 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java new file mode 100644 index 00000000..dc820975 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderOutput.java @@ -0,0 +1,140 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【2206】医保预结算的输出参数 + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@Accessors(chain = true) +public class Clinic2206OrderOutput { + // 主键字段 + private String mdtrtId; // 就诊ID + + private String psnNo; // 人员编号 + + private String psnName; // 人员姓名 + + private String psnCertType; // 人员证件类型 + + private String certno; // 证件号码 + + private String gend; // 性别 + + private String naty; // 民族 + + private Date brdy; // 出生日期 + + private BigDecimal age; // 年龄 + + private String insutype; // 险种类型 + + private String psnType; // 人员类别 + + private String cvlservFlag; // 公务员标志 + + private Date setlTime; // 结算时间 + + private String mdtrtCertType; // 就诊凭证类型 + + private String medType; // 医疗类别 + + private BigDecimal medfeeSumamt; // 医疗费总额 + + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + private BigDecimal preselfpayAmt; // 先行自付金额 + + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + private BigDecimal actPayDedc; // 实际支付起付线 + + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + private BigDecimal mafPay; // 医疗救助基金支出 + + private BigDecimal othPay; // 其他支出 + + private BigDecimal fundPaySumamt; // 基金支付总额 + + private BigDecimal psnPartAmt; // 个人负担总金额 + + private BigDecimal acctPay; // 个人账户支出 + + private BigDecimal psnCashPay; // 个人现金支出 + + private BigDecimal hospPartAmt; // 医院负担金额 + + private BigDecimal balc; // 余额 + + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID + + private String clrOptins; // 清算经办机构 + + private String clrWay; // 清算方式 + + private String clrType; // 清算类别 + + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + private String expContent; // 字段扩展 + + private List setldetail;// 结算详细信息 + + private String mdtrtCertNo; // 就诊凭证编号 + + private String chrgBchno; // 收费批次号 + + private String busNo; // 挂号采访码 + + // 构造方法:初始化所有字段为0.0 + public Clinic2206OrderOutput() { + this.medfeeSumamt = new BigDecimal("0.0"); + this.fulamtOwnpayAmt = new BigDecimal("0.0"); + this.overlmtSelfpay = new BigDecimal("0.0"); + this.preselfpayAmt = new BigDecimal("0.0"); + this.inscpScpAmt = new BigDecimal("0.0"); + this.actPayDedc = new BigDecimal("0.0"); + this.hifpPay = new BigDecimal("0.0"); + this.poolPropSelfpay = new BigDecimal("0.0"); + this.cvlservPay = new BigDecimal("0.0"); + this.hifesPay = new BigDecimal("0.0"); + this.hifmiPay = new BigDecimal("0.0"); + this.hifobPay = new BigDecimal("0.00"); + this.mafPay = new BigDecimal("0.0"); + this.othPay = new BigDecimal("0.0"); + this.fundPaySumamt = new BigDecimal("0.0"); + this.psnPartAmt = new BigDecimal("0.0"); + this.acctPay = new BigDecimal("0.0"); + this.psnCashPay = new BigDecimal("0.0"); + this.hospPartAmt = new BigDecimal("0.0"); + this.balc = new BigDecimal("0.0"); + this.acctMulaidPay = new BigDecimal("0.0"); + this.hifdmPay = new BigDecimal("0.0"); + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java new file mode 100644 index 00000000..36631e7b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderParam.java @@ -0,0 +1,110 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + *【2206】门诊预结算 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +public class Clinic2206OrderParam extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + //内部就诊ID + @JSONField(serialize=false) + private String regId; + //人员姓名 + @JSONField(serialize=false) + private String name; + //性别 + @Dict(dictCode = "sex") + @JSONField(serialize=false) + private String sex; + //民族 + @Dict(dictCode = "naty") + @JSONField(serialize=false) + private String naty; + //出生日期 + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @JSONField(serialize=false) + private Date brdy; + //年龄 + @JSONField(serialize=false) + private Double age; + //定点医药机构编号 + @JSONField(serialize=false) + private String fixmedinsCode; + //定点医药机构名称 + @JSONField(serialize=false) + private String fixmedinsName; + //就医地医保区划 + @JSONField(serialize=false) + private String mdtrtareaAdmvs; + //参保地医保区划 + @JSONField(name="insuplc_admdvs") + private String insuplcAdmdvs; + //病历号 + @JSONField(serialize=false) + private String medicalNo; + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + //就诊凭证类型 + @Dict(dictCode = "mdtrt_cert_type") + @JSONField(name="mdtrt_cert_type") + private String mdtrtCertType; + //就诊凭证编号 + @JSONField(name="mdtrt_cert_no") + private String mdtrtCertNo; + //就诊凭证加密 + @TableField(exist = false) + @JSONField(serialize=false) + private String mdtrtCertNoEncrypt; + //医疗类别 + @Dict(dictCode = "med_type") + @JSONField(name="med_type") + private String medType; + //医疗费总额 + @JSONField(name="medfee_sumamt") + private Double medfeeSumamt; + //个人结算方式 + @Dict(dictCode = "psn_setlway") + @JSONField(name="psn_setlway") + private String psnSetlway; + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + //收费批次号 + @JSONField(name="chrg_bchno") + private String chrgBchno; + //险种类型 + @Dict(dictCode = "insutype") + @JSONField(name="insutype") + private String insutype; + //个人账户使用标志 + @Dict(dictCode = "acct_used_flag") + @JSONField(name="acct_used_flag") + private String acctUsedFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java new file mode 100644 index 00000000..6aa14ca1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResult.java @@ -0,0 +1,161 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 【2206】医保预结算的输出参数 + * + * @author SunJQ + * @date 2025-04-19 + */ +@Data +@Accessors(chain = true) +public class Clinic2206OrderResult { + // 主键字段 + @JSONField(name = "mdtrt_id") + private String mdtrtId; // 就诊ID + + @JSONField(name = "psn_no") + private String psnNo; // 人员编号 + + @JSONField(name = "psn_name") + private String psnName; // 人员姓名 + + @JSONField(name = "psn_cert_type") + private String psnCertType; // 人员证件类型 + + @JSONField(name = "certno") + private String certno; // 证件号码 + + @JSONField(name = "gend") + private String gend; // 性别 + + @JSONField(name = "naty") + private String naty; // 民族 + + @JSONField(name = "brdy") + private Date brdy; // 出生日期 + + @JSONField(name = "age") + private BigDecimal age; // 年龄 + + @JSONField(name = "insutype") + private String insutype; // 险种类型 + + @JSONField(name = "psn_type") + private String psnType; // 人员类别 + + @JSONField(name = "cvlserv_flag") + private String cvlservFlag; // 公务员标志 + + @JSONField(name = "setl_time") + private Date setlTime; // 结算时间 + + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; // 就诊凭证类型 + + @JSONField(name = "med_type") + private String medType; // 医疗类别 + + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; // 医疗费总额 + + @JSONField(name = "fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + @JSONField(name = "overlmt_selfpay") + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + @JSONField(name = "preselfpay_amt") + private BigDecimal preselfpayAmt; // 先行自付金额 + + @JSONField(name = "inscp_scp_amt") + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + @JSONField(name = "act_pay_dedc") + private BigDecimal actPayDedc; // 实际支付起付线 + + @JSONField(name = "hifp_pay") + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + @JSONField(name = "pool_prop_selfpay") + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + @JSONField(name = "cvlserv_pay") + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + @JSONField(name = "hifes_pay") + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + @JSONField(name = "hifmi_pay") + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + @JSONField(name = "hifob_pay") + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + @JSONField(name = "maf_pay") + private BigDecimal mafPay; // 医疗救助基金支出 + + @JSONField(name = "oth_pay") + private BigDecimal othPay; // 其他支出 + + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; // 基金支付总额 + + @JSONField(name = "psn_part_amt") + private BigDecimal psnPartAmt; // 个人负担总金额 + + @JSONField(name = "acct_pay") + private BigDecimal acctPay; // 个人账户支出 + + @JSONField(name = "psn_cash_pay") + private BigDecimal psnCashPay; // 个人现金支出 + + @JSONField(name = "hosp_part_amt") + private BigDecimal hospPartAmt; // 医院负担金额 + + @JSONField(name = "balc") + private BigDecimal balc; // 余额 + + @JSONField(name = "acct_mulaid_pay") + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + @JSONField(name = "medins_setl_id") + private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID + + @JSONField(name = "clr_optins") + private String clrOptins; // 清算经办机构 + + @JSONField(name = "clr_way") + private String clrWay; // 清算方式 + + @JSONField(name = "clr_type") + private String clrType; // 清算类别 + + @JSONField(name = "hifdm_pay") + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + @JSONField(name = "exp_content") + private String expContent; // 字段扩展 + + @JSONField(name = "setldetail") + private List setldetail;// 结算详细信息 + + @JSONField(name = "mdtrt_cert_no") + private String mdtrtCertNo; // 就诊凭证编号 + + @JSONField(serialize = false) + private String chrgBchno; // 收费批次号 + + @JSONField(serialize = false) + private String busNo; // 挂号 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java new file mode 100644 index 00000000..34b5d135 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206OrderResultDto.java @@ -0,0 +1,90 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 预结算结果集 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class Clinic2206OrderResultDto { + + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; // 医疗费总额 + + @JSONField(name = "fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + @JSONField(name = "overlmt_selfpay") + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + @JSONField(name = "preselfpay_amt") + private BigDecimal preselfpayAmt; // 先行自付金额 + + @JSONField(name = "inscp_scp_amt") + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + @JSONField(name = "act_pay_dedc") + private BigDecimal actPayDedc; // 实际支付起付线 + + @JSONField(name = "hifp_pay") + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + @JSONField(name = "pool_prop_selfpay") + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + @JSONField(name = "cvlserv_pay") + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + @JSONField(name = "hifes_pay") + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + @JSONField(name = "hifmi_pay") + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + @JSONField(name = "hifob_pay") + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + @JSONField(name = "maf_pay") + private BigDecimal mafPay; // 医疗救助基金支出 + + @JSONField(name = "oth_pay") + private BigDecimal othPay; // 其他支出 + + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; // 基金支付总额 + + @JSONField(name = "psn_part_amt") + private BigDecimal psnPartAmt; // 个人负担总金额 + + @JSONField(name = "acct_pay") + private BigDecimal acctPay; // 个人账户支出 + + @JSONField(name = "psn_cash_pay") + private BigDecimal psnCashPay; // 个人现金支出 + + @JSONField(name = "hosp_part_amt") + private BigDecimal hospPartAmt; // 医院负担金额 + + @JSONField(name = "hifdm_pay") + private BigDecimal hifdmPay; + + @JSONField(name = "acct_mulaid_pay") + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + private String chrgBchno;//收费批次号 + + private Long accountId;//账户id + + private String medType;//医疗类型 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java new file mode 100644 index 00000000..6a98f44b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2206SetldetaiResult.java @@ -0,0 +1,59 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.HisBaseEntity; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + *【2206】门诊预结算-输出参数 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +public class Clinic2206SetldetaiResult extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + //结算清单主键 + @Excel(name = "结算清单主键", width = 15) + @JSONField(serialize=false) + private String orderId; + //结算信息主键 + @JSONField(serialize=false) + private String setlinfoId; + //内部就诊ID + @JSONField(serialize=false) + private String regId; + //基金支付类型 + @JSONField(name="fund_pay_type") + @Dict(dictCode = "fund_pay_type") + private String fundPayType; + //符合政策范围金额 + @JSONField(name="inscp_scp_amt") + private Double inscpScpAmt; + //本次可支付限额金额 + @JSONField(name="crt_payb_lmt_amt") + private Double crtPaybLmtAmt; + //基金支付金额 + @JSONField(name="fund_payamt") + private Double fundPayamt; + //基金支付类型名称 + @JSONField(name="fund_pay_type_name") + private String fundPayTypeName; + //结算过程信息 + @JSONField(name="setl_proc_info") + private String setlProcInfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java new file mode 100644 index 00000000..8bc9eea1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResult.java @@ -0,0 +1,158 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 【2207】医保预结算的输出参数 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class Clinic2207OrderResult { + // 主键字段 + @JSONField(name = "mdtrt_id") + private String mdtrtId; // 就诊ID + + @JSONField(name = "setl_id") + private String setlId;// 结算id 2207时有值 2206无值 + + @JSONField(name = "psn_no") + private String psnNo; // 人员编号 + + @JSONField(name = "psn_name") + private String psnName; // 人员姓名 + + @JSONField(name = "psn_cert_type") + private String psnCertType; // 人员证件类型 + + @JSONField(name = "certno") + private String certno; // 证件号码 + + @JSONField(name = "gend") + private String gend; // 性别 + + @JSONField(name = "naty") + private String naty; // 民族 + + @JSONField(name = "brdy") + private Date brdy; // 出生日期 + + @JSONField(name = "age") + private BigDecimal age; // 年龄 + + @JSONField(name = "insutype") + private String insutype; // 险种类型 + + @JSONField(name = "psn_type") + private String psnType; // 人员类别 + + @JSONField(name = "cvlserv_flag") + private String cvlservFlag; // 公务员标志 + + @JSONField(name = "setl_time") + private Date setlTime; // 结算时间 + + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; // 就诊凭证类型 + + @JSONField(name = "med_type") + private String medType; // 医疗类别 + + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; // 医疗费总额 + + @JSONField(name = "fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + @JSONField(name = "overlmt_selfpay") + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + @JSONField(name = "preselfpay_amt") + private BigDecimal preselfpayAmt; // 先行自付金额 + + @JSONField(name = "inscp_scp_amt") + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + @JSONField(name = "act_pay_dedc") + private BigDecimal actPayDedc; // 实际支付起付线 + + @JSONField(name = "hifp_pay") + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + @JSONField(name = "pool_prop_selfpay") + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + @JSONField(name = "cvlserv_pay") + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + @JSONField(name = "hifes_pay") + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + @JSONField(name = "hifmi_pay") + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + @JSONField(name = "hifob_pay") + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + @JSONField(name = "maf_pay") + private BigDecimal mafPay; // 医疗救助基金支出 + + @JSONField(name = "oth_pay") + private BigDecimal othPay; // 其他支出 + + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; // 基金支付总额 + + @JSONField(name = "psn_part_amt") + private BigDecimal psnPartAmt; // 个人负担总金额 + + @JSONField(name = "acct_pay") + private BigDecimal acctPay; // 个人账户支出 + + @JSONField(name = "psn_cash_pay") + private BigDecimal psnCashPay; // 个人现金支出 + + @JSONField(name = "hosp_part_amt") + private BigDecimal hospPartAmt; // 医院负担金额 + + @JSONField(name = "balc") + private BigDecimal balc; // 余额 + + @JSONField(name = "acct_mulaid_pay") + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + @JSONField(name = "medins_setl_id") + private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID + + @JSONField(name = "clr_optins") + private String clrOptins; // 清算经办机构 + + @JSONField(name = "clr_way") + private String clrWay; // 清算方式 + + @JSONField(name = "clr_type") + private String clrType; // 清算类别 + + @JSONField(name = "hifdm_pay") + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + @JSONField(name = "exp_content") + private String expContent; // 字段扩展 + + @JSONField(name = "setldetail") + private List setldetail;// 结算详细信息 + + @JSONField(serialize = false) + private String chrgBchno; // 收费批次号 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java new file mode 100644 index 00000000..f2a73884 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultDto.java @@ -0,0 +1,14 @@ +package com.openhis.yb.dto; + +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; + +@Getter +@Setter +@Accessors(chain = true) +public class Clinic2207OrderResultDto extends Clinic2207OrderResult { + + private Long accountId; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java new file mode 100644 index 00000000..56f4bded --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2207OrderResultInfoDto.java @@ -0,0 +1,74 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 结算基础信息 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class Clinic2207OrderResultInfoDto { + // 主键字段 + @JSONField(name = "mdtrt_id") + private String mdtrtId; // 就诊ID + + @JSONField(name = "psn_no") + private String psnNo; // 人员编号 + + @JSONField(name = "psn_name") + private String psnName; // 人员姓名 + + @JSONField(name = "psn_cert_type") + private String psnCertType; // 人员证件类型 + + @JSONField(name = "certno") + private String certno; // 证件号码 + + @JSONField(name = "gend") + private String gend; // 性别 + + @JSONField(name = "naty") + private String naty; // 民族 + + @JSONField(name = "brdy") + private Date brdy; // 出生日期 + + @JSONField(name = "age") + private BigDecimal age; // 年龄 + + @JSONField(name = "insutype") + private String insutype; // 险种类型 + + @JSONField(name = "psn_type") + private String psnType; // 人员类别 + + @JSONField(name = "cvlserv_flag") + private String cvlservFlag; // 公务员标志 + + @JSONField(name = "setl_time") + private Date setlTime; // 结算时间 + + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; // 就诊凭证类型 + + @JSONField(name = "med_type") + private String medType; // 医疗类别 + + @JSONField(name = "medins_setl_id") + private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID + + @JSONField(name = "setldetail") + private List setldetail;// 结算详细信息 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java new file mode 100644 index 00000000..f939c07b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoOutput.java @@ -0,0 +1,106 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 【2208】门诊结算撤销 + * + * @author SunJQ + * @date 2025-04-21 + */ +@Data +@Accessors(chain = true) +public class Clinic2208UnSetlInfoOutput { + + // 1. 就诊ID(字符型,30位,必填) + private String mdtrtId; + + // 2. 结算ID(字符型,30位,必填) + private String setlId; + + // 3. 清算经办机构(字符型,6位) + private String clrOptins; + + // 4. 结算时间(日期时间型,格式:yyyy-MM-dd HH:mm:ss,必填) + private Date setlTime; + + // 5. 医疗费总额(数值型,16位含2位小数,必填) + private BigDecimal medfeeSumamt; + + // 6. 全自费金额(数值型,16位含2位小数,必填) + private BigDecimal fulamtOwnpayAmt; + + // 7. 超限价自费费用(数值型,16位含2位小数,必填) + private BigDecimal overlmtSelfpay; + + // 8. 先行自付金额(数值型,16位含2位小数,必填) + private BigDecimal preselfpayAmt; + + // 9. 符合政策范围金额(数值型,16位含2位小数,必填) + private BigDecimal inscpScpAmt; + + // 10. 实际支付起付线(数值型,16位含2位小数) + private BigDecimal actPayDedc; + + // 11. 基本医疗保险统筹基金支出(数值型,16位含2位小数,必填) + private BigDecimal hifpPay; + + // 12. 统筹基金支付比例(数值型,5位含4位小数,必填) + private BigDecimal poolPropSelfpay; + + // 13. 公务员医疗补助支出(数值型,16位含2位小数,必填) + private BigDecimal cvlservPay; + + // 14. 企业补充医保支出(数值型,16位含2位小数,必填) + private BigDecimal hifesPay; + + // 15. 居民大病保险支出(数值型,16位含2位小数,必填) + private BigDecimal hifmiPay; + + // 16. 职工大额医疗补助支出(数值型,16位含2位小数,必填) + private BigDecimal hifobPay; + + // 17. 医疗救助基金支出(数值型,16位含2位小数,必填) + private BigDecimal mafPay; + + // 18. 其他支出(数值型,16位含2位小数,必填) + private BigDecimal othPay; + + // 19. 基金支付总额(数值型,16位含2位小数,必填) + private BigDecimal fundPaySumamt; + + // 20. 个人负担总金额(数值型,16位含2位小数,必填) + private BigDecimal psnPartAmt; + + // 21. 个人账户支出(数值型,16位含2位小数,必填) + private BigDecimal acctPay; + + // 22. 余额(数值型,16位含2位小数,必填) + private BigDecimal balc; + + // 23. 个人账户共济支付(数值型,16位含2位小数,必填) + private BigDecimal acctMulaidPay; + + // 24. 医院负担金额(数值型,16位含2位小数,必填) + private BigDecimal hospPartAmt; + + // 25. 医药机构结算ID(字符型,30位,必填) + private String medinsSetlId; + + // 26. 个人现金支出(数值型,16位含2位小数,必填) + private BigDecimal pdnCashPay; + + // 27. 伤残人员医疗补助支出(数值型,16位含2位小数,必填) + private BigDecimal hifdmPay; + + //结算详细信息 + private List setldetail;//结算详细信息 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java new file mode 100644 index 00000000..403951dc --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoParam.java @@ -0,0 +1,43 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + *【2208】门诊结算撤销 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +public class Clinic2208UnSetlInfoParam extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + //结算ID + @JSONField(name="setl_id") + private String setlId; + //参保地医保区划 + @JSONField(name="insuplc_admdvs") + private String insuplcAdmdvs; + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java new file mode 100644 index 00000000..c6139412 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Clinic2208UnSetlInfoResult.java @@ -0,0 +1,137 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 【2208】门诊结算撤销 + * + * @author SunJQ + * @date 2025-04-21 + */ +@Data +@Accessors(chain = true) +public class Clinic2208UnSetlInfoResult { + + // 1. 就诊ID(字符型,30位,必填) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 结算ID(字符型,30位,必填) + @JSONField(name = "setl_id") + private String setlId; + + // 3. 清算经办机构(字符型,6位) + @JSONField(name = "clr_optins") + private String clrOptins; + + // 4. 结算时间(日期时间型,格式:yyyy-MM-dd HH:mm:ss,必填) + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "setl_time") + private Date setlTime; + + // 5. 医疗费总额(数值型,16位含2位小数,必填) + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 6. 全自费金额(数值型,16位含2位小数,必填) + @JSONField(name = "fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + // 7. 超限价自费费用(数值型,16位含2位小数,必填) + @JSONField(name = "overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + // 8. 先行自付金额(数值型,16位含2位小数,必填) + @JSONField(name = "preselfpay_amt") + private BigDecimal preselfpayAmt; + + // 9. 符合政策范围金额(数值型,16位含2位小数,必填) + @JSONField(name = "inscp_scp_amt") + private BigDecimal inscpScpAmt; + + // 10. 实际支付起付线(数值型,16位含2位小数) + @JSONField(name = "act_pay_dedc") + private BigDecimal actPayDedc; + + // 11. 基本医疗保险统筹基金支出(数值型,16位含2位小数,必填) + @JSONField(name = "hifp_pay") + private BigDecimal hifpPay; + + // 12. 统筹基金支付比例(数值型,5位含4位小数,必填) + @JSONField(name = "pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + // 13. 公务员医疗补助支出(数值型,16位含2位小数,必填) + @JSONField(name = "cvlserv_pay") + private BigDecimal cvlservPay; + + // 14. 企业补充医保支出(数值型,16位含2位小数,必填) + @JSONField(name = "hifes_pay") + private BigDecimal hifesPay; + + // 15. 居民大病保险支出(数值型,16位含2位小数,必填) + @JSONField(name = "hifmi_pay") + private BigDecimal hifmiPay; + + // 16. 职工大额医疗补助支出(数值型,16位含2位小数,必填) + @JSONField(name = "hifob_pay") + private BigDecimal hifobPay; + + // 17. 医疗救助基金支出(数值型,16位含2位小数,必填) + @JSONField(name = "maf_pay") + private BigDecimal mafPay; + + // 18. 其他支出(数值型,16位含2位小数,必填) + @JSONField(name = "oth_pay") + private BigDecimal othPay; + + // 19. 基金支付总额(数值型,16位含2位小数,必填) + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + // 20. 个人负担总金额(数值型,16位含2位小数,必填) + @JSONField(name = "psn_part_amt") + private BigDecimal psnPartAmt; + + // 21. 个人账户支出(数值型,16位含2位小数,必填) + @JSONField(name = "acct_pay") + private BigDecimal acctPay; + + // 22. 余额(数值型,16位含2位小数,必填) + @JSONField(name = "balc") + private BigDecimal balc; + + // 23. 个人账户共济支付(数值型,16位含2位小数,必填) + @JSONField(name = "acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + // 24. 医院负担金额(数值型,16位含2位小数,必填) + @JSONField(name = "hosp_part_amt") + private BigDecimal hospPartAmt; + + // 25. 医药机构结算ID(字符型,30位,必填) + @JSONField(name = "medins_setl_id") + private String medinsSetlId; + + // 26. 个人现金支出(数值型,16位含2位小数,必填) + @JSONField(name = "pdn_cash_pay") + private BigDecimal pdnCashPay; + + // 27. 伤残人员医疗补助支出(数值型,16位含2位小数,必填) + @JSONField(name = "hifdm_pay") + private BigDecimal hifdmPay; + + //结算详细信息 + @JSONField(name = "setldetail") + private List setldetail;//结算详细信息 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java new file mode 100644 index 00000000..1bd684e9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg.java @@ -0,0 +1,116 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【2201】【2202】挂号 退号 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ClinicReg extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + //就诊ID + @JSONField(name="mdtrt_id") + private String mdtrtId; + //参保地医保区划 + @JSONField(serialize=false) + private String insuplcAdmdvs; + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + //险种类型 + //@Dict(dictCode = "insutype") + @JSONField(name="insutype") + private String insutype; + //医疗类别 + //@Dict(dictCode = "med_type") + @JSONField(serialize=false) + private String medType; + //挂号时间 + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(name="begntime") + private Date begntime; + //就诊凭证类型 + @Dict(dictCode = "mdtrt_cert_type") + @JSONField(name="mdtrt_cert_type") + private String mdtrtCertType; + //就诊凭证编号 + @JSONField(name="mdtrt_cert_no") + private String mdtrtCertNo; +// //证件加密串 +// @JSONField(serialize=false) +// @TableField(exist = false) +// private String mdtrtCertNoEncrypt; + //住院/门诊号 + @JSONField(name="ipt_otp_no") + private String iptOtpNo;//使用bus_no + //医师编码 + //@Dict(dictTable = "business_pub_medicalstaff", dictText = "name", dictCode = "id") + @JSONField(name="atddr_no") + private String atddrNo; + //医师姓名 + @JSONField(name="dr_name") + private String drName; + //科室编码 + //@Dict(dictTable = "business_pub_dept", dictText = "hosp_dept_name", dictCode = "id") + @JSONField(name="dept_code") + private String deptCode; + //科室名称 + @JSONField(name="dept_name") + private String deptName; + //科别 + @Dict(dictCode = "dept") + @JSONField(name="caty") + private String caty; + //挂号费 + @JSONField(serialize=false) + private Double regFee; + //检查费 + @JSONField(serialize=false) + private Double checkFee; + //应收金额 + @JSONField(serialize=false) + private Double totalFee; + //状态,0-挂号,1-看诊,2-费用明细,3-预结算,4-结算 + @JSONField(serialize=false) + @Dict(dictCode = "clinc_status") + private String status; + + @JSONField(name="psn_cert_type") + @TableField(exist = false) + private String psnCertType; + @JSONField(name="certno") + @TableField(exist = false) + private String certno; + @JSONField(name="psn_type") + @TableField(exist = false) + private String psnType; + @JSONField(name="psn_name") + @TableField(exist = false) + private String psnName; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java new file mode 100644 index 00000000..8e215ea8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ClinicReg2201Output.java @@ -0,0 +1,66 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +@Data +@Accessors(chain = true) +public class ClinicReg2201Output { + private static final long serialVersionUID = 1L; + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + //就诊ID + private String mdtrtId; + //参保地医保区划 + @JSONField(serialize=false) + private String insuplcAdmdvs; + //人员编号 + private String psnNo; + //险种类型 + private String insutype; + //医疗类别 + @JSONField(serialize=false) + private String medType; + //挂号时间 + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date begntime; + //就诊凭证类型 + private String mdtrtCertType; + //就诊凭证编号 + private String mdtrtCertNo; + //证件加密串 + @JSONField(serialize=false) + @TableField(exist = false) + private String mdtrtCertNoEncrypt; + //住院/门诊号 + private String iptOtpNo; + //医师编码 + private String atddrNo; + //医师姓名 + private String drName; + //科室编码 + private String deptCode; + //科室名称 + private String deptName; + //科别 + private String caty; + //挂号费 + private Double regFee; + //检查费 + private Double checkFee; + //应收金额 + private Double totalFee; + //状态,0-挂号,1-看诊,2-费用明细,3-预结算,4-结算 + private String status; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java new file mode 100644 index 00000000..3a8a7472 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/DispenseInventory3505Dto.java @@ -0,0 +1,103 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 药品发放和库存表连接信息 + * + * @author wangyang + * @date 2025-03-14 + */ +@Data +@Accessors(chain = true) +public class DispenseInventory3505Dto { + + /** 药品发放表主键ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long dispenseId; + + /** 就诊id */ + @JsonSerialize(using = ToStringSerializer.class) + private Long encounterId; + + /** 药品请求表主键ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long medReqId; + + /** 病人id */ + @JsonSerialize(using = ToStringSerializer.class) + private Long patientId; + + /** 请求单位编码 */ + private String dispenseUnitCode; + + /** 请求数量 */ + private Integer dispenseQuantity; + + /** 发放数量 */ + private Integer dispenseStatus; + + /** 库存项目表主键ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long inventoryId; + + /** 拆零单位 */ + private String inventoryUnitCode; + + /** 当前库存数量(拆零单位) */ + private BigDecimal inventoryQuantity; + + /** 拆零比 */ + private BigDecimal partPercent; + + /** 批号 */ + private String lotNumber; + + /** 生产日期 */ + private Date productionDate; + + /** 发药时间 */ + private Date dispenseTime; + + /** 有效期止 */ + private Date expirationDate; + + /** 追溯码 */ + private String traceNo; + + /** 医保编码 */ + private String ybNo; + + /** 就诊编号 */ + private String encounterNo; + + /** 药品编码 */ + private String medicationNo; + + /** 执业资格证号 */ + private String pharPracCertNo; + + /** 发药编号 */ + private String dispenseNo; + + /** 处方标志 */ + private Integer rxFlag; + + /** 配药人 */ + private String preparerName; + + /** 发药人 */ + private String dispenseName; + + /** 开方人 */ + private String practitionerName; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java new file mode 100644 index 00000000..0cab43db --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceChargeDetailDto.java @@ -0,0 +1,34 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 收费项目明细 + * + * @author yuxj + * @date 2025-04-22 + */ +@Data +@Accessors(chain = true) +public class EleInvoiceChargeDetailDto { + + // 医疗收费项目类别; + private String ybType; + // 数量 + private Integer number; + // 金额 + private BigDecimal amt; + // 自费金额 + private BigDecimal selfAmt; + // 收费项目名称 + private String chargeName; + // 收费项目代码 + private String chargeCode; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java new file mode 100644 index 00000000..44b64464 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceListDetailDto.java @@ -0,0 +1,46 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 清单项目明细 + * + * @author yuxj + * @date 2025-04-22 + */ +@Data +@Accessors(chain = true) +public class EleInvoiceListDetailDto { + // 明细流水号 + private Long listDetailNo; + // 医疗收费项目类别; + private String ybType; + // 药品编码 + private String code; + // 药品名称 + private String name; + // 医保项目编码 + private String ybCode; + // 计量单位 + private String unit; + // 单价 + private BigDecimal std; + // 数量 + private Integer number; + // 金额 + private BigDecimal amt; + // 自费金额 + private BigDecimal selfAmt; + // 医保药品分类 + private Integer medicalCareType; + // 收费项目名称 + private String chargeName; + // 收费项目代码 + private String chargeCode; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java new file mode 100644 index 00000000..2e68db0d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePatientInfoDto.java @@ -0,0 +1,75 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * 患者信息 + * + * @author yuxj + * @date 2025-04-22 + */ +@Data +@Accessors(chain = true) +public class EleInvoicePatientInfoDto { + // 患者id + private Long payerId; + + // 患者姓名 + private String payer; + + // 患者院内编码/病历号 + private String caseNumber; + + // 性别 + private Integer genderEnum; + private String genderEnum_enumText; + + // 生日 + private Date birthDate; + + // 电话 + private String tel; + + // 身份证号 + private String cardNo; + + // 就诊编码 + private String encounterBusNo; + + // 就诊日期 + private String consultationDate; + + // 住院日期 + private String inHospitalDate; + + // 出院日期 + private String outHospitalDate; + + // 就诊科室名称 + private String patientCategory; + + // 就诊科室编码 + private String patientCategoryCode; + + // 医疗机构类型 + private String medicalInstitution; + + // 医保区域编码 + private String medCareAreaCode; + + // 入院科室编码 + private String categoryCode; + // 入院科室名称 + private String category; + // 出院科室编码 + private String leaveCategoryCode; + // 出院科室名称 + private String leaveCategory; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java new file mode 100644 index 00000000..ebceafc8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoicePaymentInfoDto.java @@ -0,0 +1,60 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 付款信息 + * + * @author yuxj + * @date 2025-04-22 + */ +@Data +@Accessors(chain = true) +public class EleInvoicePaymentInfoDto { + // 付款状态 + private Integer paymentStatus; + + // 发票id + private Long invoiceId; + + // 发票状态 + private Integer invoiceStatus; + + // 结算id + private Long paymentId; + + // 支付的业务标识符(用于显示,支付流水号) + private String busNo; + + // 收费员 + private String payee; + + // 开票总金额 + private BigDecimal totalAmt; + + // 个人现金支付金额 + private BigDecimal rmbCashPayAmount; + // 个人现金支付金额(微信) + private BigDecimal wxPayAmount; + // 个人现金支付金额(支付宝) + private BigDecimal aliPayAmount; + // 个人现金支付金额(银联) + private BigDecimal debitPayAmount; + // 个人医保账户支付 + private BigDecimal zhPayAmount; + // 基金支付总额 + private BigDecimal ybFundFayAmount; + // 其他(如医院负担金额) + private BigDecimal otherPayAmount; + // 账户共济支付金额 + private BigDecimal aelfYbZhGjValue; + + // 付款账单集合 + private String chargeItemIds; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java new file mode 100644 index 00000000..d1b7b93b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/EleInvoiceResultDto.java @@ -0,0 +1,73 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.openhis.common.enums.InvoiceStatus; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 返回信息 + * + * @author yuxj + * @date 2025-04-22 + */ +@Data +@Accessors(chain = true) +public class EleInvoiceResultDto { + + private Long id; + + /** 患者ID */ + private Long patientId; + + /** 状态 */ + private InvoiceStatus statusEnum; + + /** 类别 */ + private String typeCode; + + /** 取消原因 */ + private String cancelledReason; + + /** 收费项 */ + private String chargeItemIds; + + /** 发票净额总记 */ + private BigDecimal totalNet; + + /** 发票总计金额 */ + private BigDecimal totalGross; + + /** 付款详情 */ + private String paymentTerms; + + /** 账单批次号 */ + private String batchCode; + + /** 结算批次号 */ + private String qrCode; + + /** 发票编号 */ + private String busNo; + + /** 开票员 */ + private Long invoicingStaffId; + /** 电子票据代码 */ + private String billBatchCode; + /** 电子票据号码 */ + private String billNo; + /** 电子校验码 */ + private String random; + /** 电子票据生成时间 */ + private String billCreateTime; + /** 电子票据二维码图片数据 */ + private String billQrCode; + /** 电子票据H5页面URL */ + private String pictureUrl; + /** 电子票据外网H5页面URL */ + private String pictureNetUrl; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java new file mode 100644 index 00000000..4e38f16d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/File9101Param.java @@ -0,0 +1,14 @@ +package com.openhis.yb.dto; + +import lombok.Data; +import org.springframework.web.multipart.MultipartFile; + +@Data +public class File9101Param { + + private MultipartFile file; + + private String filename; + + private String fixmedinsCode; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java new file mode 100644 index 00000000..582d6bf8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileDownload.java @@ -0,0 +1,26 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【9102】下载实体 + */ +@Data +@Accessors(chain = true) +public class FileDownload { + @JSONField(serialize = false) + private String code; + @JSONField(name = "ver") + private String version; + @JSONField(name = "filename") + private String filename; + @JSONField(name = "file_qury_no") + private String fileQuryNo; + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java new file mode 100644 index 00000000..12d047ae --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FileResult.java @@ -0,0 +1,43 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【9101】【9102】公用 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FileResult { + + // 文件查询号 + @JSONField(name="file_qury_no") + private String fileQuryNo; + + // 文件名称 + @JSONField(name="filename") + private String filename; + + // 下载截止时间 + @JSONField(name="dld_endtime") + private Date dldEndtime; + + // 文件数据 + @JSONField(serialize=false) + private byte[] fileData; + + // 医药机构编号 + @JSONField(name="fixmedins_code") + private String fixmedinsCode; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java new file mode 100644 index 00000000..4585aacb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Param.java @@ -0,0 +1,53 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【13203】医药机构费用结算日对账结果查询 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial13203Param { + + // 对账日期,格式:YYYY-MM-DD + @JSONField(name = "stmt_date") + private String stmtDate; + + // 明细对账结果,1:不平,0:平 + @JSONField(name = "stmt_rslt") + private String stmtRslt; + + // 查询页面数据量,最大100 + @JSONField(name = "page_size") + private String pageSize; + + // 页数,默认1 + @JSONField(name = "page_num") + private String pageNum; + + // 清算机构编码 + @JSONField(name = "clr_optins") + private String clrOptins; + + // 清算类别 + @JSONField(name = "clr_type") + private String clrType; + + // 险种 + @JSONField(name = "insutype") + private String insutype; + + // 就医类别,2:本地就医,3:省内异地就医,4:跨省就医 + @JSONField(name = "clr_pay_loc") + private String clrPayLoc; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java new file mode 100644 index 00000000..18ce4215 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203Result.java @@ -0,0 +1,58 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【13203】医药机构费用结算日对账结果查询-输出参数 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial13203Result { + + // 退费标识 + @JSONField(name = "refd_setl_flag") + private String refdSetlFlag; + + // 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 就诊流水号 + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 结算ID + @JSONField(name = "setl_id") + private String setlId; + + // 人员名称 + @JSONField(name = "psn_name") + private String psnName; + + // 对账结果 + @JSONField(name = "stmt_rslt") + private String stmtRslt; + + // 总医疗费 + @JSONField(name = "medfee_sumamt") + private String medfeeSumamt; + + // 清算机构编码 + @JSONField(name = "clr_optins") + private String clrOptins; + + // 报文ID + @JSONField(name = "msg_id") + private String msgId; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java new file mode 100644 index 00000000..1f1d0107 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial13203WebParam.java @@ -0,0 +1,49 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; + +/** + * 【13202】前台入参 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +public class Financial13203WebParam { + + // 对账日期,格式:YYYY-MM-DD + @JSONField(name = "stmt_date") + private String stmtDate; + + // 明细对账结果,1:不平,0:平 + @JSONField(name = "stmt_rslt") + private String stmtRslt; + + // 查询页面数据量,最大100 + @JSONField(name = "page_size") + private String pageSize; + + // 页数,默认1 + @JSONField(name = "page_num") + private String pageNum; + + // 清算机构编码 + @JSONField(name = "clr_optins") + private String clrOptins; + + // 清算类别 + @JSONField(name = "clr_type") + private String clrType; + + // 险种 + @JSONField(name = "insutype") + private String insutype; + + // 就医类别,2:本地就医,3:省内异地就医,4:跨省就医 + @JSONField(name = "clr_pay_loc") + private String clrPayLoc; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java new file mode 100644 index 00000000..7dd63c76 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Output.java @@ -0,0 +1,19 @@ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial3201Output { + + //结算经办机构 + private String setlOptins; + //对账结果 + private String stmtRslt; + //对账结果说明 + private String stmtRsltDscr; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java new file mode 100644 index 00000000..01c12bb9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3201Param.java @@ -0,0 +1,81 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.HisBaseEntity; +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3201】月结对账 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial3201Param extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //定点医药机构编号 + @Excel(name = "定点医药机构编号", width = 15) + @JSONField(serialize=false) + private String fixmedinsCode; + //定点医药机构名称 + @Excel(name = "定点医药机构名称", width = 15) + @JSONField(serialize=false) + private String fixmedinsName; + //医保区划 + @Excel(name = "医保区划", width = 15) + @JSONField(serialize=false) + private String admvs; + //险种 + @Excel(name = "险种", width = 15, dictType = "insutype") + @Dict(dictCode = "insutype") + @JSONField(name="insutype") + private String insutype; + //清算类别 + @Excel(name = "清算类别", width = 15, dictType = "clr_type") + @Dict(dictCode = "clr_type") + @JSONField(name="clr_type") + private String clrType; + //结算经办机构 + @Excel(name = "结算经办机构", width = 15) + @JSONField(name="setl_optins") + private String setlOptins; + //对账开始日期 + @Excel(name = "对账开始日期", width = 15, dateFormat = "yyyy-MM-dd") + @JSONField(name="stmt_begndate") + private String stmtBegndate; + //对账结束日期 + @Excel(name = "对账结束日期", width = 15, dateFormat = "yyyy-MM-dd") + @JSONField(name="stmt_enddate") + private String stmtEnddate; + //医疗费总额 + @Excel(name = "医疗费总额", width = 15) + @JSONField(name="medfee_sumamt") + private Double medfeeSumamt; + //基金支付总额 + @Excel(name = "基金支付总额", width = 15) + @JSONField(name="fund_pay_sumamt") + private Double fundPaySumamt; + //个人账户支付金额 + @Excel(name = "个人账户支付金额", width = 15) + @JSONField(name="acct_pay") + private Double acctPay; + //定点医药机构结算笔数 + @Excel(name = "定点医药机构结算笔数", width = 15) + @JSONField(name="fixmedins_setl_cnt") + private Integer fixmedinsSetlCnt; + + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs;//区划 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java new file mode 100644 index 00000000..b604eead --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileParam.java @@ -0,0 +1,76 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +/** + * 【3202】文件输入实体 + * + * @author SunJQ + * @date 2025-04-22 + */ +@Getter +@Setter +@Accessors(chain = true) +public class Financial3202FileParam { + // 1. 结算ID(字符型,30位,必填) + @JSONField(name = "setl_id") + private String setlId; + + // 2. 就诊ID(字符型,30位,必填) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 3. 人员编号(字符型,30位,必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 4. 医疗费总额(数值型,16位含2位小数,必填) + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 5. 基金支付总额(数值型,16位含2位小数,必填) + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + // 6. 个人账户支出(数值型,16位含2位小数,必填) + @JSONField(name = "acct_pay") + private BigDecimal acctPay; + + // 7. 退费结算标志(字符型,3位,必填) + @JSONField(name = "refd_setl_flag") + private String refdSetlFlag; + + @Override + public String toString() { + return setlId + "," + mdtrtId + "," + psnNo + "," + medfeeSumamt + "," + fundPaySumamt + "," + acctPay + "," + refdSetlFlag; + } + + public String getTxt() { + return setlId + "\t" + mdtrtId + "\t" + psnNo + "\t" + medfeeSumamt + "\t" + fundPaySumamt + "\t" + acctPay + "\t" + refdSetlFlag; + } + + public Financial3202FileParam() { + } + + public Financial3202FileParam(String setlId, String mdtrtId, String psnNo, BigDecimal medfeeSumamt, BigDecimal fundPaySumamt, BigDecimal acctPay, String refdSetlFlag) { + this.setlId = setlId; + this.mdtrtId = mdtrtId; + this.psnNo = psnNo; + this.medfeeSumamt = medfeeSumamt; + this.fundPaySumamt = fundPaySumamt; + this.acctPay = acctPay; + this.refdSetlFlag = refdSetlFlag; + } + + private String patientName; + private String setlTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java new file mode 100644 index 00000000..a6865cb9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202FileResult.java @@ -0,0 +1,56 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import java.math.BigDecimal; + +/** + * 【3202】文件输出实体 + * + * @author SunJQ + * @date 2025-04-22 + */ +public class Financial3202FileResult { + // 1. 人员编号(字符型,30位,必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 就诊ID(字符型,30位,非必填) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 3. 结算ID(字符型,30位,非必填) + @JSONField(name = "setl_id") + private String setlId; + + // 4. 发送方报文ID(字符型,30位,必填) + @JSONField(name = "msgid") + private String msgid; + + // 5. 对账结果(字符型,6位,必填) + @JSONField(name = "stmt_rslt") + private String stmtRslt; + + // 6. 退费结算标志(字符型,3位,必填) + @JSONField(name = "refd_setl_flag") + private String refdSetlFlag; + + // 7. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 8. 医疗费总额(数值型,16位含2位小数,非必填) + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 9. 基金支付总额(数值型,16位含2位小数,非必填) + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + // 10. 个人账户支出(数值型,16位含2位小数,非必填) + @JSONField(name = "acct_pay") + private BigDecimal acctPay; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java new file mode 100644 index 00000000..a6cd3a32 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3202OtherParam.java @@ -0,0 +1,21 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import liquibase.pro.packaged.D; +import lombok.Data; +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +@Data +@Accessors(chain = true) +public class Financial3202OtherParam extends Financial3202FileParam { + + // 7. 现金支付金额(数值型,16位含2位小数,必填) + private BigDecimal cashPayamt; + + private BigDecimal medSumfee; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java new file mode 100644 index 00000000..fa8b60a9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AParam.java @@ -0,0 +1,75 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import org.springframework.format.annotation.DateTimeFormat; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.annotation.Excel; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3203A】清算 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial3203AParam extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + // 1. 清算类别(字符型,30位,必填) + @JSONField(name = "clr_type") + private String clrType; + + // 2. 医疗费总额(数值型,16位含2位小数,必填) + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 3. 医保认可费用总额(数值型,16位含2位小数,必填) + @JSONField(name = "med_sumfee") + private BigDecimal medSumfee; + + // 4. 基金申报总额(数值型,16位含2位小数,必填) + @JSONField(name = "fund_appy_sum") + private BigDecimal fundAppySum; + + // 5. 现金支付金额(数值型,16位含2位小数,必填) + @JSONField(name = "cash_payamt") + private BigDecimal cashPayamt; + + // 6. 个人账户支出(数值型,16位含2位小数,必填) + @JSONField(name = "acct_pay") + private BigDecimal acctPay; + + // 7. 开始日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "begndate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date begndate; + + // 8. 结束日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "enddate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date enddate; + + // 9. 清算机构(字符型,6位,必填) + @JSONField(name = "clr_optins") + private String clrOptins; // 必须是准确的6位编码 +// +// // 统筹区号,仅传参用 +// @JSONField(deserialize = false) +// private String admvs; // 必须是准确的6位编码 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java new file mode 100644 index 00000000..673dc148 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203AWebParam.java @@ -0,0 +1,37 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotNull; +import java.util.Date; +import java.util.List; + +/** + * 【3203A】前台入参 + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +public class Financial3203AWebParam { + + /** 清算类别 */ + @NotNull + private String clrType; + /** 开始时间 */ + @NotNull + private Date stmtBegnDate; + /** 结束时间 */ + @NotNull + private Date stmtEndDate; + /** 清算机构 */ + @NotNull + private String clrOptins; + + List settlementIdList; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java new file mode 100644 index 00000000..b7df06bf --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Dto.java @@ -0,0 +1,39 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 【3203】后台计算结果 DB映射实体 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +public class Financial3203Dto { + // 清算人次 + private Long psntime; + // 医保认可费用总额(数值型,16位含2位小数,必填) + private BigDecimal medSumfee; + // 现金支付金额(数值型,16位含2位小数,必填) + private BigDecimal cashPayamt; + // 个人账户支出(数值型,16位含2位小数,必填) + private BigDecimal acctPay; + /** 医疗费用总额 */ + private BigDecimal medFeeSumAmt; + /** 基金支付总额 */ + private BigDecimal fundPaySumAmt; + /** 个人账户支付总额 */ + private BigDecimal acctGjPay; + /** 现金支付总额 */ + private BigDecimal selfPayCash; + /** 微信支付总额 */ + private BigDecimal selfPayVX; + /** 阿里支付总额 */ + private BigDecimal selfPayALI; + /** 银行卡支付总额 */ + private BigDecimal selfPayUNION; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java new file mode 100644 index 00000000..ba206d9e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203Param.java @@ -0,0 +1,72 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 【3203】清算申请 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial3203Param { + private static final long serialVersionUID = 1L; + + // 1. 清算类别(字符型,30位,必填) + @JSONField(name = "clr_type") + private String clrType; + + // 10. 清算方式(字符型,30位,必填) + @JSONField(name = "clr_way") + private String clrWay; + + // 2. 医疗费总额(数值型,16位含2位小数,必填) + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 3. 医保认可费用总额(数值型,16位含2位小数,必填) + @JSONField(name = "med_sumfee") + private BigDecimal medSumfee; + + // 4. 基金申报总额(数值型,16位含2位小数,必填) + @JSONField(name = "fund_appy_sum") + private BigDecimal fundAppySum; + + // 5. 现金支付金额(数值型,16位含2位小数,必填) + @JSONField(name = "cash_payamt") + private BigDecimal cashPayamt; + + // 6. 个人账户支出(数值型,16位含2位小数,必填) + @JSONField(name = "acct_pay") + private BigDecimal acctPay; + + // 7. 开始日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "begndate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date begndate; + + // 8. 结束日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "enddate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date enddate; + + // 9. 清算年月 + @JSONField(name = "setlym") + private String setlym; + + // 11. 清算人次 + @JSONField(name = "psntime") + private Long psntime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java new file mode 100644 index 00000000..7c1c7dae --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3203WebParam.java @@ -0,0 +1,42 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; + +/** + * 【3203】前台入参 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +public class Financial3203WebParam { + + // 清算类别(字符型,30位,必填) + @JSONField(name = "clr_type") + private String clrType; + + // 清算方式(字符型,30位,必填) + @JSONField(name = "clr_way") + private String clrWay; + + // 开始日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "begndate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date begndate; + + // 结束日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "enddate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date enddate; + + // 清算年月 + @JSONField(name = "setlym") + private String setlym; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java new file mode 100644 index 00000000..edf81763 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Financial3204Param.java @@ -0,0 +1,32 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3204A】清算申请撤销 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Financial3204Param { + /** + * 机构清算申请事件ID + */ + @JSONField(name = "clr_appy_evt_id") + private String clrAppyEvtId; + /** + * 清算机构 + */ + @JSONField(name = "clr_optins") + private String clrOptins; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java new file mode 100644 index 00000000..a2cc8b73 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialClearing3203AWebParam.java @@ -0,0 +1,19 @@ +package com.openhis.yb.dto; + +import lombok.Data; + +import java.util.Date; + +@Data +public class FinancialClearing3203AWebParam { + + /** 结算经办机构 */ + private String setlOptins; + /** 清算类别 */ + private String clrType; + /** 开始时间 */ + private String stmtBegnDate;//年月日 + /** 结束时间 */ + private String stmtEndDate; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java new file mode 100644 index 00000000..f8a15810 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Param.java @@ -0,0 +1,68 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3202】医药机构费用结算对明细账 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FinancialSettlement3202Param { + // 1. 结算经办机构(字符型,6位,必填) + @JSONField(name = "setl_optins") + private String setlOptins; + + // 2. 文件查询号(字符型,30位,必填) + @JSONField(name = "file_qury_no") + private String fileQuryNo; + + // 3. 对账开始日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "stmt_begndate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date stmtBegndate; + + // 4. 对账结束日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "stmt_enddate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date stmtEnddate; + + // 5. 医疗费总额(数值型,16位含2位小数,必填) + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 6. 基金支付总额(数值型,16位含2位小数,必填) + @JSONField(name = "fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + // 7. 现金支付金额(数值型,16位含2位小数,必填) + @JSONField(name = "cash_payamt") + private BigDecimal cashPayamt; + + // 8. 定点医药机构结算笔数(数值型,10位,必填) + @JSONField(name = "fixmedins_setl_cnt") + private Integer fixmedinsSetlCnt; + + // 9. 清算类别(字符型,6位,必填) + @JSONField(name = "clr_type") + private String clrType; + + // 10. 退费结算标志(字符型,3位,必填) + @JSONField(name = "refd_setl_flag") + private String refdSetlFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java new file mode 100644 index 00000000..4ba19c16 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3202Result.java @@ -0,0 +1,37 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3202】医药机构费用结算对明细账-文件输出实体 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FinancialSettlement3202Result { + // 1. 文件查询号(字符型,30位,必填) + @JSONField(name = "file_qury_no") + private String fileQuryNo; + + // 2. 文件名称(字符型,200位,必填) + @JSONField(name = "filename") + private String filename; + + // 3. 下载截止时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "dld_endtime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date dldEndtime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java new file mode 100644 index 00000000..bc895b4b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AParam.java @@ -0,0 +1,40 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + *【3209A】查询跨省三方对账未成功数据(吉林省)-输入参数 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FinancialSettlement3209AParam { + + // 清算类别 + @JSONField(name = "clr_type") + private String clrType; + + // 开始日期 + @JSONField(name = "begndate") + private Date begndate; + + // 结束日期 + @JSONField(name = "enddate") + private Date enddate; + + // 清算机构 + @JSONField(name = "clr_optins") + private String clrOptins; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java new file mode 100644 index 00000000..3e5d3156 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FinancialSettlement3209AResult.java @@ -0,0 +1,28 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3209A】查询跨省三方对账未成功数据(吉林省)-输出参数] + * + * @author SunJQ + * @date 2025-04-21 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FinancialSettlement3209AResult { + // 结算ID + @JSONField(name = "setlId") + private String setlId; + + // 参保地区划 + @JSONField(name = "insuAdmdvs") + private String insuAdmdvs; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java new file mode 100644 index 00000000..db81d384 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiConsultation3101Param.java @@ -0,0 +1,46 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.List; +import java.util.Set; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3101】明细审核事前分析服务(输入-规则分析信息) + * 【3102】明细审核事中分析服务(输入-规则分析信息) + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiConsultation3101Param { + + // 1. 系统编码 + @JSONField(name = "syscode") + private String syscode; + + // 2. 参保人信息 + @JSONField(name = "patient_dtos") + private List patientDtos; + + // 3. 规则标识集合(非必填) + @JSONField(name = "rule_ids") + private Set ruleIds; + + // 4. 任务ID + @JSONField(name = "task_id") + private String taskId; + + // 5. 触发场景 + @JSONField(name = "trig_scen") + private String trigScen; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java new file mode 100644 index 00000000..d2272093 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiDiagnose3101Param.java @@ -0,0 +1,57 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【3101】明细审核事前分析服务(输入-诊断信息) + * 【3102】明细审核事中分析服务(输入-诊断信息) + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiDiagnose3101Param { + + // 1. 诊断标识 + @JSONField(name = "dise_id") + private String diseId; + + // 2. 出入诊断类别 + @JSONField(name = "inout_dise_type") + private String inoutDiseType; + + // 3. 主诊断标志 + @JSONField(name = "maindise_flag") + private String maindiseFlag; + + // 4. 诊断排序号 + @JSONField(name = "dias_srt_no") + private String diasSrtNo; + + // 5. 诊断(疾病)编码 + @JSONField(name = "dise_codg") + private String diseCodg; + + // 6. 诊断(疾病)名称 + @JSONField(name = "dise_name") + private String diseName; + + // 7. 诊断日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "dise_date") + private Date diseDate; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java new file mode 100644 index 00000000..de6ddaee --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiEncounter3101Param.java @@ -0,0 +1,167 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【3101】明细审核事前分析服务(输入-就诊信息) + * 【3102】明细审核事中分析服务(输入-就诊信息) + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiEncounter3101Param { + // 1. 就诊标识 + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 医疗服务机构标识 + @JSONField(name = "medins_id") + private String medinsId; + + // 3. 医疗机构名称 + @JSONField(name = "medins_name") + private String medinsName; + + // 4. 医疗机构行政区划编码 + @JSONField(name = "medins_admdvs") + private String medinsAdmdvs; + + // 5. 医疗服务机构类型 + @JSONField(name = "medins_type") + private String medinsType; + + // 6. 医疗机构等级 + @JSONField(name = "medins_lv") + private String medinsLv; + + // 7. 病区标识 + @JSONField(name = "wardarea_codg") + private String wardareaCodg; + + // 8. 病房号 + @JSONField(name = "wardno") + private String wardno; + + // 9. 病床号 + @JSONField(name = "bedno") + private String bedno; + + // 10. 入院日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "adm_date") + private Date admDate; + + // 11. 出院日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "dscg_date") + private Date dscgDate; + + // 12. 主诊断编码 + @JSONField(name = "dscg_main_dise_codg") + private String dscgMainDiseCodg; + + // 13. 主诊断名称 + @JSONField(name = "dscg_main_dise_name") + private String dscgMainDiseName; + + // 14. 诊断信息DTO + @JSONField(name = "fsi_diagnose_dtos") + private List fsiDiagnoseDtos; + + // 15. 医师标识 + @JSONField(name = "dr_codg") + private String drCodg; + + // 16. 入院科室标识 + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + // 17. 入院科室名称 + @JSONField(name = "adm_dept_name") + private String admDeptName; + + // 18. 出院科室标识 + @JSONField(name = "dscg_dept_codg") + private String dscgDeptCodg; + + // 19. 出院科室名称 + @JSONField(name = "dscg_dept_name") + private String dscgDeptName; + + // 20. 就诊类型 + @JSONField(name = "med_mdtrt_type") + private String medMdtrtType; + + // 21. 医疗类别 + @JSONField(name = "med_type") + private String medType; + + // 22. 处方(医嘱)信息 + @JSONField(name = "fsi_order_dtos") + private List fsiOrderDtos; + + // 23. 生育状态 + @JSONField(name = "matn_stas") + private String matnStas; + + // 24. 总费用 + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + // 25. 自费金额 + @JSONField(name = "ownpay_amt") + private BigDecimal ownpayAmt; + + // 26. 自付金额 + @JSONField(name = "selfpay_amt") + private BigDecimal selfpayAmt; + + // 27. 个人账户支付金额 + @JSONField(name = "acct_payamt") + private BigDecimal acctPayamt; + + // 28. 救助金支付金额 + @JSONField(name = "ma_amt") + private BigDecimal maAmt; + + // 29. 统筹金支付金额 + @JSONField(name = "hifp_payamt") + private BigDecimal hifpPayamt; + + // 30. 结算总次数 + @JSONField(name = "setl_totlnum") + private Integer setlTotlnum; + + // 31. 险种 + @JSONField(name = "insutype") + private String insutype; + + // 32. 报销标志 + @JSONField(name = "reim_flag") + private String reimFlag; + + // 33. 异地结算标志 + @JSONField(name = "out_setl_flag") + private String outSetlFlag; + + // 34. 手术操作集合 + @JSONField(name = "fsi_operation_dtos") + private List fsiOperationDtos; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java new file mode 100644 index 00000000..06a5db46 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103DataParam.java @@ -0,0 +1,27 @@ +package com.openhis.yb.dto; + +import java.util.List; +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3103】事前事中服务反馈服务(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiFeedback3103DataParam { + // 1. 反馈类型 + @JSONField(name = "warn_type") + private String warnType; + + // 2. 处理数据集合 + @JSONField(name = "warns") + private List warns; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java new file mode 100644 index 00000000..f23de393 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiFeedback3103WarnsParam.java @@ -0,0 +1,31 @@ +package com.openhis.yb.dto; + +import java.util.List; +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3103】事前事中服务反馈服务(输入-反馈处理数据) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiFeedback3103WarnsParam { + // 1. 违规标识 + @JSONField(name = "warn_rslt_id") + private String warnRsltId; + + // 2. 处理方式 + @JSONField(name = "dspo_way") + private String dspoWay; + + // 3. 处理原因 + @JSONField(name = "dspo_way_rea") + private String dspoWayRea; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java new file mode 100644 index 00000000..dd7b8bae --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOperation3101Param.java @@ -0,0 +1,67 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.Date; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【3101】明细审核事前分析服务(输入-手术操作信息) + * 【3102】明细审核事中分析服务(输入-手术操作信息) + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiOperation3101Param { + + // 1. 手术操作ID + @JSONField(name = "setl_list_oprn_id") + private String setlListOprnId; + + // 2. 手术操作代码 + @JSONField(name = "oprn_code") + private String oprnCode; + + // 3. 手术操作名称 + @JSONField(name = "oprn_name") + private String oprnName; + + // 4. 主手术操作标志 + @JSONField(name = "main_oprn_flag") + private String mainOprnFlag; + + // 5. 手术操作日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "oprn_date") + private Date oprnDate; + + // 6. 麻醉方式 + @JSONField(name = "anst_way") + private String anstWay; + + // 7. 术者医师姓名 + @JSONField(name = "oper_dr_name") + private String operDrName; + + // 8. 术者医师代码 + @JSONField(name = "oper_dr_code") + private String operDrCode; + + // 9. 麻醉医师姓名 + @JSONField(name = "anst_dr_name") + private String anstDrName; + + // 10. 麻醉医师代码 + @JSONField(name = "anst_dr_code") + private String anstDrCode; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java new file mode 100644 index 00000000..a3c945f3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiOrder3101Param.java @@ -0,0 +1,168 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【3101】明细审核事前分析服务(输入-处方(医嘱)信息) + * 【3102】明细审核事中分析服务(输入-处方(医嘱)信息) + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiOrder3101Param { + + // 1. 处方(医嘱)标识 + @JSONField(name = "rx_id") + private String rxId; + + // 2. 处方号 + @JSONField(name = "rxno") + private String rxno;//2025/05/05 李要求该字段对应耗材时使用buz_no,药品时使用处方号 + + // 3. 组编号 + @JSONField(name = "grpno") + private String grpno; + + // 4. 是否为长期医嘱 [1=是,0=否] + @JSONField(name = "long_drord_flag") + private String longDrordFlag; + + // 5. 目录类别(参考字典表) + @JSONField(name = "hilist_type") + private String hilistType; + + // 6. 收费类别(参考字典表) + @JSONField(name = "chrg_type") + private String chrgType; + + // 7. 医嘱行为(参考字典表) + @JSONField(name = "drord_bhvr") + private String drordBhvr; + + // 8. 医保目录代码(国家统一标准编码) + @JSONField(name = "hilist_code") + private String hilistCode; + + // 9. 医保目录名称(国家统一标准名称) + @JSONField(name = "hilist_name") + private String hilistName; + + // 10. 医保目录(药品)剂型(国家统一标准药品剂型) + @JSONField(name = "hilist_dosform") + private String hilistDosform; + + // 11. 医保目录等级 + @JSONField(name = "hilist_lv") + private String hilistLv; + + // 12. 医保目录价格 + @JSONField(name = "hilist_pric") + private BigDecimal hilistPric; + + // 13. 一级医院目录价格 + @JSONField(name = "lv1_hosp_item_pric") + private BigDecimal lv1HospItemPric; + + // 14. 二级医院目录价格 + @JSONField(name = "lv2_hosp_item_pric") + private BigDecimal lv2HospItemPric; + + // 15. 三级医院目录价格 + @JSONField(name = "lv3_hosp_item_pric") + private BigDecimal lv3HospItemPric; + + // 16. 医保目录备注 + @JSONField(name = "hilist_memo") + private String hilistMemo; + + // 17. 医院目录代码 + @JSONField(name = "hosplist_code") + private String hosplistCode; + + // 18. 医院目录名称 + @JSONField(name = "hosplist_name") + private String hosplistName; + + // 19. 医院目录(药品)剂型 + @JSONField(name = "hosplist_dosform") + private String hosplistDosform; + + // 20. 数量 + @JSONField(name = "cnt") + private BigDecimal cnt; + + // 21. 单价 + @JSONField(name = "pric") + private BigDecimal pric; + + // 22. 总费用 + @JSONField(name = "sumamt") + private BigDecimal sumamt; + + // 23. 自费金额 + @JSONField(name = "ownpay_amt") + private BigDecimal ownpayAmt; + + // 24. 自付金额 + @JSONField(name = "selfpay_amt") + private BigDecimal selfpayAmt; + + // 25. 规格 + @JSONField(name = "spec") + private String spec; + + // 26. 数量单位 + @JSONField(name = "spec_unt") + private String specUnt; + + // 27. 医嘱开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "drord_begn_date") + private Date drordBegnDate; + + // 28. 医嘱停止日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "drord_stop_date") + private Date drordStopDate; + + // 29. 下达医嘱的科室标识 + @JSONField(name = "drord_dept_codg") + private String drordDeptCodg; + + // 30. 下达医嘱科室名称 + @JSONField(name = "drord_dept_name") + private String drordDeptName; + + // 31. 开处方(医嘱)医生标识 + @JSONField(name = "drord_dr_codg") + private String drordDrCodg; + + // 32. 开处方(医嘱)医生姓名 + @JSONField(name = "drord_dr_name") + private String drordDrName; + + // 33. 开处方(医嘱)医职称 + @JSONField(name = "drord_dr_profttl") + private String drordDrProfttl; + + // 34. 是否当前处方(医嘱)[1=是,0=否] + @JSONField(name = "curr_drord_flag") + private String currDrordFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java new file mode 100644 index 00000000..ca338601 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiPatient3101Param.java @@ -0,0 +1,61 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.Date; +import java.util.List; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【3101】明细审核事前分析服务(输入-参保人信息) + * 【3102】明细审核事中分析服务(输入-参保人信息) + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiPatient3101Param { + + // 1. 参保人标识 + @JSONField(name = "patn_id") + private String patnId; + + // 2. 姓名 + @JSONField(name = "patn_name") + private String patnName; + + // 3. 性别 + @JSONField(name = "gend") + private String gend; + + // 4. 出生日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "brdy") + private Date brdy; + + // 5. 统筹区编码 + @JSONField(name = "poolarea") + private String poolarea; + + // 6. 当前就诊标识 + @JSONField(name = "curr_mdtrt_id") + private String currMdtrtId; + + // 7. 就诊信息集合 + @JSONField(name = "fsi_encounter_dtos") + private List fsiEncounterDtos; + +// // 8. 医院信息集合(非必填项) +// @JSONField(name = "fsi_his_data_dto") +// private FsiHisData fsiHisDataDto; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java new file mode 100644 index 00000000..6ea0cccf --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolation3101Result.java @@ -0,0 +1,72 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.List; +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3101】明细审核事前分析服务(输出-违规信息) + * 【3102】明细审核事中分析服务(输出-违规信息) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiViolation3101Result { + // 1. 违规标识 + @JSONField(name = "jr_id") + private String jrId; + + // 2. 规则ID + @JSONField(name = "rule_id") + private String ruleId; + + // 3. 规则名称 + @JSONField(name = "rule_name") + private String ruleName; + + // 4. 违规内容 + @JSONField(name = "vola_cont") + private String volaCont; + + // 5. 参保人ID + @JSONField(name = "patn_id") + private String patnId; + + // 6. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 7. 违规明细 + @JSONField(name = "judge_result_detail_dtos") + private List judgeResultDetailDtos; + + // 8. 违规金额 + @JSONField(name = "vola_amt") + private BigDecimal volaAmt; + + // 9. 违规金额计算状态 + @JSONField(name = "vola_amt_stas") + private String volaAmtStas; + + // 10. 严重程度 + @JSONField(name = "sev_deg") + private String sevDeg; + + // 11. 违规依据 + @JSONField(name = "vola_evid") + private String volaEvid; + + // 12. 违规行为分类 + @JSONField(name = "vola_bhvr_type") + private String volaBhvrType; + + // 13. 任务ID + @JSONField(name = "task_id") + private String taskId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java new file mode 100644 index 00000000..4ac35dda --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/FsiViolationDetail3101Result.java @@ -0,0 +1,43 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3101】明细审核事前分析服务(输出-违规明细信息) + * 【3102】明细审核事中分析服务(输出-违规明细信息) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class FsiViolationDetail3101Result { + // 1. 违规明细标识 + @JSONField(name = "jrd_id") + private String jrdId; + + // 2. 参保人标识 + @JSONField(name = "patn_id") + private String patnId; + + // 3. 就诊标识 + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 4. 处方(医嘱)标识 + @JSONField(name = "rx_id") + private String rxId; + + // 5. 违规明细类型 + @JSONField(name = "vola_item_type") + private String volaItemType; + + // 6. 违规金额 + @JSONField(name = "vola_amt") + private BigDecimal volaAmt; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java new file mode 100644 index 00000000..f0d13869 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401DiseInfoParam.java @@ -0,0 +1,70 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2401】入院办理(输入-入院诊断信息) + * + * @author yuanzs + * @date 2025-05-07 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2401DiseInfoParam { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 诊断类别 + @JSONField(name = "diag_type") + private String diagType; + + // 3. 主诊断标志 + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + + // 4. 诊断排序号 + @JSONField(name = "diag_srt_no") + private BigDecimal diagSrtNo; + + // 5. 诊断代码 + @JSONField(name = "diag_code") + private String diagCode; + + // 6. 诊断名称 + @JSONField(name = "diag_name") + private String diagName; + + // 7. 入院病情 + @JSONField(name = "adm_cond") + private String admCond; + + // 8. 诊断科室 + @JSONField(name = "diag_dept") + private String diagDept; + + // 9. 诊断医生编码 + @JSONField(name = "dise_dor_no") + private String diseDorNo; + + // 10. 诊断医生姓名 + @JSONField(name = "dise_dor_name") + private String diseDorName; + + // 11. 诊断时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "diag_time") + private Date diagTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java new file mode 100644 index 00000000..7de95660 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2401MdtInfoParam.java @@ -0,0 +1,193 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2401】入院办理 + * + * @author yuanzs + * @date 2025-05-07 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2401MdtInfoParam { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 联系人姓名 + @JSONField(name = "coner_name") + private String conerName; + + // 4. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 5. 开始时间(入院时间) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "begntime") + private Date begntime; + + // 6. 就诊凭证类型 + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; + + // 7. 就诊凭证编号 + @JSONField(name = "mdtrt_cert_no") + private String mdtrtCertNo; + + // 8. 医疗类别 + @JSONField(name = "med_type") + private String medType; + + // 9. 住院号 + @JSONField(name = "ipt_no") + private String iptNo; + + // 10. 病历号 + @JSONField(name = "medrcdno") + private String medrcdno; + + // 11. 主治医生编码 + @JSONField(name = "atddr_no") + private String atddrNo; + + // 12. 主诊医师姓名 + @JSONField(name = "chfpdr_name") + private String chfpdrName; + + // 13. 入院诊断描述 + @JSONField(name = "adm_diag_dscr") + private String admDiagDscr; + + // 14. 入院科室编码 + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + // 15. 入院科室名称 + @JSONField(name = "adm_dept_name") + private String admDeptName; + + // 16. 入院床位 + @JSONField(name = "adm_bed") + private String admBed; + + // 17. 住院主诊断代码 + @JSONField(name = "dscg_maindiag_code") + private String dscgMaindiagCode; + + // 18. 住院主诊断名称 + @JSONField(name = "dscg_maindiag_name") + private String dscgMaindiagName; + + // 19. 主要病情描述 + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + + // 20. 病种编码 + @JSONField(name = "dise_codg") + private String diseCodg; + + // 21. 病种名称 + @JSONField(name = "dise_name") + private String diseName; + + // 22. 手术操作代码 + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + // 23. 手术操作名称 + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + // 24. 计划生育服务证号 + @JSONField(name = "fpsc_no") + private String fpscNo; + + // 25. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 26. 计划生育手术类别 + @JSONField(name = "birctrl_type") + private String birctrlType; + + // 27. 晚育标志 + @JSONField(name = "latechb_flag") + private String latechbFlag; + + // 28. 孕周数 + @JSONField(name = "geso_val") + private BigDecimal gesoVal; + + // 29. 胎次 + @JSONField(name = "fetts") + private BigDecimal fetts; + + // 30. 胎儿数 + @JSONField(name = "fetus_cnt") + private BigDecimal fetusCnt; + + // 31. 早产标志 + @JSONField(name = "pret_flag") + private String pretFlag; + + // 32. 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + + // 33. 病种类型 + @JSONField(name = "dise_type_code") + private String diseTypeCode; + + // 34. 字段扩展 + @JSONField(name = "exp_content") + private String expContent; + + // 35. 参保地医保区划 + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; + + // 36. 就医地医保区划 + @JSONField(name = "mdtrtarea_admvs") + private String mdtrtareaAdmvs; + + // 37. 外伤标识(仅对异地根据情况填写) + @JSONField(name = "trum_flag") + private String trumFlag; + + // 38. 涉及第三方标志(仅对异地根据情况填写) + @JSONField(name = "rel_ttp_flag") + private String relTtpFlag; + + // 39. 就诊人群类型(仅对异地根据情况填写) + @JSONField(name = "mdtrt_grp_type") + private String mdtrtGrpType; + + // 40. 入院诊断信息集合 + private List diseInfoParams; + + // 41. 就诊ID(输出) + @JSONField(name = "mdtrtId") + private String mdtrt_id; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java new file mode 100644 index 00000000..2cdc0d4e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DiseInfoParam.java @@ -0,0 +1,72 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2402】出院办理(输入-出院诊断信息) + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2402DiseInfoParam { + + // 1. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 诊断类别 + @JSONField(name = "diag_type") + private String diagType; + + // 4. 主诊断标志 + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + + // 5. 诊断排序号 + @JSONField(name = "diag_srt_no") + private BigDecimal diagSrtNo; + + // 6. 诊断代码 + @JSONField(name = "diag_code") + private String diagCode; + + // 7. 诊断名称 + @JSONField(name = "diag_name") + private String diagName; + + // 8. 诊断科室 + @JSONField(name = "diag_dept") + private String diagDept; + + // 9. 诊断医生编码 + @JSONField(name = "dise_dor_no") + private String diseDorNo; + + // 10. 诊断医生姓名 + @JSONField(name = "dise_dor_name") + private String diseDorName; + + // 11. 诊断时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "diag_time") + private Date diagTime; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java new file mode 100644 index 00000000..b11ba22c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2402DscgInfoParam.java @@ -0,0 +1,131 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2402】出院办理 + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2402DscgInfoParam { + // 1. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 4. 结束时间(出院时间) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "endtime") + private Date endtime; + + // 5. 病种编码 + @JSONField(name = "dise_codg") + private String diseCodg; + + // 6. 病种名称 + @JSONField(name = "dise_name") + private String diseName; + + // 7. 手术操作代码(日间手术病种时必填) + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + // 8. 手术操作名称 + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + // 9. 计划生育服务证号 + @JSONField(name = "fpsc_no") + private String fpscNo; + + // 10. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 11. 计划生育手术类别 + @JSONField(name = "birctrl_type") + private String birctrlType; + + // 12. 晚育标志 + @JSONField(name = "latechb_flag") + private String latechbFlag; + + // 13. 孕周数 + @JSONField(name = "esso_val") + private BigDecimal essoVal; + + // 14. 胎次 + @JSONField(name = "fetts") + private BigDecimal fetts; + + // 15. 胎儿数 + @JSONField(name = "fetus_cnt") + private BigDecimal fetusCnt; + + // 16. 早产标志 + @JSONField(name = "pret_flag") + private String pretFlag; + + // 17. 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + + // 18. 伴有并发症标志 + @JSONField(name = "cop_flag") + private String copFlag; + + // 19. 出院科室编码 + @JSONField(name = "dscg_dept_codg") + private String dscgDeptCodg; + + // 20. 出院科室名称 + @JSONField(name = "dscg_dept_name") + private String dscgDeptName; + + // 21. 出院床位 + @JSONField(name = "dscg_bed") + private String dscgBed; + + // 22. 离院方式 + @JSONField(name = "dscg_way") + private String dscgWay; + + // 23. 死亡日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "die_date") + private Date dieDate; + + // 24. 字段扩展 + @JSONField(name = "exp_content") + private String expContent; + + // 25. 出院诊断信息 + private List diseInfoParams; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java new file mode 100644 index 00000000..6673bd8a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403AdmInfoParam.java @@ -0,0 +1,182 @@ +package com.openhis.yb.dto; + +import java.util.Date; +import java.util.List; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2403】住院信息变更 + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2403AdmInfoParam { + + // 1. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 联系人姓名 + @JSONField(name = "coner_name") + private String conerName; + + // 4. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 5. 开始时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "begntime") + private Date begntime; + + // 6. 结束时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "endtime") + private Date endtime; + + // 7. 就诊凭证类型 + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; + + // 8. 医疗类别 + @JSONField(name = "med_type") + private String medType; + + // 9. 住院/门诊号 + @JSONField(name = "ipt_otp_no") + private String iptOtpNo; + + // 10. 病历号 + @JSONField(name = "medrcdno") + private String medrcdno; + + // 11. 主治医生编码 + @JSONField(name = "atddr_no") + private String atddrNo; + + // 12. 主诊医师姓名 + @JSONField(name = "chfpdr_name") + private String chfpdrName; + + // 13. 入院诊断描述 + @JSONField(name = "adm_diag_dscr") + private String admDiagDscr; + + // 14. 入院科室编码 + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + // 15. 入院科室名称 + @JSONField(name = "adm_dept_name") + private String admDeptName; + + // 16. 入院床位 + @JSONField(name = "adm_bed") + private String admBed; + + // 17. 住院主诊断代码 + @JSONField(name = "dscg_maindiag_code") + private String dscgMaindiagCode; + + // 18. 住院主诊断名称 + @JSONField(name = "dscg_maindiag_name") + private String dscgMaindiagName; + + // 19. 主要病情描述 + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + + // 20. 病种编码 + @JSONField(name = "dise_codg") + private String diseCodg; + + // 21. 病种名称 + @JSONField(name = "dise_name") + private String diseName; + + // 22. 手术操作代码 + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + // 23. 手术操作名称 + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + // 24. 计划生育服务证号 + @JSONField(name = "fpsc_no") + private String fpscNo; + + // 25. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 26. 计划生育手术类别 + @JSONField(name = "birctrl_type") + private String birctrlType; + + // 27. 晚育标志 + @JSONField(name = "latechb_flag") + private String latechbFlag; + + // 28. 孕周数 + @JSONField(name = "esso_val") + private Integer essoVal; + + // 29. 胎次 + @JSONField(name = "fetts") + private Integer fetts; + + // 30. 胎儿数 + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + // 31. 早产标志 + @JSONField(name = "pret_flag") + private String pretFlag; + + // 32. 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + + // 33. 病种编号 + @JSONField(name = "dise_type_code") + private String diseTypeCode; + + // 34. 字段扩展 + @JSONField(name = "exp_content") + private String expContent; + + // 35. 外伤标识(仅对异地根据情况填写) + @JSONField(name = "trum_flag") + private String trumFlag; + + // 36. 涉及第三方标志(仅对异地根据情况填写) + @JSONField(name = "rel_ttp_flag") + private String relTtpFlag; + + // 37. 就诊人群类型(仅对异地根据情况填写) + @JSONField(name = "mdtrt_grp_type") + private String mdtrtGrpType; + + // 38. 入院诊断信息集合 + private List diseInfoParams; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java new file mode 100644 index 00000000..32dbec40 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2403DiseInfoParam.java @@ -0,0 +1,76 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2403】住院信息变更(输入-入院诊断信息) + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2403DiseInfoParam { + + // 1. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 诊断类别 + @JSONField(name = "diag_type") + private String diagType; + + // 4. 主诊断标志 + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + + // 5. 诊断排序号 + @JSONField(name = "diag_srt_no") + private BigDecimal diagSrtNo; + + // 6. 诊断代码 + @JSONField(name = "diag_code") + private String diagCode; + + // 7. 诊断名称 + @JSONField(name = "diag_name") + private String diagName; + + // 8. 入院病情 + @JSONField(name = "adm_cond") + private String admCond; + + // 9. 诊断科室 + @JSONField(name = "diag_dept") + private String diagDept; + + // 10. 诊断医生编码 + @JSONField(name = "dise_dor_no") + private String diseDorNo; + + // 11. 诊断医生姓名 + @JSONField(name = "dise_dor_name") + private String diseDorName; + + // 12. 诊断时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "diag_time") + private Date diagTime; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java new file mode 100644 index 00000000..4b5c5fc0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2404AdmCnlParam.java @@ -0,0 +1,32 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2404】入院撤销 + * 【2405】出院撤销 + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2404AdmCnlParam { + + // 1. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 字段扩展 + @JSONField(name = "exp_content") + private String expContent; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java new file mode 100644 index 00000000..fc636ad0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2406SmAttrUpParam.java @@ -0,0 +1,62 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2401】就医特殊属性上传 + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2406SmAttrUpParam { + + // 1. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 人员证件类型 + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 4. 证件号码 + @JSONField(name = "certno") + private String certno; + + // 5. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 6. 住院/门诊号 + @JSONField(name = "ipt_otp_no") + private String iptOtpNo; + + // 7. 就医人员特殊标识类型 + @JSONField(name = "ipt_psn_sp_flag_type") + private String iptPsnSpFlagType; + + // 8. 就医人员特殊标识 + @JSONField(name = "ipt_psn_sp_flag") + private String iptPsnSpFlag; + + // 9. 备注 + @JSONField(name = "memo") + private String memo; + + // 10. 医保区划 + @JSONField(name = "admdvs") + private String admdvs; + + // 11. 就医人员特殊标识明细id(输出) + @JSONField(name = "ipt_psn_sp_flag_detl_id") + private String iptPsnSpFlagDetlId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java new file mode 100644 index 00000000..a9857539 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectParam.java @@ -0,0 +1,78 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2407】就医特殊属性查询(输入) + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2407SmAttrSelectParam { + + // 1. 分页条数 + @JSONField(name = "page_num") + private BigDecimal pageNum; + + // 2. 分页大小 + @JSONField(name = "page_size") + private BigDecimal pageSize; + + // 3. 就医人员特殊标识明细id + @JSONField(name = "ipt_psn_sp_flag_detl_id") + private String iptPsnSpFlagDetlId; + + // 4. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 5. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 6. 人员证件类型 + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 7. 证件号码 + @JSONField(name = "certno") + private String certno; + + // 8. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 9. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 10. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 11. 住院/门诊号 + @JSONField(name = "ipt_otp_no") + private String iptOtpNo; + + // 12. 就医人员特殊标识类型 + @JSONField(name = "ipt_psn_sp_flag_type") + private String iptPsnSpFlagType; + + // 13. 就医人员特殊标识 + @JSONField(name = "ipt_psn_sp_flag") + private String iptPsnSpFlag; + + // 14. 医保区划 + @JSONField(name = "admdvs") + private String admdvs; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java new file mode 100644 index 00000000..c3c9db41 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospAdm2407SmAttrSelectResult.java @@ -0,0 +1,67 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2407】就医特殊属性查询(输出) + * + * @author yuanzs + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospAdm2407SmAttrSelectResult { + + // 1. 就医人员特殊标识明细id + @JSONField(name = "ipt_psn_sp_flag_detl_id") + private String iptPsnSpFlagDetlId; + + // 2. 就诊ID + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + // 3. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 4. 人员证件类型 + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 5. 证件号码 + @JSONField(name = "certno") + private String certno; + + // 6. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 7. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 8. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 9. 住院/门诊号 + @JSONField(name = "ipt_otp_no") + private String iptOtpNo; + + // 10. 就医人员特殊标识类型 + @JSONField(name = "ipt_psn_sp_flag_type") + private String iptPsnSpFlagType; + + // 11. 就医人员特殊标识 + @JSONField(name = "ipt_psn_sp_flag") + private String iptPsnSpFlag; + + // 12. 医保区划 + @JSONField(name = "admdvs") + private String admdvs; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java new file mode 100644 index 00000000..8f90de10 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401AParam.java @@ -0,0 +1,19 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import java.util.Date; +import java.util.List; + +/** + * 【3401A】科室信息上传(批量) + * + * @author SunJQ + * @date 2025-04-28 + */ +public class HospDept3401AParam { + private List deptinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java new file mode 100644 index 00000000..ca69fb72 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3401Param.java @@ -0,0 +1,89 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import java.util.Date; + +/** + * 【3401】科室信息上传 + * + * @author SunJQ + * @date 2025-04-28 + */ +public class HospDept3401Param { + + // 1. 医院科室编码(院内唯一编码) + @JSONField(name = "hosp_dept_codg") // JSON字段名映射 + private String hospDeptCodg; + + // 2. 科别(参照科室代码) + @JSONField(name = "caty") + private String caty; + + // 3. 医院科室名称 + @JSONField(name = "hosp_dept_name") + private String hospDeptName; + + // 4. 开始时间(日期时间格式) + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") // 指定时间格式 + private Date begnTime; + + // 5. 结束时间(日期时间格式) + @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") + private Date endTime; + + // 6. 科室简介 + @JSONField(name = "itro") + private String itro; + + // 7. 科室负责人姓名 + @JSONField(name = "dept_resper_name") + private String deptResperName; + + // 8. 科室负责人电话 + @JSONField(name = "dept_resper_tel") + private String deptResperTel; + + // 9. 科室医疗服务范围 + @JSONField(name = "dept_med_serv_scp") + private String deptMedServScp; + + // 10. 科室成立日期(日期格式) + @JSONField(name = "dept_estbdat", format = "yyyy-MM-dd") + private Date deptEstbdat; + + // 11. 批准床位数量(长整型) + @JSONField(name = "aprv_bed_cnt") + private Long aprvBedCnt; + + // 12. 医保认可床位数(长整型) + @JSONField(name = "hi_crtf_bed_cnt") + private Long hiCrtfBedCnt; + + // 13. 统筹区编号 + @JSONField(name = "poolarea_no") + private String poolareaNo; + + // 14. 医师人数(整型) + @JSONField(name = "dr_psncnt") + private Integer drPsncnt; + + // 15. 药师人数(整型) + @JSONField(name = "phar_psncnt") + private Integer pharPsncnt; + + // 16. 护士人数(整型) + @JSONField(name = "nurs_psncnt") + private Integer nursPsncnt; + + // 17. 技师人数(整型) + @JSONField(name = "tecn_psncnt") + private Integer tecnPsncnt; + + // 18. 备注 + @JSONField(name = "memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java new file mode 100644 index 00000000..6e505cf3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3402Param.java @@ -0,0 +1,89 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import java.util.Date; + +/** + * 【3402】科室信息变更 + * + * @author SunJQ + * @date 2025-04-28 + */ +public class HospDept3402Param { + + // 1. 医院科室编码(院内唯一编码) + @JSONField(name = "hosp_dept_codg") + private String hospDeptCodg; + + // 2. 医院科室名称 + @JSONField(name = "hosp_dept_name") + private String hospDeptName; + + // 3. 开始时间(日期时间格式) + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") + private Date begnTime; + + // 4. 结束时间(日期时间格式) + @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") + private Date endTime; + + // 5. 科室简介 + @JSONField(name = "itro") + private String itro; + + // 6. 科室负责人姓名 + @JSONField(name = "dept_resper_name") + private String deptResperName; + + // 7. 科室负责人电话 + @JSONField(name = "dept_resper_tel") + private String deptResperTel; + + // 8. 科室医疗服务范围 + @JSONField(name = "dept_med_serv_scp") + private String deptMedServScp; + + // 9. 科别(参照科室代码) + @JSONField(name = "caty") + private String caty; + + // 10. 科室成立日期(日期格式) + @JSONField(name = "dept_estbdat", format = "yyyy-MM-dd") + private Date deptEstbdat; + + // 11. 批准床位数量(长整型) + @JSONField(name = "aprv_bed_cnt") + private Long aprvBedCnt; + + // 12. 医保认可床位数(长整型) + @JSONField(name = "hi_crtf_bed_cnt") + private Long hiCrtfBedCnt; + + // 13. 统筹区编号 + @JSONField(name = "poolarea_no") + private String poolareaNo; + + // 14. 医师人数(整型) + @JSONField(name = "dr_psncnt") + private Integer drPsncnt; + + // 15. 药师人数(整型) + @JSONField(name = "phar_psncnt") + private Integer pharPsncnt; + + // 16. 护士人数(整型) + @JSONField(name = "nurs_psncnt") + private Integer nursPsncnt; + + // 17. 技师人数(整型) + @JSONField(name = "tecn_psncnt") + private Integer tecnPsncnt; + + // 18. 备注 + @JSONField(name = "memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java new file mode 100644 index 00000000..092b4708 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospDept3403Param.java @@ -0,0 +1,28 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import java.util.Date; + +/** + * 【3403】科室信息撤销 + * + * @author SunJQ + * @date 2025-04-28 + */ +public class HospDept3403Param { + // 1. 医院科室编码(院内唯一编码) + @JSONField(name = "hosp_dept_codg") + private String hospDeptCodg; + + // 2. 医院科室名称 + @JSONField(name = "hosp_dept_name") + private String hospDeptName; + + // 3. 开始时间(日期时间格式) + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") + private Date begnTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java new file mode 100644 index 00000000..be46c2bd --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501ARefmedinParam.java @@ -0,0 +1,109 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2501A】转院备案(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospTrf2501ARefmedinParam { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 4. 联系地址 + @JSONField(name = "addr") + private String addr; + + // 5. 参保机构医保区划 + @JSONField(name = "insu_optins") + private String insuOptins; + + // 6. 诊断代码 + @JSONField(name = "diag_code") + private String diagCode; + + // 7. 诊断名称 + @JSONField(name = "diag_name") + private String diagName; + + // 8. 疾病病情描述 + @JSONField(name = "dise_cond_dscr") + private String diseCondDscr; + + // 9. 转往定点医药机构编号 + @JSONField(name = "reflin_medins_no") + private String reflinMedinsNo; + + // 10. 转往医院名称 + @JSONField(name = "reflin_medins_name") + private String reflinMedinsName; + + // 11. 就医地行政区划 + @JSONField(name = "mdtrtarea_admdvs") + private String mdtrtareaAdmdvs; + + // 12. 医院同意转院标志 + @JSONField(name = "hosp_agre_refl_flag") + private String hospAgreReflFlag; + + // 13. 转院类型 + @JSONField(name = "refl_type") + private String reflType; + + // 14. 转院日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "refl_date") + private Date reflDate; + + // 15. 转院原因 + @JSONField(name = "refl_rea") + private String reflRea; + + // 16. 转院意见 + @JSONField(name = "refl_opnn") + private String reflOpnn; + + // 17. 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "begndate") + private Date begndate; + + // 18. 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "enddate") + private Date enddate; + + // 19. 转院前就诊id + @JSONField(name = "refl_old_mdtrt_id") + private String reflOldMdtrtId; + + // 20. 待遇申报明细流水号(输出) + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java new file mode 100644 index 00000000..15498c57 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrf2501RefmedinParam.java @@ -0,0 +1,108 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * 【2501】转院备案(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class HospTrf2501RefmedinParam { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 4. 联系地址 + @JSONField(name = "addr") + private String addr; + + // 5. 参保机构医保区划 + @JSONField(name = "insu_optins") + private String insuOptins; + + // 6. 诊断代码 + @JSONField(name = "diag_code") + private String diagCode; + + // 7. 诊断名称 + @JSONField(name = "diag_name") + private String diagName; + + // 8. 疾病病情描述 + @JSONField(name = "dise_cond_dscr") + private String diseCondDscr; + + // 9. 转往定点医药机构编号 + @JSONField(name = "reflin_medins_no") + private String reflinMedinsNo; + + // 10. 转往医院名称 + @JSONField(name = "reflin_medins_name") + private String reflinMedinsName; + + // 11. 就医地行政区划 + @JSONField(name = "mdtrtarea_admdvs") + private String mdtrtareaAdmdvs; + + // 12. 医院同意转院标志 + @JSONField(name = "hosp_agre_refl_flag") + private String hospAgreReflFlag; + + // 13. 转院类型 + @JSONField(name = "refl_type") + private String reflType; + + // 14. 转院日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "refl_date") + private Date reflDate; + + // 15. 转院原因 + @JSONField(name = "refl_rea") + private String reflRea; + + // 16. 转院意见 + @JSONField(name = "refl_opnn") + private String reflOpnn; + + // 17. 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "begndate") + private Date begndate; + + // 18. 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "enddate") + private Date enddate; + + // 19. 转诊使用标志 + @JSONField(name = "refl_used_flag") + private String reflUsedFlag; + + // 20. 待遇申报明细流水号(输出) + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java new file mode 100644 index 00000000..bc847a6f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/HospTrfCxl2502Param.java @@ -0,0 +1,31 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2502】转院备案撤销(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) + +public class HospTrfCxl2502Param { + // 1. 待遇申报明细流水号 + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 备注 + @JSONField(name = "memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java new file mode 100644 index 00000000..c47a612d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101Output.java @@ -0,0 +1,68 @@ +package com.openhis.yb.dto; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + *【1101】获取身份信息 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Info1101Output extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //人员编号 + private String psnNo; + //人员证件类型 + private String psnCertType; + //证件号码 + private String certno; + //人员姓名 + private String psnName; + //性别 + private String gend; + //民族 + private String naty; + //出生日期 + private Date brdy; + //年龄 + private Double age; + //参保地医保区划 + private String insuplcAdmdvs; + //险种类型 + private String insutype; + //余额 + private String balc; + //人员类别 + @TableField(exist = false) + private String psnType; + + //人员参保状态 + @TableField(exist = false) + private String psnInsuStas; + + //个人参保日期 + @TableField(exist = false) + private String psnInsuDate; + + //公务员标志 + @TableField(exist = false) + private String cvlservFlag; + + //单位名称 + @TableField(exist = false) + private String empName; + //特慢病 + @TableField(exist = false) + private List feedetail; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java new file mode 100644 index 00000000..822a19dc --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101PerinfoResult.java @@ -0,0 +1,58 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【1101】获取身份信息 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Info1101PerinfoResult extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //人员编号 + @JSONField(name="psn_no") + private String psnNo; + //人员证件类型 + @JSONField(name="psn_cert_type") + private String psnCertType; + //证件号码 + @JSONField(name="certno") + private String certno; + //人员姓名 + @JSONField(name="psn_name") + private String psnName; + //性别 + @JSONField(name="gend") + private String gend; + //民族 + @JSONField(name="naty") + private String naty; + //出生日期 + @JSONField(name="brdy") + private Date brdy; + //年龄 + @JSONField(name="age") + private Double age; + //参保地医保区划 + @JSONField(serialize = false) + private String insuplcAdmdvs; + //险种类型 + @JSONField(serialize = false) + private String insutype; + //余额 + @JSONField(serialize = false) + private String balc; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java new file mode 100644 index 00000000..be52d7b9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info1101ReadcardParam.java @@ -0,0 +1,45 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【1101】获取身份信息 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Info1101ReadcardParam extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + //就诊凭证类型 + @JSONField(name="mdtrt_cert_type") + private String mdtrtCertType; + //就诊凭证编号 + @JSONField(name="mdtrt_cert_no") + private String mdtrtCertNo; + //卡识别码 + @JSONField(name="card_sn") + private String cardSn; + //开始时间 + @JSONField(name="begntime") + private String begntime; + //人员证件类型 + @JSONField(name="psn_cert_type") + private String psnCertType; + //证件号码 + @JSONField(name="certno") + private String certno; + //人员姓名 + @JSONField(name="psn_name") + private String psnName; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java new file mode 100644 index 00000000..6249e9eb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301Param.java @@ -0,0 +1,14 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Info5301Param { + @JSONField(name = "psn_no") + private String psnNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java new file mode 100644 index 00000000..000c0bc6 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Info5301SpecialConditionResult.java @@ -0,0 +1,21 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class Info5301SpecialConditionResult { + + private static final long serialVersionUID = 1L; + + //门慢门特病种目录代码 + private String opspDiseCode; + //门慢门特病种名称 + private String opspDiseName; + //开始日期 + private String begndate; + //结束日期 + private String enddate; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java new file mode 100644 index 00000000..2425fb11 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/InvoiceBaseInfoDto.java @@ -0,0 +1,104 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 电子发票基础信息查询实体 + * + * @author SunJQ + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +public class InvoiceBaseInfoDto { + //主键 + @TableId(type = IdType.ASSIGN_ID) + @JSONField(serialize=false) + private String id; + + private String setlId;//结算id + + private String mdtrtId; // 就诊ID + + private String psnName; // 人员姓名 + + private String psnCertType; // 人员证件类型 + + private String certno; // 证件号码 + + private String insutype; // 险种类型 + + private String psnType; // 人员类别 + + private String cvlservFlag; // 公务员标志 + + private Date setlTime; // 结算时间 + + private String mdtrtCertType; // 就诊凭证类型 + + private String medType; // 医疗类别 + + private BigDecimal medfeeSumamt; // 医疗费总额 + + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + private BigDecimal preselfpayAmt; // 先行自付金额 + + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + private BigDecimal actPayDedc; // 实际支付起付线 + + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + private BigDecimal mafPay; // 医疗救助基金支出 + + private BigDecimal othPay; // 其他支出 + + private BigDecimal fundPaySumamt; // 基金支付总额 + + private BigDecimal psnPartAmt; // 个人负担总金额 + + private BigDecimal acctPay; // 个人账户支出 + + private BigDecimal psnCashPay; // 个人现金支出 + + private BigDecimal hospPartAmt; // 医院负担金额 + + private BigDecimal balc; // 余额 + + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + private String medinsSetlId; // 医药机构结算ID + + private String clrOptins; // 清算经办机构 + + private String clrWay; // 清算方式 + + private String clrType; // 清算类别 + + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + private String paymentNo;//结算业务流水号 Payment与ClinicSettle是1:N +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java new file mode 100644 index 00000000..9ee3efb1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Param.java @@ -0,0 +1,58 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25007】生育津贴登记(输入) + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MatAllowReg25007Param { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 3. 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + + // 4. 孕周数 + @JSONField(name = "geso_val") + private BigDecimal gesoVal; + + // 5. 胎次 + @JSONField(name = "fetts") + private BigDecimal fetts; + + // 6. 胎儿数 + @JSONField(name = "fetus_cnt") + private BigDecimal fetusCnt; + + // 7. 经办人姓名 + @JSONField(name = "opter_name") + private String opterName; + + // 8. 结算ID + @JSONField(name = "setl_id") + private String setlId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java new file mode 100644 index 00000000..ae620f04 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowReg25007Result.java @@ -0,0 +1,84 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25007】生育津贴登记(输出) + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MatAllowReg25007Result { + // 1. 生育津贴登记ID + @JSONField(name = "matn_alwn_reg_id") + private String matnAlwnRegId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 4. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 5. 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + + // 6. 孕周数 + @JSONField(name = "geso_val") + private BigDecimal gesoVal; + + // 7. 胎次 + @JSONField(name = "fetts") + private BigDecimal fetts; + + // 8. 胎儿数 + @JSONField(name = "fetus_cnt") + private BigDecimal fetusCnt; + + // 9. 结算ID + @JSONField(name = "setl_id") + private String setlId; + + // 10. 有效标志 + @JSONField(name = "vali_flag") + private String valiFlag; + + // 11. 审核标志 + @JSONField(name = "rchk_flag") + private String rchkFlag; + + // 12. 审核意见 + @JSONField(name = "memo") + private String memo; + + // 13. 经办人姓名 + @JSONField(name = "opter_name") + private String opterName; + + // 14. 经办时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "opt_time") + private Date optTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java new file mode 100644 index 00000000..52120d4a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MatAllowRegSel25008Param.java @@ -0,0 +1,84 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25008】生育津贴登记信息查询(输出) + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MatAllowRegSel25008Param { + // 1. 生育津贴登记ID + @JSONField(name = "matn_alwn_reg_id") + private String matnAlwnRegId; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 4. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 5. 计划生育手术或生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "birctrl_matn_date") + private Date birctrlMatnDate; + + // 6. 孕周数 + @JSONField(name = "geso_val") + private BigDecimal gesoVal; + + // 7. 胎次 + @JSONField(name = "fetts") + private BigDecimal fetts; + + // 8. 胎儿数 + @JSONField(name = "fetus_cnt") + private BigDecimal fetusCnt; + + // 9. 结算ID + @JSONField(name = "setl_id") + private String setlId; + + // 10. 有效标志 + @JSONField(name = "vali_flag") + private String valiFlag; + + // 11. 审核标志 + @JSONField(name = "rchk_flag") + private String rchkFlag; + + // 12. 审核意见 + @JSONField(name = "memo") + private String memo; + + // 13. 经办人姓名 + @JSONField(name = "opter_name") + private String opterName; + + // 14. 经办时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "opt_time") + private Date optTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java new file mode 100644 index 00000000..e49ba619 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3503Param.java @@ -0,0 +1,113 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3503】商品采购 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3503Param { + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 随货单号(字符型,50位,非必填) + @JSONField(name = "dynt_no") + private String dyntNo; + + // 5. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 6. 供应商名称(字符型,200位,必填) + @JSONField(name = "spler_name") + private String splerName; + + // 7. 供应商许可证号(字符型,50位,非必填) + @JSONField(name = "spler_pmtno") + private String splerPmtno; + + // 8. 生产批号(字符型,30位,必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 9. 生产厂家名称(字符型,200位,必填) + @JSONField(name = "prodentp_name") + private String prodentpName; + + // 10. 批准文号(字符型,100位,必填) + @JSONField(name = "aprvno") + private String aprvno; + + // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 13. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 14. 采购/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "purc_retn_cnt") + private BigDecimal purcRetnCnt; + + // 15. 采购发票编码(字符型,50位,非必填) + @JSONField(name = "purc_invo_codg") + private String purcInvoCodg; + + // 16. 采购发票号(字符型,50位,非必填) + @JSONField(name = "purc_invo_no") + private String purcInvoNo; + + // 17. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 18. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "purc_retn_stoin_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date purcRetnStoinTime; + + // 19. 采购/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "purc_retn_opter_name") + private String purcRetnOpterName; + + // 20. 商品赠送标志(字符型,3位,必填) + @JSONField(name = "prod_geay_flag") + private String prodGeayFlag; + + // 21. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java new file mode 100644 index 00000000..91a7d592 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Param.java @@ -0,0 +1,179 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3505】商品销售 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3505Param { + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 5. 开方医师证件类型(字符型,6位,非必填) + @JSONField(name = "prsc_dr_cert_type") + private String prscDrCertType; + + // 6. 开方医师证件号码(字符型,50位,非必填) + @JSONField(name = "prsc_dr_certno") + private String prscDrCertno; + + // 7. 开方医师姓名(字符型,50位,必填) + @JSONField(name = "prsc_dr_name") + private String prscDrName; + + // 8. 药师证件类型(字符型,6位,非必填) + @JSONField(name = "phar_cert_type") + private String pharCertType; + + // 9. 药师证件号码(字符型,50位,非必填) + @JSONField(name = "phar_certno") + private String pharCertno; + + // 10. 药师姓名(字符型,50位,必填) + @JSONField(name = "phar_name") + private String pharName; + + // 11. 药师执业资格证号(字符型,50位,必填) + @JSONField(name = "phar_prac_cert_no") + private String pharPracCertNo; + + // 12. 医保费用结算类型(字符型,6位,必填) + @JSONField(name = "hi_feesetl_type") + private String hiFeesetlType; + + // 13. 结算ID(字符型,30位,非必填) + @JSONField(name = "setl_id") + private String setlId; + + // 14. 就医流水号(字符型,30位,必填) + @JSONField(name = "mdtrt_sn") + private String mdtrtSn; + + // 15. 人员编号(字符型,30位,非必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 16. 人员证件类型(字符型,6位,必填) + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 17. 证件号码(字符型,50位,非必填) + @JSONField(name = "certno") + private String certno; + + // 18. 人员姓名(字符型,50位,非必填) + @JSONField(name = "psn_name") + private String psnName; + + // 19. 生产批号(字符型,30位,必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 20. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 21. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 22. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 23. 拆零标志(字符型,3位,必填) + @JSONField(name = "trdn_flag") + private String trdnFlag; + + // 24. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 25. 处方号(字符型,40位,非必填) + @JSONField(name = "rxno") + private String rxno; + + // 26. 外购处方标志(字符型,3位,必填) + @JSONField(name = "rx_circ_flag") + private String rxCircFlag; + + // 27. 零售单据号(字符型,40位,必填) + @JSONField(name = "rtal_docno") + private String rtalDocno; + + // 29. 销售出库单据号(字符型,40位,非必填) + @JSONField(name = "stoout_no") + private String stooutNo; + + // 30. 批次号(字符型,30位,非必填) + @JSONField(name = "bchno") + private String bchno; + + // 32. 药品条形码(字符型,30位,非必填) + @JSONField(name = "drug_prod_barc") + private String drugProdBarc; + + // 33. 货架位(字符型,20位,非必填) + @JSONField(name = "shelf_posi") + private String shelfPosi; + + // 34. 销售/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "sel_retn_cnt") + private BigDecimal selRetnCnt; + + // 35. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "sel_retn_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date selRetnTime; + + // 36. 销售/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "sel_retn_opter_name") + private String selRetnOpterName; + + // 37. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 38. 就诊结算类型(字符型,6位,非必填) + @JSONField(name = "mdtrt_setl_type") + private String mdtrtSetlType; + + // 39. 溯源码节点信息(字符型,长度未明确) + @JSONField(name = "drugtracinfo") + private JSONArray drugtracinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java new file mode 100644 index 00000000..b678d268 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3505Result.java @@ -0,0 +1,29 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3505】【3506】商品销售 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3505Result { + + // 返回结果 + @JSONField(name = "retRslt") + private String retRslt; + + // 返回信息 + @JSONField(name = "msgRslt") + private String msgRslt; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java new file mode 100644 index 00000000..afcee8bb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3506Param.java @@ -0,0 +1,118 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3506】商品销售退货 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3506Param { + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 5. 结算ID(字符型,30位,非必填) + @JSONField(name = "setl_id") + private String setlId; + + // 6. 人员编号(字符型,30位,非必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 7. 人员证件类型(字符型,6位,必填) + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 8. 证件号码(字符型,50位,非必填) + @JSONField(name = "certno") + private String certno; + + // 9. 人员姓名(字符型,50位,非必填) + @JSONField(name = "psn_name") + private String psnName; + + // 10. 生产批号(字符型,30位,必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 11. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 12. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 13. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 14. 拆零标志(字符型,3位,必填) + @JSONField(name = "trdn_flag") + private String trdnFlag; + + // 15. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 16. 销售/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "sel_retn_cnt") + private BigDecimal selRetnCnt; + + // 17. 销售/退货时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "sel_retn_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date selRetnTime; + + // 18. 销售/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "sel_retn_opter_name") + private String selRetnOpterName; + + // 19. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 20. 商品销售流水号(字符型,50位,非必填) + @JSONField(name = "medins_prod_sel_no") + private String medinsProdSelNo; + + // 21. 就医流水号(字符型,30位,必填) + @JSONField(name = "mdtrt_sn") + private String mdtrtSn; + + // 22. 溯源码节点信息(字符型,长度未明确) + @JSONField(name = "drugtracinfo") + private JSONArray drugtracinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java new file mode 100644 index 00000000..1c408ae6 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3507Param.java @@ -0,0 +1,29 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3507】商品信息删除 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3507Param { + + // 定点医药机构批次流水号 + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 进销存数据类型 + @JSONField(name = "inv_data_type") + private String invDataType; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java new file mode 100644 index 00000000..ac10bc8f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Param.java @@ -0,0 +1,102 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3508】定点医药机构商品库存信息查询 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3508Param { + // 定点医药机构编号 + private String fixmedinsCode; + + // 医药机构目录编码 + private String medinsListCodg; + + // 定点医药机构批次流水号 + private String fixmedinsBchno; + + // 开始日期 + private Date begndate; + + // 结束日期 + private Date enddate; + + // 定点医药机构商品库存流水号 + private String medinsProdInvNo; + + // 医疗目录编码 + private String medListCodg; + + // 医药机构目录名称 + private String medinsListName; + + // 处方药标志 + private String rxFlag; + + // 目录特项标志 + private String listSpItemFlag; + + // 拆零标志 + private String trdnFlag; + + // 库存日期 + private Date invdate; + + // 生产批号 + private String manuLotnum; + + // 生产日期 + private Date manuDate; + + // 有效期止 + private Date expyEnd; + + // 备注 + private String memo; + + // 有效标志 + private String valiFlag; + + // 数据唯一记录号 + private String rid; + + // 创建人ID + private String crterId; + + // 创建人姓名 + private String crterName; + + // 创建机构编号 + private String crteOptinsNo; + + // 经办人ID + private String opterId; + + // 经办人姓名 + private String opterName; + + // 经办机构编号 + private String optinsNo; + + // 统筹区编号 + private String poolareaNo; + + // 说明:medins_list_codg和fixmedins_bchno为互斥必填项,至少传其中一个字段 +} + diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java new file mode 100644 index 00000000..d543c985 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Medical3508Result.java @@ -0,0 +1,104 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3508】定点医药机构商品库存信息查询 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Medical3508Result { + + // 有效期止 + private Date expyEnd; + + // 医疗目录编码 + private String medListCodg; + + // 统筹区编号 + private String poolareaNo; + + // 创建机构编号 + private String crteOptinsNo; + + // 库存数量 + private BigDecimal invCnt; + + // 医药机构目录编码 + private String medinsListCodg; + + // 备注 + private String memo; + + // 数据更新时间 + private Date updtTime; + + // 生产日期 + private Date manuDate; + + // 经办人姓名 + private String opterName; + + // 数据唯一记录号 + private String rid; + + // 数据创建时间 + private Date crteTime; + + // 库存日期 + private Date invdate; + + // 有效标志 + private String valiFlag; + + // 定点医药机构编号 + private String fixmedinsCode; + + // 处方药标志 + private String rxFlag; + + // 目录特项标志 + private String listSpItemFlag; + + // 定点医药机构批次流水号 + private String fixmedinsBchno; + + // 经办时间 + private Date optTime; + + // 经办人ID + private String opterId; + + // 生产批号 + private String manuLotnum; + + // 医药机构目录名称 + private String medinsListName; + + // 创建人姓名 + private String crterName; + + // 定点医药机构商品库存流水号 + private String medinsProdInvNo; + + // 创建人ID + private String crterId; + + // 经办机构编号 + private String optinsNo; + + // 拆零标志 + private String trdnFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java new file mode 100644 index 00000000..c8e3a248 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301ListParam.java @@ -0,0 +1,16 @@ +package com.openhis.yb.dto; + +import lombok.Data; + +import java.util.List; + +/** + * MedicalDirectory3301ListParam + * + * @author Wuser + * @date 2025/5/24 + */ +@Data +public class MedicalDirectory3301ListParam { + List data; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java new file mode 100644 index 00000000..ff605385 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3301Param.java @@ -0,0 +1,69 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3301】目录对照上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalDirectory3301Param { + + // 定点医药机构目录编号 + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 定点医药机构目录名称 + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 目录类别 + @JSONField(name = "list_type") + private String listType; + + // 医疗目录编码 + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 开始日期 + @JSONField(name = "begndate") + private String begndate; + + // 结束日期 + @JSONField(name = "enddate") + private String enddate; + + // 批准文号 + private String aprvno; + + // 剂型 + private String dosform; + + // 除外内容 + private String exctCont; + + // 项目内涵 + private String itemCont; + + // 计价单位 + private String prcunt; + + // 规格 + private String spec; + + // 包装规格 + private String pacspec; + + // 备注 + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java new file mode 100644 index 00000000..e9c50b06 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalDirectory3302Param.java @@ -0,0 +1,32 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3302】目录对照撤销 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalDirectory3302Param { + + // 定点医药机构编号 + private String fixmedinsCode; + + // 定点医药机构目录编号 + private String fixmedinsHilistId; + + // 目录类别 + private String listType; + + // 医疗目录编码 + private String medListCodg; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java new file mode 100644 index 00000000..f6727fc4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3501Param.java @@ -0,0 +1,72 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3501】商品盘存上传 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalInventory3501Param { + + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 5. 盘存日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "invdate") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date invdate; + + // 6. 库存数量(数值型,16位含2位小数,必填) + @JSONField(name = "inv_cnt") + private BigDecimal invCnt; + + // 7. 生产批号(字符型,30位,非必填) + @JSONField(name = "manu_lotnum") + private String manuLotnum; + + // 8. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 9. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 10. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 11. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java new file mode 100644 index 00000000..72858b78 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalInventory3502Param.java @@ -0,0 +1,81 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【3502】商品库存变更 + * + * @author SunJQ + * @date 2025-04-16 + */ + +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalInventory3502Param { + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 库存变更类型(字符型,6位,必填) + @JSONField(name = "inv_chg_type") + private String invChgType; + + // 3. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 4. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 5. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 6. 单价(数值型,16位含6位小数,必填) + @JSONField(name = "pric") + private BigDecimal pric; + + // 7. 数量(数值型,16位含4位小数,必填) + @JSONField(name = "cnt") + private BigDecimal cnt; + + // 8. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 9. 库存变更时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "inv_chg_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date invChgTime; + + // 10. 库存变更经办人姓名(字符型,50位,非必填) + @JSONField(name = "inv_chg_opter_name") + private String invChgOpterName; + + // 11. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 12. 拆零标志(字符型,2位,必填) + @JSONField(name = "trdn_flag") + private String trdnFlag; + + // 13. 溯源码节点信息(字符型,长度未明确) + @JSONField(name = "drugtracinfo") + private JSONArray drugtracinfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java new file mode 100644 index 00000000..5350b037 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalPurchase3504Param.java @@ -0,0 +1,95 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【3504】商品采购退货 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalPurchase3504Param { + // 1. 医疗目录编码(字符型,50位,必填) + @JSONField(name = "med_list_codg") + private String medListCodg; + + // 2. 定点医药机构目录编号(字符型,30位,必填) + @JSONField(name = "fixmedins_hilist_id") + private String fixmedinsHilistId; + + // 3. 定点医药机构目录名称(字符型,200位,必填) + @JSONField(name = "fixmedins_hilist_name") + private String fixmedinsHilistName; + + // 4. 定点医药机构批次流水号(字符型,30位,必填) + @JSONField(name = "fixmedins_bchno") + private String fixmedinsBchno; + + // 5. 供应商名称(字符型,200位,必填) + @JSONField(name = "spler_name") + private String splerName; + + // 6. 供应商许可证号(字符型,50位,非必填) + @JSONField(name = "spler_pmtno") + private String splerPmtno; + + // 7. 生产日期(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "manu_date") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date manuDate; + + // 8. 有效期止(日期型,必填,格式:yyyy-MM-dd) + @JSONField(name = "expy_end") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date expyEnd; + + // 9. 最终成交单价(数值型,16位含6位小数,非必填) + @JSONField(name = "finl_trns_pric") + private BigDecimal finlTrnsPric; + + // 10. 采购/退货数量(数值型,16位含4位小数,必填) + @JSONField(name = "purc_retn_cnt") + private BigDecimal purcRetnCnt; + + // 11. 采购发票编码(字符型,50位,非必填) + @JSONField(name = "purc_invo_codg") + private String purcInvoCodg; + + // 12. 采购发票号(字符型,50位,必填) + @JSONField(name = "purc_invo_no") + private String purcInvoNo; + + // 13. 处方药标志(字符型,3位,必填) + @JSONField(name = "rx_flag") + private String rxFlag; + + // 14. 采购/退货入库时间(日期时间型,必填,格式:yyyy-MM-dd HH:mm:ss) + @JSONField(name = "purc_retn_stoin_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date purcRetnStoinTime; + + // 15. 采购/退货经办人姓名(字符型,50位,必填) + @JSONField(name = "purc_retn_opter_name") + private String purcRetnOpterName; + + // 16. 备注(字符型,500位,非必填) + @JSONField(name = "memo") + private String memo; + + // 20. 商品采购流水号(字符型,50位,非必填) + @JSONField(name = "medins_prod_purc_no") + private String medinsProdPurcNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java new file mode 100644 index 00000000..2d6c3bb0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/MedicalTraceNoDto.java @@ -0,0 +1,28 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * 药品追溯码dto + * + * @author zwh + * @date 2025-05-28 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicalTraceNoDto { + + // 药品追溯码(字符型,100) + @JSONField(name = "drug_trac_codg") + private String drugTracCodg; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java new file mode 100644 index 00000000..83836218 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PatientInfoDto.java @@ -0,0 +1,84 @@ +package com.openhis.yb.dto; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; +import java.util.List; + +@Data +@Accessors(chain = true) +public class PatientInfoDto { + + //患者信息 + /** ID */ + @TableId(type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + + /** 活动标记 */ + private Integer activeFlag; + + /** 临时标识 */ + private Integer tempFlag; + + /** 患者姓名 */ + private String name; + + /** 患者院内编码/病历号 */ + private String busNo; + + /** 性别编码 */ + private Integer genderEnum; + + /** 生日 */ + private Date birthDate; + + /** 民族 */ + private String nationalityCode; + + /** 身份证号 */ + private String idCard; + + /** 拼音码 */ + private String pyStr; + + /** 五笔码 */ + private String wbStr; + + /** 机构Id */ + private Long organizationId; + + /** 特慢病等 */ + private List feedetail; + + //医保信息 2025/05/23 弃用,费用性质固定,如农大只有省医保,费用性质只显示省医保和自费即可,由@GetMapping(value = "/contract-list")接口提供数据 + /** 合同Id */ + private Long contractId;//弃用 2025/05/23 + + /** 合同名称 */ + private String contractName;//弃用 2025/05/23 + + /** 状态 */ + private Integer statusEnum;//弃用 2025/05/23 + + /** 合同的类别 */ + private Integer categoryEnum;//弃用 2025/05/23 + + /** 合同编码 */ + private String contractBusNo;//弃用 2025/05/23 2025/07/23 因考虑住院部分代码开发,非常规门诊转住院的情况下需要刷卡识别身份获取省市医保 + + /** 机构 */ + private Long contractOrgId;//弃用 2025/05/23 + + /** 是否医保 */ + private Integer ybFlag;//弃用 2025/05/23 + + /** 医保区划 */ + private String admVs;//弃用 2025/05/23 + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java new file mode 100644 index 00000000..b3a9c46d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDecDetailUniAccountDto.java @@ -0,0 +1,31 @@ +package com.openhis.yb.dto; + +import com.openhis.financial.domain.PaymentRecDetail; + +import lombok.Data; + +/** + * 付款详情关联账户的sql查询结果集 + */ +@Data +public class PaymentDecDetailUniAccountDto extends PaymentRecDetail { + /** + * 合同编号 + */ + private String contractNo; + + // 险种类型 + private String insutype; + + // 医疗类别 + private String medType; + + // 医疗费用总额 + private String medfeeSumamt; + + // 医疗费用总额(有退费) + private String returnMedfeeSumamt; + + // 门诊还是住院 + private Integer kindEnum; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java new file mode 100644 index 00000000..f6507fbc --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDetailDto.java @@ -0,0 +1,37 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; + +import com.openhis.common.annotation.Dict; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 支付详情 + * + * @author SunJQ + * @date 2025-03-29 + */ +@Data +@Accessors(chain = true) +public class PaymentDetailDto { + + /** 支付类型 */ + @Dict(dictCode = "pay_enum") + private Integer payEnum; + private String payEnum_dictText; + + /** 金额 */ + private BigDecimal amount; + + /** 找零 */ + private BigDecimal returnAmount; + + /** 交款 */ + private BigDecimal chargeAmount; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java new file mode 100644 index 00000000..af0f22d7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentDto.java @@ -0,0 +1,45 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.List; + +import javax.validation.constraints.NotEmpty; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 付款入参 + * + * @author SunJQ + * @date 2025-03-29 + */ +@Data +@Accessors(chain = true) +public class PaymentDto { + + /** + * 付款id + */ + private Long id;// paymentId + + /** 就诊ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long encounterId; + + /** 收费项 */ + private List chargeItemIds;// 收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 + + /** 支付详细 */ + @NotEmpty + private List paymentDetails; + + private String ybMdtrtCertType;// 社保卡/身份证/电子医保码 + + private String busiCardInfo;// 社保卡号/身份证号/ecToken +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java new file mode 100644 index 00000000..dcc0bfed --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentInpatientDto.java @@ -0,0 +1,55 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.List; + +import javax.validation.constraints.NotEmpty; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 付款入参 + * + * @author SunJQ + * @date 2025-03-29 + */ +@Data +@Accessors(chain = true) +public class PaymentInpatientDto { + + /** + * 付款id(业务单) + */ + private Long id;// paymentId + + /** + * 付款id(预交金原单) + */ + private Long oldId; + + /** + * 付款id(多退少补单) + */ + private Long newId; + + /** 就诊ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long encounterId; + + /** 收费项 */ + private List chargeItemIds;// 收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 + + /** 支付详细 */ + @NotEmpty + private List paymentDetails; + + private String ybMdtrtCertType;// 社保卡/身份证/电子医保码 + + private String busiCardInfo;// 社保卡号/身份证号/ecToken +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java new file mode 100644 index 00000000..f9d321d0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PaymentSettleDto.java @@ -0,0 +1,19 @@ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +@Data +@Accessors(chain = true) +public class PaymentSettleDto { + + private Date endTime; + + private Date startTime; + + private Long enterId; + + private String contractNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java new file mode 100644 index 00000000..adb2dd17 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalCnl25004Param.java @@ -0,0 +1,27 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25004】人员生育审批撤销 + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersBirthApprovalCnl25004Param { + + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 待遇申报明细流水号 + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java new file mode 100644 index 00000000..9da7a5a3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthApprovalSel25005Param.java @@ -0,0 +1,66 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25005】人员生育审批查询 + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersBirthApprovalSel25005Param { + // 1. 人员编号(既是输入参数也是输出参数) + @JSONField(name = "psn_no") + private String psnNo; + + // --- 输出参数 --- + + // 1. 待遇申报明细流水号(字符型,30位,必填) + @JSONField(name = "trtDclaDetlSn") + private String trtDclaDetlSn; + + // 2. 险种类型(字符型,6位,必填) + @JSONField(name = "insutype") + private String insutype; + + // 3. 人员证件号码(字符型,30位,必填) + @JSONField(name = "certno") + private String certno; + + // 4. 审批定点医药机构编号(字符型,30位,必填) + @JSONField(name = "fixmedinscode") + private String fixmedinscode; + + // 5. 审批定点医药机构名称(字符型,200位,必填) + @JSONField(name = "fixmedinsname") + private String fixmedinsname; + + // 6. 人员姓名(字符型,50位,必填) + @JSONField(name = "psn_name") + private String psnName; + + // 7. 开始时间(日期型,必填) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "begndate") + private Date begndate; + + // 8. 终止时间(日期型,必填) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "enddate") + private Date enddate; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java new file mode 100644 index 00000000..c8d96bd8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersBirthRecord25003Param.java @@ -0,0 +1,126 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25003】人员生育备案 + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersBirthRecord25003Param { + + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 3. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 4. 参保机构医保区划 + @JSONField(name = "insu_admdvs") + private String insuAdmdvs; + + // 5. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 6. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 7. 孕周数 + @JSONField(name = "esso_val") + private Integer essoVal; + + // 8. 生育待遇申报人类别 + @JSONField(name = "matn_trt_dclaer_type") + private String matnTrtDclaerType; + + // 9. 末次月经日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "last_mena_date") + private Date lastMenaDate; + + // 10. 预计生育日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "plan_matn_date") + private Date planMatnDate; + + // 11. 申报日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "dcla_date") + private Date dclaDate; + + // 12. 配偶姓名 + @JSONField(name = "spus_name") + private String spusName; + + // 13. 配偶证件类型 + @JSONField(name = "spus_cert_type") + private String spusCertType; + + // 14. 配偶证件号码 + @JSONField(name = "spus_certno") + private String spusCertno; + + // 15. 生育类别 + @JSONField(name = "matn_type") + private String matnType; + + // 16. 胎次 + @JSONField(name = "fetts") + private BigDecimal fetts; + + // 17. 计划生育服务证号 + @JSONField(name = "fpsc_no") + private String fpscNo; + + // 18. 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "begndate") + private Date begndate; + + // 19. 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "enddate") + private Date enddate; + + // 20. 联系地址 + @JSONField(name = "addr") + private String addr; + + // --- 输出参数 --- + + // 1. 待遇申报明细流水号 + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String outputPsnNo; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java new file mode 100644 index 00000000..0fa509f4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDis2503Param.java @@ -0,0 +1,83 @@ +package com.openhis.yb.dto; + +import java.util.Date; +import com.alibaba.fastjson2.annotation.JSONField; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【2503】人员慢特病备案(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersChrDis2503Param { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 门慢门特病种目录代码 + @JSONField(name = "opsp_dise_code") + private String opspDiseCode; + + // 4. 门慢门特病种名称 + @JSONField(name = "opsp_dise_name") + private String opspDiseName; + + // 5. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 6. 联系地址 + @JSONField(name = "addr") + private String addr; + + // 7. 参保机构医保区划 + @JSONField(name = "insu_optins") + private String insuOptins; + + // 8. 鉴定定点医药机构编号 + @JSONField(name = "ide_fixmedins_no") + private String ideFixmedinsNo; + + // 9. 鉴定定点医药机构名称 + @JSONField(name = "ide_fixmedins_name") + private String ideFixmedinsName; + + // 10. 医院鉴定日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "hosp_ide_date") + private Date hospIdeDate; + + // 11. 诊断医师编码 + @JSONField(name = "diag_dr_codg") + private String diagDrCodg; + + // 12. 诊断医师姓名 + @JSONField(name = "diag_dr_name") + private String diagDrName; + + // 13. 开始日期 + @JSONField(name = "begndate", format = "yyyy-MM-dd") + private Date begndate; + + // 15. 结束日期 + @JSONField(name = "enddate", format = "yyyy-MM-dd") + private Date enddate; + + // 16. 待遇申报明细流水号(输出) + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java new file mode 100644 index 00000000..ee75f633 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersChrDisCxl2504Param.java @@ -0,0 +1,30 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2504】人员慢特病备案撤销(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersChrDisCxl2504Param { + // 1. 待遇申报明细流水号 + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 备注 + @JSONField(name = "memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java new file mode 100644 index 00000000..c5d2184e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPt2505Param.java @@ -0,0 +1,100 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import com.alibaba.fastjson2.JSONObject; + +import com.alibaba.fastjson2.annotation.JSONField; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【2505】人员定点备案(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersDesigPt2505Param { + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 3. 联系地址 + @JSONField(name = "addr") + private String addr; + + // 4. 业务申请类型 + @JSONField(name = "biz_appy_type") + private String bizAppyType; + + // 5. 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "begndate") + private Date begndate; + + // 6. 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "enddate") + private Date enddate; + + // 7. 代办人姓名 + @JSONField(name = "agnter_name") + private String agnterName; + + // 8. 代办人证件类型 + @JSONField(name = "agnter_cert_type") + private String agnterCertType; + + // 9. 代办人证件号码 + @JSONField(name = "agnter_certno") + private String agnterCertno; + + // 10. 代办人联系方式 + @JSONField(name = "agnter_tel") + private String agnterTel; + + // 11. 代办人联系地址 + @JSONField(name = "agnter_addr") + private String agnterAddr; + + // 12. 代办人关系 + @JSONField(name = "agnter_rlts") + private String agnterRlts; + + // 13. 定点排序号 + @JSONField(name = "fix_srt_no") + private String fixSrtNo; + + // 14. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 15. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 16. 备注 + @JSONField(name = "memo") + private String memo; + + // 17. 扩展字段 + @JSONField(name = "extData") + private JSONObject extData; + + // 18. 待遇申报明细流水号(输出) + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java new file mode 100644 index 00000000..2dfb8244 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersDesigPtCxl2506Param.java @@ -0,0 +1,30 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【2506】人员定点备案撤销(输入) + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersDesigPtCxl2506Param { + // 1. 待遇申报明细流水号 + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 备注(填写撤销原因) + @JSONField(name = "memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java new file mode 100644 index 00000000..737d58aa --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedApprovalCnl25006Param.java @@ -0,0 +1,26 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25006】人员特药审批撤销 + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersMedApprovalCnl25006Param { + // 1. 人员编号(字符型,30位,必填) + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 待遇申报明细流水号(字符型,30位,必填) + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java new file mode 100644 index 00000000..ea145a91 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedRecord25001Param.java @@ -0,0 +1,86 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25001】人员特药备案 + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersMedRecord25001Param { + + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 参保机构医保区划 + @JSONField(name = "insu_admdv") + private String insuAdmdv; + + // 4. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 5. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 6. 目录类别 + @JSONField(name = "list_type") + private String listType; + + // 7. 医保目录编码 + @JSONField(name = "hilist_code") + private String hilistCode; + + // 8. 医保目录名称 + @JSONField(name = "hilist_name") + private String hilistName; + + // 9. 数量 + @JSONField(name = "cnt") + private BigDecimal cnt; + + // 10. 数量单位 + @JSONField(name = "cnt_prcunt") + private String cntPrcunt; + + // 11. 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "begndate") + private Date begndate; + + // 12. 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "enddate") + private Date enddate; + + // 13. 诊断代码 + @JSONField(name = "diag_code") + private String diagCode; + + // 14. 诊断名称 + @JSONField(name = "diag_name") + private String diagName; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java new file mode 100644 index 00000000..0b92c546 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Param.java @@ -0,0 +1,39 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25002】人员特药备案查询(输入) + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersMedSelect25002Param { + + // 1. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 用作比较的时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "compare_date") + private Date compareDate; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java new file mode 100644 index 00000000..0fda0c07 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersMedSelect25002Result.java @@ -0,0 +1,91 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【25002】人员特药备案查询(输出) + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersMedSelect25002Result { + + // 1. 待遇申报明细流水号 + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; + + // 2. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 3. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 4. 参保地医保区划 + @JSONField(name = "insu_admdv") + private String insuAdmdv; + + // 5. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 6. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 7. 目录类别 + @JSONField(name = "list_type") + private String listType; + + // 8. 医保目录编码 + @JSONField(name = "hilist_code") + private String hilistCode; + + // 9. 医保目录名称 + @JSONField(name = "hilist_name") + private String hilistName; + + // 10. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 11. 开始时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "begndate") + private Date begndate; + + // 12. 终止时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "enddate") + private Date enddate; + + // 13. 经办人id + @JSONField(name = "opter_id") + private String opterId; + + // 14. 经办人姓名 + @JSONField(name = "opter_name") + private String opterName; + + // 15. 经办时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "opt_time") + private Date optTime; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java new file mode 100644 index 00000000..8d2790ce --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PersUnintInj2507Param.java @@ -0,0 +1,168 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * 【2507】人员意外伤害备案(输入) + * + * @author gaoyy + * @date 2025-05-09 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PersUnintInj2507Param { + // 1. 申报来源 + @JSONField(name = "dcla_souc") + private String dclaSouc; + + // 2. 险种类型 + @JSONField(name = "insutype") + private String insutype; + + // 3. 人员编号 + @JSONField(name = "psn_no") + private String psnNo; + + // 4. 人员参保关系ID + @JSONField(name = "psn_insu_rlts_id") + private String psnInsuRltsId; + + // 5. 人员证件类型 + @JSONField(name = "psn_cert_type") + private String psnCertType; + + // 6. 证件号码 + @JSONField(name = "certno") + private String certno; + + // 7. 人员姓名 + @JSONField(name = "psn_name") + private String psnName; + + // 8. 性别 + @JSONField(name = "gend") + private String gend; + + // 9. 民族 + @JSONField(name = "naty") + private String naty; + + // 10. 出生日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "brdy") + private Date brdy; + + // 11. 联系电话 + @JSONField(name = "tel") + private String tel; + + // 12. 联系地址 + @JSONField(name = "addr") + private String addr; + + // 13. 参保所属医保区划 + @JSONField(name = "insu_admdvs") + private String insuAdmdvs; + + // 14. 单位编号 + @JSONField(name = "emp_no") + private String empNo; + + // 15. 单位名称 + @JSONField(name = "emp_name") + private String empName; + + // 16. 就医地医保区划 + @JSONField(name = "mdtrtarea_admdvs") + private String mdtrtareaAdmdvs; + + // 17. 定点医药机构编号 + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + // 18. 定点医药机构名称 + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + // 19. 医院等级 + @JSONField(name = "hosp_lv") + private String hospLv; + + // 20. 入院时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "adm_time") + private Date admTime; + + // 21. 受伤时间 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "trum_time") + private Date trumTime; + + // 22. 受伤地点 + @JSONField(name = "trum_site") + private String trumSite; + + // 23. 致伤原因 + @JSONField(name = "trum_rea") + private String trumRea; + + // 24. 审核支付标志 + @JSONField(name = "chk_pay_flag") + private String chkPayFlag; + + // 25. 代办人姓名 + @JSONField(name = "agnter_name") + private String agnterName; + + // 26. 代办人证件类型 + @JSONField(name = "agnter_cert_type") + private String agnterCertType; + + // 27. 代办人证件号码 + @JSONField(name = "agnter_certno") + private String agnterCertno; + + // 28. 代办人联系方式 + @JSONField(name = "agnter_tel") + private String agnterTel; + + // 29. 代办人联系地址 + @JSONField(name = "agnter_addr") + private String agnterAddr; + + // 30. 代办人关系 + @JSONField(name = "agnter_rlts") + private String agnterRlts; + + // 31. 开始日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "begndate") + private Date begndate; + + // 32. 结束日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JSONField(name = "enddate") + private Date enddate; + + // 33. 备注 + @JSONField(name = "memo") + private String memo; + + // 34. 待遇申报明细流水号(输出) + @JSONField(name = "trt_dcla_detl_sn") + private String trtDclaDetlSn; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java new file mode 100644 index 00000000..91c6c1e2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/PrePaymentDto.java @@ -0,0 +1,46 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.List; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 预结算入参 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class PrePaymentDto { + + /** 收款员 */ + private Long entererId; + + /** 支付的患者ID */ + @NotNull + private Long patientId; + + /** 就诊ID */ + private Long encounterId; + + /** 收费项 */ + @NotEmpty + private List chargeItemIds;// + + /** + * 类型 医保挂号时使用 + */ + private String ybMdtrtCertType;// 社保卡/身份证/电子医保码 + /** + * 类型 医保挂号时使用 + */ + private String busiCardInfo;// 社保卡号/身份证号/ecToken +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java new file mode 100644 index 00000000..598c523d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Result.java @@ -0,0 +1,48 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + + +@Data +@ApiModel(value="接口返回对象", description="接口返回对象") +@JsonIgnoreProperties(ignoreUnknown = true) +public class Result implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 成功标志 + */ + @ApiModelProperty(value = "成功标志") + private boolean success = true; + + /** + * 返回处理消息 + */ + @ApiModelProperty(value = "返回处理消息") + private String message = "操作成功!"; + + /** + * 返回代码 + */ + @ApiModelProperty(value = "返回代码") + private Integer code = 0; + + /** + * 返回数据对象 data + */ + @ApiModelProperty(value = "返回数据对象") + private T result; + + /** + * 时间戳 + */ + @ApiModelProperty(value = "时间戳") + private long timestamp ; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java new file mode 100644 index 00000000..6b1f0eae --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/ResultBody.java @@ -0,0 +1,39 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; + +/** + * 医保结果 + */ +@Data +public class ResultBody { + + /** 交易状态码 */ + @JSONField(name="infcode") + private String infcode; + /** 发送方报文ID */ + @JSONField(name="warnMsg") + private String warn_msg; + /** 数字签名信息 */ + @JSONField(name="cainfo") + private String cainfo; + /** 错误信息 */ + @JSONField(name="err_msg") + private String errMsg; + /** 接收报文时间 */ + @JSONField(name="refmsg_time") + private String refmsgTime; + /** 签名类型 */ + @JSONField(name="signtype") + private String signtype; + /** 响应报文时间 */ + @JSONField(name="respond_time") + private String respondTime; + /** 接收方报文ID */ + @JSONField(name="inf_refmsgid") + private String infRefmsgid; + /** 交易输出 */ + @JSONField(name="output") + private String output; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java new file mode 100644 index 00000000..46ce73f9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201DetailDto.java @@ -0,0 +1,39 @@ +package com.openhis.yb.dto; + +import com.openhis.common.annotation.Dict; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +@Data +@Accessors(chain = true) +public class Settlement3201DetailDto { + + /** 医疗费用总额 */ + private BigDecimal medFeeSumAmt; + /** 基金支付总额 */ + private BigDecimal fundPaySumAmt; + /** 个人账户支付总额 */ + private BigDecimal acctPay; + /** 个人账户支付总额 */ + private BigDecimal acctGjPay; + /** 定点医药机构结算笔数 */ + private Integer fixMedInsSetlCnt; + @Dict(dictCode = "bus_no" , dictTable = "fin_contract" , dictText = "contract_name") + private String contractNo; + private String contractNo_dictText; + @Dict(dictCode = "insutype") + private Integer insutype; + private String insutype_dictText; + @Dict(dictCode = "clr_type") + private String clrType; + private String clrType_dictText; + + public Settlement3201DetailDto() { + this.medFeeSumAmt = BigDecimal.ZERO; + this.fundPaySumAmt = BigDecimal.ZERO; + this.acctPay = BigDecimal.ZERO; + this.acctGjPay = BigDecimal.ZERO; + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java new file mode 100644 index 00000000..e416133f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201Dto.java @@ -0,0 +1,28 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 【3201】后台计算结果 DB映射实体 + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +public class Settlement3201Dto { + /** 医疗费用总额 */ + private BigDecimal medFeeSumAmt; + /** 基金支付总额 */ + private BigDecimal fundPaySumAmt; + /** 个人账户支付总额 */ + private BigDecimal acctPay; + /** 个人账户支付总额 */ + private BigDecimal acctGjPay; + /** 定点医药机构结算笔数 */ + private Integer fixMedInsSetlCnt; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java new file mode 100644 index 00000000..2f70156c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3201WebParam.java @@ -0,0 +1,38 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * 【3201】前台入参 + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +public class Settlement3201WebParam { + + /** 险种 */ + @NotNull + private String insuType; + /** 清算类别 */ + @NotNull + private String clrType;//住院或门诊 + /** 合同id */ + @NotNull + private String contractNo; + /** 医院id */ + @NotNull + private Long orgId; + /** 开始时间 */ + @NotNull + private String stmtBegnDate; + /** 结束时间 */ + @NotNull + private String stmtEndDate; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java new file mode 100644 index 00000000..8832bd71 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202Dto.java @@ -0,0 +1,45 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 【3201】后台计算结果 DB映射实体 + * + * @author SunJQ + * @date 2025-04-15 + */ +@Data +public class Settlement3202Dto { + /** 医疗费用总额 */ + + private BigDecimal medFeeSumAmt; + /** 基金支付总额 */ + + private BigDecimal fundPaySumAmt; + /** 个人账户支付总额 */ + + private BigDecimal acctPay; + /** 个人账户支付总额 */ + + private BigDecimal acctGjPay; + /** 现金支付总额 */ + + private BigDecimal selfPayCash; + /** 微信支付总额 */ + + private BigDecimal selfPayVX; + /** 阿里支付总额 */ + + private BigDecimal selfPayALI; + /** 银行卡支付总额 */ + + private BigDecimal selfPayUNION; + /** 定点医药机构结算笔数 */ + + private Integer fixMedInsSetlCnt; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java new file mode 100644 index 00000000..9d129ac3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3202WebParam.java @@ -0,0 +1,37 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * 【3202】前台入参 + * + * @author SunJQ + * @date 2025-04-17 + */ +@Data +public class Settlement3202WebParam { + /** 结算经办机构 */ + private String setlOptins;//前台传入,注意:先上传文件后核对明细的 + /** 清算类别 */ + private String clrType; + /** 文件查询号 */ + private String fileQuryNo; + /** 开始时间 */ + //@DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss") + //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private String stmtBegnDate; + /** 结束时间 */ + //@DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss") + //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private String stmtEndDate; + /** 医院id */ + private Long orgId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java new file mode 100644 index 00000000..4d666ffe --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Settlement3209AWebParam.java @@ -0,0 +1,30 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; + +import java.util.Date; + +/** + * [3209A]前台传参 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Data +public class Settlement3209AWebParam { + + // 清算类别 + private String clrType; + + // 开始日期 + private Date begndate; + + // 结束日期 + private Date enddate; + + // 清算机构 + private String clrOptins; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java new file mode 100644 index 00000000..57000ece --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign.java @@ -0,0 +1,62 @@ +package com.openhis.yb.dto; + +import java.io.Serializable; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *【9001】【9002】签到 签退 + * + * @author SunJQ + * @date 2025-04-16 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class Sign extends HisBaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + /**主键*/ + @TableId(type = IdType.ASSIGN_UUID) + @JSONField(serialize=false) + private String id; + /**操作员编号*/ + @JSONField(name="opter_no") + private String opterNo; + /**签到编号*/ + @JSONField(name="sign_no") + private String signNo; + /**签到时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(serialize=false) + private java.util.Date signTime; + /**签退时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(serialize=false) + private java.util.Date signOutTime; + /**状态,0-新建,1-签到,2-签退*/ + @JSONField(serialize=false) + private String status; + /** 签到MAC地址 */ + @JSONField(name="mac") + private String mac; + /** 签到IP地址 */ + @JSONField(name="ip") + private String ip; +// +// /**租户ID*/ +// private String tenantId; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java new file mode 100644 index 00000000..1dc5e821 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign1101Param.java @@ -0,0 +1,19 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class Sign1101Param { + /**操作员编号*/ + @JSONField(name="opter_no") + private String opterNo; + /** 签到MAC地址 */ + @JSONField(name="mac") + private String mac; + /** 签到IP地址 */ + @JSONField(name="ip") + private String ip; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java new file mode 100644 index 00000000..32f6340b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Sign9001Result.java @@ -0,0 +1,24 @@ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class Sign9001Result { + /**签到编号*/ + @JSONField(name="signNo") + private String signNo; + + /**操作员编号*/ + @JSONField(name="opterNo") + private String opterNo; + + @JSONField(name="signTime") + private java.util.Date signTime; + + @JSONField(name="status") + private String status; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java new file mode 100644 index 00000000..77450d72 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/SupplyItemDetail3503Dto.java @@ -0,0 +1,126 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 供应单据及供应项相关详细信息 dto + * + * @author zwh + * @date 2025-03-06 + */ +@Data +@Accessors(chain = true) +public class SupplyItemDetail3503Dto { + + /** ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long supplyId; + + /** 项目 */ + private String itemTable; + + /** 物品编码 */ + private Long itemId; + + /** 数量 */ + private BigDecimal itemQuantity; + + /** 项目单位 */ + private String itemUnit; + + /** 单价 */ + private BigDecimal price; + + /** 总价 */ + private BigDecimal totalPrice; + + /** 审批人 */ + private Long approverId; + + /** 源仓库 */ + private Long sourceLocationId; + + /** 源仓位 */ + private Long sourceLocationStoreId; + + /** 目的仓库 */ + private Long purposeLocationId; + + /** 目的仓位 */ + private Long purposeLocationStoreId; + + /** 供应商id */ + private Long supplierId; + + /** 供应商 */ + private String supplierName; + + /** 经手人 */ + private String practitionerName; + + /** 产品批号 */ + private String lotNumber; + + /** 追溯码 */ + private String traceNo; + + /** 发票码 */ + private String invoiceNo; + + /** 项目医保码 */ + private String ybNo; + + /** 单据号 */ + private String busNo; + + /** 项目编号 */ + private String itemBusNo; + + /** 开始时间 */ + private Date startTime; + + /** 结束时间 */ + private Date endTime; + + /** 服务id */ + private Long serviceId; + + /** 项目名称 */ + private String name; + + /** 拼音码 */ + private String pyStr; + + /** 五笔码 */ + private String wbStr; + + /** 常规单位 */ + private String unitCode; + + /** 最小单位 */ + private String minUnitCode; + + /** 拆零比 */ + private BigDecimal partPercent; + + /** 项目类型 */ + private String itemCategory; + + /** 处方标志 */ + private Integer rxFlag; + + /** 批准文号 */ + private String approvalNumber; + + /** 生产厂商文本 */ + private String manufacturerText; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java new file mode 100644 index 00000000..b11177c5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionDetailInfoDto.java @@ -0,0 +1,101 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.openhis.common.annotation.Dict; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 医保电子处方信息 + * + * @author yuxj + * @date 2025-05-06 + */ +@Data +@Accessors(chain = true) +public class VeriPrescriptionDetailInfoDto { + + /** 处方号 */ + private String prescriptionNo; + /** 门诊号 */ + private String iptOtpNo; + /** 请求数量 */ + private Integer quantity; + /** 请求单位 */ + @Dict(dictCode = "unit_code") + private String unitCode; + private String unitCode_dictText; + /** 审核状态 */ + private Integer statusEnum; + private String statusEnum_enumText; + + /* --处方信息-- */ + /** 药品名 */ + private String medicationName; + /** 药品规格 */ + private String drugSpecification; + /** 药品剂量 */ + private BigDecimal medDosage; + /** 药品剂量单位 */ + @Dict(dictCode = "unit_code") + private String medDosageUnitCode; + private String medDosageUnitCode_dictText; + /** 使用频次 */ + @Dict(dictCode = "rate_code") + private String medFrequency; + private String medFrequency_dictText; + /** 途径 */ + @Dict(dictCode = "method_code") + private String medRoute; + private String medRoute_dictText; + /** 取药状态 */ + private String medStatus; + /** 处方状态 */ + private String prescriptionStatus; + /** 处方类别 */ + private Integer rxTypeCode; + private String rxTypeCode_enumText; + /** 支持用药信息 */ + private String supportInfo; + /** 服药时间(开始) */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date effectiveDoseStart; + /** 服药时间(结束) */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date effectiveDoseEnd; + /** 给药间隔 */ + private String dispenseInterval; + /** 单次发药数 */ + private Integer dispensePerQuantity; + /** 每次发药供应天数 */ + private Integer dispensePerDuration; + + /* --就诊信息-- */ + /** 患者姓名 */ + private String patnName; + /** 身份证号 */ + private String certno; + /** 开方医生名 */ + private String practitionerName; + /** 挂号科室 */ + private String mdtrtDeptName; + /** 开单科室 */ + private String prscDeptName; + /** 挂号日期 */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date mdtrtTime; + /** 处方开立日期 */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date prscTime; + + /* --诊断信息-- */ + /** 诊断名 */ + private String conditionName; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java new file mode 100644 index 00000000..781adb91 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionInfoDto.java @@ -0,0 +1,53 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * 医保电子处方信息 + * + * @author yuxj + * @date 2025-05-06 + */ +@Data +@Accessors(chain = true) +public class VeriPrescriptionInfoDto { + + /** 处方号 */ + private String prescriptionNo; + /** 门诊号 */ + private String iptOtpNo; + /** 姓名 */ + private String patientName; + /** 证件号 */ + private String certno; + /** 取药状态 */ + private String medStatus; + /** 状态 */ + private Integer statusEnum; + private String statusEnum_enumText; + /** 开单科室 */ + private String prscDeptName; + /** 挂号日期 */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date mdtrtTime; + /** 处方开立日期 */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + private Date prscTime; + + /** 租户ID */ + private Integer tenantId; + /** 电子凭证线上身份核验流水号 */ + private String authNo; + /** 电子凭证令牌 */ + private String ecToken; + /** 医保处方编号 */ + private String hiRxno; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java new file mode 100644 index 00000000..31508fc4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/VeriPrescriptionParam.java @@ -0,0 +1,21 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 医保电子处方信息查询条件 + * + * @author yuxj + * @date 2025-05-06 + */ +@Data +@Accessors(chain = true) +public class VeriPrescriptionParam { + + /** 门诊号/姓名 */ + private String name; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java new file mode 100644 index 00000000..56945856 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetail.java @@ -0,0 +1,194 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +@Accessors(chain = true) +//@TableName("yb_inpatient_fee_detail") // 替换为实际表名 +public class Yb2301InputFeeDetail { + + /** + * 费用明细流水号 + * 单次就诊内唯一 + */ + @JsonProperty("feedetl_sn") + private String feedetlSn; + + /** + * 原费用流水号 + * 退单时传入被退单的费用明细流水号 + */ + @JsonProperty("init_feedetl_sn") + private String initFeedetlSn; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 医嘱号 + */ + @JsonProperty("drord_no") + private String drordNo; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 医疗类别 + */ + @JsonProperty("med_type") + private String medType; + + /** + * 费用发生时间 + * 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("fee_ocur_time") + private Date feeOcurTime; + + /** + * 医保目录编码 + */ + @JsonProperty("med_list_codg") + private String medListCodg; + + /** + * 医药机构目录编码 + */ + @JsonProperty("medins_list_codg") + private String medinsListCodg; + + /** + * 明细项目费用总额 + */ + @JsonProperty("det_item_fee_sumamt") + private BigDecimal detItemFeeSumamt; + + /** + * 数量 + * 退单时数量填写负数 + */ + @JsonProperty("cnt") + private BigDecimal cnt; + + /** + * 单价 + */ + @JsonProperty("pric") + private BigDecimal pric; + + /** + * 开单科室编码 + */ + @JsonProperty("bilg_dept_codg") + private String bilgDeptCodg; + + /** + * 开单科室名称 + */ + @JsonProperty("bilg_dept_name") + private String bilgDeptName; + + /** + * 开单医生编码 + */ + @JsonProperty("bilg_dr_codg") + private String bilgDrCodg; + + /** + * 开单医师姓名 + */ + @JsonProperty("bilg_dr_name") + private String bilgDrName; + + /** + * 受单科室编码 + */ + @JsonProperty("acord_dept_codg") + private String acordDeptCodg; + + /** + * 受单科室名称 + */ + @JsonProperty("acord_dept_name") + private String acordDeptName; + + /** + * 受单医生编码 + */ + @JsonProperty("orders_dr_code") + private String ordersDrCode; + + /** + * 受单医生姓名 + */ + @JsonProperty("orders_dr_name") + private String ordersDrName; + + /** + * 医院审批标志 + */ + @JsonProperty("hosp_appr_flag") + private String hospApprFlag; + + /** + * 中药使用方式 + */ + @JsonProperty("tcmdrug_used_way") + private String tcmdrugUsedWay; + + /** + * 外检标志 + */ + @JsonProperty("etip_flag") + private String etipFlag; + + /** + * 外检医院编码 + */ + @JsonProperty("etip_hosp_code") + private String etipHospCode; + + /** + * 出院带药标志 + */ + @JsonProperty("dscg_tkdrug_flag") + private String dscgTkdrugFlag; + + /** + * 生育费用标志 + */ + @JsonProperty("matn_fee_flag") + private String matnFeeFlag; + + /** + * 备注 + */ + @JsonProperty("memo") + private String memo; + + /** + * 组套编号 + */ + @JsonProperty("comb_no") + private String combNo; + + /** + * 字段扩展 + * 格式:JSON + */ + @JsonProperty("exp_content") + private String expContent; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java new file mode 100644 index 00000000..e1a6f370 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301InputFeeDetailModel.java @@ -0,0 +1,29 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.List; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【2301】参数 + * + * @author SunJQ + * @date 2025-08-09 + */ +@Data +@Accessors(chain = true) +public class Yb2301InputFeeDetailModel { + /** + * 费用明细 + */ + List feedetail; + + /** + * 参保地 + */ + String insuplcAdmdvs; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java new file mode 100644 index 00000000..e49d91c2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2301OutputResult.java @@ -0,0 +1,124 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class Yb2301OutputResult { + + /** + * 费用明细流水号 + */ + @JsonProperty("feedetl_sn") + private String feedetlSn; + + /** + * 明细项目费用总额 + */ + @JsonProperty("det_item_fee_sumamt") + private BigDecimal detItemFeeSumamt; + + /** + * 数量 + */ + @JsonProperty("cnt") + private BigDecimal cnt; + + /** + * 单价 + */ + @JsonProperty("pric") + private BigDecimal pric; + + /** + * 定价上限金额 + */ + @JsonProperty("pric_uplmt_amt") + private BigDecimal pricUplmtAmt; + + /** + * 自付比例 + */ + @JsonProperty("selfpay_prop") + private BigDecimal selfpayProp; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价金额 + */ + @JsonProperty("overlmt_amt") + private BigDecimal overlmtAmt; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 收费项目等级 + */ + @JsonProperty("chrgitm_lv") + private String chrgitmLv; + + /** + * 医疗收费项目类别 + */ + @JsonProperty("med_chrgitm_type") + private String medChrgitmType; + + /** + * 基本药物标志 + */ + @JsonProperty("bas_medn_flag") + private String basMednFlag; + + /** + * 医保谈判药品标志 + */ + @JsonProperty("hi_nego_drug_flag") + private String hiNegoDrugFlag; + + /** + * 儿童用药标志 + */ + @JsonProperty("chld_medc_flag") + private String chldMedcFlag; + + /** + * 目录特项标志 + */ + @JsonProperty("list_sp_item_flag") + private String listSpItemFlag; + + /** + * 限制使用标志 + */ + @JsonProperty("lmt_used_flag") + private String lmtUsedFlag; + + /** + * 直报标志 + */ + @JsonProperty("drt_reim_flag") + private String drtReimFlag; + + /** + * 备注 + */ + @JsonProperty("memo") + private String memo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java new file mode 100644 index 00000000..5884763b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2302InputInpatient.java @@ -0,0 +1,35 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class Yb2302InputInpatient { + /** + * 费用明细流水号 + * 单次就诊内唯一 + */ + @JsonProperty("feedetl_sn") + private String feedetlSn; + + /** + * 人员编号 + * 退单时传入被退单的费用明细流水号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 字段扩展 + */ + @JsonProperty("exp_content") + private String expContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java new file mode 100644 index 00000000..4233bc37 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303InputInpatient.java @@ -0,0 +1,123 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +@Accessors(chain = true) +public class Yb2303InputInpatient { + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 就诊凭证类型 + */ + @JsonProperty("mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 就诊凭证编号 + * 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 + */ + @JsonProperty("mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 个人结算方式 + */ + @JsonProperty("psn_setlway") + private String psnSetlway; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 个人账户使用标志 + */ + @JsonProperty("acct_used_flag") + private String acctUsedFlag; + + /** + * 险种类型 + */ + @JsonProperty("insutype") + private String insutype; + + /** + * 参保地医保区划 + */ + @JsonProperty("insuplc_admdvs") + private String insuplcAdmdvs; + + /** + * 就医地医保区划 + */ + @JsonProperty("mdtrtarea_admvs") + private String mdtrtareaAdmvs; + + /** + * 发票号 + */ + @JsonProperty("invono") + private String invono; + + /** + * 中途结算标志 + */ + @JsonProperty("mid_setl_flag") + private String midSetlFlag; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价金额 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 出院时间 + * 格式:yyyy-MM-dd + */ + @JsonProperty("dscgTime") + private Date dscgTime; + + /** + * 字段扩展 + */ + @JsonProperty("exp_content") + private String expContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java new file mode 100644 index 00000000..961811c7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2303OutputSetInfo.java @@ -0,0 +1,292 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class Yb2303OutputSetInfo { + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 人员姓名 + */ + @JsonProperty("psn_name") + private String psnName; + + /** + * 人员证件类型 + */ + @JsonProperty("psn_cert_type") + private String psnCertType; + + /** + * 证件号码 + */ + @JsonProperty("certno") + private String certno; + + /** + * 性别 + */ + @JsonProperty("gend") + private String gend; + + /** + * 民族 + */ + @JsonProperty("naty") + private String naty; + + /** + * 出生日期 格式:yyyy-MM-dd + */ + @JsonProperty("brdy") + private Date brdy; + + /** + * 年龄 + */ + @JsonProperty("age") + private BigDecimal age; + + /** + * 险种类型 + */ + @JsonProperty("insutype") + private String insutype; + + /** + * 人员类别 + */ + @JsonProperty("psn_type") + private String psnType; + + /** + * 公务员标志 + */ + @JsonProperty("cvlserv_flag") + private String cvlservFlag; + + /** + * 结算时间 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("setl_time") + private Date setlTime; + + /** + * 就诊凭证类型 + */ + @JsonProperty("mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 医疗类别 + */ + @JsonProperty("med_type") + private String medType; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价自费费用 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 实际支付起付线 + */ + @JsonProperty("act_pay_dedc") + private BigDecimal actPayDedc; + + /** + * 基本医疗保险统筹基金支出 + */ + @JsonProperty("hifp_pay") + private BigDecimal hifpPay; + + /** + * 基本医疗保险统筹基金支付比例 + */ + @JsonProperty("pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + /** + * 公务员医疗补助资金支出 + */ + @JsonProperty("cvlserv_pay") + private BigDecimal cvlservPay; + + /** + * 企业补充医疗保险基金支出 + */ + @JsonProperty("hifes_pay") + private BigDecimal hifesPay; + + /** + * 居民大病保险资金支出 + */ + @JsonProperty("hifmi_pay") + private BigDecimal hifmiPay; + + /** + * 职工大额医疗费用补助基金支出 + */ + @JsonProperty("hifob_pay") + private BigDecimal hifobPay; + + /** + * 医疗救助基金支出 + */ + @JsonProperty("maf_pay") + private BigDecimal mafPay; + + /** + * 其他支出 + */ + @JsonProperty("oth_pay") + private BigDecimal othPay; + + /** + * 基金支付总额 + */ + @JsonProperty("fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + /** + * 个人负担总金额 + */ + @JsonProperty("psn_part_amt") + private BigDecimal psnPartAmt; + + /** + * 个人账户支出 + */ + @JsonProperty("acct_pay") + private BigDecimal acctPay; + + /** + * 个人现金支出 + */ + @JsonProperty("psn_cash_pay") + private BigDecimal psnCashPay; + + /** + * 医院负担金额 + */ + @JsonProperty("hosp_part_amt") + private BigDecimal hospPartAmt; + + /** + * 余额 + */ + @JsonProperty("balc") + private BigDecimal balc; + + /** + * 个人账户共济支付金额 + */ + @JsonProperty("acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + /** + * 医药机构结算ID 存放发送方报文ID + */ + @JsonProperty("medins_setl_id") + private String medinsSetlId; + + /** + * 清算经办机构 + */ + @JsonProperty("clr_optins") + private String clrOptins; + + /** + * 清算方式 + */ + @JsonProperty("clr_way") + private String clrWay; + + /** + * 清算类别 + */ + @JsonProperty("clr_type") + private String clrType; + + /** + * 伤残人员医疗保障基金支出 1.5.4新增 + */ + @JsonProperty("hifdm_pay") + private BigDecimal hifdmPay; + + /** + * 基金支付详情 + */ + @JSONField(name = "setldetail") + private List setldetail; + + public Yb2303OutputSetInfo() { + this.medfeeSumamt = BigDecimal.ZERO; + this.fulamtOwnpayAmt = BigDecimal.ZERO; + this.overlmtSelfpay = BigDecimal.ZERO; + this.preselfpayAmt = BigDecimal.ZERO; + this.inscpScpAmt = BigDecimal.ZERO; + this.actPayDedc = BigDecimal.ZERO; + this.hifpPay = BigDecimal.ZERO; + this.poolPropSelfpay = BigDecimal.ZERO; + this.cvlservPay = BigDecimal.ZERO; + this.hifesPay = BigDecimal.ZERO; + this.hifmiPay = BigDecimal.ZERO; + this.hifobPay = BigDecimal.ZERO; + this.mafPay = BigDecimal.ZERO; + this.othPay = BigDecimal.ZERO; + this.fundPaySumamt = BigDecimal.ZERO; + this.psnPartAmt = BigDecimal.ZERO; + this.acctPay = BigDecimal.ZERO; + this.psnCashPay = BigDecimal.ZERO; + this.hospPartAmt = BigDecimal.ZERO; + this.balc = BigDecimal.ZERO; + this.acctMulaidPay = BigDecimal.ZERO; + this.hifdmPay = BigDecimal.ZERO; + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java new file mode 100644 index 00000000..2a4bafd3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputExpContent.java @@ -0,0 +1,31 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.math.BigDecimal; + +public class Yb2304InputExpContent { + /** + * 实际就医区划 + */ + @JsonProperty("med_admdvs") + private BigDecimal medAdmdvs; + + /** + * 外报就医医院编号 + */ + @JsonProperty("med_hosp_no") + private BigDecimal medHospNo; + + /** + * 外报就医医院名称 + */ + @JsonProperty("med_hosp_name") + private BigDecimal medHospName; + + /** + * 外报类型 + */ + @JsonProperty("out_submit_type") + private String outSubmitType; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java new file mode 100644 index 00000000..2dc87b6d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304InputInpatient.java @@ -0,0 +1,115 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +@Data +@Accessors(chain = true) +public class Yb2304InputInpatient { + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 就诊凭证类型 + */ + @JsonProperty("mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 就诊凭证编号 + * 就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号 + */ + @JsonProperty("mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 个人结算方式 + */ + @JsonProperty("psn_setlway") + private String psnSetlway; + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 险种类型 + */ + @JsonProperty("insutype") + private String insutype; + + /** + * 个人账户使用标志 + */ + @JsonProperty("acct_used_flag") + private String acctUsedFlag; + + /** + * 参保地医保区划 + */ + @JsonProperty("insuplc_admdvs") + private String insuplcAdmdvs; + + /** + * 就医地医保区划 + */ + @JsonProperty("mdtrtarea_admvs") + private String mdtrtareaAdmvs; + + /** + * 发票号 + */ + @JsonProperty("invono") + private String invono; + + /** + * 中途结算标志 + */ + @JsonProperty("mid_setl_flag") + private String midSetlFlag; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价金额 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 字段扩展 + */ + @JsonProperty("exp_content") + private String expContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java new file mode 100644 index 00000000..de231002 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2304OutputSetlInfo.java @@ -0,0 +1,279 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.math.BigDecimal; +import java.util.Date; + +public class Yb2304OutputSetlInfo { + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 结算ID + */ + @JsonProperty("setl_id") + private String setlId; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 人员姓名 + */ + @JsonProperty("psn_name") + private String psnName; + + /** + * 人员证件类型 + */ + @JsonProperty("psn_cert_type") + private String psnCertType; + + /** + * 证件号码 + */ + @JsonProperty("certno") + private String certno; + + /** + * 性别 + */ + @JsonProperty("gend") + private String gend; + + /** + * 民族 + */ + @JsonProperty("naty") + private String naty; + + /** + * 出生日期 + * 格式:yyyy-MM-dd + */ + @JsonProperty("brdy") + private Date brdy; + + /** + * 年龄 + */ + @JsonProperty("age") + private BigDecimal age; + + /** + * 险种类型 + */ + @JsonProperty("insutype") + private String insutype; + + /** + * 人员类别 + */ + @JsonProperty("psn_type") + private String psnType; + + /** + * 公务员标志 + */ + @JsonProperty("cvlserv_flag") + private String cvlservFlag; + + /** + * 结算时间 + * 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("setl_time") + private Date setlTime; + + /** + * 就诊凭证类型 + */ + @JsonProperty("mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 医疗类别 + */ + @JsonProperty("med_type") + private String medType; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价自费费用 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 实际支付起付线 + */ + @JsonProperty("act_pay_dedc") + private BigDecimal actPayDedc; + + /** + * 基本医疗保险统筹基金支出 + */ + @JsonProperty("hifp_pay") + private BigDecimal hifpPay; + + /** + * 基本医疗保险统筹基金支付比例 + */ + @JsonProperty("pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + /** + * 公务员医疗补助资金支出 + */ + @JsonProperty("cvlserv_pay") + private BigDecimal cvlservPay; + + /** + * 企业补充医疗保险基金支出 + */ + @JsonProperty("hifes_pay") + private BigDecimal hifesPay; + + /** + * 居民大病保险资金支出 + */ + @JsonProperty("hifmi_pay") + private BigDecimal hifmiPay; + + /** + * 职工大额医疗费用补助基金支出 + */ + @JsonProperty("hifob_pay") + private BigDecimal hifobPay; + + /** + * 医疗救助基金支出 + */ + @JsonProperty("maf_pay") + private BigDecimal mafPay; + + /** + * 医院负担金额(原始) + */ + @JsonProperty("hosp_part_amt_old") + private BigDecimal hospPartAmtOld; + + /** + * 其他支出 + */ + @JsonProperty("oth_pay") + private BigDecimal othPay; + + /** + * 基金支付总额 + */ + @JsonProperty("fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + /** + * 个人负担总金额 + */ + @JsonProperty("psn_part_amt") + private BigDecimal psnPartAmt; + + /** + * 个人账户支出 + */ + @JsonProperty("acct_pay") + private BigDecimal acctPay; + + /** + * 个人现金支出 + */ + @JsonProperty("psn_cash_pay") + private BigDecimal psnCashPay; + + /** + * 余额 + */ + @JsonProperty("balc") + private BigDecimal balc; + + /** + * 个人账户共济支付金额 + */ + @JsonProperty("acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + /** + * 医药机构结算ID + * 存放发送方报文ID + */ + @JsonProperty("medins_setl_id") + private String medinsSetlId; + + /** + * 清算经办机构 + */ + @JsonProperty("clr_optins") + private String clrOptins; + + /** + * 清算方式 + */ + @JsonProperty("clr_way") + private String clrWay; + + /** + * 清算类别 + */ + @JsonProperty("clr_type") + private String clrType; + + /** + * 字段扩展 + * 1.5.4新增 + */ + @JsonProperty("exp_content") + private String expContent; + + /** + * 伤残人员医疗保障基金支出 + * 1.5.4新增 + */ + @JsonProperty("hifdm_pay") + private BigDecimal hifdmPay; + + /** + * 医院负担金额 + * 1.5.4新增 + */ + @JsonProperty("hosp_part_amt") + private BigDecimal hospPartAmt; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java new file mode 100644 index 00000000..add6df8f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305InputInpatient.java @@ -0,0 +1,35 @@ +package com.openhis.yb.dto; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + +@Data +@Accessors(chain = true) +public class Yb2305InputInpatient { + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 结算ID + */ + @JsonProperty("setl_Id") + private String setlId; + + /** + * 人员编号 + */ + @JsonProperty("psn_no") + private String psnNo; + + /** + * 字段扩展 + */ + @JsonProperty("exp_content") + private String expContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java new file mode 100644 index 00000000..9d3f9c59 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2305OutputSetlInfo.java @@ -0,0 +1,224 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class Yb2305OutputSetlInfo { + + /** + * 就诊ID + */ + @JsonProperty("mdtrt_id") + private String mdtrtId; + + /** + * 结算ID + */ + @JsonProperty("setl_id") + private String setlId; + + /** + * 清算经办机构 + */ + @JsonProperty("clr_optins") + private String clrOptins; + + /** + * 结算时间 格式:yyyy-MM-dd HH:mm:ss + */ + @JsonProperty("setl_time") + private Date setlTime; + + /** + * 医疗费总额 + */ + @JsonProperty("medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 全自费金额 + */ + @JsonProperty("fulamt_ownpay_amt") + private BigDecimal fulamtOwnpayAmt; + + /** + * 超限价自费费用 + */ + @JsonProperty("overlmt_selfpay") + private BigDecimal overlmtSelfpay; + + /** + * 先行自付金额 + */ + @JsonProperty("preselfpay_amt") + private BigDecimal preselfpayAmt; + + /** + * 符合政策范围金额 + */ + @JsonProperty("inscp_scp_amt") + private BigDecimal inscpScpAmt; + + /** + * 实际支付起付线 + */ + @JsonProperty("act_pay_dedc") + private BigDecimal actPayDedc; + + /** + * 基本医疗保险统筹基金支出 + */ + @JsonProperty("hifp_pay") + private BigDecimal hifpPay; + + /** + * 基本医疗保险统筹基金支付比例 + */ + @JsonProperty("pool_prop_selfpay") + private BigDecimal poolPropSelfpay; + + /** + * 公务员医疗补助资金支出 + */ + @JsonProperty("cvlserv_pay") + private BigDecimal cvlservPay; + + /** + * 企业补充医疗保险基金支出 + */ + @JsonProperty("hifes_pay") + private BigDecimal hifesPay; + + /** + * 居民大病保险资金支出 + */ + @JsonProperty("hifmi_pay") + private BigDecimal hifmiPay; + + /** + * 职工大额医疗费用补助基金支出 + */ + @JsonProperty("hifob_pay") + private BigDecimal hifobPay; + + /** + * 医疗救助基金支出 + */ + @JsonProperty("maf_pay") + private BigDecimal mafPay; + + /** + * 其他支出 + */ + @JsonProperty("oth_pay") + private BigDecimal othPay; + + /** + * 基金支付总额 + */ + @JsonProperty("fund_pay_sumamt") + private BigDecimal fundPaySumamt; + + /** + * 个人负担总金额 + */ + @JsonProperty("psn_part_amt") + private BigDecimal psnPartAmt; + + /** + * 个人账户支出 + */ + @JsonProperty("acct_pay") + private BigDecimal acctPay; + + /** + * 个人现金支出 + */ + @JsonProperty("psn_cash_pay") + private BigDecimal psnCashPay; + + /** + * 医院负担金额 + */ + @JsonProperty("hosp_part_amt") + private BigDecimal hospPartAmt; + + /** + * 余额 + */ + @JsonProperty("balc") + private BigDecimal balc; + + /** + * 个人账户共济支付金额 + */ + @JsonProperty("acct_mulaid_pay") + private BigDecimal acctMulaidPay; + + /** + * 医药机构结算ID 存放发送方报文ID + */ + @JsonProperty("medins_setl_id") + private String medinsSetlId; + + /** + * 伤残人员医疗保障基金支出 + */ + @JsonProperty("hifdm_pay") + private BigDecimal hifdmPay; + + /** + * 人员参保关系ID + */ + @JsonProperty("psn_insu_rlts_id") + private String psnInsuRltsId; + + /** + * 参保机构行政区划 + */ + @JsonProperty("insu_admdvs") + private String insuAdmdvs; + + /** + * 开始日期 + */ + @JsonProperty("begndate") + private Date begndate; + + /** + * 结算日期 + */ + @JsonProperty("enddate") + private Date enddate; + + /** + * 就诊凭证编号 + */ + @JsonProperty("mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 结算类别 + */ + @JsonProperty("setl_type") + private String setlType; + + /** + * 本次起付线 + */ + @JsonProperty("crt_dedc") + private BigDecimal crtDedc; + + /** + * 发票号 + */ + @JsonProperty("invono") + private String invono; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java new file mode 100644 index 00000000..77f617c3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientDiseInfo.java @@ -0,0 +1,82 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import java.util.Date; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +public class Yb2401InputInpatientDiseInfo { + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 诊断类别 + */ + @JSONField(name = "diag_type") + private String diagType; + + /** + * 主诊断标志 + */ + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + + /** + * 诊断排序号 + */ + @JSONField(name = "diag_srt_no") + private Integer diagSrtNo; + + /** + * 诊断代码 + */ + @JSONField(name = "diag_code") + private String diagCode; + + /** + * 诊断名称 + */ + @JSONField(name = "diag_name") + private String diagName; + + /** + * 入院病情 + */ + @JSONField(name = "adm_cond") + private String admCond; + + /** + * 诊断科室 + */ + @JSONField(name = "diag_dept") + private String diagDept; + + /** + * 诊断医生编码 + */ + @JSONField(name = "dise_dor_no") + private String diseDorNo; + + /** + * 诊断医生姓名 + */ + @JSONField(name = "dise_dor_name") + private String diseDorName; + + /** + * 诊断时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "diag_time", format = "yyyy-MM-dd HH:mm:ss") + private Date diagTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java new file mode 100644 index 00000000..b5129361 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientMdtrtInfo.java @@ -0,0 +1,239 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import liquibase.pro.packaged.A; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ + +@Data +@Accessors(chain = true) +public class Yb2401InputInpatientMdtrtInfo { + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 险种类型 + */ + @JSONField(name = "insutype") + private String insutype; + + /** + * 联系人姓名 + */ + @JSONField(name = "coner_name") + private String conerName; + + /** + * 联系电话 + */ + @JSONField(name = "tel") + private String tel; + + /** + * 开始时间(入院时间,格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") + private Date begntime; + + /** + * 就诊凭证类型 + */ + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 就诊凭证编号(就诊凭证类型为“01”时填写电子凭证令牌,为“02”时填写身份证号,为“03”时填写社会保障卡卡号) + */ + @JSONField(name = "mdtrt_cert_no") + private String mdtrtCertNo; + + /** + * 医疗类别 + */ + @JSONField(name = "med_type") + private String medType; + + /** + * 住院号(院内就诊流水号) + */ + @JSONField(name = "ipt_no") + private String iptNo; + + /** + * 病历号 + */ + @JSONField(name = "medrcdno") + private String medrcdno; + + /** + * 主治医生编码 + */ + @JSONField(name = "atddr_no") + private String atddrNo; + + /** + * 主诊医师姓名 + */ + @JSONField(name = "chfpdr_name") + private String chfpdrName; + + /** + * 入院诊断描述 + */ + @JSONField(name = "adm_diag_dscr") + private String admDiagDscr; + + /** + * 入院科室编码 + */ + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + /** + * 入院科室名称 + */ + @JSONField(name = "adm_dept_name") + private String admDeptName; + + /** + * 入院床位 + */ + @JSONField(name = "adm_bed") + private String admBed; + + /** + * 住院主诊断代码 + */ + @JSONField(name = "dscg_maindiag_code") + private String dscgMaindiagCode; + + /** + * 住院主诊断名称 + */ + @JSONField(name = "dscg_maindiag_name") + private String dscgMaindiagName; + + /** + * 主要病情描述 + */ + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + + /** + * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) + */ + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 病种名称 + */ + @JSONField(name = "dise_name") + private String diseName; + + /** + * 手术操作代码(日间手术病种时必填) + */ + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 手术操作名称 + */ + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 计划生育服务证号 + */ + @JSONField(name = "fpsc_no") + private String fpscNo; + + /** + * 生育类别 + */ + @JSONField(name = "matn_type") + private String matnType; + + /** + * 计划生育手术类别 + */ + @JSONField(name = "birctrl_type") + private String birctrlType; + + /** + * 晚育标志 + */ + @JSONField(name = "latechb_flag") + private String latechbFlag; + + /** + * 孕周数 + */ + @JSONField(name = "geso_val") + private Integer gesoVal; + + /** + * 胎次 + */ + @JSONField(name = "fetts") + private Integer fetts; + + /** + * 胎儿数 + */ + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + /** + * 早产标志 + */ + @JSONField(name = "pret_flag") + private String pretFlag; + + /** + * 计划生育手术或生育日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") + private Date birctrlMatnDate; + + /** + * 病种类型 + */ + @JSONField(name = "dise_type_code") + private String diseTypeCode; + + /** + * 字段扩展 + */ + @JSONField(name = "exp_content") + private String expContent; + + /** + * 参保地医保区划 + */ + @JSONField(name = "insuplc_admdvs") + private String insuplcAdmdvs; + + /** + * 就医地医保区划 + */ + @JSONField(name = "mdtrtarea_admvs") + private String mdtrtareaAdmvs; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java new file mode 100644 index 00000000..1d6ea7db --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2401InputInpatientTrumContent.java @@ -0,0 +1,38 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.core.common.annotation.DataSource; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2401InputInpatientTrumContent { + /** + * 外伤标识(外伤就医时必填) + */ + @JSONField(name = "trum_flag") + private String trumFlag; + + /** + * 涉及第三方标志(承诺是否涉及第三方,trum_flag外伤标志为“1“时,此项为必填。0 代表不涉及第三方,1代表涉及第三方) + */ + @JSONField(name = "rel_ttp_flag") + private String relTtpFlag; + + /** + * 就诊人群类型 + */ + @JSONField(name = "mdtrt_grp_type") + private String mdtrtGrpType; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java new file mode 100644 index 00000000..4b4a655c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDiseInfo.java @@ -0,0 +1,88 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.core.common.annotation.DataSource; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2402InputInpatientDiseInfo { + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 诊断类别 + */ + @JSONField(name = "diag_type") + private String diagType; + + /** + * 主诊断标志 + */ + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + + /** + * 诊断排序号 + */ + @JSONField(name = "diag_srt_no") + private Integer diagSrtNo; + + /** + * 诊断代码 + */ + @JSONField(name = "diag_code") + private String diagCode; + + /** + * 诊断名称 + */ + @JSONField(name = "diag_name") + private String diagName; + + /** + * 诊断科室 + */ + @JSONField(name = "diag_dept") + private String diagDept; + + /** + * 诊断医生编码 + */ + @JSONField(name = "dise_dor_no") + private String diseDorNo; + + /** + * 诊断医生姓名 + */ + @JSONField(name = "dise_dor_name") + private String diseDorName; + + /** + * 诊断时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "diag_time", format = "yyyy-MM-dd HH:mm:ss") + private Date diagTime; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java new file mode 100644 index 00000000..c937858f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputInpatientDscgInfo.java @@ -0,0 +1,164 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2402InputInpatientDscgInfo { + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 险种类型 + */ + @JSONField(name = "insutype") + private String insutype; + + /** + * 结束时间(出院时间,格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") + private Date endtime; + + /** + * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) + */ + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 病种名称 + */ + @JSONField(name = "dise_name") + private String diseName; + + /** + * 手术操作代码(日间手术病种时必填) + */ + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 手术操作名称 + */ + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 计划生育服务证号 + */ + @JSONField(name = "fpsc_no") + private String fpscNo; + + /** + * 生育类别 + */ + @JSONField(name = "matn_type") + private String matnType; + + /** + * 计划生育手术类别 + */ + @JSONField(name = "birctrl_type") + private String birctrlType; + + /** + * 晚育标志 + */ + @JSONField(name = "latechb_flag") + private String latechbFlag; + + /** + * 孕周数 + */ + @JSONField(name = "esso_val") + private Integer essoVal; + + /** + * 胎次 + */ + @JSONField(name = "fetts") + private Integer fetts; + + /** + * 胎儿数 + */ + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + /** + * 早产标志 + */ + @JSONField(name = "pret_flag") + private String pretFlag; + + /** + * 计划生育手术或生育日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") + private Date birctrlMatnDate; + + /** + * 伴有并发症标志 + */ + @JSONField(name = "cop_flag") + private String copFlag; + + /** + * 出院科室编码 + */ + @JSONField(name = "dscg_dept_codg") + private String dscgDeptCodg; + + /** + * 出院科室名称 + */ + @JSONField(name = "dscg_dept_name") + private String dscgDeptName; + + /** + * 出院床位 + */ + @JSONField(name = "dscg_bed") + private String dscgBed; + + /** + * 离院方式 + */ + @JSONField(name = "dscg_way") + private String dscgWay; + + /** + * 死亡日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "die_date", format = "yyyy-MM-dd") + private Date dieDate; + + /** + * 字段扩展 + */ + @JSONField(name = "exp_content") + private String expContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java new file mode 100644 index 00000000..191c91bb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2402InputParam.java @@ -0,0 +1,26 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import lombok.Data; + +import java.util.List; + +/** + * 2402接口封装类 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +public class Yb2402InputParam { + /** + * 出院诊断 + */ + List yb2402InputInpatientDiseInfo; + /** + * 出院信息 + */ + Yb2402InputInpatientDscgInfo yb2402InputInpatientDscgInfo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java new file mode 100644 index 00000000..f15225a1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputAdmInfo.java @@ -0,0 +1,226 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2403InputAdmInfo { + + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 联系人姓名 + */ + @JSONField(name = "coner_name") + private String conerName; + + /** + * 联系电话 + */ + @JSONField(name = "tel") + private String tel; + + /** + * 开始时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "begntime", format = "yyyy-MM-dd HH:mm:ss") + private Date begntime; + + /** + * 结束时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss") + private Date endtime; + + /** + * 就诊凭证类型 + */ + @JSONField(name = "mdtrt_cert_type") + private String mdtrtCertType; + + /** + * 医疗类别 + */ + @JSONField(name = "med_type") + private String medType; + + /** + * 住院/门诊号 + */ + @JSONField(name = "ipt_otp_no") + private String iptOtpNo; + + /** + * 病历号 + */ + @JSONField(name = "medrcdno") + private String medrcdno; + + /** + * 主治医生编码 + */ + @JSONField(name = "atddr_no") + private String atddrNo; + + /** + * 主诊医师姓名 + */ + @JSONField(name = "chfpdr_name") + private String chfpdrName; + + /** + * 入院诊断描述 + */ + @JSONField(name = "adm_diag_dscr") + private String admDiagDscr; + + /** + * 入院科室编码 + */ + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + /** + * 入院科室名称 + */ + @JSONField(name = "adm_dept_name") + private String admDeptName; + + /** + * 入院床位 + */ + @JSONField(name = "adm_bed") + private String admBed; + + /** + * 住院主诊断代码 + */ + @JSONField(name = "dscg_maindiag_code") + private String dscgMaindiagCode; + + /** + * 住院主诊断名称 + */ + @JSONField(name = "dscg_maindiag_name") + private String dscgMaindiagName; + + /** + * 主要病情描述 + */ + @JSONField(name = "main_cond_dscr") + private String mainCondDscr; + + /** + * 病种编码(按照标准编码填写:按病种结算病种目录代码(bydise_setl_list_code)、日间手术病种目录代码(daysrg_dise_list_code)) + */ + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 病种名称 + */ + @JSONField(name = "dise_name") + private String diseName; + + /** + * 手术操作代码(日间手术病种时必填) + */ + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 手术操作名称 + */ + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 计划生育服务证号 + */ + @JSONField(name = "fpsc_no") + private String fpscNo; + + /** + * 生育类别 + */ + @JSONField(name = "matn_type") + private String matnType; + + /** + * 计划生育手术类别 + */ + @JSONField(name = "birctrl_type") + private String birctrlType; + + /** + * 晚育标志 + */ + @JSONField(name = "latechb_flag") + private String latechbFlag; + + /** + * 孕周数 + */ + @JSONField(name = "esso_val") + private Integer essoVal; + + /** + * 胎次 + */ + @JSONField(name = "fetts") + private Integer fetts; + + /** + * 胎儿数 + */ + @JSONField(name = "fetus_cnt") + private Integer fetusCnt; + + /** + * 早产标志 + */ + @JSONField(name = "pret_flag") + private String pretFlag; + + /** + * 计划生育手术或生育日期(格式:yyyy-MM-dd) + */ + @JSONField(name = "birctrl_matn_date", format = "yyyy-MM-dd") + private Date birctrlMatnDate; + + /** + * 病种编号 + */ + @JSONField(name = "dise_type_code") + private String diseTypeCode; + + /** + * 字段扩展 + */ + @JSONField(name = "exp_content") + private String expContent; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java new file mode 100644 index 00000000..527eedda --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputDiseInfo.java @@ -0,0 +1,92 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2403InputDiseInfo { + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 诊断类别 + */ + @JSONField(name = "diag_type") + private String diagType; + + /** + * 主诊断标志 + */ + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + + /** + * 诊断排序号 + */ + @JSONField(name = "diag_srt_no") + private Integer diagSrtNo; + + /** + * 诊断代码 + */ + @JSONField(name = "diag_code") + private String diagCode; + + /** + * 诊断名称 + */ + @JSONField(name = "diag_name") + private String diagName; + + /** + * 入院病情 + */ + @JSONField(name = "adm_cond") + private String admCond; + + /** + * 诊断科室 + */ + @JSONField(name = "diag_dept") + private String diagDept; + + /** + * 诊断医生编码 + */ + @JSONField(name = "dise_dor_no") + private String diseDorNo; + + /** + * 诊断医生姓名 + */ + @JSONField(name = "dise_dor_name") + private String diseDorName; + + /** + * 诊断时间(格式:yyyy-MM-dd HH:mm:ss) + */ + @JSONField(name = "diag_time", format = "yyyy-MM-dd HH:mm:ss") + private Date diagTime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java new file mode 100644 index 00000000..ca99e2e7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputMdtrtGrpContent.java @@ -0,0 +1,20 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +public class Yb2403InputMdtrtGrpContent { + + @JSONField(name = "mdtrt_grp_type") + private String mdtrtGrpType; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java new file mode 100644 index 00000000..acafa1e9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputParam.java @@ -0,0 +1,30 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.List; + +import lombok.Data; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Data +public class Yb2403InputParam { + /** + * + */ + Yb2403InputAdmInfo yb2403InputAdmInfo; + /** + * + */ + List yb2403InputDiseInfo; + /** + * + */ + Yb2403InputMdtrtGrpContent yb2403InputMdtrtGrpContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java new file mode 100644 index 00000000..99847a6a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2403InputTrumContent.java @@ -0,0 +1,30 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2403InputTrumContent { + /** + * 外伤标识(外伤就医时必填) + */ + @JSONField(name = "trum_flag") + private String trumFlag; + + /** + * 涉及第三方标志(承诺是否涉及第三方,trum_flag外伤标志为“1“时,此项为必填。0 代表不涉及第三方,1代表涉及第三方) + */ + @JSONField(name = "rel_ttp_flag") + private String relTtpFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java new file mode 100644 index 00000000..b018a616 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2404InputInpatient.java @@ -0,0 +1,36 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2404InputInpatient { + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 字段扩展 + */ + @JSONField(name = "exp_content") + private String expContent; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java new file mode 100644 index 00000000..fa78ab38 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb2405InputInpatient.java @@ -0,0 +1,39 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-29 + */ +@Data +@Accessors(chain = true) +public class Yb2405InputInpatient { + + /** + * 就诊ID + */ + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 字段扩展 + */ + @JSONField(name = "exp_content") + private String expContent; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java new file mode 100644 index 00000000..f0ccf5d3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterDiagnoseInfo.java @@ -0,0 +1,52 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】就诊诊断信息 + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101AdapterEncounterDiagnoseInfo { + + /** + * 诊断标识:诊断记录唯一标识 + */ + private String diseId; + + /** + * 住院患者疾病诊断类型代码 + */ + private String iptDiseTypeCode; + + /** + * 主诊断标志:参考字典表 + */ + private String maindiseFlag; + + /** + * 诊断排序号:例如:1,2,3… + */ + private String diasSrtNo; + + /** + * 诊断(疾病)编码 + */ + private String diseCodg; + + /** + * 诊断(疾病)名称 + */ + private String diseName; + + /** + * 诊断日期 + */ + private Date diseDate; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java new file mode 100644 index 00000000..1df006df --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterEncounterPatientInfo.java @@ -0,0 +1,128 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】就诊患者信息 + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101AdapterEncounterPatientInfo { + + /** + * 参保人标识:参保人唯一ID + */ + private String patnId; + + /** + * 姓名 + */ + private String patnName; + + /** + * 性别 + */ + private String gend; + + /** + * 出生日期 + */ + private Date brdy; + + /** + * 统筹区编码:参保人所属统筹区 + */ + private String poolarea; + + /** + * 就诊标识:就诊记录唯一ID + */ + private String mdtrtId; + + /** + * 合同ID + */ + private Long contractId; + + /** + * 医疗服务机构标识:定点医疗机构ID + */ + private String medinsId; + + /** + * 医疗机构名称 + */ + private String medinsName; + + /** + * 医疗机构行政区划编码 + */ + private String medinsAdmdvs; + + /** + * 入院日期 + */ + private Date admDate; + + /** + * 出院日期 + */ + private Date dscgDate; + + /** + * 医师标识:医生唯一ID + */ + private String drCodg; + + /** + * 入院科室标识:科室唯一ID + */ + private String admDeptCodg; + + /** + * 入院科室名称 + */ + private String admDeptName; + + /** + * 出院科室标识:科室唯一ID + */ + private String dscgDeptCodg; + + /** + * 出院科室名称 + */ + private String dscgDeptName; + + /** + * 医疗类别:参考字典表 + */ + private String medType; + + /** + * 自费金额 + */ + private BigDecimal ownpayAmt; + + /** + * 自付金额 + */ + private BigDecimal selfpayAmt; + + /** + * 结算总次数 + */ + private Integer setlTotlnum; + + /** + * 险种:参考字典表 + */ + private String insutype; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java new file mode 100644 index 00000000..d8fbe06e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101AdapterOrderInfo.java @@ -0,0 +1,118 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】处方(医嘱)信息 + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101AdapterOrderInfo { + + /** + * 处方(医嘱)标识:处方(医嘱)记录唯一ID + */ + private String rxId; + + /** + * 处方号 + */ + private String rxno; + + /** + * 组编号 + */ + private String grpno; + + /** + * 治疗类型 + */ + private Integer therapyEnum; + + /** + * 目录类别:参考字典表 + */ + private String ybType; + + /** + * 医保目录代码:国家统一标准编码 + */ + private String hilistCode; + + /** + * 医保目录名称:国家统一标准名称 + */ + private String hilistName; + + /** + * 医保目录(药品)剂型:国家统一标准药品剂型 + */ + private String hilistDosform; + + /** + * 医保目录等级 + */ + private String hilistLv; + + /** + * 数量 + */ + private Integer cnt; + + /** + * 单价 + */ + private BigDecimal pric; + + /** + * 总费用 + */ + private BigDecimal sumamt; + + /** + * 规格:例如:0.25g×12片/盒 + */ + private String spec; + + /** + * 数量单位:例如:盒 + */ + private String specUnt; + + /** + * 医嘱开始日期:格式:yyyy-MM-dd HH:mm:ss + */ + private Date drordBegnDate; + + /** + * 下达医嘱的科室标识 + */ + private String drordDeptCodg; + + /** + * 下达医嘱科室名称 + */ + private String drordDeptName; + + /** + * 开处方(医嘱)医生标识 + */ + private String drordDrCodg; + + /** + * 开处方(医嘱)医生姓名 + */ + private String drordDrName; + + /** + * 开处方(医嘱)医职称:参考字典表 + */ + private String drordDrProfttl; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java new file mode 100644 index 00000000..e1a0bcf5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputData.java @@ -0,0 +1,58 @@ +package com.openhis.yb.dto; + +import java.util.List; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输入-规则分析信息(节点标识:data) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101InputData { + + /** + * 系统编码:调用方系统简码标识 + */ + @NotBlank + @Length(max = 10) + @JSONField(name = "syscode") + private String syscode; + + /** + * 参保人信息 + */ + @NotEmpty + @JSONField(name = "patient_dtos") + private List patientDtos; + + /** + * 规则标识集合 + */ + @JSONField(name = "rule_ids") + private List ruleIds; + + /** + * 任务ID:每次请求的唯一标识 + */ + @JSONField(name = "task_id") + private String taskId; + + /** + * 触发场景:此值与ruleIds指定其一即可,请优先指定此值 + */ + @Length(max = 3) + @JSONField(name = "trig_scen") + private String trigScen; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java new file mode 100644 index 00000000..a8153257 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiDiagnoseDto.java @@ -0,0 +1,81 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输入-诊断信息(节点标识:fsi_diagnose_dtos) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101InputFsiDiagnoseDto { + + /** + * 诊断标识:诊断记录唯一标识 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "dise_id") + private String diseId; + + /** + * 出入诊断类别:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "inout_dise_type") + private String inoutDiseType; + + /** + * 主诊断标志:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "maindise_flag") + private String maindiseFlag; + + /** + * 诊断排序号:例如:1,2,3… + */ + @NotBlank + @Length(max = 2) + @JSONField(name = "dias_srt_no") + private String diasSrtNo; + + /** + * 诊断(疾病)编码 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "dise_codg") + private String diseCodg; + + /** + * 诊断(疾病)名称 + */ + @NotBlank + @Length(max = 200) + @JSONField(name = "dise_name") + private String diseName; + + /** + * 诊断日期:格式:yyyy-MM-dd HH:mm:ss + */ + @NotNull + @JSONField(name = "dise_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date diseDate; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java new file mode 100644 index 00000000..7cb2c7d7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiEncounterDto.java @@ -0,0 +1,283 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输入-就诊信息(节点标识:fsi_encounter_dtos) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101InputFsiEncounterDto { + + /** + * 就诊标识:就诊记录唯一ID + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 医疗服务机构标识:定点医疗机构ID + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "medins_id") + private String medinsId; + + /** + * 医疗机构名称 + */ + @NotBlank + @Length(max = 200) + @JSONField(name = "medins_name") + private String medinsName; + + /** + * 医疗机构行政区划编码 + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "medins_admdvs") + private String medinsAdmdvs; + + /** + * 医疗服务机构类型:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "medins_type") + private String medinsType; + + /** + * 医疗机构等级:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "medins_lv") + private String medinsLv; + + /** + * 病区标识 + */ + @Length(max = 20) + @JSONField(name = "wardarea_codg") + private String wardareaCodg; + + /** + * 病房号 + */ + @Length(max = 20) + @JSONField(name = "wardno") + private String wardno; + + /** + * 病床号 + */ + @Length(max = 20) + @JSONField(name = "bedno") + private String bedno; + + /** + * 入院日期 + */ + @NotNull + @JSONField(name = "adm_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date admDate; + + /** + * 出院日期 + */ + @NotNull + @JSONField(name = "dscg_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date dscgDate; + + /** + * 主诊断编码:例如:I63.9 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "dscg_main_dise_codg") + private String dscgMainDiseCodg; + + /** + * 主诊断名称:例如:脑梗塞 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "dscg_main_dise_name") + private String dscgMainDiseName; + + /** + * 诊断信息集合 + */ + @NotEmpty + @JSONField(name = "fsi_diagnose_dtos") + private List fsiDiagnoseDtos; + + /** + * 医师标识:医生唯一ID + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "dr_codg") + private String drCodg; + + /** + * 入院科室标识:科室唯一ID + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + /** + * 入院科室名称 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "adm_dept_name") + private String admDeptName; + + /** + * 出院科室标识:科室唯一ID + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "dscg_dept_codg") + private String dscgDeptCodg; + + /** + * 出院科室名称 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "dscg_dept_name") + private String dscgDeptName; + + /** + * 就诊类型:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "med_mdtrt_type") + private String medMdtrtType; + + /** + * 医疗类别:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "med_type") + private String medType; + + /** + * 处方(医嘱)信息集合 + */ + @NotEmpty + @JSONField(name = "fsi_order_dtos") + private List fsiOrderDtos; + + /** + * 生育状态:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "matn_stas") + private String matnStas; + + /** + * 总费用 + */ + @NotNull + @JSONField(name = "medfee_sumamt") + private BigDecimal medfeeSumamt; + + /** + * 自费金额 + */ + @NotNull + @JSONField(name = "ownpay_amt") + private BigDecimal ownpayAmt; + + /** + * 自付金额 + */ + @NotNull + @JSONField(name = "selfpay_amt") + private BigDecimal selfpayAmt; + + /** + * 个人账户支付金额 + */ + @JSONField(name = "acct_payamt") + private BigDecimal acctPayamt; + + /** + * 救助金支付金额 + */ + @JSONField(name = "ma_amt") + private BigDecimal maAmt; + + /** + * 统筹金支付金额 + */ + @JSONField(name = "hifp_payamt") + private BigDecimal hifpPayamt; + + /** + * 结算总次数 + */ + @NotNull + @JSONField(name = "setl_totlnum") + private Integer setlTotlnum; + + /** + * 险种:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "insutype") + private String insutype; + + /** + * 报销标志:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "reim_flag") + private String reimFlag; + + /** + * 异地结算标志:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "out_setl_flag") + private String outSetlFlag; + + /** + * 手术操作集合 + */ + @JSONField(name = "fsi_operation_dtos") + private List fsiOperationDtos; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java new file mode 100644 index 00000000..5a70885b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOperationDto.java @@ -0,0 +1,94 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输入-手术操作信息(节点标识:fsi_operation_dtos) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101InputFsiOperationDto { + + /** + * 手术操作ID + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "setl_list_oprn_id") + private String setlListOprnId; + + /** + * 手术操作代码 + */ + @Length(max = 30) + @JSONField(name = "oprn_code") + private String oprnCode; + + /** + * 手术操作名称 + */ + @Length(max = 500) + @JSONField(name = "oprn_name") + private String oprnName; + + /** + * 主手术操作标志 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "main_oprn_flag") + private String mainOprnFlag; + + /** + * 手术操作日期 + */ + @JSONField(name = "oprn_date") + private Date oprnDate; + + /** + * 麻醉方式 + */ + @Length(max = 30) + @JSONField(name = "anst_way") + private String anstWay; + + /** + * 术者医师姓名 + */ + @Length(max = 50) + @JSONField(name = "oper_dr_name") + private String operDrName; + + /** + * 术者医师代码 + */ + @Length(max = 30) + @JSONField(name = "oper_dr_code") + private String operDrCode; + + /** + * 麻醉医师姓名 + */ + @Length(max = 50) + @JSONField(name = "anst_dr_name") + private String anstDrName; + + /** + * 麻醉医师代码 + */ + @Length(max = 30) + @JSONField(name = "anst_dr_code") + private String anstDrCode; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java new file mode 100644 index 00000000..7c09fca3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputFsiOrderDto.java @@ -0,0 +1,281 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输入-处方(医嘱)信息(节点标识:fsi_order_dtos) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101InputFsiOrderDto { + + /** + * 处方(医嘱)标识:处方(医嘱)记录唯一ID + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "rx_id") + private String rxId; + + /** + * 处方号 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "rxno") + private String rxno; + + /** + * 组编号 + */ + @Length(max = 20) + @JSONField(name = "grpno") + private String grpno; + + /** + * 是否为长期医嘱:[1=是,0=否] + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "long_drord_flag") + private String longDrordFlag; + + /** + * 目录类别:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "hilist_type") + private String hilistType; + + /** + * 收费类别:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "chrg_type") + private String chrgType; + + /** + * 医嘱行为:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "drord_bhvr") + private String drordBhvr; + + /** + * 医保目录代码:国家统一标准编码 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "hilist_code") + private String hilistCode; + + /** + * 医保目录名称:国家统一标准名称 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "hilist_name") + private String hilistName; + + /** + * 医保目录(药品)剂型:国家统一标准药品剂型 + */ + @Length(max = 50) + @JSONField(name = "hilist_dosform") + private String hilistDosform; + + /** + * 医保目录等级 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "hilist_lv") + private String hilistLv; + + /** + * 医保目录价格 + */ + @NotNull + @JSONField(name = "hilist_pric") + private BigDecimal hilistPric; + + /** + * 一级医院目录价格 + */ + @JSONField(name = "lv1_hosp_item_pric") + private BigDecimal lv1HospItemPric; + + /** + * 二级医院目录价格 + */ + @JSONField(name = "lv2_hosp_item_pric") + private BigDecimal lv2HospItemPric; + + /** + * 三级医院目录价格 + */ + @JSONField(name = "lv3_hosp_item_pric") + private BigDecimal lv3HospItemPric; + + /** + * 医保目录备注 + */ + @Length(max = 200) + @JSONField(name = "hilist_memo") + private String hilistMemo; + + /** + * 医院目录代码 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "hosplist_code") + private String hosplistCode; + + /** + * 医院目录名称 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "hosplist_name") + private String hosplistName; + + /** + * 医院目录(药品)剂型 + */ + @Length(max = 20) + @JSONField(name = "hosplist_dosform") + private String hosplistDosform; + + /** + * 数量 + */ + @NotNull + @JSONField(name = "cnt") + private BigDecimal cnt; + + /** + * 单价 + */ + @NotNull + @JSONField(name = "pric") + private BigDecimal pric; + + /** + * 总费用 + */ + @NotNull + @JSONField(name = "sumamt") + private BigDecimal sumamt; + + /** + * 自费金额 + */ + @NotNull + @JSONField(name = "ownpay_amt") + private BigDecimal ownpayAmt; + + /** + * 自付金额 + */ + @NotNull + @JSONField(name = "selfpay_amt") + private BigDecimal selfpayAmt; + + /** + * 规格:例如:0.25g×12片/盒 + */ + @NotBlank + @Length(max = 100) + @JSONField(name = "spec") + private String spec; + + /** + * 数量单位:例如:盒 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "spec_unt") + private String specUnt; + + /** + * 医嘱开始日期:格式:yyyy-MM-dd HH:mm:ss + */ + @NotNull + @JSONField(name = "drord_begn_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date drordBegnDate; + + /** + * 医嘱停止日期:格式:yyyy-MM-dd HH:mm:ss + */ + @JSONField(name = "drord_stop_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private String drordStopDate; + + /** + * 下达医嘱的科室标识 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "drord_dept_codg") + private String drordDeptCodg; + + /** + * 下达医嘱科室名称 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "drord_dept_name") + private String drordDeptName; + + /** + * 开处方(医嘱)医生标识 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "drord_dr_codg") + private String drordDrCodg; + + /** + * 开处方(医嘱)医生姓名 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "drord_dr_name") + private String drordDrName; + + /** + * 开处方(医嘱)医职称:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "drord_dr_profttl") + private String drordDrProfttl; + + /** + * 是否当前处方(医嘱):本次处方(医嘱)标记[1=是,0=否] + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "curr_drord_flag") + private String currDrordFlag; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java new file mode 100644 index 00000000..874075bb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101InputPatientDto.java @@ -0,0 +1,88 @@ +package com.openhis.yb.dto; + +import java.util.Date; +import java.util.List; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输入-参保人信息(节点标识:patient_dtos) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101InputPatientDto { + + /** + * 参保人标识:参保人唯一ID + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "patn_id") + private String patnId; + + /** + * 姓名 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "patn_name") + private String patnName; + + /** + * 性别:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "gend") + private String gend; + + /** + * 出生日期:格式:yyyy-MM-dd + */ + @NotNull + @JSONField(name = "brdy") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date brdy; + + /** + * 统筹区编码:参保人所属统筹区 + */ + @NotBlank + @Length(max = 10) + @JSONField(name = "poolarea") + private String poolarea; + + /** + * 当前就诊标识:本次就诊记录唯一ID + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "curr_mdtrt_id") + private String currMdtrtId; + + /** + * 就诊信息集合 + */ + @NotEmpty + @JSONField(name = "fsi_encounter_dtos") + private List fsiEncounterDtos; + + /** + * 医院信息 + */ + @JSONField(name = "fsi_his_data_dto") + private String fsiHisDataDto; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java new file mode 100644 index 00000000..e24926f3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputJudgeResultDetailDto.java @@ -0,0 +1,69 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输出-违规明细信息(节点标识:judge_result_detail_dtos) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101OutputJudgeResultDetailDto { + + /** + * 违规明细标识:违规明细唯一标识 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "jrd_id") + private String jrdId; + + /** + * 参保人标识 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "patn_id") + private String patnId; + + /** + * 就诊标识 + */ + @Length(max = 50) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 处方(医嘱)标识 + */ + @Length(max = 50) + @JSONField(name = "rx_id") + private String rxId; + + /** + * 违规明细类型:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "vola_item_type") + private String volaItemType; + + /** + * 违规金额 + */ + @NotNull + @JSONField(name = "vola_amt") + private BigDecimal volaAmt; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java new file mode 100644 index 00000000..8a57cc56 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3101OutputResult.java @@ -0,0 +1,124 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.List; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3101】输出-违规信息(节点标识:result) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3101OutputResult { + + /** + * 违规标识:计算结果记录唯一ID + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "jr_id") + private String jrId; + + /** + * 规则ID:例如:R01 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "rule_id") + private String ruleId; + + /** + * 规则名称:例如:配伍禁忌 + */ + @NotBlank + @Length(max = 200) + @JSONField(name = "rule_name") + private String ruleName; + + /** + * 违规内容:例如:患者处方中存在配伍禁忌的药品【A药】、【B药】。 + */ + @NotBlank + @Length(max = 500) + @JSONField(name = "vola_cont") + private String volaCont; + + /** + * 参保人ID:(注意:当是多患者导致违规时,这里是其中一个患者ID) + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "patn_id") + private String patnId; + + /** + * 就诊ID:(注意:当是多就诊导致违规时,这里是其中一个就诊ID) + */ + @Length(max = 50) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 违规明细集合 + */ + @NotEmpty + @JSONField(name = "judge_result_detail_dtos") + private List judgeResultDetailDtos; + + /** + * 违规金额 + */ + @NotNull + @JSONField(name = "vola_amt") + private BigDecimal volaAmt; + + /** + * 违规金额计算状态:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "vola_amt_stas") + private String volaAmtStas; + + /** + * 严重程度:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "sev_deg") + private String sevDeg; + + /** + * 违规依据 + */ + @Length(max = 500) + @JSONField(name = "vola_evid") + private String volaEvid; + + /** + * 违规行为分类:参考字典表 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "vola_bhvr_type") + private String volaBhvrType; + + /** + * 规则ID:例如:R01 + */ + @JSONField(name = "task_id") + private String taskId; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java new file mode 100644 index 00000000..dc559ab2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputData.java @@ -0,0 +1,39 @@ +package com.openhis.yb.dto; + +import java.util.List; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3103】输入(节点标识:data) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3103InputData { + + /** + * 反馈类型:1.事前 2.事中 + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "warn_type") + private String warnType; + + /** + * 处理数据集合 + */ + @NotEmpty + @JSONField(name = "warns") + private List warns; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java new file mode 100644 index 00000000..754ff685 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb3103InputWarn.java @@ -0,0 +1,42 @@ +package com.openhis.yb.dto; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【3103】输入(节点标识:warns) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb3103InputWarn { + + /** + * 违规标识:事前提醒,事中预警出参结果唯一标识 + */ + @NotBlank + @Length(max = 40) + @JSONField(name = "warn_rslt_id") + private String warnRsltId; + + /** + * 处理方式:1.继续执行医嘱 2.返回修改医嘱 + */ + @NotBlank + @JSONField(name = "dspo_way") + private String dspoWay; + + /** + * 处理原因:如果为dspoWay 为1必填 (20250630修改) + */ + @JSONField(name = "dspo_way_rea") + private String dspoWayRea; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java new file mode 100644 index 00000000..58608b9f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AAdapterSettleInfo.java @@ -0,0 +1,67 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】结算清单信息 + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AAdapterSettleInfo { + + /** + * 人员编号 + */ + private String psnNo; + + /** + * 就诊ID + */ + private String mdtrtId; + + /** + * 结算ID + */ + private String setlId; + + /** + * 国籍 + */ + private String ntly; + + /** + * 职业 + */ + private String prfs; + + /** + * 出院科别:参照科室代码(dept) + */ + private String dscgCaty; + + /** + * 票据代码 + */ + private String billCode; + + /** + * 票据号码 + */ + private String billNo; + + /** + * 业务流水号 + */ + private String bizSn; + + /** + * 结算日期 + */ + private Date setlDate; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java new file mode 100644 index 00000000..060f7ee7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputBldinfo.java @@ -0,0 +1,40 @@ +package com.openhis.yb.dto; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】输血信息(节点标识:bldinfo) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AInputBldinfo { + + /** + * 输血品种 + */ + @Length(max = 3) + @JSONField(name = "bld_cat") + private String bldCat; + + /** + * 输血量 + */ + @Length(max = 6) + @JSONField(name = "bld_amt") + private Integer bldAmt; + + /** + * 输血计量单位 + */ + @Length(max = 3) + @JSONField(name = "bld_unt") + private String bldUnt; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java new file mode 100644 index 00000000..4434c8c3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputDiseinfo.java @@ -0,0 +1,61 @@ +package com.openhis.yb.dto; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】住院诊断信息(节点标识:diseinfo) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AInputDiseinfo { + + /** + * 诊断类别 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "diag_type") + private String diagType; + + /** + * 诊断代码 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "diag_code") + private String diagCode; + + /** + * 诊断名称 + */ + @NotBlank + @Length(max = 100) + @JSONField(name = "diag_name") + private String diagName; + + /** + * 入院病情类型 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "adm_cond_type") + private String admCondType; + + /** + * 主诊断标志 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "maindiag_flag") + private String maindiagFlag; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java new file mode 100644 index 00000000..d58ac044 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputIcuinfo.java @@ -0,0 +1,54 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】重症监护信息(节点标识:icuinfo) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AInputIcuinfo { + + /** + * 重症监护病房类型:使用字典ICU_TYPE + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "scs_cutd_ward_type") + private String scsCutdWardType; + + /** + * 手术操作开始时间 + */ + @JSONField(name = "scs_cutd_inpool_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date scsCutdInpoolTime; + + /** + * 手术操作结束时间 + */ + @JSONField(name = "scs_cutd_exit_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date scsCutdExitTime; + + /** + * 重症监护合计时长:格式:天数/小时数/分钟数 例:1/13/24 + */ + @NotBlank + @Length(max = 10) + @JSONField(name = "scs_cutd_sum_dura") + private String scsCutdSumDura; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java new file mode 100644 index 00000000..af61e15e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOprninfo.java @@ -0,0 +1,98 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】手术操作信息(节点标识:oprninfo) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AInputOprninfo { + + /** + * 手术操作类别 + */ + @NotBlank + @Length(max = 3) + @JSONField(name = "oprn_oprt_type") + private String oprnOprtType; + + /** + * 手术操作名称 + */ + @NotBlank + @Length(max = 500) + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 手术操作代码 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + + /** + * 麻醉方式:参照麻醉-方法代码 + */ + @Length(max = 6) + @JSONField(name = "anst_way") + private String anstWay; + + /** + * 术者医师代码 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "oper_dr_code") + private String operDrCode; + + /** + * 麻醉医师代码 + */ + @Length(max = 20) + @JSONField(name = "anst_dr_code") + private String anstDrCode; + + /** + * 手术操作开始时间 + */ + @JSONField(name = "oprn_oprt_begntime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date oprnOprtBegntime; + + /** + * 手术操作结束时间 + */ + @JSONField(name = "oprn_oprt_endtime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date oprnOprtEndtime; + + /** + * 麻醉开始时间 + */ + @JSONField(name = "anst_begntime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date anstBegntime; + + /** + * 麻醉结束时间 + */ + @JSONField(name = "anst_endtime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date anstEndtime; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java new file mode 100644 index 00000000..869353d1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputOpspdiseinfo.java @@ -0,0 +1,53 @@ +package com.openhis.yb.dto; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】门诊慢特病诊断信息(节点标识:opspdiseinfo) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AInputOpspdiseinfo { + + /** + * 诊断名称:与结算时慢特病保持一致 + */ + @NotBlank + @Length(max = 100) + @JSONField(name = "diag_name") + private String diagName; + + /** + * 诊断代码:与结算时慢特病保持一致 + */ + @NotBlank + @Length(max = 20) + @JSONField(name = "diag_code") + private String diagCode; + + /** + * 手术操作名称 + */ + @NotBlank + @Length(max = 500) + @JSONField(name = "oprn_oprt_name") + private String oprnOprtName; + + /** + * 手术操作代码 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "oprn_oprt_code") + private String oprnOprtCode; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java new file mode 100644 index 00000000..8aa147cb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AInputSetlinfo.java @@ -0,0 +1,446 @@ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】结算清单信息(节点标识setlinfo) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AInputSetlinfo { + + /** + * 人员编号 + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 就诊ID + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "mdtrt_id") + private String mdtrtId; + + /** + * 结算ID + */ + @NotBlank + @Length(max = 30) + @JSONField(name = "setl_id") + private String setlId; + + /** + * 医保编号 + */ + @Length(max = 30) + @JSONField(name = "hi_no") + private String hiNo; + + /** + * 病案号 + */ + @Length(max = 30) + @JSONField(name = "medcasno") + private String medcasno; + + /** + * 申报时间:结算清单上报时间,接收时自动填充 + */ + @JSONField(name = "dcla_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date dclaTime; + + /** + * 国籍 + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "ntly") + private String ntly; + + /** + * 职业 + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "prfs") + private String prfs; + + /** + * 现住址 + */ + @Length(max = 200) + @JSONField(name = "curr_addr") + private String currAddr; + + /** + * 单位名称 + */ + @Length(max = 200) + @JSONField(name = "emp_name") + private String empName; + + /** + * 单位地址 + */ + @Length(max = 200) + @JSONField(name = "emp_addr") + private String empAddr; + + /** + * 单位电话 + */ + @Length(max = 50) + @JSONField(name = "emp_tel") + private String empTel; + + /** + * 邮编 + */ + @Length(max = 6) + @JSONField(name = "poscode") + private String poscode; + + /** + * 联系人姓名 + */ + @Length(max = 50) + @JSONField(name = "coner_name") + private String conerName; + + /** + * 与患者关系:当coner_name非空时必填 + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "patn_rlts") + private String patnRlts; + + /** + * 联系人地址:当coner_name非空时必填 + */ + @NotBlank + @Length(max = 200) + @JSONField(name = "coner_addr") + private String conerAddr; + + /** + * 联系人电话:当coner_name非空时必填 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "coner_tel") + private String conerTel; + + /** + * 新生儿入院类型 + */ + @Length(max = 50) + @JSONField(name = "nwb_adm_type") + private String nwbAdmType; + + /** + * 新生儿出生体重:精确到10克(g) + */ + @JSONField(name = "nwb_bir_wt") + private BigDecimal nwbBirWt; + + /** + * 新生儿入院体重:精确到10克(g) + */ + @JSONField(name = "nwb_adm_wt") + private BigDecimal nwbAdmWt; + + /** + * 多新生儿出生体重 + */ + @Length(max = 50) + @JSONField(name = "mul_nwb_bir_wt") + private String mulNwbBirWt; + + /** + * 多新生儿入院体重 + */ + @Length(max = 50) + @JSONField(name = "mul_nwb_adm_wt") + private String mulNwbAdmWt; + + /** + * 门诊慢特病诊断科别 + */ + @Length(max = 50) + @JSONField(name = "opsp_diag_caty") + private String opspDiagCaty; + + /** + * 门诊慢特病就诊日期 + */ + @JSONField(name = "opsp_mdtrt_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date opspMdtrtDate; + + /** + * 入院途径 + */ + @Length(max = 30) + @JSONField(name = "adm_way") + private String admWay; + + /** + * 治疗类别 + */ + @Length(max = 3) + @JSONField(name = "trt_type") + private String trtType; + + /** + * 入院时间 + */ + @JSONField(name = "adm_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date admTime; + + /** + * 转科科别:参照科室代码(dept),如果超过一次以上的转科,用“→”转接表示 + */ + @Length(max = 50) + @JSONField(name = "refldept_dept") + private String refldeptDept; + + /** + * 出院时间 + */ + @JSONField(name = "dscg_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date dscgTime; + + /** + * 出院科别:参照科室代码(dept) + */ + @NotBlank + @Length(max = 6) + @JSONField(name = "dscg_caty") + private String dscgCaty; + + /** + * 门(急)诊诊断(西医诊断) + */ + @Length(max = 200) + @JSONField(name = "otp_wm_dise") + private String otpWmDise; + + /** + * 西医疾病代码 + */ + @Length(max = 20) + @JSONField(name = "wm_dise_code") + private String wmDiseCode; + + /** + * 门(急)诊诊断(中医诊断) + */ + @Length(max = 200) + @JSONField(name = "otp_tcm_dise") + private String otpTcmDise; + + /** + * 中医疾病代码 + */ + @Length(max = 20) + @JSONField(name = "tcm_dise_code") + private String tcmDiseCode; + + /** + * 呼吸机使用时长:格式:天数/小时数/分钟数 例:1/13/24 + */ + @Length(max = 10) + @JSONField(name = "vent_used_dura") + private String ventUsedDura; + + /** + * 颅脑损伤患者入院前昏迷时长:格式:天数/小时数/分钟数 例:1/13/24 + */ + @Length(max = 10) + @JSONField(name = "pwcry_bfadm_coma_dura") + private String pwcryBfadmComaDura; + + /** + * 颅脑损伤患者入院后昏迷时长:格式:天数/小时数/分钟数 例:1/13/24 + */ + @Length(max = 10) + @JSONField(name = "pwcry_afadm_coma_dura") + private String pwcryAfadmComaDura; + + /** + * 特级护理天数 + */ + @JSONField(name = "spga_nurscare_days") + private BigDecimal spgaNurscareDays; + + /** + * 一级护理天数 + */ + @JSONField(name = "lv1_nurscare_days") + private BigDecimal lv1NurscareDays; + + /** + * 二级护理天数 + */ + @JSONField(name = "scd_nurscare_days") + private BigDecimal scdNurscareDays; + + /** + * 三级护理天数 + */ + @JSONField(name = "lv3_nurscare_days") + private Integer lv3NurscareDays; + + /** + * 离院方式 + */ + @Length(max = 3) + @JSONField(name = "dscg_way") + private String dscgWay; + + /** + * 拟接收机构名称:说明当离院方式为“2”时,如果接收患者的医疗机构明确,需要填写转入医疗机构的名称; 当离院方式为“3”时,如果接收患者的社区卫生服务机构明确,需要填写社区卫生服务机构/乡镇卫生院名称 + */ + @Length(max = 100) + @JSONField(name = "acp_medins_name") + private String acpMedinsName; + + /** + * 拟接收机构代码:当离院方式为“2”或“3”时,如果接收患者的医疗机构或社区卫生服务机构明确,需要填写机构对应的医保定点医疗机构代码 + */ + @Length(max = 30) + @JSONField(name = "acp_optins_code") + private String acpOptinsCode; + + /** + * 票据代码 + */ + @Length(max = 50) + @JSONField(name = "bill_code") + private String billCode; + + /** + * 票据号码 + */ + @Length(max = 30) + @JSONField(name = "bill_no") + private String billNo; + + /** + * 业务流水号 + */ + @Length(max = 50) + @JSONField(name = "biz_sn") + private String bizSn; + + /** + * 出院31天内再住院计划标志 + */ + @Length(max = 3) + @JSONField(name = "days_rinp_flag_31") + private String daysRinpFlag31; + + /** + * 出院31天内再住院计划目的 + */ + @Length(max = 200) + @JSONField(name = "days_rinp_pup_31") + private String daysRinpPup31; + + /** + * 主诊医师代码:主诊医师在《医保医师代码》中的代码,在就医地未完成标准化前,可传医师在就医地系统中的唯一编号 + */ + @Length(max = 30) + @JSONField(name = "chfpdr_code") + private String chfpdrCode; + + /** + * 结算开始日期 + */ + @NotNull + @JSONField(name = "setl_begn_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date setlBegnDate; + + /** + * 结算结束日期 + */ + @NotNull + @JSONField(name = "setl_end_date") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date setlEndDate; + + /** + * 医疗机构填报部门 + */ + @NotBlank + @Length(max = 100) + @JSONField(name = "medins_fill_dept") + private String medinsFillDept; + + /** + * 医疗机构填报人 + */ + @NotBlank + @Length(max = 50) + @JSONField(name = "medins_fill_psn") + private String medinsFillPsn; + + /** + * 责任护士代码 + */ + @Length(max = 50) + @JSONField(name = "resp_nurs_code") + private String respNursCode; + + /** + * 状态分类 + */ + @Length(max = 10) + @JSONField(name = "stas_type") + private String stasType; + + /** + * 医保支付方式 + */ + @Length(max = 3) + @JSONField(name = "hi_paymtd") + private String hiPaymtd; + + /** + * 入院科室编码 + */ + @Length(max = 30) + @JSONField(name = "adm_dept_codg") + private String admDeptCodg; + + /** + * 入院科室名称 + */ + @Length(max = 100) + @JSONField(name = "adm_dept_name") + private String admDeptName; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java new file mode 100644 index 00000000..583c517b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb4101AOutputData.java @@ -0,0 +1,29 @@ +package com.openhis.yb.dto; + +import javax.validation.constraints.NotBlank; + +import org.hibernate.validator.constraints.Length; + +import com.alibaba.fastjson2.annotation.JSONField; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【4101A】输出(节点标识:data) + * + * @author GuoRui + */ +@Data +@Accessors(chain = true) +public class Yb4101AOutputData { + + /** + * 清单流水号 + */ + @NotBlank + @Length(max = 9) + @JSONField(name = "setl_list_id") + private String setlListId; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java new file mode 100644 index 00000000..4eb90135 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205InputSpecialDisease.java @@ -0,0 +1,43 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 医保5205接口请求参数 + * + * @author SunJQ + * @date 2025-09-22 + */ +@Data +@Accessors(chain = true) +public class Yb5205InputSpecialDisease { + + /** + * 患者编号 + */ + private String psnNo; + + /** + * 开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date begntime; + + /** + * 结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date endtime; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java new file mode 100644 index 00000000..c84e462c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/Yb5205OutputSpecialDisease.java @@ -0,0 +1,219 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.dto; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson.annotation.JSONField; + +import lombok.Data; + +/** + * 【5205】接口返回结果 + * + * @author SunJQ + * @date 2025-09-22 + */ +@Data +public class Yb5205OutputSpecialDisease { + + /** + * 费用明细流水号 + */ + @JSONField(name = "feedetl_sn") + private String feedetlSn; + + /** + * 处方/医嘱号 + */ + @JSONField(name = "rx_drord_no") + private String rxDrordNo; + + /** + * 定点医药机构编号 + */ + @JSONField(name = "fixmedins_code") + private String fixmedinsCode; + + /** + * 定点医药机构名称 + */ + @JSONField(name = "fixmedins_name") + private String fixmedinsName; + + /** + * 人员编号 + */ + @JSONField(name = "psn_no") + private String psnNo; + + /** + * 医疗类别 + */ + @JSONField(name = "med_type") + private String medType; + + /** + * 费用发生时间 + */ + @JSONField(name = "fee_ocur_time", format = "yyyy-MM-dd HH:mm:ss") + private Date feeOcurTime; + + /** + * 数量 + */ + @JSONField(name = "cnt") + private BigDecimal cnt; + + /** + * 单价 + */ + @JSONField(name = "pric") + private BigDecimal pric; + + /** + * 收费项目等级 + */ + @JSONField(name = "chrgitm_lv") + private String chrgitmLv; + + /** + * 医保目录编码 + */ + @JSONField(name = "hilist_code") + private String hilistCode; + + /** + * 医保目录名称 + */ + @JSONField(name = "hilist_name") + private String hilistName; + + /** + * 目录类别 + */ + @JSONField(name = "list_type") + private String listType; + + /** + * 医疗目录编码 + */ + @JSONField(name = "med_list_codg") + private String medListCodg; + + /** + * 医药机构目录编码 + */ + @JSONField(name = "medins_list_codg") + private String medinsListCodg; + + /** + * 医药机构目录名称 + */ + @JSONField(name = "medins_list_name") + private String medinsListName; + + /** + * 医疗收费项目类别 + */ + @JSONField(name = "med_chrgitm_type") + private String medChrgitmType; + + /** + * 商品名 + */ + @JSONField(name = "prodname") + private String prodname; + + /** + * 规格 + */ + @JSONField(name = "spec") + private String spec; + + /** + * 剂型名称 + */ + @JSONField(name = "dosform_name") + private String dosformName; + + /** + * 限制使用标志 + */ + @JSONField(name = "lmt_used_flag") + private String lmtUsedFlag; + + /** + * 医院制剂标志 + */ + @JSONField(name = "hosp_prep_flag") + private String hospPrepFlag; + + /** + * 医院审批标志 + */ + @JSONField(name = "hosp_appr_flag") + private String hospApprFlag; + + /** + * 中药使用方式 + */ + @JSONField(name = "tcmdrug_used_way") + private String tcmdrugUsedWay; + + /** + * 生产地类别 + */ + @JSONField(name = "prodplac_type") + private String prodplacType; + + /** + * 基本药物标志 + */ + @JSONField(name = "bas_medn_flag") + private String basMednFlag; + + /** + * 医保谈判药品标志 + */ + @JSONField(name = "hi_nego_drug_flag") + private String hiNegoDrugFlag; + + /** + * 儿童用药标志 + */ + @JSONField(name = "chld_medc_flag") + private String chldMedcFlag; + + /** + * 外检标志 + */ + @JSONField(name = "etip_flag") + private String etipFlag; + + /** + * 外检医院编码 + */ + @JSONField(name = "etip_hosp_code") + private String etipHospCode; + + /** + * 出院带药标志 + */ + @JSONField(name = "dscg_tkdrug_flag") + private String dscgTkdrugFlag; + + /** + * 目录特项标志 + */ + @JSONField(name = "list_sp_item_flag") + private String listSpItemFlag; + + /** + * 生育费用标志 + */ + @JSONField(name = "matn_fee_flag") + private String matnFeeFlag; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java new file mode 100644 index 00000000..4696931b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/dto/extData.java @@ -0,0 +1,96 @@ +package com.openhis.yb.dto; + +import java.util.Date; + +import org.springframework.format.annotation.DateTimeFormat; + +import com.alibaba.fastjson2.JSONObject; +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【吉林省本地化】输入补充字段 + * + * @author gaoyy + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class extData { + // 1. 就医地分中心 + @JSONField(name = "mdtrtarea_subcent") + private String mdtrtareaSubcent; + + // 2. 参保地分中心 + @JSONField(name = "insuplc_subcent") + private String insuplcSubcent; + + // 3. 急诊核定流水号 + @JSONField(name = "er_crtf_evtsn") + private String erCrtfEvtsn; + + // 4. 就诊科室 + @JSONField(name = "dept_name") + private String deptName; + + // 5. 使用方法 + @JSONField(name = "used_mtd") + private String usedMtd; + + // 6. 现病史 + @JSONField(name = "psndisehis") + private String psndisehis; + + // 7. 生命体征 + @JSONField(name = "life_symptom") + private String lifeSymptom; + + // 8. 临床病症 + @JSONField(name = "clnc_cond") + private String clncCond; + + // 9. 门(急)诊诊断 + @JSONField(name = "disediag") + private String disediag; + + // 10. 入院诊断 + @JSONField(name = "adm_disediag_name") + private String admDisediagName; + + // 11. 判定依据 + @JSONField(name = "evid") + private String evid; + + // 12. 首诊医生 + @JSONField(name = "fst_doctor") + private String fstDoctor; + + // 13. 科主任 + @JSONField(name = "deptort") + private String deptort; + + // 14. 就诊时间(入院时间)(表示:YYYYMMDDHH24MISS) + @JSONField(name = "adm_date") + private String admDate; + + // 15. 姓名 + @JSONField(name = "name") + private String name; + + // 16. 身份证 + @JSONField(name = "certno") + private String certno; + + // 17. 年龄 + @JSONField(name = "age") + private String age; + + // 18. 性别(1:男,2:女) + @JSONField(name = "gend") + private String gend; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java new file mode 100644 index 00000000..6b4e603a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicPreSettleMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.ClinicPreSettle; +import org.springframework.stereotype.Repository; + + +/** + * 【请填写功能名称】Mapper接口 + * + * @author system + * @date 2025-04-20 + */ +@Repository +public interface ClinicPreSettleMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java new file mode 100644 index 00000000..692e2640 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicSettleMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.ClinicSettle; +import org.springframework.stereotype.Repository; + + +/** + * 【请填写功能名称】Mapper接口 + * + * @author system + * @date 2025-04-20 + */ +@Repository +public interface ClinicSettleMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java new file mode 100644 index 00000000..459df21f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnRegMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import com.openhis.yb.domain.ClinicUnReg; +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 撤销挂号记录Mapper接口 + * + * @author system + * @date 2025-04-21 + */ +@Repository +public interface ClinicUnRegMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java new file mode 100644 index 00000000..a048eb2c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/ClinicUnSettleMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import com.openhis.yb.domain.ClinicUnSettle; +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 【请填写功能名称】Mapper接口 + * + * @author system + * @date 2025-04-20 + */ +@Repository +public interface ClinicUnSettleMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java new file mode 100644 index 00000000..94ca1db2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/DirectoryCheckRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.DirectoryCheckRecord; + +/** + * 医保Mapper接口 + * + * @author system + * @date 2025-04-27 + */ +@Repository +public interface DirectoryCheckRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java new file mode 100644 index 00000000..25705c0f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialApplyRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.FinancialApplyRecord; + +/** + * 医保财务申请记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface FinancialApplyRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java new file mode 100644 index 00000000..4049f19d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/FinancialReconcileRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.FinancialReconcileRecord; + +/** + * ybMapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface FinancialReconcileRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java new file mode 100644 index 00000000..c2cf1b4d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientFeeDetailMapper.java @@ -0,0 +1,10 @@ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InpatientFeeDetail; +import com.openhis.yb.domain.InventoryChangeRecord; +import org.springframework.stereotype.Repository; + +@Repository +public interface InpatientFeeDetailMapper extends BaseMapper { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java new file mode 100644 index 00000000..6baffce4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientRegMapper.java @@ -0,0 +1,19 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.FinancialReconcileRecord; +import com.openhis.yb.domain.InpatientReg; +import org.springframework.stereotype.Repository; + +/** + * TODO:请概括描述当前接口的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Repository +public interface InpatientRegMapper extends BaseMapper { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java new file mode 100644 index 00000000..78ca6ac3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InpatientSettleMapper.java @@ -0,0 +1,10 @@ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InpatientFeeDetail; +import com.openhis.yb.domain.InpatientSettle; +import org.springframework.stereotype.Repository; + +@Repository +public interface InpatientSettleMapper extends BaseMapper { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java new file mode 100644 index 00000000..d0cd518c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryChangeRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventoryChangeRecord; + +/** + * 库存信息变更记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventoryChangeRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java new file mode 100644 index 00000000..66881597 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryCheckRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventoryCheckRecord; + +/** + * 库存盘点记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventoryCheckRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java new file mode 100644 index 00000000..b257b3aa --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryDelRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventoryDelRecord; + +/** + * 库存删除记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventoryDelRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java new file mode 100644 index 00000000..c6f5e789 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventoryPurchaseRecord; + +/** + * 库存采购/退货记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventoryPurchaseRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java new file mode 100644 index 00000000..b3f73983 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventoryPurchaseReturnRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventoryPurchaseReturnRecord; + +/** + * 采购/退货记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventoryPurchaseReturnRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java new file mode 100644 index 00000000..73c11710 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventorySaleRecord; + +/** + * 销售/退货记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventorySaleRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java new file mode 100644 index 00000000..75065c5a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/InventorySaleReturnRecordMapper.java @@ -0,0 +1,17 @@ +package com.openhis.yb.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InventorySaleReturnRecord; + +/** + * 销售/退货记录Mapper接口 + * + * @author system + * @date 2025-04-30 + */ +@Repository +public interface InventorySaleReturnRecordMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java new file mode 100644 index 00000000..4b802d97 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/MedicalInsuranceMapper.java @@ -0,0 +1,60 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.mapper; + + +import com.openhis.yb.dto.*; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import java.util.Date; +import java.util.List; + +/** + * mapper提供sql服务 + * + * @author SunJQ + * @date 2025-04-29 + */ +@Repository +public interface MedicalInsuranceMapper { + /** + * 计算对账金额 + * + * @param stmtBegnDate 开始时间 + * @param stmtEndDate 结束时间 + * @param tenantId 租户id + * @param orgId 医院id + * @param InsuType 险种 + * @param clrType 门诊/住院 + * @param admVs 清算机构 + * @return 查询结果 + */ + Settlement3201Dto get3201Param(@Param("startTime") Date stmtBegnDate, @Param("endTime") Date stmtEndDate, + @Param("tenantId") Integer tenantId, @Param("orgId") Long orgId, @Param("InsuType") String InsuType, + @Param("clrType") Integer clrType, @Param("admVs") String admVs, @Param("zhPay") Integer zhPay, + @Param("zhGjPay") Integer zhGjPay, @Param("ybFund") Integer ybFund); + + Settlement3202Dto get3202Param(@Param("startTime") String stmtBegnDate, @Param("endTime") String stmtEndDate, + @Param("tenantId") Integer tenantId, @Param("orgId") Long orgId, @Param("clrType") String clrType, + @Param("admVs") String admVs, @Param("zhPay") Integer zhPay, @Param("zhGjPay") Integer zhGjPay, + @Param("cash") Integer cash, @Param("cashVX") Integer cashVX, @Param("cashAli") Integer cashAli, + @Param("cashUNIN") Integer cashUNIN, @Param("ybFund") Integer ybFund); + + Financial3203Dto get3203Param(@Param("startTime") Date begndate, @Param("endTime") Date enddate, + @Param("tenantId") Integer tenantId, @Param("clrType") String clrType, @Param("zhPay") Integer zhPay, + @Param("zhGjPay") Integer zhGjPay, @Param("cash") Integer cash, @Param("cashVX") Integer cashVX, + @Param("cashAli") Integer cashAli, @Param("cashUNIN") Integer cashUNIN, @Param("ybFund") Integer ybFund); + + + List get3201ParamList(@Param("startTime") String stmtBegnDate, @Param("endTime") String stmtEndDate, + @Param("tenantId") Integer tenantId, @Param("orgId") Long orgId, @Param("InsuType") String InsuType, + @Param("clrType") String clrType, @Param("admVs") String admVs, @Param("zhPay") Integer zhPay, + @Param("zhGjPay") Integer zhGjPay, @Param("ybFund") Integer ybFund); + + + List getPaymentDecDetailUniAccountDtoListByPaymentIdList( + @Param("idList")List idList, @Param("startTime")Date startTime, + @Param("endTime")Date endTime, @Param("draft")Integer draft); +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java new file mode 100644 index 00000000..c1168fe7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/PerinfoMapper.java @@ -0,0 +1,11 @@ +package com.openhis.yb.mapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.InfoPerson; +import org.springframework.stereotype.Repository; + +/** + * 身份信息-Mapper + */ +@Repository +public interface PerinfoMapper extends BaseMapper { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java new file mode 100644 index 00000000..c2f81e55 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/RegMapper.java @@ -0,0 +1,13 @@ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.ClinicReg; +import org.springframework.stereotype.Repository; + +/** + * 挂号管理-Mapper + */ +@Repository +public interface RegMapper extends BaseMapper { + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java new file mode 100644 index 00000000..84ad6e3c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/mapper/SignMapper.java @@ -0,0 +1,12 @@ +package com.openhis.yb.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.yb.domain.Sign; +import org.springframework.stereotype.Repository; + +/** + * 签到管理-Mapper + */ +@Repository +public interface SignMapper extends BaseMapper { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java new file mode 100644 index 00000000..f35e3bcf --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/CancelRegPaymentModel.java @@ -0,0 +1,53 @@ +package com.openhis.yb.model; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.openhis.yb.dto.PaymentDetailDto; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; +import java.util.List; + +@Data +public class CancelRegPaymentModel { + /** + * id + */ + private Long id; + + /** 收款员 */ + private Long entererId; + + /** 支付的患者ID */ + @NotNull + private Long patientId; + + /** 应收金额 */ + private BigDecimal tenderedAmount; + + /** 找零金额 */ + private BigDecimal returnedAmount; + + /** 付款总额 */ + private BigDecimal displayAmount; + + /** 就诊ID */ + @JsonSerialize(using = ToStringSerializer.class) + private Long encounterId; + + /** 收费项 */ + private List chargeItemIds;//收费时传收费的项目,退费时传退费的项目,2025/05/07去掉notEmpty的注解,与前端约定此字段必传,可以是空集合 + + /** 支付详细 */ + @NotEmpty + private List paymentDetails; + + /** 支付批次号 */ + private String chrgBchno;//医保预结算时返回,医保结算时必传,否则结算时一直预结算 + + private String setlId;//结算id + + private String contractNo;//合同編號 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java new file mode 100644 index 00000000..260b0687 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderModel.java @@ -0,0 +1,126 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.model; + +import com.openhis.yb.dto.Clinic2206FundPaymentResult; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 【2207】医保预结算的输出参数 + * + * @author SunJQ + * @date 2025-05-08 + */ +@Data +@Accessors(chain = true) +public class Clinic2207OrderModel { + // 主键字段 + private String mdtrtId; // 就诊ID + + private String setlId;// 结算id + + private String psnNo; // 人员编号 + + private String psnName; // 人员姓名 + + private String psnCertType; // 人员证件类型 + + private String certno; // 证件号码 + + private String gend; // 性别 + + private String naty; // 民族 + + private Date brdy; // 出生日期 + + private BigDecimal age; // 年龄 + + private String insutype; // 险种类型 + + private String psnType; // 人员类别 + + private String cvlservFlag; // 公务员标志 + + private Date setlTime; // 结算时间 + + private String mdtrtCertType; // 就诊凭证类型 + + private String medType; // 医疗类别 + + private BigDecimal medfeeSumamt; // 医疗费总额 + + private BigDecimal fulamtOwnpayAmt; // 全自费金额 + + private BigDecimal overlmtSelfpay; // 超限价自费费用 + + private BigDecimal preselfpayAmt; // 先行自付金额 + + private BigDecimal inscpScpAmt; // 符合政策范围金额 + + private BigDecimal actPayDedc; // 实际支付起付线 + + private BigDecimal hifpPay; // 基本医疗保险统筹基金支出 + + private BigDecimal poolPropSelfpay; // 基本医疗保险统筹基金支付比例 + + private BigDecimal cvlservPay; // 公务员医疗补助资金支出 + + private BigDecimal hifesPay; // 企业补充医疗保险基金支出 + + private BigDecimal hifmiPay; // 居民大病保险资金支出 + + private BigDecimal hifobPay; // 职工大额医疗费用补助基金支出 + + private BigDecimal mafPay; // 医疗救助基金支出 + + private BigDecimal othPay; // 其他支出 + + private BigDecimal fundPaySumamt; // 基金支付总额 + + private BigDecimal psnPartAmt; // 个人负担总金额 + + private BigDecimal acctPay; // 个人账户支出 + + private BigDecimal psnCashPay; // 个人现金支出 + + private BigDecimal hospPartAmt; // 医院负担金额 + + private BigDecimal balc; // 余额 + + private BigDecimal acctMulaidPay; // 个人账户共济支付金额 + + private String medinsSetlId; // 医药机构结算ID 存放发送方报文ID + + private String clrOptins; // 清算经办机构 + + private String clrWay; // 清算方式 + + private String clrType; // 清算类别 + + private BigDecimal hifdmPay; // 伤残人员医疗保障基金支出 + + private String expContent; // 字段扩展 + + private List setldetail;// 结算详细信息 + + private String chrgBchno; // 收费批次号 + + public Clinic2207OrderModel() { + this.setMedfeeSumamt(new BigDecimal("0.0")).setFulamtOwnpayAmt(new BigDecimal("0.0")) + .setOverlmtSelfpay(new BigDecimal("0.0")).setPreselfpayAmt(new BigDecimal("0.0")) + .setInscpScpAmt(new BigDecimal("0.0")).setActPayDedc(new BigDecimal("0.0")) + .setHifpPay(new BigDecimal("0.0")).setPoolPropSelfpay(new BigDecimal("0.0")) + .setCvlservPay(new BigDecimal("0.0")).setHifesPay(new BigDecimal("0.0")).setHifmiPay(new BigDecimal("0.0")) + .setHifobPay(new BigDecimal("0.00")).setMafPay(new BigDecimal("0.0")).setOthPay(new BigDecimal("0.0")) + .setFundPaySumamt(new BigDecimal("0.0")).setPsnPartAmt(new BigDecimal("0.0")) + .setAcctPay(new BigDecimal("0.0")).setPsnCashPay(new BigDecimal("0.0")) + .setHospPartAmt(new BigDecimal("0.0")).setBalc(new BigDecimal("0.0")) + .setAcctMulaidPay(new BigDecimal("0.0")).setHifdmPay(new BigDecimal("0.0")); + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java new file mode 100644 index 00000000..93ee8869 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/Clinic2207OrderParam.java @@ -0,0 +1,88 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 【2207】 + * + * @author SunJQ + * @date 2025-05-06 + */ +@Data +@Accessors(chain = true) +public class Clinic2207OrderParam { + + @JsonProperty("psn_no") + private String psnNo;// 人员编号 + + // 参保地医保区划 + @JsonProperty("insuplc_admdvs") + private String insuplcAdmdvs; + + @JsonProperty("mdtrt_cert_type") + private String mdtrtCertType;// 就诊凭证类型 + + @JsonProperty("mdtrt_cert_no") + private String mdtrtCertNo;// 就诊凭证编号 + + @JsonProperty("med_type") + private String medType;// 医疗类别 + + @JsonProperty("medfee_sumamt") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") + private Double medfeeSumamt;// 医疗费总额 + + @JsonProperty("psn_setlway") + private String psnSetlway;// 个人结算方式 + + @JsonProperty("mdtrt_id") + private String mdtrtId;// 就诊ID + + @JsonProperty("chrg_bchno") + private String chrgBchno;// 收费批次号 + + @JsonProperty("insutype") + private String insutype;// 险种类型 + + @JsonProperty("acct_used_flag") + private String acctUsedFlag;// 个人账户使用标志 + + @JsonProperty("invono") + private String invono;// 发票号 + + @JsonProperty("fulamt_ownpay_amt") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") + private Double fulamtOwnpayAmt;// 全自费金额 + + @JsonProperty("overlmt_selfpay") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") + private Double overlmtSelfpay;// 超限价金额 + + @JsonProperty("preselfpay_amt") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") + private Double preselfpayAmt;// 先行自付金额 + + @JsonProperty("inscp_scp_amt") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "#0.00") + private Double inscpScpAmt;// 符合政策范围金额 + + @JsonProperty("exp_content") + private String expContent;// 字段扩展 + + @JsonProperty("pub_hosp_rfom_flag") + private String pubHospRfomFlag;// 公立医院改革标志 + + @JsonProperty("minpacunt_drug_trac_cnt") + private Integer minpacuntDrugTracCnt;// 本次结算应上传最小包装药品追溯码数量 + + @JsonProperty("mcs_trac_cnt") + private Integer mcsTracCnt;// 本次结算应上传耗材追溯码数量 + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java new file mode 100644 index 00000000..4e295fbe --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/model/OutpatientRegistrationModel.java @@ -0,0 +1,19 @@ +package com.openhis.yb.model; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class OutpatientRegistrationModel { + //就诊凭证类型 + private String mdtrtCertType; + //卡密 + private String busiCardInfo; + //结算方式 + private String psnSetlWay; + //总价 + private BigDecimal totalPrice; + //合同編號 + private String contractNo; +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java new file mode 100644 index 00000000..8008af06 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicPreSettleService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.ClinicPreSettle; + +/** + * 【请填写功能名称】Service接口 + * + * @author system + * @date 2025-04-20 + */ +public interface IClinicPreSettleService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java new file mode 100644 index 00000000..3ec9af30 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicSettleService.java @@ -0,0 +1,39 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.domain.ClinicSettle; + +import java.util.List; + +/** + * 【请填写功能名称】Service接口 + * + * @author system + * @date 2025-04-20 + */ +public interface IClinicSettleService extends IService { + + /** + * 通过结算id查询 + * + * @param paymentId 结算id + * @return + */ + ClinicSettle getByPaymentId(Long paymentId); + + /** + * 通过结算id查询 + * + * @param settleId 结算id + * @return + */ + ClinicSettle getBySettleId(String settleId); + + /** + * + * @param settleIds + * @return + */ + List getBySettleIds(List settleIds); +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java new file mode 100644 index 00000000..a6fdc557 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnRegService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.ClinicUnReg; + +/** + * 撤销挂号记录Service接口 + * + * @author system + * @date 2025-04-21 + */ +public interface IClinicUnRegService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java new file mode 100644 index 00000000..1894ac18 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IClinicUnSettleService.java @@ -0,0 +1,23 @@ +package com.openhis.yb.service; + +import java.util.List; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.ClinicUnSettle; + +/** + * 【请填写功能名称】Service接口 + * + * @author system + * @date 2025-04-20 + */ +public interface IClinicUnSettleService extends IService { + + /** + * 根据settleId查询集合 + * + * @param settleIds 集合 + * @return 集合 + */ + List getBySettleIds(List settleIds); +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java new file mode 100644 index 00000000..fd653768 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IDirectoryCheckRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.DirectoryCheckRecord; + +/** + * 医保Service接口 + * + * @author system + * @date 2025-04-27 + */ +public interface IDirectoryCheckRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java new file mode 100644 index 00000000..076c2686 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialApplyRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.FinancialApplyRecord; + +/** + * 医保财务申请记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IFinancialApplyRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java new file mode 100644 index 00000000..841982ae --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IFinancialReconcileRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.FinancialReconcileRecord; + +/** + * ybService接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IFinancialReconcileRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java new file mode 100644 index 00000000..80bee252 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientFeeDetailService.java @@ -0,0 +1,8 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InfoPerson; +import com.openhis.yb.domain.InpatientFeeDetail; + +public interface IInpatientFeeDetailService extends IService { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java new file mode 100644 index 00000000..79d69e5a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientRegService.java @@ -0,0 +1,25 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InpatientReg; +import com.openhis.yb.domain.InventorySaleReturnRecord; + +/** + * TODO:请概括描述当前接口的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-31 + */ + +public interface IInpatientRegService extends IService { + + /** + * 根据busNo查询住院挂号信息 + * @param busNo 业务流水号 + * @return 医保住院挂号信息 + */ + InpatientReg getInpatientRegByIptNo(String busNo); +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java new file mode 100644 index 00000000..58545a98 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInpatientSettleService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InpatientSettle; + +public interface IInpatientSettleService extends IService { + /** + * 根据医保结算id找到住院结算id + * @param ybSettleIds + * @return + */ + InpatientSettle getBySettleId(String ybSettleIds); + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java new file mode 100644 index 00000000..b1f46cb1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryChangeRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventoryChangeRecord; + +/** + * 库存信息变更记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventoryChangeRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java new file mode 100644 index 00000000..fd40a5b7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryCheckRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventoryCheckRecord; + +/** + * 库存盘点记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventoryCheckRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java new file mode 100644 index 00000000..f3938a7f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryDelRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventoryDelRecord; + +/** + * 库存删除记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventoryDelRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java new file mode 100644 index 00000000..34de41cd --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventoryPurchaseRecord; + +/** + * 库存采购/退货记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventoryPurchaseRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java new file mode 100644 index 00000000..0e32daf0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventoryPurchaseReturnRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventoryPurchaseReturnRecord; + +/** + * 采购/退货记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventoryPurchaseReturnRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java new file mode 100644 index 00000000..dd93de62 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventorySaleRecord; + +/** + * 销售/退货记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventorySaleRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java new file mode 100644 index 00000000..a82351e2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IInventorySaleReturnRecordService.java @@ -0,0 +1,14 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InventorySaleReturnRecord; + +/** + * 销售/退货记录Service接口 + * + * @author system + * @date 2025-04-30 + */ +public interface IInventorySaleReturnRecordService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java new file mode 100644 index 00000000..1b64a0ac --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IPerinfoService.java @@ -0,0 +1,44 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.InfoPerson; + +/** + * @Description: 人员基础信息 + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +public interface IPerinfoService extends IService { + + InfoPerson getPerInfoByIdCard(String idCard, Integer tenantId); + + InfoPerson getByPsnNo(String psnNo); + + /** + * 是否异地就医(省内异地) + * + * @param psnNo 人员编号 + * @param admVs 就异地统筹区号 + * @return + */ + boolean assessIntraCrossRegionalSettlement(String psnNo, String admVs); + + /** + * 是否异地就医(省外异地) + * + * @param psnNo 人员编号 + * @param admVs 就异地统筹区号 + * @return + */ + boolean assessInterCrossRegionalSettlement(String psnNo, String admVs); + + /** + * 是否异地就医 + * + * @param psnNo 人员编号 + * @param admVs 就异地统筹区号 + * @return + */ + boolean assessCrossRegionalSettlement(String psnNo, String admVs); +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java new file mode 100644 index 00000000..0204a5ba --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/IRegService.java @@ -0,0 +1,23 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.workflow.domain.SupplyRequest; +import com.openhis.yb.domain.ClinicReg; + +import java.util.List; + +/** + * 挂号管理-服务接口 + */ +public interface IRegService extends IService { + void updateStatus(Long id,String status); + + /** + * 通过单据号查询 + * + * @param busNo 单据号 + * @return + */ + ClinicReg getByBusNo(String busNo); + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java new file mode 100644 index 00000000..ac59b7e1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/ISignService.java @@ -0,0 +1,11 @@ +package com.openhis.yb.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.yb.domain.Sign; + +/** + * 签到管理-服务接口 + */ +public interface ISignService extends IService { + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java new file mode 100644 index 00000000..a2971941 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbDao.java @@ -0,0 +1,2800 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.service; + +import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; + +import javax.servlet.http.HttpServletRequest; +import javax.validation.constraints.NotNull; + +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.alibaba.fastjson2.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.core.common.exception.ServiceException; +import com.core.common.utils.AssignSeqUtil; +import com.core.common.utils.DateUtils; +import com.core.common.utils.SecurityUtils; +import com.core.common.utils.StringUtils; +import com.core.system.service.impl.SysUserServiceImpl; +import com.openhis.administration.domain.*; +import com.openhis.administration.dto.ChargeItemBaseInfoDto; +import com.openhis.administration.service.*; +import com.openhis.clinical.domain.Condition; +import com.openhis.clinical.domain.ConditionDefinition; +import com.openhis.clinical.service.IConditionDefinitionService; +import com.openhis.clinical.service.IConditionService; +import com.openhis.common.constant.CommonConstants; +import com.openhis.common.constant.YbCommonConstants; +import com.openhis.common.enums.*; +import com.openhis.common.enums.ybenums.*; +import com.openhis.common.utils.HisPageUtils; +import com.openhis.common.utils.HisQueryUtils; +import com.openhis.financial.domain.Contract; +import com.openhis.financial.domain.PaymentRecDetail; +import com.openhis.financial.domain.PaymentReconciliation; +import com.openhis.financial.service.IContractService; +import com.openhis.financial.service.IPaymentRecDetailService; +import com.openhis.financial.service.IPaymentReconciliationService; +import com.openhis.medication.service.IMedicationDispenseService; +import com.openhis.workflow.service.IDeviceDispenseService; +import com.openhis.workflow.service.IServiceRequestService; +import com.openhis.yb.domain.*; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.dto.*; +import com.openhis.yb.dto.Sign; +import com.openhis.yb.mapper.MedicalInsuranceMapper; +import com.openhis.yb.model.Clinic2207OrderModel; +import com.openhis.yb.model.Clinic2207OrderParam; +import com.openhis.yb.service.impl.DirectoryCheckRecordServiceImpl; +import com.openhis.yb.util.YbParamBuilderUtil; + +/** + * 医保表的增删改查接口 + * + * @author SunJQ + * @date 2025-04-11 + */ +@Service +public class YbDao { + /******************************** 业务服务 ***********************************/ + @Autowired + private IPaymentRecDetailService iPaymentRecDetailService; + @Autowired + private IPaymentReconciliationService iPaymentReconciliationService; + @Autowired + private SysUserServiceImpl userService; + @Autowired + private IPractitionerService iPractitionerService; + @Autowired + private IEncounterService iEncounterService; + @Autowired + private IEncounterParticipantService iEncounterParticipantService; + @Autowired + private IAccountService iAccountService; + @Autowired + private IEncounterDiagnosisService iEncounterDiagnosisService; + @Autowired + private IConditionService iConditionService; + @Autowired + private IConditionDefinitionService iConditionDefinitionService; + @Autowired + private IOrganizationService iOrganizationService; + @Autowired + private ILocationService iLocationService; + @Autowired + private IEncounterLocationService iEncounterLocationService; + @Autowired + private IAccountService accountService; + @Autowired + private IChargeItemService iChargeItemService; + @Autowired + private AssignSeqUtil assignSeqUtil; + @Autowired + private IInvoiceService invoiceService; + @Autowired + private IPatientService iPatientService; + @Autowired + private IContractService iContractService; + @Autowired + private MedicalInsuranceMapper medicalInsuranceMapper; + + /****************************** 基础医保服务 *********************************/ + + @Autowired + private IPerinfoService iPerinfoService; + @Autowired + private IRegService iRegService; + @Autowired + private IInpatientRegService iInpatientRegService; + @Autowired + private IInpatientSettleService inpatientSettleService; + @Autowired + private IClinicUnRegService iClinicUnRegService; + @Autowired + private ISignService iSignService; + @Autowired + private IClinicPreSettleService iClinicPreSettleService; + @Autowired + private IClinicSettleService iClinicSettleService; + @Autowired + private IClinicUnSettleService iClinicUnSettleService; + @Autowired + private DirectoryCheckRecordServiceImpl directoryCheckRecordService; + @Autowired + private IInventorySaleReturnRecordService iInventorySaleReturnRecordService; + @Autowired + private IInventorySaleRecordService iInventorySaleRecordService; + @Autowired + private IInventoryPurchaseReturnRecordService iInventoryPurchaseReturnRecordService; + @Autowired + private IInventoryPurchaseRecordService iInventoryPurchaseRecordService; + @Autowired + private IInventoryDelRecordService iInventoryDelRecordService; + @Autowired + private IInventoryCheckRecordService iInventoryCheckRecordService; + @Autowired + private IInventoryChangeRecordService iInventoryChangeRecordService; + @Autowired + private IFinancialReconcileRecordService iFinancialReconcileRecordService; + @Autowired + private IFinancialApplyRecordService iFinancialApplyRecordService; + @Autowired + private IInpatientFeeDetailService inpatientFeeDetailService; + @Autowired + private YbParamBuilderUtil ybUtil; + @Autowired + private IMedicationDispenseService medicationDispenseService; + @Autowired + private IDeviceDispenseService deviceDispenseService; + @Autowired + private IServiceRequestService serviceRequestService; + + /** + * 获取读卡信息 + * + * @return 【1101】入参 + */ + public Info1101ReadcardParam getReadCard(String certType, String certNo) { + return ybUtil.getReadCard(certType, certNo); + } + + /** + * 保存数据 + * + * @param readcard 读卡信息 + * @param perInfo 身份信息 + */ + public void saveReadcardAndPerinfo(Info1101ReadcardParam readcard, Info1101Output perInfo) { + InfoPerson infoPerson = new InfoPerson(); + BeanUtils.copyProperties(readcard, infoPerson); + BeanUtils.copyProperties(perInfo, infoPerson); + infoPerson.setResult1101(JSON.toJSONString(perInfo)).setParam1101(JSON.toJSONString(readcard)); + iPerinfoService.save(infoPerson); + } + + /** + * 【2201】医保挂号 + * + * @param encounterId 就诊id + * @param tenantId 租户 + * @return 【2201】入参 + */ + public ClinicReg getReg(YbMdtrtCertType ybMdtrtCertTypeLong, String busiCardInfo, Long encounterId, + YbMedType medType, Integer tenantId) { + return ybUtil.getReg(ybMdtrtCertTypeLong, busiCardInfo, encounterId, medType, tenantId); + } + + /** + * 保存挂号信息 + * + * @param regResult 2201挂号信息 + */ + public void saveReg(ClinicReg2201Output regResult) { + ClinicReg clinicReg = new ClinicReg(); + BeanUtils.copyProperties(regResult, clinicReg); + InfoPerson one = + iPerinfoService.getOne(new LambdaQueryWrapper().eq(InfoPerson::getPsnNo, regResult.getPsnNo()) + .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + clinicReg.setInsuplcAdmdvs(one.getInsuplcAdmdvs()).setDeleteFlag(DelFlag.NO.getCode()); + iRegService.save(clinicReg); + } + + /** + * 退号变更挂号状态 + * + * @param regResult + */ + public void UpdateRegByMdtrtId(ClinicReg regResult) { + if (StringUtils.isEmpty(regResult.getMdtrtId())) { + throw new ServiceException("医保挂号编号为空"); + } + ClinicReg one = + iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, regResult.getMdtrtId())); + if (one == null) { + throw new ServiceException("查询医保信息为空"); + } + iRegService.updateStatus(one.getId(), YbCommonConstants.ClincStatusConst.CANCLE); + } + + /** + * 【2203】就诊信息上传 + * + * @param encounterId 就诊id + * @param tenantId 租户 + * @return 【2203】就诊信息 + */ + public Clinic2203MedicalParam getClinicMedical2203Param(Long encounterId, Integer tenantId, + ClinicReg2201Output reg2201Output, YbMedType ybMedType) { + return ybUtil.getClinicMedical2203Param(encounterId, tenantId, reg2201Output, ybMedType); + } + + /** + * 【2204】诊断信息上传 + * + * @param tenantId 租户id + * @param chargeItemIds 收费项id集合 + * @return 【2204】参数 + */ + + public Clinic2204OrderParam getClinicOrder2204Param(Integer tenantId, List chargeItemIds, + ClinicReg2201Output reg2201Output) { + return ybUtil.getClinicOrder2204Param(tenantId, chargeItemIds, reg2201Output); + } + + /** + * 【2206】预结算 + * + * @param payFee 应收金额 + * @param chrgBchno 收费批次号(payment的busNo) + * @return 【2206】预结算 + */ + public Clinic2206OrderParam getClinicOrder2206Param(BigDecimal payFee, ClinicReg2201Output reg, String chrgBchno, + String busiCardInfo) { + return ybUtil.getClinicOrder2206Param(payFee, reg, chrgBchno, busiCardInfo); + } + + /** + * 【2205】费用明细撤销 + * + * @param encounterId 就诊id + * @param chrgBchno 收费批次号 + * @return 【2205】参数 + */ + public Clinic2205OrderParam getClinic2205OrderParam(Long encounterId, String chrgBchno) { + return ybUtil.getClinic2205OrderParam(encounterId, chrgBchno); + } + + /** + * 【2207】结算 + * + * @param encounterId 就诊id + * @param tenantId 租户id + * @param psnSetlWay 支付方式 + * @param chrgBchno 收费批次号(payment的busNo) + * @return 【2207】结算 + */ + public Clinic2207OrderParam getClinicOrder2207(Long encounterId, Integer tenantId, String psnSetlWay, + String chrgBchno, String medType) { + return ybUtil.getClinicOrder2207(encounterId, tenantId, psnSetlWay, chrgBchno, medType); + } + + /** + * 保存数据 + * + * @param paymentNo 首款业务流水号 + * @param clinicOrder2207 2207入参 + * @param clinic2207OrderResult 2207出参 + */ + public void saveClinic2207OrderResult(String paymentNo, Clinic2207OrderParam clinicOrder2207, + Clinic2207OrderModel clinic2207OrderResult) { + // 保存结算信息 + ClinicSettle clinicSettle = new ClinicSettle(); + BeanUtils.copyProperties(clinic2207OrderResult, clinicSettle); + clinicSettle.setParam2207(JSON.toJSONString(clinicOrder2207)) + .setResult2207(JSON.toJSONString(clinic2207OrderResult)); + iClinicSettleService.save(clinicSettle); + } + + /** + * 保存数据 + * + * @param settleId 医保结算id + * @param clinicOrder2207 2207入参 + * @param clinic2207OrderResult 2207出参 + */ + public void saveUnSettleRecord(String settleId, Clinic2208UnSetlInfoParam clinicOrder2207, + Clinic2208UnSetlInfoOutput clinic2207OrderResult) { + + ClinicUnSettle clinicSettle = new ClinicUnSettle(); + BeanUtils.copyProperties(clinic2207OrderResult, clinicSettle); + clinicSettle.setParam2208(JSON.toJSONString(clinicOrder2207)) + .setResult2208(JSON.toJSONString(clinic2207OrderResult)).setSettleId(clinic2207OrderResult.getSetlId()); + // 保存结算信息 + iClinicUnSettleService.save(clinicSettle); + } + + /** + * 反结 + * + * @param paymentReconciliation 付款实体 + */ + private void saveUnPaymentDetail(PaymentReconciliation paymentReconciliation) { + List paymentRecDetails = + iPaymentRecDetailService.list(new LambdaQueryWrapper() + .eq(PaymentRecDetail::getReconciliationId, paymentReconciliation.getId())); + // 新增详情信息 + PaymentRecDetail paymentRecDetail; + List addDetailList = new ArrayList<>(); + for (PaymentRecDetail paymentDetail : paymentRecDetails) { + paymentRecDetail = new PaymentRecDetail(); + com.core.common.utils.bean.BeanUtils.copyProperties(paymentDetail, paymentRecDetail); + paymentRecDetail.setPredecessorId(paymentReconciliation.getId()); + paymentRecDetail.setAccountId(paymentDetail.getAccountId() == null ? 0 : paymentDetail.getAccountId()); + paymentRecDetail.setResultEnum(PaymentResult.REFUNDED.getValue()); + paymentRecDetail.setAmount(paymentRecDetail.getAmount().multiply(new BigDecimal("-1"))); + addDetailList.add(paymentRecDetail); + } + iPaymentRecDetailService.saveBatch(addDetailList); + + // 修改详情信息 + List list = new ArrayList<>(); + for (PaymentRecDetail item : paymentRecDetails) { + item.setResultEnum(1); + list.add(item); + } + iPaymentRecDetailService.updateBatchById(list); + } + + /** + * 根据医保2207结果和前台参数添加结算记录 + * + * @param clinicOrder2207Result + * @param payment + * @param paymentDetails + */ + private void saveBy2207Result(Clinic2207OrderResult clinicOrder2207Result, PaymentReconciliation payment, + List paymentDetails) { + // 保存付款详情 + List paymentRecDetails = new ArrayList<>(); + BigDecimal amount = BigDecimal.ZERO; + String AccountEnum = "04"; + Account account = accountService.getById(payment.getAccountId()); + AccountEnum = account.getTypeCode(); + PaymentRecDetail paymentRecDetail; + for (PaymentDetailDto paymentDetail : paymentDetails) { + paymentRecDetail = new PaymentRecDetail(); + if (YbPayment.SELF_CASH_VX_VALUE.getValue().equals(paymentDetail.getPayEnum())) { + paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_CASH_VX_VALUE.getValue()) + .setPayLevelEnum(YbPayment.SELF_CASH_VX_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) + .setResultEnum(PaymentResult.PAID.getValue()); + } + if (YbPayment.SELF_CASH_ALI_VALUE.getValue().equals(paymentDetail.getPayEnum())) { + paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_CASH_ALI_VALUE.getValue()) + .setPayLevelEnum(YbPayment.SELF_CASH_ALI_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) + .setResultEnum(PaymentResult.PAID.getValue()); + } + if (YbPayment.SELF_CASH_UNION_VALUE.getValue().equals(paymentDetail.getPayEnum())) { + paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_CASH_UNION_VALUE.getValue()) + .setPayLevelEnum(YbPayment.SELF_CASH_UNION_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) + .setResultEnum(PaymentResult.PAID.getValue()); + } + if (YbPayment.SELF_CASH_VALUE.getValue().equals(paymentDetail.getPayEnum())) { + paymentRecDetail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_CASH_VALUE.getValue()) + .setPayLevelEnum(YbPayment.SELF_CASH_VALUE.getLevel()).setAmount(paymentDetail.getAmount()) + .setResultEnum(PaymentResult.PAID.getValue()); + } + paymentRecDetails.add(paymentRecDetail); + amount = amount.add(paymentDetail.getAmount()); + } + // 个人现金支出 + BigDecimal psnCashPay = clinicOrder2207Result.getPsnCashPay(); + if (psnCashPay.compareTo(amount) != 0) { + throw new ServiceException("金额校验失败"); + } + PaymentRecDetail paymentRecDetail10 = new PaymentRecDetail(); + paymentRecDetail10.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_CASH_VALUE.getValue()).setPayLevelEnum(YbPayment.SELF_CASH_VALUE.getLevel()) + .setAmount(psnCashPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail10); + // 个人负担总金额 + BigDecimal psnPartAmt = clinicOrder2207Result.getPsnPartAmt(); + PaymentRecDetail paymentRecDetail1 = new PaymentRecDetail(); + paymentRecDetail1.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_PAY.getLevel()) + .setAmount(psnPartAmt).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail1); + // 基本医疗保险统筹基金支出 + BigDecimal hifpPay = clinicOrder2207Result.getHifpPay(); + PaymentRecDetail paymentRecDetail2 = new PaymentRecDetail(); + paymentRecDetail2.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_TC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_TC_FUND_AMOUNT.getLevel()) + .setAmount(hifpPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail2); + // 公务员医疗补助资金支出 + BigDecimal cvlservPay = clinicOrder2207Result.getCvlservPay(); + PaymentRecDetail paymentRecDetail3 = new PaymentRecDetail(); + paymentRecDetail3.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getValue()) + .setPayLevelEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getLevel()).setAmount(cvlservPay) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail3); + // 企业补充医疗保险基金支出 + BigDecimal hifesPay = clinicOrder2207Result.getHifesPay(); + PaymentRecDetail paymentRecDetail4 = new PaymentRecDetail(); + paymentRecDetail4.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_BC_FUND_AMOUNT.getLevel()) + .setAmount(hifesPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail4); + // 居民大病保险资金支出 + BigDecimal hifmiPay = clinicOrder2207Result.getHifmiPay(); + PaymentRecDetail paymentRecDetail5 = new PaymentRecDetail(); + paymentRecDetail5.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_JM_DB_VALUE.getValue()).setPayLevelEnum(YbPayment.YB_BC_JM_DB_VALUE.getLevel()) + .setAmount(hifmiPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail5); + // 职工大额医疗费用补助基金支出 + BigDecimal hifobPay = clinicOrder2207Result.getHifobPay(); + PaymentRecDetail paymentRecDetail6 = new PaymentRecDetail(); + paymentRecDetail6.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getValue()) + .setPayLevelEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getLevel()).setAmount(hifobPay) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail5); + // 职工大额医疗费用补助基金支出 + BigDecimal mafPay = clinicOrder2207Result.getMafPay(); + PaymentRecDetail paymentRecDetail7 = new PaymentRecDetail(); + paymentRecDetail7.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_JZ_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_JZ_FUND_AMOUNT.getLevel()) + .setAmount(mafPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail7); + // 其他支出 + BigDecimal othPay = clinicOrder2207Result.getOthPay(); + PaymentRecDetail paymentRecDetail8 = new PaymentRecDetail(); + paymentRecDetail8.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) + .setAmount(othPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail8); + // 基金支付总额 + BigDecimal fundPaySumamt = clinicOrder2207Result.getFundPaySumamt(); + PaymentRecDetail paymentRecDetail9 = new PaymentRecDetail(); + paymentRecDetail9.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_FUND_PAY.getValue()).setPayLevelEnum(YbPayment.YB_FUND_PAY.getLevel()) + .setAmount(fundPaySumamt).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail9); + // 个人账户支出 + BigDecimal acctPay = clinicOrder2207Result.getAcctPay(); + PaymentRecDetail paymentRecDetail11 = new PaymentRecDetail(); + paymentRecDetail11.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_YB_ZH_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_YB_ZH_PAY.getLevel()) + .setAmount(acctPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail11); + // 医院负担金额 + BigDecimal hospPartAmt = clinicOrder2207Result.getHospPartAmt(); + PaymentRecDetail paymentRecDetail12 = new PaymentRecDetail(); + paymentRecDetail12.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) + .setAmount(hospPartAmt).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail12); + // 个人账户共济支付金额 + BigDecimal acctMulaidPay = clinicOrder2207Result.getAcctMulaidPay(); + PaymentRecDetail paymentRecDetail13 = new PaymentRecDetail(); + paymentRecDetail13.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getValue()) + .setPayLevelEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getLevel()).setAmount(acctMulaidPay) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail13); + for (Clinic2206FundPaymentResult clinic2206FundPaymentResult : clinicOrder2207Result.getSetldetail()) { + PaymentRecDetail detail = new PaymentRecDetail(); + YbPayment ybPayment = YbPayment.getByValue(Integer.parseInt(clinic2206FundPaymentResult.getFundPayType())); + detail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum).setPayEnum(ybPayment.getValue()) + .setPayLevelEnum(ybPayment.getLevel()) + .setAmount(new BigDecimal(clinic2206FundPaymentResult.getFundPayamt().toString())) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(detail); + } + + } + + /** + * 根据医保2207结果和前台参数添加结算记录(弃用)该方法内赋值有错误,若启用或copy需要重新定义里面的赋值内容 + * + * @param clinic2208UnSetlInfoResult + * @param payment + * @param paymentDetails + */ + private void saveBy2208Result(Clinic2208UnSetlInfoResult clinic2208UnSetlInfoResult, PaymentReconciliation payment, + List paymentDetails) { + // 保存付款详情 todo:医保反结是否是负数 + ArrayList paymentRecDetails = new ArrayList<>(); + BigDecimal amount = BigDecimal.ZERO; + String AccountEnum = "04"; + for (PaymentDetailDto paymentDetail : paymentDetails) { + PaymentRecDetail paymentRecDetail = new PaymentRecDetail(); + com.core.common.utils.bean.BeanUtils.copyProperties(paymentDetail, paymentRecDetail); + paymentRecDetail.setReconciliationId(payment.getId()); + paymentRecDetail.setPredecessorId(payment.getId()); + paymentRecDetail.setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail); + amount = amount.add(paymentDetail.getAmount()); + } + // 个人负担总金额 + BigDecimal psnPartAmt = clinic2208UnSetlInfoResult.getPsnPartAmt(); + PaymentRecDetail paymentRecDetail1 = new PaymentRecDetail(); + paymentRecDetail1.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_PAY.getLevel()) + .setAmount(psnPartAmt).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail1); + // 基本医疗保险统筹基金支出 + BigDecimal hifpPay = clinic2208UnSetlInfoResult.getHifpPay(); + PaymentRecDetail paymentRecDetail2 = new PaymentRecDetail(); + paymentRecDetail2.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_TC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_TC_FUND_AMOUNT.getLevel()) + .setAmount(hifpPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail2); + // 公务员医疗补助资金支出 + BigDecimal cvlservPay = clinic2208UnSetlInfoResult.getCvlservPay(); + PaymentRecDetail paymentRecDetail3 = new PaymentRecDetail(); + paymentRecDetail3.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getValue()) + .setPayLevelEnum(YbPayment.YB_BC_GWY_BZ_VALUE.getLevel()).setAmount(cvlservPay) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail3); + // 企业补充医疗保险基金支出 + BigDecimal hifesPay = clinic2208UnSetlInfoResult.getHifesPay(); + PaymentRecDetail paymentRecDetail4 = new PaymentRecDetail(); + paymentRecDetail4.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_BC_FUND_AMOUNT.getLevel()) + .setAmount(hifesPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail4); + // 居民大病保险资金支出 + BigDecimal hifmiPay = clinic2208UnSetlInfoResult.getHifmiPay(); + PaymentRecDetail paymentRecDetail5 = new PaymentRecDetail(); + paymentRecDetail5.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_JM_DB_VALUE.getValue()).setPayLevelEnum(YbPayment.YB_BC_JM_DB_VALUE.getLevel()) + .setAmount(hifmiPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail5); + // 职工大额医疗费用补助基金支出 + BigDecimal hifobPay = clinic2208UnSetlInfoResult.getHifobPay(); + PaymentRecDetail paymentRecDetail6 = new PaymentRecDetail(); + paymentRecDetail6.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getValue()) + .setPayLevelEnum(YbPayment.YB_BC_ZG_DE_BZ_VALUE.getLevel()).setAmount(hifobPay) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail5); + // 职工大额医疗费用补助基金支出 + BigDecimal mafPay = clinic2208UnSetlInfoResult.getMafPay(); + PaymentRecDetail paymentRecDetail7 = new PaymentRecDetail(); + paymentRecDetail7.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_JZ_FUND_AMOUNT.getValue()).setPayLevelEnum(YbPayment.YB_JZ_FUND_AMOUNT.getLevel()) + .setAmount(mafPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail7); + // 其他支出 + BigDecimal othPay = clinic2208UnSetlInfoResult.getOthPay(); + PaymentRecDetail paymentRecDetail8 = new PaymentRecDetail(); + paymentRecDetail8.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) + .setAmount(othPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail8); + // 基金支付总额 + BigDecimal fundPaySumamt = clinic2208UnSetlInfoResult.getFundPaySumamt(); + PaymentRecDetail paymentRecDetail9 = new PaymentRecDetail(); + paymentRecDetail9.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.YB_FUND_PAY.getValue()).setPayLevelEnum(YbPayment.YB_FUND_PAY.getLevel()) + .setAmount(fundPaySumamt).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail9); + // 个人账户支出 + BigDecimal acctPay = clinic2208UnSetlInfoResult.getAcctPay(); + PaymentRecDetail paymentRecDetail11 = new PaymentRecDetail(); + paymentRecDetail11.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_YB_ZH_PAY.getValue()).setPayLevelEnum(YbPayment.SELF_YB_ZH_PAY.getLevel()) + .setAmount(acctPay).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail11); + // 医院负担金额 + BigDecimal hospPartAmt = clinic2208UnSetlInfoResult.getHospPartAmt(); + PaymentRecDetail paymentRecDetail12 = new PaymentRecDetail(); + paymentRecDetail12.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.OTHER_PAY.getValue()).setPayLevelEnum(YbPayment.OTHER_PAY.getLevel()) + .setAmount(hospPartAmt).setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail12); + // 个人账户共济支付金额 + BigDecimal acctMulaidPay = clinic2208UnSetlInfoResult.getAcctMulaidPay(); + PaymentRecDetail paymentRecDetail13 = new PaymentRecDetail(); + paymentRecDetail13.setReconciliationId(payment.getId()).setAccountCode(AccountEnum) + .setPayEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getValue()) + .setPayLevelEnum(YbPayment.SELF_YB_ZH_GJ_VALUE.getLevel()).setAmount(acctMulaidPay) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(paymentRecDetail13); + for (Clinic2206FundPaymentResult clinic2206FundPaymentResult : clinic2208UnSetlInfoResult.getSetldetail()) { + PaymentRecDetail detail = new PaymentRecDetail(); + YbPayment ybPayment = YbPayment.getByValue(Integer.parseInt(clinic2206FundPaymentResult.getFundPayType())); + detail.setReconciliationId(payment.getId()).setAccountCode(AccountEnum).setPayEnum(ybPayment.getValue()) + .setPayLevelEnum(ybPayment.getLevel()) + .setAmount(new BigDecimal(clinic2206FundPaymentResult.getFundPayamt().toString())) + .setResultEnum(PaymentResult.PAID.getValue()); + paymentRecDetails.add(detail); + } + + } + + /** + * 保存预结算接口的记录信息 + * + * @param clinic2206OrderParam 2206医保入参 + * @param clinic2206OrderResult 2206医保输出 + * @param clinic2203MedicalParam 2203医保入参 + * @param clinic2204OrderParam 2204医保入参 + * @param clinic2204OrderResult 2204医保输出 + */ + public void saveClinicOrder2206Param(Clinic2206OrderParam clinic2206OrderParam, + Clinic2206OrderOutput clinic2206OrderResult, Clinic2203MedicalParam clinic2203MedicalParam, + Clinic2204OrderParam clinic2204OrderParam, Clinic2204OrderResult clinic2204OrderResult) { + + ClinicPreSettle clinicPreSettle = new ClinicPreSettle(); + BeanUtils.copyProperties(clinic2204OrderParam, clinicPreSettle); + BeanUtils.copyProperties(clinic2206OrderResult, clinicPreSettle); + clinicPreSettle.setParam2203(JSON.toJSONString(clinic2203MedicalParam)) + .setParam2204(JSON.toJSONString(clinic2204OrderParam)).setParam2206(JSON.toJSONString(clinic2206OrderParam)) + .setResult2204(JSON.toJSONString(clinic2204OrderResult)) + .setResult2206(JSON.toJSONString(clinic2206OrderResult)).setChrgBchno(clinic2206OrderParam.getChrgBchno()) + .setMdtrtId(clinic2206OrderParam.getMdtrtId()).setPsnNo(clinic2206OrderParam.getPsnNo()) + .setDeleteFlag(DelFlag.NO.getCode()); + + iClinicPreSettleService.save(clinicPreSettle); + } + + /** + * 保存签到信息 + * + * @param signParam 【9001】参数 + * @param signResult 【9001】参数 + */ + public void saveSign(Sign signParam, Sign9001Result signResult) { + com.openhis.yb.domain.Sign sign = new com.openhis.yb.domain.Sign(); + BeanUtils.copyProperties(signParam, sign); + BeanUtils.copyProperties(signResult, sign); + sign.setSignNo(signResult.getSignNo()).setOpterNo(signParam.getOpterNo()); + iSignService.save(sign); + } + + /** + * 取消挂号 + * + * @param regResult 【2202】参数 + */ + public void saveUnReg(ClinicReg2201Output regResult) { + ClinicUnReg clinicUnReg = new ClinicUnReg(); + BeanUtils.copyProperties(regResult, clinicUnReg); + clinicUnReg.setUnRegTime(new Date()); + iClinicUnRegService.save(clinicUnReg); + } + + /** + * 【2208】医保反结算 + * + * @param tenantId 租户id + * @param settleId 结算id + * @return 【2208】参数 + */ + public Clinic2208UnSetlInfoParam getClinicOrder2208(Integer tenantId, String settleId) { + return ybUtil.getClinicOrder2208(tenantId, settleId); + } + + /** + * 【3301】目录对照 + * + * @param tableName 表名 + * @param id 主键 + * @return 【3301】入参 + */ + public MedicalDirectory3301Param getMedicalDirectory3301Param(String tableName, Long id) { + return ybUtil.getMedicalDirectory3301Param(tableName, id); + } + + /** + * 【3301】医保目录对照参数作成(药品) + * + * @param categoryCode 药品分类 + * @param busNo 药品编号 + * @param name 药品编号 + * @param ybNo 医保编码 + * @return 医保目录对照参数 + */ + public MedicalDirectory3301Param getMedicalDirectory3301ParamMedication(String categoryCode, String busNo, + String name, String ybNo) { + return ybUtil.getMedicalDirectory3301ParamMedication(categoryCode, busNo, name, ybNo); + } + + /** + * 【3302】目录对照撤销 + * + * @param tableName 表名 + * @param id 主键 + * @return + */ + public MedicalDirectory3302Param getMedicalDirectory3302Param(String tableName, Long id) { + return ybUtil.getMedicalDirectory3302Param(tableName, id); + } + + /** + * 【3302】医保目录对照撤销参数作成(药品) + * + * @param categoryCode 药品分类 + * @param busNo 药品编号 + * @param ybNo 医保编码 + * @return 医保目录对照撤销参数 + */ + public MedicalDirectory3302Param getMedicalDirectory3302ParamMedication(String categoryCode, String busNo, + String ybNo) { + return ybUtil.getMedicalDirectory3302ParamMedication(categoryCode, busNo, ybNo); + } + + /** + * 【3201】医药机构费用结算对总账 + * + * @param reconciliation3201Param 参数信息 + * @return 入参 + */ + public Financial3201Param getFinancial3201Param(Settlement3201WebParam reconciliation3201Param) { + String insuType = reconciliation3201Param.getInsuType(); + if (StringUtils.isEmpty(insuType)) { + // insuType = "310"; + // reconciliation3201Param.setInsuType("310"); + throw new ServiceException("请选择险种类型"); + } + String clrType = reconciliation3201Param.getClrType(); + if (StringUtils.isEmpty(clrType)) { + throw new ServiceException("请选择医疗类型:住院/门诊"); + } + String contractNo = reconciliation3201Param.getContractNo(); + if (StringUtils.isEmpty(contractNo)) { + throw new ServiceException("请选择合同类型"); + } + Settlement3201DetailDto settlement3201DetailDto = null; + List settlement3201DetailDtos = + this.reconcileGeneralLedgerDetail(reconciliation3201Param); + for (Settlement3201DetailDto item : settlement3201DetailDtos) { + if (contractNo.equals(item.getContractNo()) && insuType.equals(item.getInsutype().toString()) + && clrType.equals(item.getClrType())) { + settlement3201DetailDto = item; + } + } + if (settlement3201DetailDto == null) { + throw new ServiceException("未查询到相关信息"); + } + return ybUtil.getFinancial3201Param(reconciliation3201Param, settlement3201DetailDto); + } + + /** + * 保存记录 + * + * @param tableName 表名 + * @param id 主键id + * @param s 类型 3301/3302 + * @param medicalDirectory3301Param 参数信息 + */ + public void saveDirectoryHistory(String tableName, Long id, Integer s, + MedicalDirectory3301Param medicalDirectory3301Param) { + Long hospitalId = SecurityUtils.getLoginUser().getHospitalId(); + DirectoryCheckRecord directoryCheckRecord = new DirectoryCheckRecord(); + directoryCheckRecord.setTableName(tableName).setTableId(id).setOrgId(hospitalId).setType(s) + .setParam(JSON.toJSONString(medicalDirectory3301Param)); + directoryCheckRecordService.save(directoryCheckRecord); + } + + /** + * 保存记录 + * + * @param tableName 表名 + * @param id 主键id + * @param s 类型 3301/3302 + * @param medicalDirectory3302Param 参数信息 + */ + public void saveDirectoryHistory(String tableName, Long id, Integer s, + MedicalDirectory3302Param medicalDirectory3302Param) { + Long hospitalId = SecurityUtils.getLoginUser().getHospitalId(); + DirectoryCheckRecord directoryCheckRecord = new DirectoryCheckRecord(); + directoryCheckRecord.setTableName(tableName).setTableId(id).setOrgId(hospitalId).setType(s) + .setParam(JSON.toJSONString(medicalDirectory3302Param)); + directoryCheckRecordService.save(directoryCheckRecord); + } + + /** + * 【9001】签到 + * + * @param id 员工id + * @return 9001参数 + */ + public Sign getSignParam(String id, String mac, String ip) { + Practitioner practitioner = iPractitionerService.getById(Long.valueOf(id)); + if (practitioner == null) { + throw new ServiceException("未查询到员工信息"); + } + Sign sign = new Sign(); + sign.setOpterNo(practitioner.getBusNo()).setMac(mac.replace(" ", "+")).setIp(ip) + .setOpterNo(String.valueOf(practitioner.getId())); + return sign; + } + + /** + * 保存3201的信息 + * + * @param financial3201Output 对账结果信息 + */ + public void saveReconcileGeneralLedger(Financial3201Output financial3201Output, + Financial3201Param financial3201Param) { + FinancialReconcileRecord financialReconcileRecord = new FinancialReconcileRecord(); + BeanUtils.copyProperties(financial3201Output, financialReconcileRecord); + financialReconcileRecord.setParam(JSON.toJSONString(financial3201Output)); + financialReconcileRecord.setFixmedinsName(financial3201Param.getFixmedinsName()); + financialReconcileRecord.setAcctPay(financial3201Param.getAcctPay()); + financialReconcileRecord.setFundPaySumamt(financial3201Param.getFundPaySumamt()); + financialReconcileRecord.setFixmedinsCode(financial3201Param.getFixmedinsCode()); + financialReconcileRecord.setClrType(financial3201Param.getClrType()); + financialReconcileRecord.setFixmedinsSetlCnt(financial3201Param.getFixmedinsSetlCnt()); + financialReconcileRecord.setMedfeeSumamt(financial3201Param.getMedfeeSumamt()); + financialReconcileRecord.setSetlOptins(financial3201Param.getSetlOptins()); + iFinancialReconcileRecordService.save(financialReconcileRecord); + } + + /** + * 【3202】明细对账 + * + * @param settlement3202WebParam 前台参数 + * @return 3202参数 + */ + public FinancialSettlement3202Param getFinancialSettlement3202Param(Settlement3202WebParam settlement3202WebParam) { + return ybUtil.getFinancialSettlement3202Param(settlement3202WebParam); + } + + /** + * 【3209A】查询跨省三方对账未成功数据(吉林省) + * + * @param settlement3209AWebParam 前台参数 + * @return 结果 + */ + public FinancialSettlement3209AParam + getFinancialSettlement3209AParam(Settlement3209AWebParam settlement3209AWebParam) { + return ybUtil.getFinancialSettlement3209AParam(settlement3209AWebParam); + } + + /** + * 【3203A】清算申请(吉林省) + * + * @param financial3203AWebParam 前台参数 + * @return 结果 + */ + public Financial3203AParam getFinancial3203AParam(Financial3203AWebParam financial3203AWebParam) { + // 查询3202的所有实体记录 + List financial3202FileParams = + paymentCompareYbSettle(financial3203AWebParam.getSettlementIdList()); + // 处理赋值 + Financial3203AParam busMonthSetlApply = getInitFinancial3203AParam(financial3202FileParams); + // 时间处理 + getFinancial3203AParamForTime(busMonthSetlApply, + DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss:", financial3203AWebParam.getStmtBegnDate()), + DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss:", financial3203AWebParam.getStmtEndDate())); + // 将 Date 转换为 LocalDate(Java 8+) + // LocalDate begnLocalDate = financial3203AWebParam.getStmtBegnDate().toInstant() + // .atZone(ZoneId.systemDefault()) + // .toLocalDate(); + // LocalDate endLocalDate = financial3203AWebParam.getStmtEndDate().toInstant() + // .atZone(ZoneId.systemDefault()) + // .toLocalDate(); + + // 格式化为 "yyyy-MM-dd" + // DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + // String begnDateStr = begnLocalDate.format(formatter); + // String endDateStr = endLocalDate.format(formatter); + + // Financial3203AParam busMonthSetlApply = new Financial3203AParam(); + // 赋值 + busMonthSetlApply.setClrType(financial3203AWebParam.getClrType()) + // .setBegndate(DateUtils.dateTime("yyyy-MM-dd", begnDateStr)) + // .setEnddate(DateUtils.dateTime("yyyy-MM-dd", endDateStr)) + .setClrOptins(financial3203AWebParam.getClrOptins()); + return busMonthSetlApply; + } + + /** + * 自动申请清算 + * + * @param financial3202FileParams + * @param beginTime + * @param endTime + * @param clrType + * @param clrOptins + * @return + */ + public Financial3203AParam getFinancial3203AParam(List financial3202FileParams, + String beginTime, String endTime, String clrType, String clrOptins) { + if (financial3202FileParams.isEmpty()) { + throw new ServiceException("无医保结算数据"); + } + Financial3203AParam financial3203AParam = getInitFinancial3203AParam(financial3202FileParams); + + getFinancial3203AParamForTime(financial3203AParam, beginTime, endTime); + + return financial3203AParam.setClrType(clrType).setClrOptins(clrOptins); + } + + /** + * 自动申请清算 + * + * @param financial3203AParam + * @param beginTime + * @param endTime + * @return + */ + public Financial3203AParam getFinancial3203AParamForTime(Financial3203AParam financial3203AParam, + @NotNull String beginTime, @NotNull String endTime) { + + // 定义日期时间格式 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + + // 解析成 LocalDateTime(包含日期+时间) + LocalDateTime begnLocalDateTime = LocalDateTime.parse(beginTime, formatter); + LocalDateTime endLocalDateTime = LocalDateTime.parse(endTime, formatter); + + // 转换成 LocalDate(自动丢弃时间部分) + LocalDate begnLocalDate = begnLocalDateTime.toLocalDate(); + LocalDate endLocalDate = endLocalDateTime.toLocalDate(); + + // 格式化为 "yyyy-MM-dd" + DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + String begnDateStr = begnLocalDate.format(dateFormatter); + String endDateStr = endLocalDate.format(dateFormatter); + + // Financial3203AParam busMonthSetlApply = new Financial3203AParam(); + // 再赋值 + financial3203AParam.setBegndate(DateUtils.dateTime("yyyy-MM-dd", begnDateStr)) + .setEnddate(DateUtils.dateTime("yyyy-MM-dd", endDateStr)); + return financial3203AParam; + } + + /** + * 【3203A】Financial3203AParam清算申请参数处理(吉林省) + * + * @param financial3202FileParams 入参 + * @return 结果 + */ + public Financial3203AParam getInitFinancial3203AParam(List financial3202FileParams) { + + BigDecimal medfeeSumamt = BigDecimal.ZERO; + BigDecimal fundPaySumamt = BigDecimal.ZERO; + BigDecimal medSumfee = BigDecimal.ZERO; + BigDecimal acctPay = BigDecimal.ZERO; + BigDecimal cashPay = BigDecimal.ZERO; + for (Financial3202FileParam financial3202FileParam : financial3202FileParams) { + if (financial3202FileParam instanceof Financial3202OtherParam otherParam) { + medfeeSumamt = medfeeSumamt.add(otherParam.getMedfeeSumamt()); + fundPaySumamt = fundPaySumamt.add(otherParam.getFundPaySumamt()); + acctPay = acctPay.add(otherParam.getAcctPay()); + cashPay = cashPay.add(otherParam.getCashPayamt()); + medSumfee = medSumfee.add(otherParam.getMedSumfee()); + } + } + // 赋值 + Financial3203AParam busMonthSetlApply = new Financial3203AParam(); + busMonthSetlApply.setMedfeeSumamt(medfeeSumamt).setMedSumfee(medSumfee).setCashPayamt(cashPay) + .setAcctPay(acctPay); + // .setClrType(financial3203AWebParam.getClrType()) + // .setClrOptins(financial3203AWebParam.getClrOptins()) + // .setBegndate(DateUtils.dateTime("yyyy-MM-dd", begnDateStr)) + // .setEnddate(DateUtils.dateTime("yyyy-MM-dd", endDateStr)); + return busMonthSetlApply; + } + + /** + * 【3205A】清算申请状态查询(吉林省) + * + * @param clearing3205AWebParma 前台参数 + * @return 结果 + */ + public Clearing3205AParma getClearing3205AParma(Clearing3205AWebParma clearing3205AWebParma) { + return ybUtil.getClearing3205AParma(clearing3205AWebParma); + } + + /** + * 【3501】商品盘存上传 + * + * @param id 供应申请id + * @param talentId 租户id + * @return 结果 + */ + public MedicalInventory3501Param getMedicalInventory3501Param(Long id, Integer talentId) { + return ybUtil.getMedicalInventory3501Param(id, talentId); + } + + /** + * 【3502】库存信息变更 + * + * @param id 供应链发放id + * @param invChgType 变更类型 参考枚举 + * @param talentId 租户id + * @return 结果 + */ + public MedicalInventory3502Param getMedicalInventory3502Param(Long id, String invChgType, Integer talentId) { + return ybUtil.getMedicalInventory3502Param(id, invChgType, talentId); + } + + /** + * 【3503】商品采购 + * + * @param id 供应发放id + * @param talentId 租户id + * @return 结果 + */ + public Medical3503Param getMedical3503Param(Long id, Integer talentId) { + return ybUtil.getMedical3503Param(id, talentId); + } + + /** + * 【3504】商品采购退货 + * + * @param id 供应发放id + * @param talentId 租户id + * @return 结果 + */ + public MedicalPurchase3504Param getMedicalPurchase3504Param(Long id, Integer talentId) { + return ybUtil.getMedicalPurchase3504Param(id, talentId); + } + + /** + * 【3505】商品销售 + * + * @param id 发放id + * @param ListType 耗材/药品 + * @param talentId 租户id + * @return 结果 + */ + public Medical3505Param getMedical3505Param(Long id, String ListType, Integer talentId) { + return ybUtil.getMedical3505Param(id, ListType, talentId); + } + + /** + * 【3506】商品销售退货 + * + * @param id 对应发放业务的主键id + * @param ListType 目录种类 + * @param talentId 租户id + * @return 3506参数 + */ + public Medical3506Param getMedical3506Param(Long id, String ListType, Integer talentId) { + return ybUtil.getMedical3506Param(id, ListType, talentId); + } + + /** + * 【3507】商品信息删除参数 + * + * @param id 库存项目id + * @param invDataType 进销存类型 + * @return 3507参数 + */ + public Medical3507Param getMedical3507Param(Long id, String invDataType) { + return ybUtil.getMedical3507Param(id, invDataType); + } + + /** + * 保存清算申请参数 + * + * @param financial3203AParam 3203A入参 + * @param s 一包返回结果 + */ + public void save3203AFinancialClearingApplycation(Financial3203AParam financial3203AParam, String s) { + FinancialApplyRecord financialApplyRecord = new FinancialApplyRecord(); + BeanUtils.copyProperties(financial3203AParam, financialApplyRecord); + financialApplyRecord.setParam(JSON.toJSONString(financial3203AParam)).setOutResult(s) + .setPraId(SecurityUtils.getLoginUser().getPractitionerId()).setStatus("0"); + iFinancialApplyRecordService.save(financialApplyRecord); + } + + /** + * 清算申请撤销 + * + * @param clrAppyEvtId 时间id + * @param clrOptins 清算机构 + */ + public void save3204AFinancialClearingApplycation(String clrAppyEvtId, String clrOptins) { + iFinancialApplyRecordService.update(new FinancialApplyRecord().setStatus("1"), + new LambdaUpdateWrapper().eq(FinancialApplyRecord::getOutResult, clrAppyEvtId)); + } + + /** + * 保存数据 + * + * @param medicalInventory3501Param 3501参数 + */ + + public void saveInventoryCheckRecord(MedicalInventory3501Param medicalInventory3501Param, String resultMessage) { + InventoryCheckRecord inventoryCheckRecord = new InventoryCheckRecord(); + BeanUtils.copyProperties(medicalInventory3501Param, inventoryCheckRecord); + inventoryCheckRecord.setParam(JSON.toJSONString(medicalInventory3501Param)); + inventoryCheckRecord.setResult(JSON.toJSONString(resultMessage)); + iInventoryCheckRecordService.save(inventoryCheckRecord); + } + + /** + * 保存数据 + * + * @param medical3507Param 3507参数 + */ + public void saveInventoryDelRecord(Medical3507Param medical3507Param) { + InventoryDelRecord inventoryDelRecord = new InventoryDelRecord(); + BeanUtils.copyProperties(medical3507Param, inventoryDelRecord); + inventoryDelRecord.setParam(JSON.toJSONString(medical3507Param)); + iInventoryDelRecordService.save(inventoryDelRecord); + } + + /** + * 保存数据 + * + * @param medical3506Param 3506参数 + */ + public void saveInventorySaleReturnRecord(Medical3506Param medical3506Param, String retRslt) { + InventorySaleReturnRecord inventorySaleReturnRecord = new InventorySaleReturnRecord(); + BeanUtils.copyProperties(medical3506Param, inventorySaleReturnRecord); + inventorySaleReturnRecord.setParam(JSON.toJSONString(medical3506Param)); + inventorySaleReturnRecord.setOutResult(JSON.toJSONString(retRslt)); + iInventorySaleReturnRecordService.save(inventorySaleReturnRecord); + } + + /** + * 保存数据 + * + * @param medical3505Param 3505参数 + */ + public void saveInventorySaleRecord(Medical3505Param medical3505Param, String retRslt) { + InventorySaleRecord inventorySaleRecord = new InventorySaleRecord(); + BeanUtils.copyProperties(medical3505Param, inventorySaleRecord); + inventorySaleRecord.setParam(JSON.toJSONString(medical3505Param)); + inventorySaleRecord.setOutResult(JSON.toJSONString(retRslt)); + inventorySaleRecord.setDrugtracinfo(JSON.toJSONString(medical3505Param.getDrugtracinfo())); + iInventorySaleRecordService.save(inventorySaleRecord); + } + + /** + * 保存数据 + * + * @param medicalPurchase3504Param 3504参数 + */ + public void saveInventoryPurchaseReturnRecord(MedicalPurchase3504Param medicalPurchase3504Param, + String resultMessage) { + InventoryPurchaseReturnRecord inventoryPurchaseReturnRecord = new InventoryPurchaseReturnRecord(); + BeanUtils.copyProperties(medicalPurchase3504Param, inventoryPurchaseReturnRecord); + inventoryPurchaseReturnRecord.setParam(JSON.toJSONString(medicalPurchase3504Param)); + inventoryPurchaseReturnRecord.setOutResult(JSON.toJSONString(resultMessage)); + iInventoryPurchaseReturnRecordService.save(inventoryPurchaseReturnRecord); + } + + /** + * 保存数据 + * + * @param medical3503Param 3503参数 + */ + public void saveInventoryPurchaseRecord(Medical3503Param medical3503Param, String resultMessage) { + InventoryPurchaseRecord inventoryPurchaseRecord = new InventoryPurchaseRecord(); + BeanUtils.copyProperties(medical3503Param, inventoryPurchaseRecord); + inventoryPurchaseRecord.setParam(JSON.toJSONString(medical3503Param)); + inventoryPurchaseRecord.setOutResult(JSON.toJSONString(resultMessage)); + iInventoryPurchaseRecordService.save(inventoryPurchaseRecord); + } + + /** + * 保存数据 + * + * @param medicalInventory3502Param 3502参数 + */ + public void saveInventoryChangeRecord(MedicalInventory3502Param medicalInventory3502Param, String resultMessage) { + InventoryChangeRecord inventoryChangeRecord = new InventoryChangeRecord(); + BeanUtils.copyProperties(medicalInventory3502Param, inventoryChangeRecord); + inventoryChangeRecord.setParam(JSON.toJSONString(medicalInventory3502Param)); + inventoryChangeRecord.setResult(JSON.toJSONString(resultMessage)); + iInventoryChangeRecordService.save(inventoryChangeRecord); + } + + /** + * 保存医保结算参数等信息(挂号用) + * + * @param paymentNo + * @param clinicOrder2207 + * @param clinic2206OrderResult + */ + public void saveClinic2207Record(String paymentNo, Clinic2207OrderParam clinicOrder2207, + Clinic2207OrderModel clinic2206OrderResult) { + ClinicSettle clinicSettle = new ClinicSettle(); + BeanUtils.copyProperties(clinic2206OrderResult, clinicSettle); + clinicSettle.setParam2207(JSON.toJSONString(clinicOrder2207)) + .setResult2207(JSON.toJSONString(clinic2206OrderResult)).setPaymentNo(paymentNo); + iClinicSettleService.save(clinicSettle); + } + + /** + * 保存医保结算参数等信息(常规结算用) + * + * @param clinicOrder2207 + * @param clinic2206OrderResult + */ + public void saveClinic2207Record(Clinic2207OrderParam clinicOrder2207, Clinic2207OrderModel clinic2206OrderResult) { + ClinicSettle clinicSettle = new ClinicSettle(); + BeanUtils.copyProperties(clinic2206OrderResult, clinicSettle); + clinicSettle.setParam2207(JSON.toJSONString(clinicOrder2207)) + .setResult2207(JSON.toJSONString(clinic2206OrderResult)); + iClinicSettleService.save(clinicSettle); + } + + public PatientInfoDto getPatent(Info1101Output perInfo) { + // 查患者信息 + Patient patient = + iPatientService.getOne(new LambdaQueryWrapper().eq(Patient::getIdCard, perInfo.getCertno())); + if (patient == null) { + patient = new Patient(); + // 处理性别字段 + YbGender ybGender = YbGender.getByValue(perInfo.getGend()); + AdministrativeGender administrativeGender; + switch (ybGender) { + case MALE: + administrativeGender = AdministrativeGender.MALE; + break; + case FEMALE: + administrativeGender = AdministrativeGender.FEMALE; + break; + default: + administrativeGender = AdministrativeGender.UNKNOWN; + break; + } + // 新建患者 + patient.setIdCard(perInfo.getCertno()).setName(perInfo.getPsnName()) + .setGenderEnum(administrativeGender.getValue()).setActiveFlag(0).setTempFlag(0) + .setOrganizationId(SecurityUtils.getLoginUser().getOrgId()).setBirthDate(perInfo.getBrdy()); + iPatientService.savePatient(patient); + } + // 赋值 + PatientInfoDto patientInfoDto = new PatientInfoDto(); + BeanUtils.copyProperties(patient, patientInfoDto); + // 查合同 2025/05/23 弃用,费用性质固定,如农大只有省医保,费用性质只显示省医保和自费即可,由@GetMapping(value = "/contract-list")接口提供数据 + Contract contract = iContractService + .getOne(new LambdaQueryWrapper().eq(Contract::getAdmVs, perInfo.getInsuplcAdmdvs())); + if (contract != null) { + // BeanUtils.copyProperties(contract, patientInfoDto); + patientInfoDto.setContractBusNo(contract.getBusNo()); + } + patientInfoDto.setId(patient.getId()).setFeedetail(perInfo.getFeedetail()); + + return patientInfoDto; + } + + public ClinicReg getUnReg(Long encounterId, Integer tenantId) { + + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("查询不到就诊信息"); + } + + ClinicReg one = + iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); + if (one == null) { + throw new ServiceException("查询不到医保挂号信息"); + } + ClinicReg clinicReg = new ClinicReg().setPsnNo(one.getPsnNo()).setMdtrtId(one.getMdtrtId()) + .setIptOtpNo(encounter.getBusNo()).setInsuplcAdmdvs(one.getInsuplcAdmdvs()); + if (clinicReg == null) { + throw new ServiceException("未生成2202参数"); + } + return clinicReg; + } + + public List reconcileGeneralLedgerDetail(Settlement3201WebParam settlement3201WebParam) { + // 获取条件 + String clrType = settlement3201WebParam.getClrType();// 住院 or 门诊 + Integer kindEnum; + if (clrType.equals(YbClrType.OUTPATIENT_CLINIC.getValue())) { + kindEnum = PaymentKind.OUTPATIENT_CLINIC.getValue(); + } else if (clrType.equals(YbClrType.INPATIENT_CARE.getValue())) { + kindEnum = PaymentKind.INPATIENT_CLINIC.getValue(); + } else { + throw new ServiceException("请选择门诊或住院"); + } + String contractNo = settlement3201WebParam.getContractNo();// 省市医保 + String insuType = settlement3201WebParam.getInsuType();// 职工 or 居民保险 + String stmtBegnDate = settlement3201WebParam.getStmtBegnDate();// 开始时间 + String stmtEndDate = settlement3201WebParam.getStmtEndDate();// 结束时间 + Date startDate = DateUtils.parseDate(stmtBegnDate); + Date endDate = DateUtils.parseDate(stmtEndDate); + // 处理时间 + if (StringUtils.isEmpty(stmtBegnDate) || StringUtils.isEmpty(stmtEndDate)) { + // 获取当前日期 + LocalDate currentDate = LocalDate.now(); + + if (StringUtils.isEmpty(stmtBegnDate)) { + // 获取当月的开始时间(当月的1号 00:00:00) + LocalDateTime startOfMonth = LocalDateTime.of(currentDate, LocalTime.MIN); + startDate = Date.from(startOfMonth.atZone(ZoneId.systemDefault()).toInstant()); + stmtBegnDate = DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss.SSS", startDate); + } + + if (StringUtils.isEmpty(stmtEndDate)) { + // 获取当月的结束时间(当月的最后一天 23:59:59) + LocalDate endOfMonthDate = currentDate.withDayOfMonth(currentDate.lengthOfMonth()); + LocalDateTime endOfMonth = LocalDateTime.of(endOfMonthDate, LocalTime.MAX); + endDate = Date.from(endOfMonth.atZone(ZoneId.systemDefault()).toInstant()); + stmtEndDate = DateUtils.parseDateToStr("yyyy-MM-dd hh:mm:ss.SSS", endDate); + } + } + // 查询该段时间内的payment + List paymentReconciliations = + iPaymentReconciliationService.list(new LambdaQueryWrapper() + .between(PaymentReconciliation::getBillDate, startDate, endDate) + .ne(PaymentReconciliation::getStatusEnum, PaymentStatus.DRAFT.getValue()) + .eq(PaymentReconciliation::getKindEnum, PaymentKind.OUTPATIENT_CLINIC.getValue()) + .isNotNull(PaymentReconciliation::getYbSettleIds)); + // 过滤医保结算id + List settleIdList = + paymentReconciliations.stream().filter(e -> StringUtils.isNotEmpty(e.getYbSettleIds())) + .map(PaymentReconciliation::getYbSettleIds).collect(Collectors.toList()); + + // List allSettleIds = settleIdList.stream().flatMap(ids -> Stream.of(ids.split(","))).filter(id -> + // !id.isEmpty()).collect(Collectors.toList()); + // 获取新的paymentId集合 + List paymentReconciliationIdList = + paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); + // List paymentRecDetailList = iPaymentRecDetailService.list(new + // LambdaQueryWrapper().in(PaymentRecDetail::getReconciliationId, + // paymentReconciliationIdList)); + // List accountIds = + // paymentRecDetailList.stream().map(PaymentRecDetail::getAccountId).collect(Collectors.toList()); + // List accountList = accountService.list(new LambdaQueryWrapper().in(Account::getId, + // accountIds)); + // 查询支付详情记录信息 + List paymentDecDetailUniAccountDtos = + medicalInsuranceMapper.getPaymentDecDetailUniAccountDtoListByPaymentIdList(paymentReconciliationIdList, + startDate, endDate, PaymentStatus.DRAFT.getValue()); + // 声明变量 + List settlement3201DetailDtos = new ArrayList<>(); + // Settlement3201DetailDto settlement3201ProEMPOutDto = new Settlement3201DetailDto();//省医保门诊职工 + // Settlement3201DetailDto settlement3201CityEMPOutDto = new Settlement3201DetailDto();//市医保门诊居民 + // Settlement3201DetailDto settlement3201ProRESOutDto = new Settlement3201DetailDto();//省医保门诊职工 + // Settlement3201DetailDto settlement3201CityRESOutDto = new Settlement3201DetailDto();//市医保门诊居民 + // Settlement3201DetailDto settlement3201ProEMPInDto = new Settlement3201DetailDto();//省医保住院职工 + // Settlement3201DetailDto settlement3201CityEMPInDto = new Settlement3201DetailDto();//市医保住院居民 + // Settlement3201DetailDto settlement3201ProRESInDto = new Settlement3201DetailDto();//省医保住院职工 + // Settlement3201DetailDto settlement3201CityRESInDto = new Settlement3201DetailDto();//市医保住院居民 + Settlement3201DetailDto settlement3201Dto;// 声明变量 + // 分组处理 + // for (PaymentDecDetailUniAccountDto paymentDecDetailUniAccountDto : paymentDecDetailUniAccountDtos) { + // if(StringUtils.isEmpty(paymentDecDetailUniAccountDto.getContractNo())){ + // System.out.println(paymentDecDetailUniAccountDto.getId()); + // } + // } + for (PaymentDecDetailUniAccountDto paymentDecDetailUniAccountDto : paymentDecDetailUniAccountDtos) { + if (StringUtils.isEmpty(paymentDecDetailUniAccountDto.getContractNo())) { + System.out.println(paymentDecDetailUniAccountDto.getId() + "payment主键:" + + paymentDecDetailUniAccountDto.getReconciliationId()); + } + } + + Map> paymentDecDetailUniAccountDtoMapGroupByContract = + paymentDecDetailUniAccountDtos.stream() + .collect(Collectors.groupingBy(PaymentDecDetailUniAccountDto::getContractNo)); + // 分省市医保 + for (Map.Entry> stringListEntry : paymentDecDetailUniAccountDtoMapGroupByContract + .entrySet()) { + if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(stringListEntry.getKey())) { + continue; + } + if (stringListEntry.getValue().isEmpty()) { + continue; + } + if (!StringUtils.isEmpty(contractNo) && !stringListEntry.getKey().equals(contractNo)) { + continue; + } + // 分住院门诊 + Map> paymentDecDetailUniAccountDtoMapGroupByMedType = + stringListEntry.getValue().stream() + .collect(Collectors.groupingBy(PaymentDecDetailUniAccountDto::getKindEnum)); + for (Map.Entry> listEntry : paymentDecDetailUniAccountDtoMapGroupByMedType + .entrySet()) { + if (listEntry.getValue().isEmpty()) { + continue; + } + if (!StringUtils.isEmpty(clrType) && !listEntry.getKey().equals(kindEnum)) { + continue; + } + // 分职工居民 + Map> collect = listEntry.getValue().stream() + .collect(Collectors.groupingBy(PaymentDecDetailUniAccountDto::getInsutype)); + for (Map.Entry> entry : collect.entrySet()) { + if (entry.getValue().isEmpty()) { + continue; + } + if (!StringUtils.isEmpty(insuType) && !entry.getKey().equals(insuType)) { + continue; + } + int count = 0; + settlement3201Dto = new Settlement3201DetailDto(); + settlement3201Dto.setContractNo(stringListEntry.getKey()) + .setInsutype(Integer.parseInt(entry.getKey())); + if (PaymentKind.OUTPATIENT_CLINIC.getValue() == listEntry.getKey()) { + settlement3201Dto.setClrType(YbClrType.OUTPATIENT_CLINIC.getValue()); + } else if (PaymentKind.INPATIENT_CLINIC.getValue() == listEntry.getKey()) { + settlement3201Dto.setClrType(YbClrType.INPATIENT_CARE.getValue()); + } + for (PaymentDecDetailUniAccountDto paymentDecDetailUniAccountDto : entry.getValue()) { + if (YbPayment.YB_FUND_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum())) { + // 基金支付 + settlement3201Dto.setFundPaySumAmt( + paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getFundPaySumAmt())); + if (BigDecimal.ZERO.compareTo(paymentDecDetailUniAccountDto.getAmount()) >= 0 + && paymentDecDetailUniAccountDto.getReturnMedfeeSumamt() != null) { + // 合计医疗费用 + settlement3201Dto.setMedFeeSumAmt( + new BigDecimal(paymentDecDetailUniAccountDto.getReturnMedfeeSumamt() == null ? "0.0" + : paymentDecDetailUniAccountDto.getReturnMedfeeSumamt()) + .add(settlement3201Dto.getMedFeeSumAmt())); + } else { + // 合计医疗费用 + settlement3201Dto.setMedFeeSumAmt( + new BigDecimal(paymentDecDetailUniAccountDto.getMedfeeSumamt() == null ? "0.0" + : paymentDecDetailUniAccountDto.getMedfeeSumamt()) + .add(settlement3201Dto.getMedFeeSumAmt())); + } + count++; + } + if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum())) { + // 账户支付 + settlement3201Dto.setAcctPay( + paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getAcctPay())); + } + if (YbPayment.SELF_YB_ZH_GJ_VALUE.getValue() + .equals(paymentDecDetailUniAccountDto.getPayEnum())) { + // 账户共济支付 + settlement3201Dto.setAcctGjPay( + paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getAcctGjPay())); + } + // if (YbPayment.SELF_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum()) + // || YbPayment.OTHER_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum()) + // || YbPayment.YB_FUND_PAY.getValue().equals(paymentDecDetailUniAccountDto.getPayEnum())) { + // // 合计医疗费用 + // settlement3201Dto.setMedFeeSumAmt( + // paymentDecDetailUniAccountDto.getAmount().add(settlement3201Dto.getMedFeeSumAmt())); + // } + } + // 结算笔数 + settlement3201Dto.setFixMedInsSetlCnt(count); + settlement3201DetailDtos.add(settlement3201Dto); + } + } + } + // 返回参数 + return settlement3201DetailDtos; + } + + public ClinicReg2201Output getClinicRegByEncounterId(Long encounterId) { + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + ClinicReg clinicReg = + iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); + ClinicReg2201Output clinicReg2201Output = new ClinicReg2201Output(); + BeanUtils.copyProperties(clinicReg, clinicReg2201Output); + clinicReg2201Output.setMedType(clinicReg.getMedType());// copyProperties会有概率copy失败,此处打补丁赋值 + return clinicReg2201Output; + } + + public ClinicReg get2202Reg(Long id, Integer tenantId) { + Encounter encounter = iEncounterService.getById(id); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + return iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); + } + + /** + * 系統數據比較 + * + * @param settlement3202WebParam + */ + public List paymentCompareYbSettle(Settlement3202WebParam settlement3202WebParam) { + // 比较yb_clinic_settle表和payment系列表数据是否一致 + String stmtBegnDate = String.valueOf(settlement3202WebParam.getStmtBegnDate()); + String stmtEndDate = String.valueOf(settlement3202WebParam.getStmtEndDate()); + if (StringUtils.isEmpty(stmtBegnDate) || StringUtils.isEmpty(stmtEndDate)) { + throw new ServiceException("未选择开始与结束时间"); + } + + Date startDate = DateUtils.parseDate(stmtBegnDate); + Date endDate = DateUtils.parseDate(stmtEndDate); + + // 查询该段时间内的payment + List paymentReconciliations = + iPaymentReconciliationService.list(new LambdaQueryWrapper() + .between(PaymentReconciliation::getBillDate, startDate, endDate) + .ne(PaymentReconciliation::getStatusEnum, PaymentStatus.DRAFT.getValue()) + .ne(PaymentReconciliation::getYbSettleIds, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentReconciliation::getYbSettleIds, "null").isNotNull(PaymentReconciliation::getYbSettleIds) + .eq(PaymentReconciliation::getKindEnum, PaymentKind.OUTPATIENT_CLINIC.getValue())); + if (paymentReconciliations.isEmpty()) { + throw new ServiceException("该时间内无付款记录"); + } + + // 过滤医保结算id + List settleIdList = paymentReconciliations.stream() + .filter(e -> StringUtils.isNotEmpty(e.getYbSettleIds())).map(PaymentReconciliation::getYbSettleIds) + .flatMap(ybSettleIds -> Arrays.stream(ybSettleIds.split(","))).collect(Collectors.toList()); + if (settleIdList.isEmpty()) { + throw new ServiceException("该时间内无医保付款记录"); + } + + // 查询医保表数据 + List clinicSettles = + iClinicSettleService.list(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settleIdList)); + List clinicUnSettles = iClinicUnSettleService + .list(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settleIdList)); + + // payment的id集合 + List paymentReconciliationIdList = + paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); + + // 查询详情表数据 + List paymentRecDetailList = + iPaymentRecDetailService.list(new LambdaQueryWrapper() + .in(PaymentRecDetail::getReconciliationId, paymentReconciliationIdList) + .ne(PaymentRecDetail::getPayTransNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentRecDetail::getPayTransText, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_ALI_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VX_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_UNION_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VALUE.getValue())); + if (paymentRecDetailList.isEmpty()) { + throw new ServiceException("该时间内无付款明细记录"); + } + // 该部分代码为辅助调试时使用,无任何业务处理 start + // for (PaymentRecDetail paymentRecDetail : paymentRecDetailList) { + // if (StringUtils.isEmpty(paymentRecDetail.getPayTransText())) { + // System.out.println("*******************************************************************"); + // System.out.println(paymentRecDetail.getId() + "主键:" + paymentRecDetail.getReconciliationId()); + // System.out.println(JSON.toJSONString(paymentRecDetail)); + // // throw new ServiceException("paymentDetail无返回交易码"); + // } + // } + // end + + Map> paymentRecDetailMapBySettleId = + paymentRecDetailList.stream().collect(Collectors.groupingBy(PaymentRecDetail::getPayTransText)); + + List financial3202FileParamList = new ArrayList<>(); + Financial3202FileParam financial3202FileParam; + for (Map.Entry> stringListEntry : paymentRecDetailMapBySettleId.entrySet()) { + // 获取settleId + String settleId = stringListEntry.getKey(); + if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(settleId) || StringUtils.isEmpty(settleId)) { + continue; + } + Optional settleOptional = + clinicSettles.stream().filter(e -> settleId.equals(e.getSetlId())).findAny(); + Optional unSettleOptional = + clinicUnSettles.stream().filter(e -> settleId.equals(e.getSettleId())).findAny(); + if (!settleOptional.isPresent() && !unSettleOptional.isPresent()) { + throw new ServiceException("付款详情中结算id在医保记录中不存在,错误信息:paymentId:" + + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); + } + if (settleOptional.isPresent() && unSettleOptional.isPresent()) { + throw new ServiceException("付款详情中结算id在医保记录中同时存在正结和反结,错误信息:paymentId:" + + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); + } + // 校对金额 + BigDecimal medfeeSumamt = BigDecimal.ZERO; + BigDecimal fundPaySumamt = BigDecimal.ZERO; + BigDecimal acctPay = BigDecimal.ZERO; + String refdSetlFlag = Whether.NO.getCode();// 1 是退费; 0否 + String psnNo = ""; + String mdtrtId = ""; + String patientName = ""; + String setlTime = ""; + + for (PaymentRecDetail paymentRecDetail : stringListEntry.getValue()) { + if (YbPayment.YB_FUND_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); + fundPaySumamt = fundPaySumamt.add(paymentRecDetail.getAmount()); + } + if (YbPayment.SELF_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); + } + // if(YbPayment.OTHER_PAY.getValue().equals(paymentRecDetail.getPayEnum())){ + // medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); + // } + if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + acctPay = acctPay.add(paymentRecDetail.getAmount()); + } + } + + if (settleOptional.isPresent()) { + ClinicSettle clinicSettle = settleOptional.get(); + if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { + throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() + + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); + } + if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { + throw new ServiceException("医保正结记录与业务记录医疗总金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() + + " 医疗总金额:" + clinicSettle.getMedfeeSumamt() + " payment记录医疗总金额:" + medfeeSumamt); + } + if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { + throw new ServiceException("医保正结记录与业务记录基金金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() + + " 基金金额:" + clinicSettle.getFundPaySumamt() + " payment记录基金金额:" + fundPaySumamt); + } + String param2207 = clinicSettle.getParam2207(); + Clinic2207OrderParam clinic2207OrderParam = JSON.parseObject(param2207, Clinic2207OrderParam.class); + psnNo = clinic2207OrderParam.getPsnNo(); + mdtrtId = clinic2207OrderParam.getMdtrtId(); + Clinic2207OrderModel clinic2207OrderModel = + JSON.parseObject(clinicSettle.getResult2207(), Clinic2207OrderModel.class); + patientName = clinic2207OrderModel.getPsnName(); + setlTime = String.valueOf(clinic2207OrderModel.getSetlTime()); + } + + if (unSettleOptional.isPresent()) { + ClinicUnSettle clinicSettle = unSettleOptional.get(); + if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { + throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() + + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); + } + if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { + throw new ServiceException("医保反结记录与业务记录医疗费用总金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() + + " 医疗费用总金额:" + clinicSettle.getMedfeeSumamt() + " payment记录医疗费用总金额:" + medfeeSumamt); + } + if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { + throw new ServiceException("医保反结记录与业务记录基金金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() + + " 基金金额:" + clinicSettle.getFundPaySumamt() + " payment记录基金金额:" + fundPaySumamt); + } + refdSetlFlag = Whether.YES.getCode(); + String param2208 = clinicSettle.getParam2208(); + Clinic2208UnSetlInfoParam clinic2208UnSetlInfoParam = + JSON.parseObject(param2208, Clinic2208UnSetlInfoParam.class); + psnNo = clinic2208UnSetlInfoParam.getPsnNo(); + mdtrtId = clinic2208UnSetlInfoParam.getMdtrtId(); + Clinic2208UnSetlInfoOutput clinic2207OrderModel = + JSON.parseObject(clinicSettle.getResult2208(), Clinic2208UnSetlInfoOutput.class); + // patientName = clinic2207OrderModel.getPsnName(); + setlTime = String.valueOf(clinic2207OrderModel.getSetlTime()); + } + + financial3202FileParam = new Financial3202FileParam(); + + financial3202FileParam.setSetlId(settleId).setAcctPay(acctPay).setFundPaySumamt(fundPaySumamt) + .setMdtrtId(mdtrtId).setPsnNo(psnNo).setMedfeeSumamt(medfeeSumamt).setRefdSetlFlag(refdSetlFlag) + .setPatientName(patientName).setSetlTime(setlTime); + + financial3202FileParamList.add(financial3202FileParam); + } + + return financial3202FileParamList; + } + + /** + * 系統數據比較 + * + * @param settlementIdList + */ + public List paymentCompareYbSettle(List settlementIdList) { + // 比较yb_clinic_settle表和payment系列表数据是否一致 + // 查询医保表数据 + List clinicSettles = iClinicSettleService + .list(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settlementIdList)); + List clinicUnSettles = iClinicUnSettleService + .list(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settlementIdList)); + + // payment的id集合 + // List paymentReconciliationIdList = + // paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); + + // 查询详情表数据 + List paymentRecDetailList = iPaymentRecDetailService + .list(new LambdaQueryWrapper().in(PaymentRecDetail::getPayTransText, settlementIdList) + .ne(PaymentRecDetail::getPayTransNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentRecDetail::getPayTransText, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_ALI_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VX_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_UNION_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VALUE.getValue()) + .isNotNull(PaymentRecDetail::getPayTransText)); + if (paymentRecDetailList.isEmpty()) { + throw new ServiceException("该时间内无付款明细记录"); + } + // 该部分代码为辅助调试时使用,无任何业务处理 start + for (PaymentRecDetail paymentRecDetail : paymentRecDetailList) { + if (StringUtils.isEmpty(paymentRecDetail.getPayTransText())) { + System.out.println(JSON.toJSONString(paymentRecDetail)); + throw new ServiceException("paymentDetail无返回交易码"); + } + } + // end + + Map> paymentRecDetailMapBySettleId = + paymentRecDetailList.stream().collect(Collectors.groupingBy(PaymentRecDetail::getPayTransText)); + + List financial3202FileParamList = new ArrayList<>(); + Financial3202OtherParam financial3202OtherParam; + for (Map.Entry> stringListEntry : paymentRecDetailMapBySettleId.entrySet()) { + // 获取settleId + String settleId = stringListEntry.getKey(); + if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(settleId)) { + continue; + } + Optional settleOptional = + clinicSettles.stream().filter(e -> settleId.equals(e.getSetlId())).findAny(); + Optional unSettleOptional = + clinicUnSettles.stream().filter(e -> settleId.equals(e.getSettleId())).findAny(); + if (!settleOptional.isPresent() && !unSettleOptional.isPresent()) { + throw new ServiceException("付款详情中结算id在医保记录中不存在,错误信息:paymentId:" + + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); + } + if (settleOptional.isPresent() && unSettleOptional.isPresent()) { + throw new ServiceException("付款详情中结算id在医保记录中同时存在正结和反结,错误信息:paymentId:" + + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); + } + // 校对金额 + BigDecimal medfeeSumamt = BigDecimal.ZERO; + BigDecimal fundPaySumamt = BigDecimal.ZERO; + BigDecimal acctPay = BigDecimal.ZERO; + BigDecimal cashPay = BigDecimal.ZERO; + BigDecimal medSumfee = BigDecimal.ZERO; + String refdSetlFlag = Whether.NO.getCode();// 1 是退费; 0否 + String psnNo = ""; + String mdtrtId = ""; + + for (PaymentRecDetail paymentRecDetail : stringListEntry.getValue()) { + if (YbPayment.YB_FUND_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); + fundPaySumamt = fundPaySumamt.add(paymentRecDetail.getAmount()); + } + if (YbPayment.SELF_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); + } + // if(YbPayment.OTHER_PAY.getValue().equals(paymentRecDetail.getPayEnum())){ + // medfeeSumamt = medfeeSumamt.add(paymentRecDetail.getAmount()); + // } + if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + acctPay = acctPay.add(paymentRecDetail.getAmount()); + } + if (YbPayment.SELF_CASH_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + cashPay = cashPay.add(paymentRecDetail.getAmount()); + } + if (YbPayment.INSCP_SCP_AMT.getValue().equals(paymentRecDetail.getPayEnum())) { + medSumfee = medSumfee.add(paymentRecDetail.getAmount()); + } + } + + if (settleOptional.isPresent()) { + ClinicSettle clinicSettle = settleOptional.get(); + if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { + throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() + + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); + } + if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { + throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() + + " 账户支付:" + clinicSettle.getMedfeeSumamt() + " payment记录账户支付金额:" + medfeeSumamt); + } + if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { + throw new ServiceException("医保正结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSetlId() + + " 账户支付:" + clinicSettle.getFundPaySumamt() + " payment记录账户支付金额:" + fundPaySumamt); + } + String param2207 = clinicSettle.getParam2207(); + Clinic2207OrderParam clinic2207OrderParam = JSON.parseObject(param2207, Clinic2207OrderParam.class); + psnNo = clinic2207OrderParam.getPsnNo(); + mdtrtId = clinic2207OrderParam.getMdtrtId(); + } + + if (unSettleOptional.isPresent()) { + ClinicUnSettle clinicSettle = unSettleOptional.get(); + if (clinicSettle.getAcctPay().compareTo(acctPay) != 0) { + throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() + + " 账户支付:" + clinicSettle.getAcctPay() + " payment记录账户支付金额:" + acctPay); + } + if (clinicSettle.getMedfeeSumamt().compareTo(medfeeSumamt) != 0) { + throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() + + " 账户支付:" + clinicSettle.getMedfeeSumamt() + " payment记录账户支付金额:" + medfeeSumamt); + } + if (clinicSettle.getFundPaySumamt().compareTo(fundPaySumamt) != 0) { + throw new ServiceException("医保反结记录与业务记录账户支付金额不等!请核对!错误信息:医保结算id:" + clinicSettle.getSettleId() + + " 账户支付:" + clinicSettle.getFundPaySumamt() + " payment记录账户支付金额:" + fundPaySumamt); + } + refdSetlFlag = Whether.YES.getCode(); + String param2208 = clinicSettle.getParam2208(); + Clinic2208UnSetlInfoParam clinic2208UnSetlInfoParam = + JSON.parseObject(param2208, Clinic2208UnSetlInfoParam.class); + psnNo = clinic2208UnSetlInfoParam.getPsnNo(); + mdtrtId = clinic2208UnSetlInfoParam.getMdtrtId(); + } + + financial3202OtherParam = new Financial3202OtherParam(); + + financial3202OtherParam.setSetlId(settleId).setAcctPay(acctPay).setFundPaySumamt(fundPaySumamt) + .setMdtrtId(mdtrtId).setPsnNo(psnNo).setMedfeeSumamt(medfeeSumamt).setRefdSetlFlag(refdSetlFlag); + financial3202OtherParam.setCashPayamt(cashPay).setMedSumfee(medSumfee); + financial3202FileParamList.add(financial3202OtherParam); + } + + return financial3202FileParamList; + } + + /** + * 获取3202的现金支付金额 + * + * @param settlementIdList + */ + public FinancialSettlement3202Param getFinancialSettlement3202Param(List settlementIdList, BigDecimal a, + BigDecimal b) { + + // Financial3202OtherParam financial3202OtherParam = new Financial3202OtherParam(); + BigDecimal cashPay = BigDecimal.ZERO; + + // 比较yb_clinic_settle表和payment系列表数据是否一致 + // 查询医保表数据 + List clinicSettles = iClinicSettleService + .list(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settlementIdList)); + List clinicUnSettles = iClinicUnSettleService + .list(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settlementIdList)); + // 防空指针 + if (clinicSettles == null) { + clinicSettles = new ArrayList<>(); + } + if (clinicUnSettles == null) { + clinicUnSettles = new ArrayList<>(); + } + List clinicSettleTime = + clinicSettles.stream().map(ClinicSettle::getSetlTime).collect(Collectors.toList()); + List clinicUnSettleTime = + clinicUnSettles.stream().map(ClinicUnSettle::getSetlTime).collect(Collectors.toList()); + clinicSettleTime.addAll(clinicUnSettleTime); + + Date stmtBegndate = null; + Date stmtEnddate = null; + + // 获取最早的日期 + Optional minDate = clinicSettleTime.stream().min(Date::compareTo); + + // 获取最晚的日期 + Optional maxDate = clinicSettleTime.stream().max(Date::compareTo); + + if (!minDate.isPresent() || !maxDate.isPresent()) { + throw new ServiceException("未查询到医保结算时间"); + } + stmtBegndate = minDate.get(); + stmtEnddate = maxDate.get(); + + // payment的id集合 + // List paymentReconciliationIdList = + // paymentReconciliations.stream().map(PaymentReconciliation::getId).collect(Collectors.toList()); + + // 查询详情表数据 + List paymentRecDetailList = iPaymentRecDetailService + .list(new LambdaQueryWrapper().in(PaymentRecDetail::getPayTransText, settlementIdList) + .ne(PaymentRecDetail::getPayTransNo, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentRecDetail::getPayTransText, CommonConstants.BusinessName.DEFAULT_CONTRACT_NO) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_ALI_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VX_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_UNION_VALUE.getValue()) + .ne(PaymentRecDetail::getPayEnum, YbPayment.SELF_CASH_VALUE.getValue()) + .isNotNull(PaymentRecDetail::getPayTransText)); + if (paymentRecDetailList.isEmpty()) { + throw new ServiceException("该时间内无付款明细记录"); + } + // 该部分代码为辅助调试时使用,无任何业务处理 start + for (PaymentRecDetail paymentRecDetail : paymentRecDetailList) { + if (StringUtils.isEmpty(paymentRecDetail.getPayTransNo())) { + System.out.println(JSON.toJSONString(paymentRecDetail)); + throw new ServiceException("paymentDetail无返回交易码"); + } + } + // end + + Map> paymentRecDetailMapBySettleId = + paymentRecDetailList.stream().collect(Collectors.groupingBy(PaymentRecDetail::getPayTransText)); + + // List financial3202FileParamList = new ArrayList<>(); + // Financial3202FileParam financial3202FileParam; + for (Map.Entry> stringListEntry : paymentRecDetailMapBySettleId.entrySet()) { + // 获取settleId + String settleId = stringListEntry.getKey(); + if (CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(settleId)) { + continue; + } + Optional settleOptional = + clinicSettles.stream().filter(e -> settleId.equals(e.getSetlId())).findAny(); + Optional unSettleOptional = + clinicUnSettles.stream().filter(e -> settleId.equals(e.getSettleId())).findAny(); + if (!settleOptional.isPresent() && !unSettleOptional.isPresent()) { + throw new ServiceException("付款详情中结算id在医保记录中不存在,错误信息:paymentId:" + + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); + } + if (settleOptional.isPresent() && unSettleOptional.isPresent()) { + throw new ServiceException("付款详情中结算id在医保记录中同时存在正结和反结,错误信息:paymentId:" + + stringListEntry.getValue().get(0).getReconciliationId() + ";医保结算id" + settleId); + } + // 校对金额 + for (PaymentRecDetail paymentRecDetail : stringListEntry.getValue()) { + if (YbPayment.SELF_CASH_PAY.getValue().equals(paymentRecDetail.getPayEnum()) + && !CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(paymentRecDetail.getPayTransNo()) + && !CommonConstants.BusinessName.DEFAULT_CONTRACT_NO.equals(paymentRecDetail.getPayTransText())) { + cashPay = cashPay.add(paymentRecDetail.getAmount()); + } + } + } + + FinancialSettlement3202Param financialSettlement3202Param = new FinancialSettlement3202Param(); + financialSettlement3202Param.setCashPayamt(cashPay).setMedfeeSumamt(a).setFundPaySumamt(b) + .setStmtBegndate(stmtBegndate).setStmtEnddate(stmtEnddate); + + return financialSettlement3202Param; + } + + public void uploadFinancialSettlement3202Param(FinancialSettlement3202Param financialSettlement3202Param) { + + } + + public Page getFinancial3203APage(String searchKey, Integer pageNo, Integer pageSize, + HttpServletRequest request) { + + QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(new FinancialApplyRecord(), + searchKey, new HashSet<>(Arrays.asList("out_result")), null); + // 设置排序 + queryWrapper.orderByDesc("create_time"); + + // 申请信息 + Page financialApplyRecordPage = HisPageUtils.selectPage( + iFinancialApplyRecordService.getBaseMapper(), queryWrapper, pageNo, pageSize, FinancialApplyRecord.class); + + return financialApplyRecordPage; + } + + /** + * 根据申请结算ID查找申请结算记录 + * + * @param clrAppyEvtId + * @return + */ + public FinancialApplyRecord getFinancial3204ParamByClrAppyEvtId(String clrAppyEvtId) { + + FinancialApplyRecord financialApplyRecord = iFinancialApplyRecordService + .getOne(new LambdaQueryWrapper().eq(FinancialApplyRecord::getOutResult, clrAppyEvtId) + .orderByDesc(FinancialApplyRecord::getId).last(YbCommonConstants.sqlConst.LIMIT1)); + + if (financialApplyRecord == null) { + throw new ServiceException("未查询到申请记录"); + } + return financialApplyRecord; + } + + /** + * 【2301】住院费用明细上传 + * + * @param encounterId 就诊id + * @return 2301入参 + */ + public Yb2301InputFeeDetailModel getYb2301FeeDetailParam(Long encounterId, List chargeItemIds) { + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊记录"); + } + + InpatientReg inpatientReg = iInpatientRegService + .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) + .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保就诊记录"); + } + + // 获取今天和昨天的上午10点时间 + // LocalDateTime today10AM = LocalDateTime.of(LocalDate.now(), LocalTime.of(10, 0)); // 今天10点 + // LocalDateTime yesterday10AM = today10AM.minusDays(1); // 昨天10点(自动处理跨月/年) + + // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() + // .eq(ChargeItem::getEncounterId, encounterId).between(ChargeItem::getEnteredDate, yesterday10AM, today10AM)); + // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() + // .eq(ChargeItem::getEncounterId, encounterId).in(ChargeItem::getId, chargeItemIds)); + List chargeItemBaseInfoDtos = + iChargeItemService.getChargeItemBaseInfoByIds(chargeItemIds); + List chargeItemBaseInfoDtosList = new ArrayList<>(); + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { + if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + continue; + } + if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { + // 反序列化:将JSON数组字符串转为List<> + List chargeItemBaseInfoList = + JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); + chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); + } else { + chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); + } + } + Yb2301InputFeeDetail yb2301InputFeeDetail; + List yb2301InputFeeDetailList = new ArrayList(); + // int i = 1; + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { + yb2301InputFeeDetail = new Yb2301InputFeeDetail(); + yb2301InputFeeDetail.setFeedetlSn(chargeItemBaseInfoDto.getBusNo()).setMdtrtId(inpatientReg.getMdtrtId()) + .setPsnNo(inpatientReg.getPsnNo()).setMedType(String.valueOf(encounter.getYbClassEnum())) + .setFeeOcurTime(chargeItemBaseInfoDto.getEnteredDate()).setMedListCodg(chargeItemBaseInfoDto.getYbNo()) + .setMedinsListCodg(chargeItemBaseInfoDto.getBaseBusNo()) + .setDetItemFeeSumamt(chargeItemBaseInfoDto.getTotalPrice()) + .setCnt(chargeItemBaseInfoDto.getQuantityValue()).setPric(chargeItemBaseInfoDto.getUnitPrice()) + .setBilgDeptName(chargeItemBaseInfoDto.getDeptName()).setBilgDrName(chargeItemBaseInfoDto.getDoctName()) + .setBilgDeptCodg(chargeItemBaseInfoDto.getDeptYbNo()) + .setBilgDrCodg(chargeItemBaseInfoDto.getDoctYbNo()); + + yb2301InputFeeDetailList.add(yb2301InputFeeDetail); + } + + Yb2301InputFeeDetailModel yb2301InputFeeDetailModel = new Yb2301InputFeeDetailModel(); + yb2301InputFeeDetailModel.setFeedetail(yb2301InputFeeDetailList) + .setInsuplcAdmdvs(inpatientReg.getInsuplcAdmdvs()); + return yb2301InputFeeDetailModel; + } + + /** + * 【2302】费用明细上传撤销 + * + * @param chargeItemId 收费项 + * @return 2302入参 + */ + public Yb2302InputInpatient getYb2302InpatientParam(Long chargeItemId) { + ChargeItem chargeItem = iChargeItemService.getById(chargeItemId); + if (chargeItem == null) { + throw new ServiceException("未查询到收费项信息"); + } + InpatientFeeDetail inpatientFeeDetail = inpatientFeeDetailService.getOne( + new LambdaQueryWrapper().eq(InpatientFeeDetail::getFeedetlSn, chargeItem.getBusNo()) + .eq(InpatientFeeDetail::getDeleteFlag, DelFlag.NO.getCode())); + if (inpatientFeeDetail == null) { + throw new ServiceException("未查询到费用上传信息"); + } + Yb2302InputInpatient yb2302InputInpatient = new Yb2302InputInpatient(); + + return yb2302InputInpatient.setMdtrtId(inpatientFeeDetail.getMdtrtId()).setPsnNo(inpatientFeeDetail.getPsnNo()) + .setFeedetlSn(inpatientFeeDetail.getFeedetlSn()); + + } + + /** + * 【2303】住院预结算 + * + * @param encounterId 就诊id + * @return 2303入参 + */ + public Yb2303InputInpatient getYb2303InpatientPram(Long encounterId, List chargeItemIds) { + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到挂号信息"); + } + InpatientReg inpatientReg = iInpatientRegService + .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) + .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保就诊记录"); + } + InfoPerson infoPerson = iPerinfoService.getByPsnNo(inpatientReg.getPsnNo()); + if (infoPerson == null) { + throw new ServiceException("未查询到患者信息"); + } + // 获取今天和昨天的上午10点时间 + // LocalDateTime today10AM = LocalDateTime.of(LocalDate.now(), LocalTime.of(10, 0)); // 今天10点 + // LocalDateTime yesterday10AM = today10AM.minusDays(1); // 昨天10点(自动处理跨月/年) + + // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() + // .eq(ChargeItem::getEncounterId, encounterId).between(ChargeItem::getEnteredDate, yesterday10AM, today10AM)); + List chargeItemBaseInfoDtos = + iChargeItemService.getChargeItemBaseInfoByIds(chargeItemIds); + List chargeItemBaseInfoDtosList = new ArrayList<>(); + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { + if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + continue; + } + if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { + // 反序列化:将JSON数组字符串转为List<> + List chargeItemBaseInfoList = + JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); + chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); + } else { + chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); + } + } + // 计算医疗总费用 + BigDecimal medfee_sumamt = BigDecimal.ZERO; + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { + medfee_sumamt = medfee_sumamt.add(chargeItemBaseInfoDto.getTotalPrice()); + } + + Yb2303InputInpatient yb2303InputInpatient = new Yb2303InputInpatient(); + yb2303InputInpatient.setPsnNo(infoPerson.getPsnNo()) + .setMdtrtCertType(YbMdtrtCertType.MDTRT_CERT_TYPE02.getValue()).setMdtrtCertNo(infoPerson.getCertno()) + .setMedfeeSumamt(medfee_sumamt).setPsnSetlway(YbPsnSetlWay.PSN_SETLWAY01.getValue()) + .setMdtrtId(inpatientReg.getMdtrtId()).setInsutype(infoPerson.getInsutype()) + .setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) + .setMdtrtareaAdmvs(iContractService.getContractListByYb().get(0).getAdmVs()); + + // todo:中如结算标志需要判断一下,待2304接口开发完成后编辑 + + return yb2303InputInpatient; + } + + /** + * 【2304】住院结算 + * + * @param paymentDto 预结算参数 + * @return 2304入参 + */ + public Yb2304InputInpatient getYb2304InpatientParam(PaymentInpatientDto paymentDto) { + Encounter encounter = iEncounterService.getById(paymentDto.getEncounterId()); + if (encounter == null) { + throw new ServiceException("未查询到挂号信息"); + } + // 查询挂号信息 + InpatientReg inpatientReg = iInpatientRegService + .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) + .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保就诊记录"); + } + InfoPerson infoPerson = iPerinfoService.getByPsnNo(inpatientReg.getPsnNo()); + if (infoPerson == null) { + throw new ServiceException("未查询到患者信息"); + } + + // List chargeItemList = + // iChargeItemService.list(new LambdaQueryWrapper().eq(ChargeItem::getEncounterId, encounterId) + // .in(ChargeItem::getId, chargeItemIds).eq(ChargeItem::getDeleteFlag, DelFlag.NO.getCode())); + List chargeItemBaseInfoDtos = + iChargeItemService.getChargeItemBaseInfoByIds(paymentDto.getChargeItemIds()); + List chargeItemBaseInfoDtosList = new ArrayList<>(); + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { + if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + continue; + } + if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { + // 反序列化:将JSON数组字符串转为List<> + List chargeItemBaseInfoList = + JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); + chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); + } else { + chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); + } + } + // 计算医疗总费用 + BigDecimal medfee_sumamt = BigDecimal.ZERO; + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { + medfee_sumamt = medfee_sumamt.add(chargeItemBaseInfoDto.getTotalPrice()); + } + + Yb2304InputInpatient yb2304InputInpatient = new Yb2304InputInpatient(); + yb2304InputInpatient.setPsnNo(infoPerson.getPsnNo()) + .setMdtrtCertType(YbMdtrtCertType.getByValue(paymentDto.getYbMdtrtCertType()).getValue()) + .setMdtrtCertNo(paymentDto.getBusiCardInfo()).setMedfeeSumamt(medfee_sumamt) + .setPsnSetlway(YbPsnSetlWay.PSN_SETLWAY01.getValue()).setMdtrtId(inpatientReg.getMdtrtId()) + .setInsutype(infoPerson.getInsutype()).setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) + .setMdtrtareaAdmvs(iContractService.getContractListByYb().get(0).getAdmVs()) + .setAcctUsedFlag(Whether.YES.getCode()); + + // todo:中如结算标志需要判断一下,待2304接口开发完成后编辑 + + return yb2304InputInpatient; + } + + /** + * 【2305】撤销结算 + * + * @param inpatientSettle 结算实体 + * @return 2305入参 + */ + public Yb2305InputInpatient getYb2305InpatientParam(InpatientSettle inpatientSettle) { + + // inpatientSettle = inpatientSettleService.getBySettleId(ybSettleId); + Yb2305InputInpatient yb2305InputInpatient = new Yb2305InputInpatient(); + return yb2305InputInpatient.setMdtrtId(inpatientSettle.getMdtrtId()).setPsnNo(inpatientSettle.getPsnNo()) + .setSetlId(inpatientSettle.getSetlId()); + + } + + /** + * 【2401】 办理入院 + * + * @param encounterId 就诊id + * @return 2401参数 + */ + public Yb2401InputInpatientMdtrtInfo getYb2401InputInpatientMdtrtInfo(Long encounterId) { + + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + + Account account = iAccountService.getYbAccount(encounterId); + if (account == null) { + throw new ServiceException("未查询到医保账户信息"); + } + // if (account.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + // throw new ServiceException("挂号账户为自费账户,无法办理医保住院登记"); + // } + + Contract contract = iContractService.getContract(account.getContractNo()); + if (contract == null) { + throw new ServiceException("未查询到对应合同信息"); + } + + Patient patient = iPatientService.getById(encounter.getPatientId()); + if (patient == null) { + throw new ServiceException("未查询到患者信息"); + } + + InfoPerson infoPerson = + iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), SecurityUtils.getLoginUser().getTenantId()); + if (infoPerson == null) { + throw new ServiceException("未查询到患者的医保信息"); + } + + List diagnosisList = iEncounterDiagnosisService.getDiagnosisList(encounterId); + if (diagnosisList.isEmpty()) { + throw new ServiceException("未查询到诊断信息"); + } + + EncounterDiagnosis mainDiagnosis = iEncounterDiagnosisService.getMainDiagnosis(diagnosisList); + if (mainDiagnosis == null) { + throw new ServiceException("未查询到主诊断信息"); + } + + Condition condition = iConditionService.getById(mainDiagnosis.getConditionId()); + if (condition == null) { + throw new ServiceException("未查询到主诊断信息"); + } + + ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(condition.getDefinitionId()); + if (conditionDefinition == null) { + throw new ServiceException("未查询到主诊断定义信息"); + } + + List encounterParticipantListByTypeCode = iEncounterParticipantService + .getEncounterParticipantListByTypeCode(encounterId, ParticipantType.ADMITTING_DOCTOR); + if (encounterParticipantListByTypeCode.isEmpty()) { + throw new ServiceException("未查询到住院医生信息"); + } + + Practitioner practitioner = + iPractitionerService.getById(encounterParticipantListByTypeCode.get(0).getPractitionerId()); + if (practitioner == null) { + throw new ServiceException("未查询到住院医生信息"); + } + + List encounterLocationList = iEncounterLocationService.getEncounterLocationList(encounterId, + LocationForm.BED, EncounterActivityStatus.ACTIVE); + if (encounterLocationList.isEmpty()) { + throw new ServiceException("未查询到床位信息"); + } + + Organization organization = iOrganizationService.getById(practitioner.getOrgId()); + if (organization == null) { + throw new ServiceException("未查询到就诊科室信息"); + } + + Yb2401InputInpatientMdtrtInfo yb2401InputInpatientMdtrtInfo = new Yb2401InputInpatientMdtrtInfo(); + yb2401InputInpatientMdtrtInfo + // 人员编号 + .setPsnNo(infoPerson.getPsnNo()) + // 险种类型 + .setInsutype(infoPerson.getInsutype()) + // 开始时间 + .setBegntime(encounter.getStartTime()) + // 就诊凭证类型 + .setMdtrtCertType(YbMdtrtCertType.MDTRT_CERT_TYPE02.getCode()) + // 病历号 + .setMedrcdno(encounter.getBusNo()) + // 医疗类别 + .setMedType(mainDiagnosis.getMedTypeCode()) + // 住院号 + .setIptNo(encounter.getBusNo()) + // 主治医生编码 + .setAtddrNo(practitioner.getYbNo()) + // 主诊医师姓名 + .setChfpdrName(practitioner.getName()) + // 入院诊断描述 + .setAdmDiagDscr("") + // 入院科室编码 + .setAdmDeptCodg(organization.getYbNo()) + // 入院科室名称 + .setAdmDeptName(organization.getName()) + // 入院床位 + .setAdmBed(encounterLocationList.get(0).getLocationId().toString()) + // 住院主诊断代码 + .setDscgMaindiagCode(conditionDefinition.getYbNo()) + // 住院主诊断名称 + .setDscgMaindiagName(conditionDefinition.getName()) + // 参保地医保区划 + .setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) + // 就医地医保区划 + .setMdtrtareaAdmvs(contract.getAdmVs()); + return yb2401InputInpatientMdtrtInfo; + } + + /** + * 【2402】办理出院 + * + * @param encounterId 就诊id + * @return 2402参数 + */ + public Yb2402InputParam getYb2402InputInpatientDscgInfo(Long encounterId) { + + Yb2402InputParam yb2402InputParam = new Yb2402InputParam(); + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + + InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保挂号信息"); + } + + Account account = iAccountService.getAccountByEncounterFlag(encounterId); + if (account == null) { + throw new ServiceException("未查询到账户信息"); + } + if (account.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + throw new ServiceException("挂号账户为自费账户,无法办理医保住院登记"); + } + + Contract contract = iContractService.getContract(account.getContractNo()); + if (contract == null) { + throw new ServiceException("未查询到对应合同信息"); + } + + Patient patient = iPatientService.getById(encounter.getPatientId()); + if (patient == null) { + throw new ServiceException("未查询到患者信息"); + } + + // InfoPerson infoPerson = + // iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), SecurityUtils.getLoginUser().getTenantId()); + // if (infoPerson == null) { + // throw new ServiceException("未查询到患者的医保信息"); + // } + + List diagnosisList = + iEncounterDiagnosisService.getDiagnosisList(encounterId, YbIptDiseTypeCode.DISCHARGE_DIAGNOSIS); + if (diagnosisList.isEmpty()) { + throw new ServiceException("未查询到出院诊断信息"); + } + + // EncounterDiagnosis mainDiagnosis = iEncounterDiagnosisService.getMainDiagnosis(diagnosisList); + // if (mainDiagnosis == null) { + // throw new ServiceException("未查询到主诊断信息"); + // } + + List conditionList = iConditionService.getConditionListById( + diagnosisList.stream().map(EncounterDiagnosis::getConditionId).collect(Collectors.toList())); + if (conditionList.isEmpty()) { + throw new ServiceException("未查询到诊断信息"); + } + if (conditionList.size() != diagnosisList.size()) { + throw new ServiceException("数据异常:查询到诊断信息与诊断定义信息数量不相等"); + } + + List conditionDefinitionList = iConditionDefinitionService.getConditionDefinitionListByIds( + conditionList.stream().map(Condition::getDefinitionId).collect(Collectors.toList())); + if (conditionDefinitionList.isEmpty()) { + throw new ServiceException("未查询到主诊断定义信息"); + } + + List encounterParticipantListByTypeCode = iEncounterParticipantService + .getEncounterParticipantListByTypeCode(encounterId, ParticipantType.ADMITTING_DOCTOR); + if (encounterParticipantListByTypeCode.isEmpty()) { + throw new ServiceException("未查询到住院医生信息"); + } + + List practitionerList = + iPractitionerService.getPractitionerListById(encounterParticipantListByTypeCode.stream() + .map(EncounterParticipant::getPractitionerId).collect(Collectors.toList()));// 20250730被告知一个住院患者只有一套门诊医生住院医生护士等(主治医生和主任医生不一定会有),不存在一个患者多个医生 + if (practitionerList.isEmpty()) { + throw new ServiceException("未查询到住院医生信息"); + } + + List encounterLocationList = iEncounterLocationService.getEncounterLocationList(encounterId, + LocationForm.BED, EncounterActivityStatus.ACTIVE); + if (encounterLocationList.isEmpty()) { + throw new ServiceException("未查询到床位信息"); + } + + List organizationList = iOrganizationService.getOrganizationListById( + practitionerList.stream().map(Practitioner::getOrgId).collect(Collectors.toList())); + if (organizationList.isEmpty()) { + throw new ServiceException("未查询到就诊科室信息"); + } + + Yb2402InputInpatientDscgInfo yb2402InputInpatientDscgInfo = new Yb2402InputInpatientDscgInfo(); + yb2402InputInpatientDscgInfo + // 就诊ID + .setMdtrtId(inpatientReg.getMdtrtId()) + // 人员编号 + .setPsnNo(inpatientReg.getPsnNo()) + // 险种类型 + .setInsutype(inpatientReg.getInsutype()) + // 结束时间 + .setEndtime(encounter.getEndTime()) + // 出院科室编码 + .setDscgDeptCodg(organizationList.get(0).getYbNo()) + // 出院科室名称 + .setDscgDeptName(organizationList.get(0).getName()) + // 离院方式 + .setDscgWay("");// todo:离院方式待办 + + Map mapById = + conditionList.stream().collect(Collectors.toMap(Condition::getId, Function.identity())); + Map encounterParticipantMapById = encounterParticipantListByTypeCode.stream() + .collect(Collectors.toMap(EncounterParticipant::getId, Function.identity())); + Map conditionDefinitionMapById = + conditionDefinitionList.stream().collect(Collectors.toMap(ConditionDefinition::getId, Function.identity())); + Map organizationMapById = + organizationList.stream().collect(Collectors.toMap(Organization::getId, Function.identity())); + Map practitionerMapById = + practitionerList.stream().collect(Collectors.toMap(Practitioner::getId, Function.identity())); + Yb2402InputInpatientDiseInfo yb2402InputInpatientDiseInfo; + List yb2402InputInpatientDiseInfos = new ArrayList<>(); + for (EncounterDiagnosis encounterDiagnosis : diagnosisList) { + Condition condition = mapById.get(encounterDiagnosis.getConditionId()); + if (condition == null) { + throw new ServiceException( + "数据异常:就诊诊断信息无法关联到诊断信息;异常数据encounterDiagnosisId:" + encounterDiagnosis.getId()); + } + EncounterParticipant encounterParticipant = encounterParticipantMapById.get(condition.getRecorderId()); + if (encounterParticipant == null) { + throw new ServiceException("数据异常:就诊诊断信息无法关联到医生信息;异常数据condition:" + condition.getId()); + } + Practitioner practitioner = practitionerMapById.get(encounterParticipant.getPractitionerId()); + if (practitioner == null) { + throw new ServiceException( + "数据异常:就诊诊断信息无法关联到医生信息;异常数据encounterParticipant:" + encounterParticipant.getId()); + } + ConditionDefinition conditionDefinition = conditionDefinitionMapById.get(condition.getDefinitionId()); + if (conditionDefinition == null) { + throw new ServiceException("数据异常:就诊诊断信息无法关联到诊断定义;异常数据condition:" + condition.getId()); + } + Organization organization = organizationMapById.get(practitioner.getOrgId()); + if (organization == null) { + throw new ServiceException("数据异常:医生信息无法关联到科室;异常数据practitioner:" + practitioner.getId()); + } + yb2402InputInpatientDiseInfo = new Yb2402InputInpatientDiseInfo(); + yb2402InputInpatientDiseInfo + // 就诊id + .setMdtrtId(inpatientReg.getMdtrtId()) + // 人员编号 + .setPsnNo(inpatientReg.getPsnNo()) + // 诊断类别 + .setDiagType(conditionDefinition.getSourceEnum().toString()) + // 主诊断标志 + .setMaindiagFlag(encounterDiagnosis.getMaindiseFlag().equals(Whether.YES.getValue()) + ? Whether.YES.getCode() : Whether.NO.getCode()) + // 诊断排序号 + .setDiagSrtNo(encounterDiagnosis.getDiagSrtNo()) + // 诊断代码 + .setDiagCode(conditionDefinition.getYbNo()) + // 诊断名称 + .setDiagName(conditionDefinition.getName()) + // 诊断科室 + .setDiagDept(organization.getYbNo()) + // 诊断医生编码 + .setDiseDorNo(practitioner.getYbNo()) + // 诊断医生姓名 + .setDiseDorName(practitioner.getName()) + // 诊断时间 + .setDiagTime(encounterDiagnosis.getCreateTime()); + + yb2402InputInpatientDiseInfos.add(yb2402InputInpatientDiseInfo); + } + + // 拼装参数 + yb2402InputParam.setYb2402InputInpatientDiseInfo(yb2402InputInpatientDiseInfos); + yb2402InputParam.setYb2402InputInpatientDscgInfo(yb2402InputInpatientDscgInfo); + + return yb2402InputParam; + } + + /** + * 【2403】接口参数 + * + * @param encounterId 就诊id + * @return 2403接口参数 + */ + public Yb2403InputParam getYb2403InputParam(Long encounterId) { + + Yb2403InputParam yb24032InputParam = new Yb2403InputParam(); + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + + InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保挂号信息"); + } + + Account account = iAccountService.getAccountByEncounterFlag(encounterId); + if (account == null) { + throw new ServiceException("未查询到账户信息"); + } + if (account.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + throw new ServiceException("挂号账户为自费账户,无法办理医保住院登记"); + } + + Contract contract = iContractService.getContract(account.getContractNo()); + if (contract == null) { + throw new ServiceException("未查询到对应合同信息"); + } + + Patient patient = iPatientService.getById(encounter.getPatientId()); + if (patient == null) { + throw new ServiceException("未查询到患者信息"); + } + + // InfoPerson infoPerson = + // iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), SecurityUtils.getLoginUser().getTenantId()); + // if (infoPerson == null) { + // throw new ServiceException("未查询到患者的医保信息"); + // } + + List diagnosisList = + iEncounterDiagnosisService.getDiagnosisList(encounterId, YbIptDiseTypeCode.DISCHARGE_DIAGNOSIS); + if (diagnosisList.isEmpty()) { + throw new ServiceException("未查询到出院诊断信息"); + } + + EncounterDiagnosis mainDiagnosis = iEncounterDiagnosisService.getMainDiagnosis(diagnosisList); + if (mainDiagnosis == null) { + throw new ServiceException("未查询到主诊断信息"); + } + + List conditionList = iConditionService.getConditionListById( + diagnosisList.stream().map(EncounterDiagnosis::getConditionId).collect(Collectors.toList())); + if (conditionList.isEmpty()) { + throw new ServiceException("未查询到诊断信息"); + } + if (conditionList.size() != diagnosisList.size()) { + throw new ServiceException("数据异常:查询到诊断信息与诊断定义信息数量不相等"); + } + Optional firstOptional = + conditionList.stream().filter(e -> e.getId().equals(mainDiagnosis.getConditionId())).findFirst(); + if (firstOptional.isEmpty()) { + throw new ServiceException("数据异常:主诊断关联不到诊断信息"); + } + Condition mainCondition = firstOptional.get(); + + List conditionDefinitionList = iConditionDefinitionService.getConditionDefinitionListByIds( + conditionList.stream().map(Condition::getDefinitionId).collect(Collectors.toList())); + if (conditionDefinitionList.isEmpty()) { + throw new ServiceException("未查询到主诊断定义信息"); + } + Optional optional = + conditionDefinitionList.stream().filter(e -> e.getId().equals(mainCondition.getDefinitionId())).findFirst(); + if (optional.isEmpty()) { + throw new ServiceException("数据异常:主诊断关联不到诊断信息"); + } + ConditionDefinition mainConditionDefinition = optional.get(); + + List encounterParticipantListByTypeCode = iEncounterParticipantService + .getEncounterParticipantListByTypeCode(encounterId, ParticipantType.ADMITTING_DOCTOR); + if (encounterParticipantListByTypeCode.isEmpty()) { + throw new ServiceException("未查询到住院医生信息"); + } + + List practitionerList = + iPractitionerService.getPractitionerListById(encounterParticipantListByTypeCode.stream() + .map(EncounterParticipant::getPractitionerId).collect(Collectors.toList()));// 20250730被告知一个住院患者只有一套门诊医生住院医生护士等(主治医生和主任医生不一定会有),不存在一个患者多个医生 + if (practitionerList.isEmpty()) { + throw new ServiceException("未查询到住院医生信息"); + } + + List encounterLocationList = iEncounterLocationService.getEncounterLocationList(encounterId, + LocationForm.BED, EncounterActivityStatus.ACTIVE); + if (encounterLocationList.isEmpty()) { + throw new ServiceException("未查询到床位信息"); + } + + List organizationList = iOrganizationService.getOrganizationListById( + practitionerList.stream().map(Practitioner::getOrgId).collect(Collectors.toList())); + if (organizationList.isEmpty()) { + throw new ServiceException("未查询到就诊科室信息"); + } + + Yb2403InputAdmInfo yb2403InputAdmInfo = new Yb2403InputAdmInfo(); + yb2403InputAdmInfo + // 就诊ID + .setMdtrtId(inpatientReg.getMdtrtId()) + // 人员编号 + .setPsnNo(inpatientReg.getPsnNo()) + // 开始时间 + .setBegntime(encounter.getStartTime()) + // 就诊凭证类型 + .setMdtrtCertType(YbMdtrtCertType.MDTRT_CERT_TYPE02.getCode()) + // 住院/门诊号 + .setIptOtpNo(encounter.getBusNo()) + // 医疗类别 + .setMedType(mainDiagnosis.getMedTypeCode()) + // 主治医生编码 + .setAtddrNo(practitionerList.get(0).getYbNo()) + // 主诊医师姓名 + .setChfpdrName(practitionerList.get(0).getName()) + // 入院诊断描述 + .setAdmDiagDscr("") + // 入院科室编码 + .setAdmDeptCodg(organizationList.get(0).getYbNo()) + // 入院科室名称 + .setAdmDeptName(organizationList.get(0).getName()) + // 入院床位 + .setAdmBed(encounterLocationList.get(0).getLocationId().toString()) + // 住院主诊断代码 + .setDscgMaindiagCode(mainConditionDefinition.getYbNo()) + // 住院主诊断名称 + .setDscgMaindiagName(mainConditionDefinition.getName()); + + Map mapById = + conditionList.stream().collect(Collectors.toMap(Condition::getId, Function.identity())); + Map encounterParticipantMapById = encounterParticipantListByTypeCode.stream() + .collect(Collectors.toMap(EncounterParticipant::getId, Function.identity())); + Map conditionDefinitionMapById = + conditionDefinitionList.stream().collect(Collectors.toMap(ConditionDefinition::getId, Function.identity())); + Map organizationMapById = + organizationList.stream().collect(Collectors.toMap(Organization::getId, Function.identity())); + Map practitionerMapById = + practitionerList.stream().collect(Collectors.toMap(Practitioner::getId, Function.identity())); + Yb2403InputDiseInfo yb2403InputDiseInfo; + List yb2403InputDiseInfos = new ArrayList<>(); + for (EncounterDiagnosis encounterDiagnosis : diagnosisList) { + Condition condition = mapById.get(encounterDiagnosis.getConditionId()); + if (condition == null) { + throw new ServiceException( + "数据异常:就诊诊断信息无法关联到诊断信息;异常数据encounterDiagnosisId:" + encounterDiagnosis.getId()); + } + EncounterParticipant encounterParticipant = encounterParticipantMapById.get(condition.getRecorderId()); + if (encounterParticipant == null) { + throw new ServiceException("数据异常:就诊诊断信息无法关联到医生信息;异常数据condition:" + condition.getId()); + } + Practitioner practitioner = practitionerMapById.get(encounterParticipant.getPractitionerId()); + if (practitioner == null) { + throw new ServiceException( + "数据异常:就诊诊断信息无法关联到医生信息;异常数据encounterParticipant:" + encounterParticipant.getId()); + } + ConditionDefinition conditionDefinition = conditionDefinitionMapById.get(condition.getDefinitionId()); + if (conditionDefinition == null) { + throw new ServiceException("数据异常:就诊诊断信息无法关联到诊断定义;异常数据condition:" + condition.getId()); + } + Organization organization = organizationMapById.get(practitioner.getOrgId()); + if (organization == null) { + throw new ServiceException("数据异常:医生信息无法关联到科室;异常数据practitioner:" + practitioner.getId()); + } + yb2403InputDiseInfo = new Yb2403InputDiseInfo(); + yb2403InputDiseInfo + // 就诊id + .setMdtrtId(inpatientReg.getMdtrtId()) + // 人员编号 + .setPsnNo(inpatientReg.getPsnNo()) + // 诊断类别 + .setDiagType(conditionDefinition.getSourceEnum().toString()) + // 主诊断标志 + .setMaindiagFlag(encounterDiagnosis.getMaindiseFlag().equals(Whether.YES.getValue()) + ? Whether.YES.getCode() : Whether.NO.getCode()) + // 诊断排序号 + .setDiagSrtNo(encounterDiagnosis.getDiagSrtNo()) + // 诊断代码 + .setDiagCode(conditionDefinition.getYbNo()) + // 诊断名称 + .setDiagName(conditionDefinition.getName()) + // 诊断科室 + .setDiagDept(organization.getYbNo()) + // 诊断医生编码 + .setDiseDorNo(practitioner.getYbNo()) + // 诊断医生姓名 + .setDiseDorName(practitioner.getName()) + // 诊断时间 + .setDiagTime(encounterDiagnosis.getCreateTime()); + + yb2403InputDiseInfos.add(yb2403InputDiseInfo); + } + + // 拼装参数 + yb24032InputParam.setYb2403InputDiseInfo(yb2403InputDiseInfos); + yb24032InputParam.setYb2403InputAdmInfo(yb2403InputAdmInfo); + + return yb24032InputParam; + } + + /** + * 【2404】住院办理撤销 + * + * @param encounterId 就诊id + * @return 2404参数 + */ + public Yb2404InputInpatient getYb2404InputInpatient(Long encounterId) { + + Yb2404InputInpatient yb2404InputInpatient = new Yb2404InputInpatient(); + + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + + InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保挂号信息"); + } + yb2404InputInpatient.setMdtrtId(inpatientReg.getMdtrtId()).setPsnNo(inpatientReg.getPsnNo()); + + return yb2404InputInpatient; + } + + /** + * 【2405】出院办理撤销 + * + * @param encounterId 就诊id + * @return 2405参数 + */ + public Yb2405InputInpatient getYb2405InputInpatient(Long encounterId) { + + Yb2405InputInpatient yb2405InputInpatient = new Yb2405InputInpatient(); + + Encounter encounter = iEncounterService.getById(encounterId); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + + InpatientReg inpatientReg = iInpatientRegService.getInpatientRegByIptNo(encounter.getBusNo()); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保挂号信息"); + } + yb2405InputInpatient.setMdtrtId(inpatientReg.getMdtrtId()).setPsnNo(inpatientReg.getPsnNo()); + + return yb2405InputInpatient; + } + + /** + * 【5205】结果 + * + * @param patientId 患者id + * @param begntime 开始时间 + * @param endtime 结束时间 + * @return 5205结果 + */ + public Yb5205InputSpecialDisease yb5205SpecialDiseaseDrugRecordSearch(Long patientId, Date begntime, Date endtime) { + + Patient patient = iPatientService.getById(patientId); + if (patient == null) { + throw new ServiceException("未查询到患者信息"); + } + InfoPerson perInfoByIdCard = iPerinfoService.getPerInfoByIdCard(patient.getIdCard(), patient.getTenantId()); + if (perInfoByIdCard == null) { + throw new ServiceException("未查询到患者医保读卡信息"); + } + + Yb5205InputSpecialDisease yb5205InputSpecialDisease = new Yb5205InputSpecialDisease(); + yb5205InputSpecialDisease.setBegntime(begntime).setEndtime(endtime).setPsnNo(perInfoByIdCard.getPsnNo()); + + return yb5205InputSpecialDisease; + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java new file mode 100644 index 00000000..d2c4fa2a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbHttpUtils.java @@ -0,0 +1,1079 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.service; + +import static com.alibaba.fastjson2.JSON.parseObject; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.Optional; + +import com.openhis.financial.service.impl.ContractServiceImpl; +import org.apache.http.client.config.RequestConfig; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.ContentType; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.util.EntityUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.io.FileSystemResource; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; +import org.springframework.web.multipart.MultipartFile; + +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; +import com.core.common.exception.ServiceException; +import com.core.common.utils.SecurityUtils; +import com.core.common.utils.StringUtils; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.openhis.financial.domain.Contract; +import com.openhis.financial.service.IContractService; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.dto.*; +import com.openhis.yb.model.Clinic2207OrderModel; +import com.openhis.yb.model.Clinic2207OrderParam; +import com.openhis.yb.util.YbParamBuilderUtil; + +/** + * http请求接口 + * + * @author SunJQ + * @date 2025-04-11 + */ +@Service +public class YbHttpUtils { + + @Autowired + YbParamBuilderUtil ybParamBuilderUtil; + @Autowired + IContractService iContractService; + + Logger logger = LoggerFactory.getLogger(YbHttpUtils.class); + @Autowired + private ContractServiceImpl contractServiceImpl; + + public Info1101Output getPerInfo(Info1101ReadcardParam readcard) { + // 声明参数 + Result result = null; + Info1101Output perinfo = null; + // 发送请求 + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/getPatinfo", readcard, null); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(resultString)); + logger.info("【1101】返回参数:" + resultString); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(resultString, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + perinfo = parseObject(JSON.toJSONString(result.getResult()), Info1101Output.class); + } else { + throw new ServiceException(result.getMessage()); + } + + return perinfo; + } + + public ClinicReg2201Output reg(ClinicReg reg, Contract contract) { + // 声名参数 + Result result = null; + ClinicReg2201Output clinicReg2201Output = new ClinicReg2201Output(); + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/reg", reg, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【2201】返回参数:" + s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + clinicReg2201Output = parseObject(JSON.toJSONString(result.getResult()), ClinicReg2201Output.class); + } else { + throw new ServiceException(result.getMessage()); + } + return clinicReg2201Output; + } + + public ClinicReg2201Output cancelReg(ClinicReg reg, Contract contract) { + // 声名参数 + Result result = null; + ClinicReg2201Output clinicReg2201Output = new ClinicReg2201Output(); + // 发送请求 + String s = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancelReg", reg, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【2202】返回参数:" + JSON.toJSONString(s)); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + clinicReg2201Output = parseObject(JSON.toJSONString(result.getResult()), ClinicReg2201Output.class); + } else { + throw new ServiceException(result.getMessage()); + } + return clinicReg2201Output; + } + + public Clinic2204OrderResult upload2204Record(Clinic2204OrderParam clinic2204OrderParam, Contract contract) { + Clinic2204OrderResult clinicFeedetail2204Result = new Clinic2204OrderResult(); + // 声名参数 + Result result = null; + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload2204-record", + clinic2204OrderParam, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【2204】返回参数:" + s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + clinicFeedetail2204Result = parseObject(JSON.toJSONString(result.getResult()), Clinic2204OrderResult.class); + } else { + throw new ServiceException(result.getMessage()); + } + + return clinicFeedetail2204Result; + + } + + public Clinic2206OrderOutput upload2206Record(Clinic2206OrderParam clinic2206OrderParam, Contract contract) { + + Clinic2206OrderOutput clinic2206OrderResult = new Clinic2206OrderOutput(); + // 声名参数 + Result result = null; + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/preSetl", + clinic2206OrderParam, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【2206】返回参数:" + JSON.toJSONString(s)); + logger.info(s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + clinic2206OrderResult = parseObject(JSON.toJSONString(result.getResult()), Clinic2206OrderOutput.class); + } else { + throw new ServiceException(result.getMessage()); + } + + return clinic2206OrderResult; + } + + public Clinic2207OrderModel settle(Clinic2207OrderParam clinicOrder2207, Contract contract) { + + Clinic2207OrderModel clinic2206OrderResult = new Clinic2207OrderModel(); + // 声名参数 + Result result = null; + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/setl", clinicOrder2207, + contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【2207】返回参数:" + s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + clinic2206OrderResult = parseObject(JSON.toJSONString(result.getResult()), Clinic2207OrderModel.class); + } else { + throw new ServiceException(result.getMessage()); + } + + return clinic2206OrderResult; + } + + public Sign9001Result sign(Sign signParam, Contract contract) { + Sign9001Result sign = null; + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/signIn", signParam, contract); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(resultString)); + logger.info("【9001】返回参数:" + resultString); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + sign = parseObject(JSON.toJSONString(result.getResult()), Sign9001Result.class); + } else { + throw new ServiceException(result.getMessage()); + } + + return sign; + } + + public void unPreSettle(Clinic2205OrderParam clinic2205OrderParam, Contract contract) { + + // 声名参数 + Result result = null; + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/unPreSettle", + clinic2205OrderParam, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info(s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + return; + } else { + throw new ServiceException(result.getMessage()); + } + } + + public Clinic2208UnSetlInfoOutput unSettle(Clinic2208UnSetlInfoParam clinicOrder2208, Contract contract) { + + Clinic2208UnSetlInfoOutput clinicOrder2206Result = new Clinic2208UnSetlInfoOutput(); + // 声名参数 + Result result = null; + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancelSetl", + clinicOrder2208, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【2208】返回参数:" + s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + clinicOrder2206Result = + parseObject(JSON.toJSONString(result.getResult()), Clinic2208UnSetlInfoOutput.class); + } else { + throw new ServiceException(result.getMessage()); + } + return clinicOrder2206Result; + } + + public Result directoryCheck(MedicalDirectory3301ListParam medicalDirectory3301ListParam) { + + Clinic2208UnSetlInfoResult clinicOrder2206Result = new Clinic2208UnSetlInfoResult(); + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/directoryCheck", + medicalDirectory3301ListParam, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【3301】返回参数:" + s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result directoryUnCheck(MedicalDirectory3302Param medicalDirectory3302Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/directoryUnCheck", + medicalDirectory3302Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info("【3302】返回参数:" + s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result reconcileGeneralLedger(Financial3201Param financial3201Param) { + + // 此处先查询到合同并回填给入参对象 + Contract contract=iContractService.getContract(financial3201Param.getSetlOptins()); + if(contract==null){ + throw new ServiceException("未查询到合同信息"); + } + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/reconcile", + financial3201Param,contract); + + // 赋值(上述回填的两个参数医保不要,为了避免麻烦,在发送http后进行回填) + financial3201Param.setFixmedinsCode(contract.getFixmedinsCode()); + financial3201Param.setFixmedinsName(contract.getFixmedinsName()); + + // 医保回参逻辑处理 + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info(s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public FinancialSettlement3202Result reconcileGeneralLedgerDetail(FinancialSettlement3202Param financial3202Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/reconcile-detail", + financial3202Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info(s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + FinancialSettlement3202Result result = null; + try { + result = mapper.readValue(s, FinancialSettlement3202Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public List + threePartSearch(FinancialSettlement3209AParam financialSettlement3209AParam) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/three-part-search-err", + financialSettlement3209AParam, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println(JSON.toJSONString(s)); + logger.info(s); + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + List result = null; + try { + result = mapper.readValue(s, List.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public String applyFinancialClearing(Financial3203AParam financial3203AParam) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/apply-clearing", + financial3203AParam, iContractService.getContract(financial3203AParam.getClrOptins())); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + return s; + } + + public Result cancelFinancialClearing(Financial3204Param financial3204Param) { + + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancel-clearing", + financial3204Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Clearing3205AResult getFinancialClearingStatus(Clearing3205AParma clearing3205AParma) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/get-clearing-status", + clearing3205AParma, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Clearing3205AResult result = null; + try { + result = mapper.readValue(s, Clearing3205AResult.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result uploadInventoryCount(MedicalInventory3501Param medicalInventory3501Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload-inventory-count", + medicalInventory3501Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result updateInventoryCount(MedicalInventory3502Param medicalInventory3502Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/update-inventory", + medicalInventory3502Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result procurement(Medical3503Param medical3503Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/procurement", + medical3503Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result cancelProcurement(MedicalPurchase3504Param medicalPurchase3504Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/procurement-cancel", + medicalPurchase3504Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result merchandise(Medical3505Param medical3505Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/merchandise", + medical3505Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result cancelMerchandise(Medical3506Param medical3506Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/cancel-merchandise", + medical3506Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result deleteGoodsInfo(Medical3507Param medical3507Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/del-goods", + medical3507Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public MedicalInventory3511Output querySalesInfo(MedicalInventory3511Param medicalInventory3511Param) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/query-3511-info", + medicalInventory3511Param, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + // 转业务参数 + MedicalInventory3511Output medicalInventory3511Output = null; + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + medicalInventory3511Output = + parseObject(JSON.toJSONString(result.getResult()), MedicalInventory3511Output.class); + } else { + throw new ServiceException(result.getMessage()); + } + return medicalInventory3511Output; + } + + public Result getClrOptins(Clearing3206AParam clearing3206AParam) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/getclroptins", + clearing3206AParam, null); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + public Result upload2203Record(Clinic2203MedicalParam medical2203Param, Contract contract) { + // 发送请求 + String s = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload2203-record", + medical2203Param, contract); + if (StringUtils.isEmpty(s)) { + throw new ServiceException("未接收到医保返回参数"); + } + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(s, Result.class); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } + + /** + * 发送http请求(2025/05/02经测试,若以自带的工具类发送请求失败,故使用原peis系统中成功调用的写法重新封装) + * + * @param url 路径 + * @param o 参数 + * @return + */ + private String httpPost(String url, Object o, Contract contract) { + String resultString = ""; + // 拼参数 + BaseParam baseParam = new BaseParam(); + baseParam.setBaseInfo(ybParamBuilderUtil.getBaseInfo(parseObject(JSON.toJSONString(o)), contract)).setData(o); + logger.info("【请求路径】:" + url + ";【入参】: " + JSON.toJSONString(baseParam)); + // 创建Http请求 + RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000) + .setSocketTimeout(30000).build(); + CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig).build(); + CloseableHttpResponse response = null; + // 发送请求 + try { + HttpPost httpPost = new HttpPost(url); + StringEntity stringEntity = new StringEntity(JSON.toJSONString(baseParam), ContentType.APPLICATION_JSON); + httpPost.setEntity(stringEntity); + // 执行http请求 + response = httpClient.execute(httpPost); + if (response == null) { + throw new ServiceException("Http请求异常,未接受返回参数"); + } + resultString = EntityUtils.toString(response.getEntity(), "utf-8"); + } catch (Exception e) { + e.printStackTrace(); + throw new ServiceException("Http请求异常,请稍后再试。"); + } finally { + if (response != null) { + try { + response.close(); + } catch (IOException e) { + logger.error("关闭响应异常", e); + throw new ServiceException("未关闭系统资源:" + e.getStackTrace()); + } + } + } + return resultString; + } + + public List queryYbCatalogue(Catalogue1312QueryParam catalogue1312QueryParam) { + List outputList = new ArrayList<>(); + try { + + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/queryYbCatalogue", + catalogue1312QueryParam, null); + // System.out.println("--------1312resultString-------------" + resultString); + // 1. 解析外层 JSON + ObjectMapper mapper = new ObjectMapper(); + mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); // 启用 Snake Case 自动映射 + JsonNode rootNode = mapper.readTree(resultString); + String resultStr = rootNode.get("result").asText(); + + // 2. 解析 result 中的 JSON 数组 + outputList = mapper.readValue(resultStr, new TypeReference>() {}); + } catch (JsonProcessingException e) { + e.printStackTrace(); + } + + return outputList; + } + + public ResponseEntity upload9101(MultipartFile file, String filename) { + + // File9101Param file9101Param = new File9101Param(); + // file9101Param.setFile(file); + // file9101Param.setFilename(filename); + List contractListByYb = iContractService.getContractListByYb(); + if (contractListByYb.isEmpty()) { + throw new ServiceException("未配置医保合同"); + } + // file9101Param.setFixmedinsCode(contractListByYb.get(0).getFixmedinsCode()); + // FileResult fileResult = null; + ResponseEntity response = null; + // 参数处理 + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + // 1. 保存到临时文件 + Path tempFile = Files.createTempFile("upload-", file.getOriginalFilename()); + file.transferTo(tempFile); + + // 2. 构建转发请求 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.MULTIPART_FORM_DATA); + + MultiValueMap body = new LinkedMultiValueMap<>(); + body.add("file", new FileSystemResource(tempFile.toFile())); + body.add("fixmedinsCode", contractListByYb.get(0).getFixmedinsCode()); + body.add("userId", SecurityUtils.getUserId()); + body.add("admvs", contractListByYb.get(0).getAdmVs()); + + // 3. 转发并删除临时文件 + RestTemplate restTemplate = new RestTemplate(); + response = restTemplate.postForEntity( + SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/file-up2", + new HttpEntity<>(body, headers), String.class); + System.out.println(JSON.toJSONString(response)); + // 清理临时文件 + // Files.deleteIfExists(tempFile); + } catch (Exception e) { + e.printStackTrace(); + } + return response; + + // 2. 构建 Multipart 请求体 + // HttpHeaders headers = new HttpHeaders(); + // headers.setContentType(MediaType.MULTIPART_FORM_DATA); + // + // MultiValueMap body = new LinkedMultiValueMap<>(); + // body.add("file", new ByteArrayResource(file.getBytes()) { + // @Override + // public String getFilename() { + // return filename; // 保持原文件名 + // } + // }); + // + //// 3. 发送请求到目标服务 + // RestTemplate restTemplate = new RestTemplate(); + // HttpEntity> requestEntity = new HttpEntity<>(body, headers); + // ResponseEntity response = + // restTemplate.postForEntity(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/file-up2", + // requestEntity, String.class); + + // try { + // String resultString = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/file-up2", + // file9101Param,null); + // // System.out.println("--------1312resultString-------------" + resultString); + // // 1. 解析外层 JSON + // ObjectMapper mapper = new ObjectMapper(); + // mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); // 启用 Snake Case 自动映射 + // Result result = null; + // try { + // result = mapper.readValue(resultString, Result.class); + // } catch (Exception e) { + // e.printStackTrace(); + // } + // + // if (result == null) { + // throw new ServiceException("未接收到医保返回参数"); + // } else if (result.getCode() == 200) { + // System.out.println(JSON.toJSONString(result.getResult())); + // fileResult = JSON.parseObject(JSON.toJSONString(result.getResult()), FileResult.class); + // } else { + // throw new ServiceException(result.getMessage()); + // } + // return fileResult; + // }catch (Exception e){ + // e.printStackTrace(); + // } + // return fileResult; + } + + /** + * 【3101】明细审核事前事中分析服务 + * + * @param data 规则分析信息 + * @return 违规信息 + */ + public Yb3101OutputResult yb3101PreMidAnalysis(Yb3101InputData data) { + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/pre-mid-analysis", data, null); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【3101】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【3101】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + return parseObject(JSON.toJSONString(result.getResult()), Yb3101OutputResult.class); + } else { + throw new ServiceException(result.getMessage()); + } + } + + /** + * 【3103】事前事中服务反馈服务 + * + * @param data 输入 + */ + public void yb3103PreMidFeedback(Yb3103InputData data) { + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/pre-mid-feedback", data, null); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【3103】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【3103】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(JSON.toJSONString(result.getResult())); + } else { + throw new ServiceException(result.getMessage()); + } + } + + public List upload2301FeeDetail(Yb2301InputFeeDetailModel yb2301InputFeeDetailModel) { + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/upload-2301-fee-detail", + yb2301InputFeeDetailModel, null); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【2301】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【2301】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + List yb2301OutputResults = new ArrayList<>(); + JSONObject jsonObject = parseObject(String.valueOf(result.getResult())); + System.out.println(JSON.toJSONString(result.getResult())); + JSONArray jsonArray = jsonObject.getJSONArray("result"); + for (Object o : jsonArray) { + yb2301OutputResults.add(JSON.parseObject(String.valueOf(o), Yb2301OutputResult.class)); + } + return yb2301OutputResults; + } else { + throw new ServiceException(result.getMessage()); + } + } + + public Yb2303OutputSetInfo inpatientPreSettle(Yb2303InputInpatient yb2303InputInpatient) { + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/inpa-pre-setl", + yb2303InputInpatient, null); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【2303】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【2303】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + return mapper.readValue(String.valueOf(result.getResult()), Yb2303OutputSetInfo.class); + } else { + throw new ServiceException(result.getMessage()); + } + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + return null; + } + + public Yb2304OutputSetlInfo inpatientSettle(Contract contract, Yb2304InputInpatient yb2304InpatientParam) { + String resultString = httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/inpa-setl", + yb2304InpatientParam, contract); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【2304】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【2304】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + return mapper.readValue(String.valueOf(result.getResult()), Yb2304OutputSetlInfo.class); + } else { + throw new ServiceException(result.getMessage()); + } + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + return null; + } + + /** + * 【取消住院结算】 + * + * @param contract 合同 + * @param yb2305InpatientParam 2305参数 + * @return 医保结果 + */ + public Yb2305OutputSetlInfo inpatientUnSettle(Contract contract, Yb2305InputInpatient yb2305InpatientParam) { + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/inpa-un-setl", + yb2305InpatientParam, contract); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【2305】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【2305】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + return mapper.readValue(String.valueOf(result.getResult()), Yb2305OutputSetlInfo.class); + } else { + throw new ServiceException(result.getMessage()); + } + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + return null; + } + + /** + * 【5205】人员慢特病用药记录查询 + * + * @param yb5205InputSpecialDisease + * @return + */ + public List + yb5205SpecialDiseaseDrugRecordSearch(Yb5205InputSpecialDisease yb5205InputSpecialDisease) { + String resultString = + httpPost(SecurityUtils.getLoginUser().getOptionJson().getString("ybUrl") + "/spe-disease-record-search", + yb5205InputSpecialDisease, null); + if (StringUtils.isEmpty(resultString)) { + throw new ServiceException("未接收到医保返回参数"); + } + System.out.println("【5205】返回参数:" + JSON.toJSONString(resultString)); + logger.info("【5205】返回参数:" + resultString); + ObjectMapper mapper = new ObjectMapper(); + Result result = null; + try { + result = mapper.readValue(resultString, Result.class); + if (result == null) { + throw new ServiceException("未接收到医保返回参数"); + } else if (result.getCode() == 200) { + System.out.println(result.getResult().toString()); + return JSON.parseArray(result.getResult().toString(), Yb5205OutputSpecialDisease.class); + } else { + throw new ServiceException(result.getMessage()); + } + } catch (Exception e) { + logger.error(e.getMessage(), e); + } + return null; + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java new file mode 100644 index 00000000..a27c02d2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/YbManager.java @@ -0,0 +1,1034 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.service; + +import java.math.BigDecimal; +import java.util.*; +import java.util.concurrent.TimeUnit; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.core.common.core.domain.R; +import com.core.common.core.redis.RedisCache; +import com.core.common.exception.ServiceException; +import com.core.common.utils.AssignSeqUtil; +import com.core.common.utils.SecurityUtils; +import com.core.common.utils.StringUtils; +import com.core.system.service.impl.SysUserServiceImpl; +import com.core.web.controller.common.CommonController; +import com.openhis.administration.domain.Encounter; +import com.openhis.administration.domain.Organization; +import com.openhis.administration.domain.Patient; +import com.openhis.administration.domain.Practitioner; +import com.openhis.administration.dto.ChargeItemBaseInfoDto; +import com.openhis.administration.service.*; +import com.openhis.common.constant.CommonConstants; +import com.openhis.common.constant.YbCommonConstants; +import com.openhis.common.enums.AssignSeqEnum; +import com.openhis.common.enums.Whether; +import com.openhis.common.enums.ybenums.YbHospApprFlag; +import com.openhis.common.enums.ybenums.YbMdtrtCertType; +import com.openhis.common.enums.ybenums.YbMedType; +import com.openhis.common.enums.ybenums.YbPsnSetlWay; +import com.openhis.financial.domain.Contract; +import com.openhis.financial.domain.PaymentReconciliation; +import com.openhis.financial.model.PaymentResult; +import com.openhis.financial.service.IContractService; +import com.openhis.financial.service.IPaymentRecDetailService; +import com.openhis.financial.service.IPaymentReconciliationService; +import com.openhis.medication.service.IMedicationDispenseService; +import com.openhis.workflow.service.IDeviceDispenseService; +import com.openhis.workflow.service.IInventoryItemService; +import com.openhis.workflow.service.IServiceRequestService; +import com.openhis.yb.domain.*; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.dto.*; +import com.openhis.yb.model.CancelRegPaymentModel; +import com.openhis.yb.model.Clinic2207OrderModel; +import com.openhis.yb.model.Clinic2207OrderParam; +import com.openhis.yb.model.OutpatientRegistrationModel; +import com.openhis.yb.service.impl.DirectoryCheckRecordServiceImpl; +import com.openhis.yb.util.CommonConstant; +import com.openhis.yb.util.YbParamBuilderUtil; + +/** + * 医保服务(与ybController方法一致,原定是ui触发医保controller,2025/05/05由于缺少ui资源,欲使用对应的业务controller直接触发医保服务,故将其下沉到Service层) + * + * @author SunJQ + * @date 2025-05-05 + */ +@Service +public class YbManager { + + private static final Logger log = LoggerFactory.getLogger(CommonController.class); + @Autowired + private YbDao ybBaseService; + @Autowired + private YbHttpUtils ybHttpService; + @Autowired + private RedisCache redisCache; + @Autowired + private AssignSeqUtil assignSeqUtil; + /******************************** 业务服务 ***********************************/ + @Autowired + private IPaymentRecDetailService iPaymentRecDetailService; + @Autowired + private IPaymentReconciliationService iPaymentReconciliationService; + @Autowired + private SysUserServiceImpl userService; + @Autowired + private IPractitionerService iPractitionerService; + @Autowired + private IEncounterService iEncounterService; + @Autowired + private IAccountService accountService; + @Autowired + private IChargeItemService iChargeItemService; + @Autowired + private IInvoiceService invoiceService; + @Autowired + private IPatientService iPatientService; + @Autowired + private IContractService iContractService; + @Autowired + private IOrganizationService iOrganizationService; + @Autowired + private IInventoryItemService inventoryItemService; + /****************************** 基础医保服务 *********************************/ + + @Autowired + private IPerinfoService iPerinfoService; + @Autowired + private IRegService iRegService; + @Autowired + private IInpatientRegService inpatientRegService; + @Autowired + private IClinicUnRegService iClinicUnRegService; + @Autowired + private ISignService iSignService; + @Autowired + private IClinicPreSettleService iClinicPreSettleService; + @Autowired + private IClinicSettleService iClinicSettleService; + @Autowired + private IClinicUnSettleService iClinicUnSettleService; + @Autowired + private DirectoryCheckRecordServiceImpl directoryCheckRecordService; + @Autowired + private IInventorySaleReturnRecordService iInventorySaleReturnRecordService; + @Autowired + private IInventorySaleRecordService iInventorySaleRecordService; + @Autowired + private IInventoryPurchaseReturnRecordService iInventoryPurchaseReturnRecordService; + @Autowired + private IInventoryPurchaseRecordService iInventoryPurchaseRecordService; + @Autowired + private IInventoryDelRecordService iInventoryDelRecordService; + @Autowired + private IInventoryCheckRecordService iInventoryCheckRecordService; + @Autowired + private IInventoryChangeRecordService iInventoryChangeRecordService; + @Autowired + private IFinancialReconcileRecordService iFinancialReconcileRecordService; + @Autowired + private IFinancialApplyRecordService iFinancialApplyRecordService; + @Autowired + private YbParamBuilderUtil ybUtil; + @Autowired + private IMedicationDispenseService medicationDispenseService; + @Autowired + private IDeviceDispenseService deviceDispenseService; + @Autowired + private IServiceRequestService serviceRequestService; + + /** + * 【1101】 + * + * @return 结果 + */ + public R getPerInfo(String certType, String certNo) { + Info1101ReadcardParam readcard = ybBaseService.getReadCard(certType, certNo); + Info1101Output perInfo = ybHttpService.getPerInfo(readcard); + if (perInfo != null) { + ybBaseService.saveReadcardAndPerinfo(readcard, perInfo); + } + return R.ok(perInfo); + } + + /** + * 【2201】 为了慢特病自动挂号封装 + * + * @param encounterId 就诊id + * @return 结果 + */ + public ClinicReg2201Output createRegWithMedType(Contract contract, YbMdtrtCertType ybMdtrtCertTypeLong, + String busiCardInfo, Long encounterId, YbMedType medType) { + ClinicReg reg = ybBaseService.getReg(ybMdtrtCertTypeLong, busiCardInfo, encounterId, medType, + SecurityUtils.getLoginUser().getTenantId()); + reg.setMedType(medType.getValue()); + ClinicReg2201Output regResult = ybHttpService.reg(reg, contract); + if (regResult != null) { + regResult.setMedType(medType.getValue()); + ybBaseService.saveReg(regResult); + } + return regResult; + } + + /** + * 【2202】 + * + * @param cancelRegPaymentDto 就诊id + * @return 结果 + */ + public R cancelReg(CancelRegPaymentModel cancelRegPaymentDto) { + + Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); + + PaymentReconciliation paymentReconciliation = + iPaymentReconciliationService.getById(cancelRegPaymentDto.getId()); + + if (paymentReconciliation == null) { + throw new ServiceException("未查询到付款信息"); + } + if (paymentReconciliation.getYbSettleIds() == null) { + throw new ServiceException("未查询到医保付款信息"); + } + + String ybSettleId = paymentReconciliation.getYbSettleIds().split(",")[0];// 理论上挂号的这个只有一个参数,没有逗号 + // 医保退费 + Clinic2208UnSetlInfoParam clinicOrder2208 = ybBaseService.getClinicOrder2208(tenantId, ybSettleId); + if (clinicOrder2208 == null) { + throw new ServiceException("未查询到医保付款信息"); + } + + Contract contractByInsuplcAdmdvs = iContractService.getContract(cancelRegPaymentDto.getContractNo()); + + Clinic2208UnSetlInfoOutput clinic2208UnSetlInfoOutput = + ybHttpService.unSettle(clinicOrder2208, contractByInsuplcAdmdvs); + if (clinic2208UnSetlInfoOutput == null) { + throw new ServiceException("未查询到医保返回信息"); + } + + cancelRegPaymentDto.setSetlId(clinic2208UnSetlInfoOutput.getSetlId()); + ybBaseService.saveUnSettleRecord(ybSettleId, clinicOrder2208, clinic2208UnSetlInfoOutput); + + ClinicReg reg = ybBaseService.getUnReg(cancelRegPaymentDto.getEncounterId(), tenantId); + + ClinicReg2201Output regResult = + ybHttpService.cancelReg(reg, iContractService.getContract(cancelRegPaymentDto.getContractNo())); + if (regResult != null) { + ybBaseService.saveUnReg(regResult); + } + return R.ok(regResult); + } + + /** + * 【2202】 + * + * @param clinicReg 就诊id + * @return 结果 + */ + public R cancelRegById(ClinicReg clinicReg) { + Contract regContract = null; + // ClinicReg clinicReg = iRegService.getById(clinicRegId); + List redisContractList = iContractService.getContractListByYb(); + for (Contract contract : redisContractList) { + if (clinicReg.getInsuplcAdmdvs().equals(contract.getAdmVs())) { + regContract = contract; + } + } + if (regContract == null) { + Optional optional = redisContractList.stream().max(Comparator.comparingInt(Contract::getSort)); + if (optional.isPresent()) { + regContract = optional.get(); + } else { + throw new ServiceException("未設置合同順序"); + } + } + if (regContract == null) { + throw new ServiceException("無法單獨取消醫保挂號,原因:當前醫保局已挂號源沒指定到業務系統的合同對象"); + } + + ClinicReg2201Output regResult = ybHttpService.cancelReg(clinicReg, regContract); + if (regResult != null) { + ybBaseService.saveUnReg(regResult); + return R.ok(regResult); + } + return R.fail(regResult, "医保退号失败"); + } + + /** + * 【2206】2203-2206 + * + * @param cancelRegPaymentModel 挂号信息 + * @return 结果 + */ + public Clinic2206OrderOutput getPreSettleInfo(OutpatientRegistrationModel cancelRegPaymentModel, Patient patient, + Organization organization, Practitioner doctor) { + if (patient == null || organization == null || doctor == null) { + throw new ServiceException("未查询到相关信息"); + } + + InfoPerson perinfo = iPerinfoService.getOne(new LambdaQueryWrapper() + .eq(InfoPerson::getCertno, patient.getIdCard()).eq(InfoPerson::getTenantId, patient.getTenantId()) + .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + if (perinfo == null) { + throw new ServiceException("未查询到身份信息"); + } + + YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(cancelRegPaymentModel.getMdtrtCertType()); + if (mdtrtCertType == null) { + throw new ServiceException("传参异常,未查询到就诊凭证类型"); + } + + Contract contract = iContractService.getContract(cancelRegPaymentModel.getContractNo()); + if (contract == null) { + throw new ServiceException("请选择费用性质"); + } + // 拼接医保挂号参数 + ClinicReg reg = new ClinicReg(); + reg.setPsnNo(perinfo.getPsnNo()).setInsutype(perinfo.getInsutype()).setBegntime(new Date()) + .setMdtrtCertType(mdtrtCertType.getValue()).setMdtrtCertNo(cancelRegPaymentModel.getBusiCardInfo()) + .setIptOtpNo(assignSeqUtil.getSeqByDay(AssignSeqEnum.ENCOUNTER_NUM.getPrefix(), 4)) + .setAtddrNo(doctor.getYbNo()).setDrName(doctor.getName()).setDeptCode(organization.getYbNo()) + .setDeptName(organization.getName()) + .setCaty(organization.getCaty() == null ? organization.getYbNo() : organization.getCaty()) + .setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()).setAtddrNo(doctor.getYbNo()).setPsnType("11") + .setPsnCertType("01").setCertno(perinfo.getCertno()).setPsnName(perinfo.getPsnName()); + + // reg.setAtddrNo("D220172023129").setDrName("郭建林").setCaty("B19").setDeptCode("B19"); + + // 发送医保挂号请求 + ClinicReg2201Output clinicReg2201Output = ybHttpService.reg(reg, contract); + if (clinicReg2201Output == null) { + throw new ServiceException("未接受到医保挂号接口返回参数"); + } + clinicReg2201Output.setMedType(YbMedType.GENERAL_OUTPATIENT.getValue()); + // 保存挂号数据 + ybBaseService.saveReg(clinicReg2201Output); + + // 查询医疗类型 + YbMedType medType = YbMedType.GENERAL_OUTPATIENT; + + List diseinfos = new ArrayList<>(); + + // 拼接2203参数 + Clinic2203DiseInfoParam diseinfo = new Clinic2203DiseInfoParam(); + diseinfo.setDiagDept(organization.getYbNo()).setDiseDorName(doctor.getName()).setDiseDorNo(doctor.getYbNo()) + .setDiagTime(new Date()).setValiFlag(Whether.YES.getValue().toString()).setDiagType("1").setDiagSrtNo("1") + .setDiagCode("Z00.001").setDiagName("健康查体").setMdtrtId(clinicReg2201Output.getMdtrtId()); + // .setDiseDorNo("D220172023129").setDiseDorName("郭建林").setDiagDept("B19"); + + diseinfos.add(diseinfo); + + Clinic2203MedicalParam medical2203Param = new Clinic2203MedicalParam(); + medical2203Param.setMdtrtId(clinicReg2201Output.getMdtrtId()).setPsnNo(reg.getPsnNo()) + .setBegntime(reg.getBegntime()).setMedType(medType.getValue()).setMainCondDscr("") + .setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()).setDiseCodg("Z00.001").setDiseName("健康查体") + .setDiseinfoList(diseinfos).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()); + + // 2203接口上传就诊信息 + ybHttpService.upload2203Record(medical2203Param, contract); + + YbPsnSetlWay finCategory = YbPsnSetlWay.getByValue(cancelRegPaymentModel.getPsnSetlWay()); + if (finCategory == null) { + throw new ServiceException("请选择收费方式"); + } + + // 拼接2204参数 + Clinic2204OrderParam clinic2204OrderParam = new Clinic2204OrderParam(); + // 排番 + clinic2204OrderParam.setChrgBchno(AssignSeqEnum.YB_CLINIC_ORDER.getPrefix() + new Date().getTime());// 医保FeedetlSn字段最大长度30,前期设置20也被check了,故此怀疑是加密后不可超过30 + List clincFeedetailList = new ArrayList<>(); + Clinic2204FeeDetailParam clinicFeedetail = new Clinic2204FeeDetailParam(); + BigDecimal totalPrice = cancelRegPaymentModel.getTotalPrice(); + if (totalPrice == null) { + throw new ServiceException("未查询到挂号费用金额"); + } + // 外购处方标志(文档上没有详细介绍) 2025/04/14经确认,暂定非处方流转传0,处方流转传1 + clinicFeedetail.setMedListCodg("001101000010000-100000002"); + clinicFeedetail.setFeedetlSn(clinic2204OrderParam.getChrgBchno()).setMdtrtId(clinicReg2201Output.getMdtrtId()) + .setPsnNo(reg.getPsnNo()).setChrgBchno(clinic2204OrderParam.getChrgBchno()).setFeeOcurTime(new Date()) + .setMedinsListCodg("1922546598919725058").setDetItemFeeSumamt(totalPrice.doubleValue()).setCnt(1.0) + .setPric(totalPrice.doubleValue()).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()) + .setBilgDeptCodg(organization.getYbNo()).setBilgDeptName(organization.getName()) + .setBilgDrCodg(doctor.getYbNo()) + // 默认无需审批 + .setBilgDrName(doctor.getName()).setHospApprFlag(YbHospApprFlag.NO_APPROVAL_REQUIRED.getValue()) + .setRxCircFlag("0").setBilgDrCodg(doctor.getYbNo()); + // .setBilgDrName("郭建林").setBilgDrCodg("D220172023129") + // .setBilgDeptCodg("B19").setBilgDeptName(organization.getName()); + + clincFeedetailList.add(clinicFeedetail); + clinic2204OrderParam.setFeedetail(clincFeedetailList).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()); + + // 接收2204接口返回参数 + Clinic2204OrderResult clinic2204OrderResult = ybHttpService.upload2204Record(clinic2204OrderParam, contract); + if (clinic2204OrderResult == null) { + throw new ServiceException("未接收2204接口返回参数"); + } + + // 个人结算方式 + YbPsnSetlWay setlWay = YbPsnSetlWay.PSN_SETLWAY01; + // 拼接2206预结算参数 + Clinic2206OrderParam clinicOrder = new Clinic2206OrderParam(); + clinicOrder.setPsnNo(clinicReg2201Output.getPsnNo()).setMdtrtCertType(clinicReg2201Output.getMdtrtCertType()) + .setMdtrtCertNo(clinicReg2201Output.getMdtrtCertNo()).setMedType(medType.getValue()) + .setMedfeeSumamt(totalPrice.doubleValue()).setPsnSetlway(setlWay.getValue()) + .setMdtrtId(clinicReg2201Output.getMdtrtId()).setChrgBchno(clinic2204OrderParam.getChrgBchno()) + .setAcctUsedFlag(String.valueOf(Whether.YES.getValue())).setInsutype(clinicReg2201Output.getInsutype()) + .setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()); + + // 接收2206接口返回参数 + Clinic2206OrderOutput clinic2206OrderResult = ybHttpService.upload2206Record(clinicOrder, contract); + if (clinic2206OrderResult == null) { + throw new ServiceException("未接收2206接口返回参数"); + } + // 保存预结算参数 + ybBaseService.saveClinicOrder2206Param(clinicOrder, clinic2206OrderResult, medical2203Param, + clinic2204OrderParam, clinic2204OrderResult); + // 缓存预结算结果 + redisCache.setCacheObject("PRE-SETTLE:PRE_SETTLE_:" + clinic2204OrderParam.getChrgBchno(), + clinic2206OrderResult, 1800, TimeUnit.SECONDS); + clinic2206OrderResult.setChrgBchno(clinic2204OrderParam.getChrgBchno()).setBusNo(reg.getIptOtpNo()); + // 返回预结算结果 + return clinic2206OrderResult; + } + + public Clinic2206OrderOutput preSettle(Contract contract, Long encounterId, YbMdtrtCertType ybMdtrtCertType, + String busiCardInfo, ClinicReg2201Output reg2201Output, String payWay, List chargeItemIds, + YbMedType ybMedType) { + YbPsnSetlWay ybPsnSetlWay = YbPsnSetlWay.getByValue(payWay); + if (ybPsnSetlWay == null) { + ybPsnSetlWay = YbPsnSetlWay.PSN_SETLWAY01; + } + + Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); + // 获取2203接口和2204接口参数 + Clinic2203MedicalParam clinic2203MedicalParam = + ybBaseService.getClinicMedical2203Param(encounterId, tenantId, reg2201Output, ybMedType); + if (clinic2203MedicalParam == null) { + throw new ServiceException("未生成2203接口参数"); + } + + Result result = ybHttpService.upload2203Record(clinic2203MedicalParam, contract); + + Clinic2204OrderParam clinic2204OrderParam = + ybBaseService.getClinicOrder2204Param(tenantId, chargeItemIds, reg2201Output); + if (clinic2204OrderParam == null) { + throw new ServiceException("未生成2204接口参数"); + } + + // 接收2204接口返回参数 + Clinic2204OrderResult clinic2204OrderResult = ybHttpService.upload2204Record(clinic2204OrderParam, contract); + if (clinic2204OrderResult == null) { + throw new ServiceException("未接收2204接口参数"); + } + // 2204上报费用明细金额总数在2206中使用 + BigDecimal sum = BigDecimal.ZERO; + for (Clinic2204FeeDetailResult clinic2204FeeDetailResult : clinic2204OrderResult.getResult()) { + sum = sum.add(clinic2204FeeDetailResult.getDetItemFeeSumamt()); + } + + // 获取2206参数 + Clinic2206OrderParam clinic2206OrderParam = ybBaseService.getClinicOrder2206Param(sum, reg2201Output, + clinic2204OrderParam.getChrgBchno(), busiCardInfo); + if (clinic2206OrderParam == null) { + throw new ServiceException("未生成2206接口参数"); + } + // 接收2206接口返回参数 + Clinic2206OrderOutput clinic2206OrderResult = ybHttpService.upload2206Record(clinic2206OrderParam, contract); + if (clinic2206OrderResult == null) { + throw new ServiceException("未接收2206接口参数"); + } + // 保存预结算参数 + ybBaseService.saveClinicOrder2206Param(clinic2206OrderParam, clinic2206OrderResult, clinic2203MedicalParam, + clinic2204OrderParam, clinic2204OrderResult); + // 缓存预结算结果 + // redisCache.setCacheObject("PRE-SETTLE:PRE_SETTLE_:" + clinic2206OrderParam.getChrgBchno(), + // clinic2206OrderResult, 1800, TimeUnit.SECONDS); + clinic2206OrderResult.setChrgBchno(clinic2206OrderParam.getChrgBchno()); + return clinic2206OrderResult; + } + + /** + * 【2208】 + * + * @param settleId 付款id + * @return 结果 + */ + public R unSettle(String settleId) { + Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); + Clinic2208UnSetlInfoParam clinicOrder2208 = ybBaseService.getClinicOrder2208(tenantId, settleId); + // clinicOrder2208.setMdtrtId("220000202505161931470129200037").setSetlId("220000202505161932020113002625"); + if (clinicOrder2208 == null) { + throw new ServiceException("未生成2208接口参数"); + } + Contract contractByInsuplcAdmdvs = + iContractService.getContractByInsuplcAdmdvs(clinicOrder2208.getInsuplcAdmdvs()); + Clinic2208UnSetlInfoOutput clinic2208UnSetlInfoResult = + ybHttpService.unSettle(clinicOrder2208, contractByInsuplcAdmdvs); + // 业务表中进行操作 + ybBaseService.saveUnSettleRecord(settleId, clinicOrder2208, clinic2208UnSetlInfoResult); + return R.ok(clinic2208UnSetlInfoResult); + } + + /** + * 【3301】目录对照 + * + * @param tableName 表名 + * @param id 主键id + * @return 结果 + */ + public R directoryCheck(String tableName, Long id) { + + MedicalDirectory3302Param medicalDirectory3302Param = ybBaseService.getMedicalDirectory3302Param(tableName, id); + Result result3302Info = ybHttpService.directoryUnCheck(medicalDirectory3302Param); + if (result3302Info.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveDirectoryHistory(tableName, id, 3302, medicalDirectory3302Param); + } else { + log.error("目录对照前,撤销对照失败"); + } + MedicalDirectory3301Param medicalDirectory3301Param = ybBaseService.getMedicalDirectory3301Param(tableName, id); + ArrayList list = new ArrayList<>(); + list.add(medicalDirectory3301Param); + MedicalDirectory3301ListParam medicalDirectory3301ListParam = new MedicalDirectory3301ListParam(); + medicalDirectory3301ListParam.setData(list); + Result resultInfo = ybHttpService.directoryCheck(medicalDirectory3301ListParam); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveDirectoryHistory(tableName, id, 3301, medicalDirectory3301Param); + return R.ok("对照成功"); + } + throw new ServiceException("药品对照失败"); + } + + /** + * 【3301】目录对照(药品) + * + * @param categoryCode 药品分类 + * @param busNo 药品编号 + * @param name 药品编号 + * @param ybNo 医保编码 + */ + public R directoryCheckMedication(String categoryCode, String busNo, String name, String ybNo) { + MedicalDirectory3302Param medicalDirectory3302Param = + ybBaseService.getMedicalDirectory3302ParamMedication(categoryCode, busNo, ybNo); + Result result3302Info = ybHttpService.directoryUnCheck(medicalDirectory3302Param); + if (!result3302Info.getCode().equals(CommonConstant.SC_OK_200)) { + return R.fail("目录对照前,撤销对照失败"); + } + MedicalDirectory3301Param medicalDirectory3301Param = + ybBaseService.getMedicalDirectory3301ParamMedication(categoryCode, busNo, name, ybNo); + ArrayList list = new ArrayList<>(); + list.add(medicalDirectory3301Param); + MedicalDirectory3301ListParam medicalDirectory3301ListParam = new MedicalDirectory3301ListParam(); + medicalDirectory3301ListParam.setData(list); + Result resultInfo = ybHttpService.directoryCheck(medicalDirectory3301ListParam); + if (!resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + return R.fail("药品对照失败"); + } + return R.ok(); + } + + /** + * 【3302】目录对照撤销 + * + * @param tableName 就诊id + * @param id 付款id + * @return 结果 + */ + public R directoryUnCheck(String tableName, Long id) { + + MedicalDirectory3302Param medicalDirectory3302Param = ybBaseService.getMedicalDirectory3302Param(tableName, id); + Result resultInfo = ybHttpService.directoryUnCheck(medicalDirectory3302Param); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveDirectoryHistory(tableName, id, 3302, medicalDirectory3302Param); + return R.ok("撤销成功"); + } + return R.fail("撤销失败"); + } + + /** + * 【3201】对总账 + * + * @param settlement3201WebParam 3201入参条件 + * @return 结果 + */ + public R reconcileGeneralLedger(Settlement3201WebParam settlement3201WebParam) { + + Financial3201Param financial3201Param = ybBaseService.getFinancial3201Param(settlement3201WebParam); + if (financial3201Param == null) { + throw new ServiceException("未生成3201参数"); + } + Result result = ybHttpService.reconcileGeneralLedger(financial3201Param); + if (result == null) { + throw new ServiceException("未接收3201医保返回参数"); + } + // ybBaseService.saveReconcileGeneralLedger(result); + return R.ok(); + } + + /** + * 【3202】对明细账 + * + * @param settlement3202WebParam 3202入参条件 + * @return 结果 + */ + public R reconcileGeneralLedgerDetail(Settlement3202WebParam settlement3202WebParam) { + + FinancialSettlement3202Param financial3202Param = + ybBaseService.getFinancialSettlement3202Param(settlement3202WebParam); + FinancialSettlement3202Result resultInfo = ybHttpService.reconcileGeneralLedgerDetail(financial3202Param); + + return R.ok(resultInfo); + } + + /** + * 【3209A】第三方数据查询 + * + * @param settlement3209AWebParam 3209A入参条件 + * @return 结果 + */ + public R threePartSearch(Settlement3209AWebParam settlement3209AWebParam) { + + FinancialSettlement3209AParam financialSettlement3209AParam = + ybBaseService.getFinancialSettlement3209AParam(settlement3209AWebParam); + List list = ybHttpService.threePartSearch(financialSettlement3209AParam); + + return R.ok(); + } + + /** + * 【3203A】清算申请(吉林省) + * + * @param financial3203AWebParam 3203A入参条件 + * @return 结果 + */ + public R applyFinancialClearing(Financial3203AWebParam financial3203AWebParam) { + + Financial3203AParam financial3203AParam = ybBaseService.getFinancial3203AParam(financial3203AWebParam); + String s = ybHttpService.applyFinancialClearing(financial3203AParam); + ybBaseService.save3203AFinancialClearingApplycation(financial3203AParam, s); + return R.ok(s); + } + + /** + * 【3204A】清算申请撤销(吉林省) + * + * @param clrAppyEvtId 3203A入参条件 + * @return 结果 + */ + public R cancelFinancialClearing(String clrAppyEvtId, String clrOptins) { + + Financial3204Param financial3204Param = new Financial3204Param(); + financial3204Param.setClrOptins(clrOptins).setClrAppyEvtId(clrAppyEvtId); + Result resultInfo = ybHttpService.cancelFinancialClearing(financial3204Param); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.save3204AFinancialClearingApplycation(clrAppyEvtId, clrOptins); + return R.ok(); + } + return R.fail(); + } + + /** + * 【3205A】清算申请状态查询 + * + * @param clearing3205AWebParma 3205A入参条件 + * @return 结果 + */ + public R getFinancialClearingStatus(Clearing3205AWebParma clearing3205AWebParma) { + + Clearing3205AParma clearing3205AParma = ybBaseService.getClearing3205AParma(clearing3205AWebParma); + Clearing3205AResult clearing3205AResult = ybHttpService.getFinancialClearingStatus(clearing3205AParma); + + return R.ok(clearing3205AResult); + } + + /** + * 【3501】商品盘存上传 + * + * @param medicalInventory3501Param 供应申请详细信息 + * @param stocktakingTime 盘存时间 + * @return 结果 + */ + public R uploadInventoryCount(MedicalInventory3501Param medicalInventory3501Param, Date stocktakingTime) { + Result resultInfo = ybHttpService.uploadInventoryCount(medicalInventory3501Param); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveInventoryCheckRecord(medicalInventory3501Param, resultInfo.getMessage()); + return R.ok(); + } + ybBaseService.saveInventoryCheckRecord(medicalInventory3501Param, resultInfo.getMessage()); + return R.fail(); + } + + /** + * 【3502】商品信息变更 + * + * @param medicalInventory3502Param 供应申请详细信息 + * @return 结果 + */ + public R updateInventoryCount(MedicalInventory3502Param medicalInventory3502Param) { + Result resultInfo = ybHttpService.updateInventoryCount(medicalInventory3502Param); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveInventoryChangeRecord(medicalInventory3502Param, resultInfo.getMessage()); + return R.ok(); + } + ybBaseService.saveInventoryChangeRecord(medicalInventory3502Param, resultInfo.getMessage()); + return R.fail(); + } + + /** + * 【3503】商品采购 + * + * @param medical3503Param 供应申请详细信息 + * @return 结果 + */ + public R procurement(Medical3503Param medical3503Param) { + Result resultInfo = ybHttpService.procurement(medical3503Param); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveInventoryPurchaseRecord(medical3503Param, resultInfo.getMessage()); + return R.ok(); + } + ybBaseService.saveInventoryPurchaseRecord(medical3503Param, resultInfo.getMessage()); + return R.fail(); + } + + /** + * 【3504】商品采购退货 + * + * @param medicalPurchase3504Param 供应申请详细信息 + * @return 结果 + */ + public R cancelProcurement(MedicalPurchase3504Param medicalPurchase3504Param) { + Result resultInfo = ybHttpService.cancelProcurement(medicalPurchase3504Param); + if (resultInfo.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveInventoryPurchaseReturnRecord(medicalPurchase3504Param, resultInfo.getMessage()); + return R.ok(); + } + ybBaseService.saveInventoryPurchaseReturnRecord(medicalPurchase3504Param, resultInfo.getMessage()); + return R.fail(); + } + + /** + * 【3505】商品销售 + * + * @param medical3505Param 发药详细信息 + * @return 结果 + */ + public R merchandise(Medical3505Param medical3505Param) { + + Result result = ybHttpService.merchandise(medical3505Param); + Medical3505Result medical3505Result = + JSON.parseObject(JSON.toJSONString(result.getResult()), Medical3505Result.class); + if ("1".equals(medical3505Result.getRetRslt())) { + ybBaseService.saveInventorySaleRecord(medical3505Param, medical3505Result.getMsgRslt()); + return R.ok(); + } + ybBaseService.saveInventorySaleRecord(medical3505Param, medical3505Result.getMsgRslt()); + return R.fail(); + } + + /** + * 【3506】商品销售退货 + * + * @param medical3506Param 退货详细信息 + * @return 结果 + */ + public R cancelMerchandise(Medical3506Param medical3506Param) { + Result result = ybHttpService.cancelMerchandise(medical3506Param); + Medical3505Result medical3505Result = + JSON.parseObject(JSON.toJSONString(result.getResult()), Medical3505Result.class); + if ("1".equals(medical3505Result.getRetRslt())) { + ybBaseService.saveInventorySaleReturnRecord(medical3506Param, medical3505Result.getMsgRslt()); + return R.ok(); + } + ybBaseService.saveInventorySaleReturnRecord(medical3506Param, medical3505Result.getMsgRslt()); + return R.fail(); + } + + /** + * 【3507】商品信息删除 + * + * @param id 供应申请id + * @return 结果 + */ + public R deleteGoodsInfo(Long id, String ListType) { + Medical3507Param medical3507Param = ybBaseService.getMedical3507Param(id, ListType); + Result resultBody = ybHttpService.deleteGoodsInfo(medical3507Param); + if (resultBody.getCode().equals(CommonConstant.SC_OK_200)) { + ybBaseService.saveInventoryDelRecord(medical3507Param); + return R.ok(); + } + return R.fail(); + } + + /** + * 【门诊结算-2207结算】 + * + * @param contract 合同 + * @param chrgBchno 支付批次号 + * @param ybMdtrtCertType 凭证类型 + * @param busiCardInfo 读卡获取到的凭证 + * @param minpacuntDrugTracCnt 追溯码相关信息 + * @param mcsTracCnt 追溯码相关信息 + * @return 结算结果 + */ + public Clinic2207OrderModel settle(Contract contract, String chrgBchno, String busiCardInfo, + YbMdtrtCertType ybMdtrtCertType, Integer minpacuntDrugTracCnt, Integer mcsTracCnt) { + // 分别查询2206和2201记录的参数信息 + ClinicPreSettle clinicPreSettle = iClinicPreSettleService + .getOne(new LambdaQueryWrapper().eq(ClinicPreSettle::getChrgBchno, chrgBchno)); + if (clinicPreSettle == null) { + throw new ServiceException("为查询到预结算信息"); + } + ClinicReg clinicReg = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicPreSettle.getMdtrtId())); + if (clinicReg == null) { + throw new ServiceException("为查询到挂号信息"); + } + Clinic2206OrderOutput clinic2206OrderResult = + JSONObject.parseObject(clinicPreSettle.getResult2206(), Clinic2206OrderOutput.class); + // 组装2207接口参数 + Clinic2207OrderParam clinicOrder = new Clinic2207OrderParam(); + clinicOrder.setPsnNo(clinicPreSettle.getPsnNo()).setMdtrtCertType(ybMdtrtCertType.getValue()) + .setMdtrtCertNo(busiCardInfo).setMedType(clinic2206OrderResult.getMedType()) + .setMedfeeSumamt(clinic2206OrderResult.getMedfeeSumamt().doubleValue()).setPsnSetlway("01") + .setMdtrtId(clinic2206OrderResult.getMdtrtId()).setChrgBchno(chrgBchno) + .setAcctUsedFlag(Whether.YES.getValue().toString()).setInsutype(clinic2206OrderResult.getInsutype()) + .setFulamtOwnpayAmt(clinic2206OrderResult.getFulamtOwnpayAmt().doubleValue()) + .setOverlmtSelfpay(clinic2206OrderResult.getOverlmtSelfpay().doubleValue()) + .setPreselfpayAmt(clinic2206OrderResult.getPreselfpayAmt().doubleValue()) + .setInscpScpAmt(clinic2206OrderResult.getInscpScpAmt().doubleValue()) + .setInsuplcAdmdvs(clinicReg.getInsuplcAdmdvs()).setMinpacuntDrugTracCnt(minpacuntDrugTracCnt) + .setMcsTracCnt(mcsTracCnt); + // 发送http请求给app + Clinic2207OrderModel settle = ybHttpService.settle(clinicOrder, contract); + if (settle == null) { + throw new ServiceException("未接收2207接口参数"); + } + // 保存记录通信记录 + ybBaseService.saveClinic2207Record(clinicOrder, settle); + return settle.setChrgBchno(chrgBchno); + } + + /** + * 【门诊挂号收费-2207】 + * + * @param contract 合同 + * @param chrgBchno 收费批次号 + * @return 结果 + */ + public PaymentResult settle(Contract contract, String chrgBchno) { + + ClinicPreSettle clinicPreSettle = iClinicPreSettleService + .getOne(new LambdaQueryWrapper().eq(ClinicPreSettle::getChrgBchno, chrgBchno)); + + if (clinicPreSettle == null) { + throw new ServiceException("未查询到预结算信息"); + } + ClinicReg clinicReg = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicPreSettle.getMdtrtId())); + + if (clinicReg == null) { + throw new ServiceException("未查询到挂号信息"); + } + + Clinic2206OrderOutput clinic2206OrderResult = + JSONObject.parseObject(clinicPreSettle.getResult2206(), Clinic2206OrderOutput.class); + + Clinic2207OrderParam clinicOrder = new Clinic2207OrderParam(); + clinicOrder.setPsnNo(clinicPreSettle.getPsnNo()).setMdtrtCertType(clinic2206OrderResult.getMdtrtCertType()) + // todo:sjq 医疗费用总额需要用ChargeItem的和 + .setMdtrtCertNo(clinic2206OrderResult.getMdtrtCertNo()).setMedType(clinic2206OrderResult.getMedType()) + .setMedfeeSumamt(clinic2206OrderResult.getMedfeeSumamt().doubleValue()).setPsnSetlway("01") + .setMdtrtId(clinic2206OrderResult.getMdtrtId()).setChrgBchno(chrgBchno) + .setAcctUsedFlag(Whether.YES.getValue().toString()).setInsutype(clinic2206OrderResult.getInsutype()) + .setFulamtOwnpayAmt(clinic2206OrderResult.getFulamtOwnpayAmt().doubleValue()) + .setOverlmtSelfpay(clinic2206OrderResult.getOverlmtSelfpay().doubleValue()) + .setPreselfpayAmt(clinic2206OrderResult.getPreselfpayAmt().doubleValue()) + .setInscpScpAmt(clinic2206OrderResult.getInscpScpAmt().doubleValue()) + .setInsuplcAdmdvs(clinicReg.getInsuplcAdmdvs()); + + Clinic2207OrderModel settle = ybHttpService.settle(clinicOrder, contract); + + if (settle == null) { + throw new ServiceException("未接收2207接口参数"); + } + // 统一生成业务流水 + String paymentNo = assignSeqUtil.getSeqByDay(AssignSeqEnum.PAYMENT_NO.getPrefix(), 20); + // 业务表中进行操作 + ybBaseService.saveClinic2207Record(paymentNo, clinicOrder, settle); + PaymentResult paymentResult = new com.openhis.financial.model.PaymentResult(); + BeanUtils.copyProperties(settle, paymentResult); + paymentResult.setPaymentNo(paymentNo); + return paymentResult; + } + + public ClinicReg2201Output getClinicRegByEncounterId(Long encounterId) { + return ybBaseService.getClinicRegByEncounterId(encounterId); + } + + public void unPreSettle(Long encounterId, String s) { + Clinic2205OrderParam clinic2205OrderParam = ybBaseService.getClinic2205OrderParam(encounterId, s); + if (clinic2205OrderParam == null) { + throw new ServiceException("未生成2205接口参数"); + } + Contract contract = iContractService.getContractByInsuplcAdmdvs(clinic2205OrderParam.getInsuplcAdmdvs()); + ybHttpService.unPreSettle(clinic2205OrderParam, contract); + } + + /** + * 医保预结算返回信息 + * + * @return 预结算结果 + */ + public Yb2303OutputSetInfo preSettleInpatient(PrePaymentDto prePaymentDto) { + + Encounter encounter = iEncounterService.getById(prePaymentDto.getEncounterId()); + if (encounter == null) { + throw new ServiceException("未查询到就诊记录"); + } + + InpatientReg inpatientReg = inpatientRegService + .getOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, encounter.getBusNo()) + .orderByDesc(InpatientReg::getBegntime).last(YbCommonConstants.sqlConst.LIMIT1)); + if (inpatientReg == null) { + throw new ServiceException("未查询到医保就诊记录"); + } + + InfoPerson infoPerson = iPerinfoService.getByPsnNo(inpatientReg.getPsnNo()); + if (infoPerson == null) { + throw new ServiceException("未查询到患者信息"); + } + + // 获取今天和昨天的上午10点时间 + // LocalDateTime today10AM = LocalDateTime.of(LocalDate.now(), LocalTime.of(10, 0)); // 今天10点 + // LocalDateTime yesterday10AM = today10AM.minusDays(1); // 昨天10点(自动处理跨月/年) + + // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() + // .eq(ChargeItem::getEncounterId, encounterId).between(ChargeItem::getEnteredDate, yesterday10AM, today10AM)); + // List chargeItemList = iChargeItemService.list(new LambdaQueryWrapper() + // .eq(ChargeItem::getEncounterId, encounterId).in(ChargeItem::getId, chargeItemIds)); + List chargeItemBaseInfoDtos = + iChargeItemService.getChargeItemBaseInfoByIds(prePaymentDto.getChargeItemIds()); + List chargeItemBaseInfoDtosList = new ArrayList<>(); + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { + if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + continue; + } + if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { + // 反序列化:将JSON数组字符串转为List<> + List chargeItemBaseInfoList = + JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); + chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); + } else { + chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); + } + } + Yb2301InputFeeDetail yb2301InputFeeDetail; + List yb2301InputFeeDetailList = new ArrayList(); + // int i = 1; + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { + yb2301InputFeeDetail = new Yb2301InputFeeDetail(); + yb2301InputFeeDetail.setFeedetlSn(chargeItemBaseInfoDto.getBusNo()).setMdtrtId(inpatientReg.getMdtrtId()) + .setPsnNo(inpatientReg.getPsnNo()).setMedType(String.valueOf(encounter.getYbClassEnum())) + .setFeeOcurTime(chargeItemBaseInfoDto.getEnteredDate()).setMedListCodg(chargeItemBaseInfoDto.getYbNo()) + .setMedinsListCodg(chargeItemBaseInfoDto.getBaseBusNo()) + .setDetItemFeeSumamt(chargeItemBaseInfoDto.getTotalPrice()) + .setCnt(chargeItemBaseInfoDto.getQuantityValue()).setPric(chargeItemBaseInfoDto.getUnitPrice()) + .setBilgDeptName(chargeItemBaseInfoDto.getDeptName()).setBilgDrName(chargeItemBaseInfoDto.getDoctName()) + .setBilgDeptCodg(chargeItemBaseInfoDto.getDeptYbNo()) + .setBilgDrCodg(chargeItemBaseInfoDto.getDoctYbNo()); + + yb2301InputFeeDetailList.add(yb2301InputFeeDetail); + } + + Yb2301InputFeeDetailModel yb2301InputFeeDetailModel = new Yb2301InputFeeDetailModel(); + yb2301InputFeeDetailModel.setFeedetail(yb2301InputFeeDetailList) + .setInsuplcAdmdvs(inpatientReg.getInsuplcAdmdvs()); + + List yb2301OutputResults = ybHttpService.upload2301FeeDetail(yb2301InputFeeDetailModel); + // todo :数据保存 + + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtos) { + if (chargeItemBaseInfoDto.getContractNo().equals(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO)) { + continue; + } + if (!StringUtils.isEmpty(chargeItemBaseInfoDto.getChildrenJson())) { + // 反序列化:将JSON数组字符串转为List<> + List chargeItemBaseInfoList = + JSON.parseArray(chargeItemBaseInfoDto.getChildrenJson(), ChargeItemBaseInfoDto.class); + chargeItemBaseInfoDtosList.addAll(chargeItemBaseInfoList); + } else { + chargeItemBaseInfoDtosList.add(chargeItemBaseInfoDto); + } + } + // 计算医疗总费用 + BigDecimal medfeeSumamt = BigDecimal.ZERO; + for (ChargeItemBaseInfoDto chargeItemBaseInfoDto : chargeItemBaseInfoDtosList) { + medfeeSumamt = medfeeSumamt.add(chargeItemBaseInfoDto.getTotalPrice()); + } + + Yb2303InputInpatient yb2303InputInpatient = new Yb2303InputInpatient(); + yb2303InputInpatient.setPsnNo(infoPerson.getPsnNo()) + .setMdtrtCertType(YbMdtrtCertType.getByValue(prePaymentDto.getYbMdtrtCertType()) == null ? null + : YbMdtrtCertType.getByValue(prePaymentDto.getYbMdtrtCertType()).getValue()) + .setMdtrtCertNo(prePaymentDto.getBusiCardInfo()).setMedfeeSumamt(medfeeSumamt) + .setPsnSetlway(YbPsnSetlWay.PSN_SETLWAY01.getValue()).setMdtrtId(inpatientReg.getMdtrtId()) + .setInsutype(infoPerson.getInsutype()).setInsuplcAdmdvs(infoPerson.getInsuplcAdmdvs()) + .setMdtrtareaAdmvs(iContractService.getContractListByYb().get(0).getAdmVs()); + + // todo:中如结算标志需要判断一下,待2304接口开发完成后编辑 + + Yb2303OutputSetInfo yb2303OutputSetInfo = ybHttpService.inpatientPreSettle(yb2303InputInpatient); + + if (yb2303OutputSetInfo == null) { + throw new ServiceException("医保预结算失败"); + } + // todo:数据保存 + + return yb2303OutputSetInfo; + } + + /** + * 【住院结算】 + * + * @param contract 合同 + * @param paymentDto 结算参数 + * @return 结果 + */ + public Yb2304OutputSetlInfo inpatientSettle(Contract contract, PaymentInpatientDto paymentDto) { + + Yb2304InputInpatient yb2304InpatientParam = ybBaseService.getYb2304InpatientParam(paymentDto); + + Yb2304OutputSetlInfo yb2304OutputSetlInfo = ybHttpService.inpatientSettle(contract, yb2304InpatientParam); + if (yb2304OutputSetlInfo == null) { + throw new ServiceException("医保结算失败,请稍后重试"); + } + return yb2304OutputSetlInfo; + } + + /** + * 【取消住院结算】 + * + * @param contract 合同 + * @param inpatientSettle 医保结算实体 + * @return 医保结果 + */ + public Yb2305OutputSetlInfo inpatientUnSettle(Contract contract, InpatientSettle inpatientSettle) { + + Yb2305InputInpatient yb2305InpatientParam = ybBaseService.getYb2305InpatientParam(inpatientSettle); + + Yb2305OutputSetlInfo yb2305OutputSetlInfo = ybHttpService.inpatientUnSettle(contract, yb2305InpatientParam); + + return yb2305OutputSetlInfo; + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java new file mode 100644 index 00000000..3ac30b1f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicPreSettleServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import com.openhis.yb.domain.ClinicPreSettle; +import com.openhis.yb.mapper.ClinicPreSettleMapper; +import com.openhis.yb.service.IClinicPreSettleService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author system + * @date 2025-04-20 + */ +@Service +public class ClinicPreSettleServiceImpl extends ServiceImpl implements IClinicPreSettleService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java new file mode 100644 index 00000000..72adc29c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicSettleServiceImpl.java @@ -0,0 +1,44 @@ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.domain.ClinicSettle; +import com.openhis.yb.mapper.ClinicSettleMapper; +import com.openhis.yb.service.IClinicSettleService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.List; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author system + * @date 2025-04-20 + */ +@Service +public class ClinicSettleServiceImpl extends ServiceImpl implements IClinicSettleService { + + /** + * 通过结算id查询 + * + * @param paymentId 结算id + * @return + */ + @Override + public ClinicSettle getByPaymentId(Long paymentId){ + return baseMapper.selectOne(new LambdaQueryWrapper().eq(ClinicSettle::getSetlId, paymentId)); + } + + + @Override + public ClinicSettle getBySettleId(String settleId) { + return baseMapper.selectOne(new LambdaQueryWrapper().eq(ClinicSettle::getSetlId, settleId)); + } + + @Override + public List getBySettleIds(List settleIds) { + return baseMapper.selectList(new LambdaQueryWrapper().in(ClinicSettle::getSetlId, settleIds)); + } +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java new file mode 100644 index 00000000..a2192ad5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnRegServiceImpl.java @@ -0,0 +1,20 @@ +package com.openhis.yb.service.impl; + +import com.openhis.yb.domain.ClinicUnReg; +import com.openhis.yb.service.IClinicUnRegService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.mapper.ClinicUnRegMapper; + + +/** + * 撤销挂号记录Service业务层处理 + * + * @author system + * @date 2025-04-21 + */ +@Service +public class ClinicUnRegServiceImpl extends ServiceImpl implements IClinicUnRegService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java new file mode 100644 index 00000000..933831a2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/ClinicUnSettleServiceImpl.java @@ -0,0 +1,35 @@ +package com.openhis.yb.service.impl; + +import java.util.List; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.common.enums.DelFlag; +import com.openhis.yb.domain.ClinicUnSettle; +import com.openhis.yb.mapper.ClinicUnSettleMapper; +import com.openhis.yb.service.IClinicUnSettleService; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author system + * @date 2025-04-20 + */ +@Service +public class ClinicUnSettleServiceImpl extends ServiceImpl + implements IClinicUnSettleService { + + /** + * 根据settleId查询集合 + * + * @param settleIds 集合 + * @return 集合 + */ + @Override + public List getBySettleIds(List settleIds) { + return baseMapper.selectList(new LambdaQueryWrapper().in(ClinicUnSettle::getSettleId, settleIds) + .eq(ClinicUnSettle::getDeleteFlag, DelFlag.NO.getCode())); + } +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java new file mode 100644 index 00000000..44016e87 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/DirectoryCheckRecordServiceImpl.java @@ -0,0 +1,20 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.DirectoryCheckRecord; +import com.openhis.yb.mapper.DirectoryCheckRecordMapper; +import com.openhis.yb.service.IDirectoryCheckRecordService; + +/** + * 医保Service业务层处理 + * + * @author system + * @date 2025-04-27 + */ +@Service +public class DirectoryCheckRecordServiceImpl extends ServiceImpl + implements IDirectoryCheckRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java new file mode 100644 index 00000000..8dd2dc88 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialApplyRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.FinancialApplyRecord; +import com.openhis.yb.mapper.FinancialApplyRecordMapper; +import com.openhis.yb.service.IFinancialApplyRecordService; + +/** + * 医保财务申请记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class FinancialApplyRecordServiceImpl extends ServiceImpl implements IFinancialApplyRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java new file mode 100644 index 00000000..b9bd9dc3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/FinancialReconcileRecordServiceImpl.java @@ -0,0 +1,20 @@ +package com.openhis.yb.service.impl; + +import com.openhis.yb.domain.FinancialReconcileRecord; +import com.openhis.yb.mapper.FinancialReconcileRecordMapper; +import com.openhis.yb.service.IFinancialReconcileRecordService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + + +/** + * ybService业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class FinancialReconcileRecordServiceImpl extends ServiceImpl implements IFinancialReconcileRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java new file mode 100644 index 00000000..88ac2528 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientFeeDetailServiceImpl.java @@ -0,0 +1,11 @@ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InpatientFeeDetail; +import com.openhis.yb.mapper.InpatientFeeDetailMapper; +import com.openhis.yb.service.IInpatientFeeDetailService; +import org.springframework.stereotype.Service; + +@Service +public class InpatientFeeDetailServiceImpl extends ServiceImpl implements IInpatientFeeDetailService { +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java new file mode 100644 index 00000000..0ba8e4e8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientRegServiceImpl.java @@ -0,0 +1,29 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.common.enums.DelFlag; +import com.openhis.yb.domain.InpatientReg; +import com.openhis.yb.mapper.InpatientRegMapper; +import com.openhis.yb.service.IInpatientRegService; +import org.springframework.stereotype.Service; + +/** + * TODO:请概括描述当前类的主要用途和注意事项 + * + * @author SunJQ + * @date 2025-07-31 + */ +@Service +public class InpatientRegServiceImpl extends ServiceImpl + implements IInpatientRegService { + + @Override + public InpatientReg getInpatientRegByIptNo(String busNo) { + return baseMapper.selectOne(new LambdaQueryWrapper().eq(InpatientReg::getIptNo, busNo) + .eq(InpatientReg::getDeleteFlag, DelFlag.NO.getCode())); + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java new file mode 100644 index 00000000..3646a739 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InpatientSettleServiceImpl.java @@ -0,0 +1,18 @@ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.common.constant.YbCommonConstants; +import com.openhis.common.enums.Whether; +import com.openhis.yb.domain.InpatientSettle; +import com.openhis.yb.mapper.InpatientSettleMapper; +import com.openhis.yb.service.IInpatientSettleService; +import org.springframework.stereotype.Service; + +@Service +public class InpatientSettleServiceImpl extends ServiceImpl implements IInpatientSettleService { + @Override + public InpatientSettle getBySettleId(String ybSettleIds) { + return baseMapper.selectOne(new LambdaQueryWrapper().eq(InpatientSettle::getSetlId,ybSettleIds).eq(InpatientSettle::getDeleteFlag, Whether.NO.getValue()).last(YbCommonConstants.sqlConst.LIMIT1)); + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java new file mode 100644 index 00000000..18bc971f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryChangeRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventoryChangeRecord; +import com.openhis.yb.mapper.InventoryChangeRecordMapper; +import com.openhis.yb.service.IInventoryChangeRecordService; + +/** + * 库存信息变更记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventoryChangeRecordServiceImpl extends ServiceImpl implements IInventoryChangeRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java new file mode 100644 index 00000000..aaa60e85 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryCheckRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventoryCheckRecord; +import com.openhis.yb.mapper.InventoryCheckRecordMapper; +import com.openhis.yb.service.IInventoryCheckRecordService; + +/** + * 库存盘点记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventoryCheckRecordServiceImpl extends ServiceImpl implements IInventoryCheckRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java new file mode 100644 index 00000000..551e4324 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryDelRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventoryDelRecord; +import com.openhis.yb.mapper.InventoryDelRecordMapper; +import com.openhis.yb.service.IInventoryDelRecordService; + +/** + * 库存删除记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventoryDelRecordServiceImpl extends ServiceImpl implements IInventoryDelRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java new file mode 100644 index 00000000..e2e1d060 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventoryPurchaseRecord; +import com.openhis.yb.mapper.InventoryPurchaseRecordMapper; +import com.openhis.yb.service.IInventoryPurchaseRecordService; + +/** + * 库存采购/退货记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventoryPurchaseRecordServiceImpl extends ServiceImpl implements IInventoryPurchaseRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java new file mode 100644 index 00000000..b305809b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventoryPurchaseReturnRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventoryPurchaseReturnRecord; +import com.openhis.yb.mapper.InventoryPurchaseReturnRecordMapper; +import com.openhis.yb.service.IInventoryPurchaseReturnRecordService; + +/** + * 采购/退货记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventoryPurchaseReturnRecordServiceImpl extends ServiceImpl implements IInventoryPurchaseReturnRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java new file mode 100644 index 00000000..f5f572b7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventorySaleRecord; +import com.openhis.yb.mapper.InventorySaleRecordMapper; +import com.openhis.yb.service.IInventorySaleRecordService; + +/** + * 销售/退货记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventorySaleRecordServiceImpl extends ServiceImpl implements IInventorySaleRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java new file mode 100644 index 00000000..27d0e30a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/InventorySaleReturnRecordServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.yb.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.domain.InventorySaleReturnRecord; +import com.openhis.yb.mapper.InventorySaleReturnRecordMapper; +import com.openhis.yb.service.IInventorySaleReturnRecordService; + +/** + * 销售/退货记录Service业务层处理 + * + * @author system + * @date 2025-04-30 + */ +@Service +public class InventorySaleReturnRecordServiceImpl extends ServiceImpl implements IInventorySaleReturnRecordService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java new file mode 100644 index 00000000..29412e3e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/PerinfoServiceImpl.java @@ -0,0 +1,65 @@ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.core.common.exception.ServiceException; +import com.core.common.utils.StringUtils; +import com.openhis.common.constant.YbCommonConstants; +import com.openhis.financial.domain.Contract; +import com.openhis.yb.domain.InfoPerson; +import com.openhis.yb.service.IPerinfoService; +import com.openhis.yb.mapper.PerinfoMapper; + +import org.springframework.stereotype.Service; + +/** + * @Description: 人员基础信息 + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +@Service +public class PerinfoServiceImpl extends ServiceImpl implements IPerinfoService { + @Override + public InfoPerson getPerInfoByIdCard(String idCard,Integer tenantId) { + return baseMapper.selectOne(new LambdaQueryWrapper() + .eq(InfoPerson::getCertno, idCard).eq(InfoPerson::getTenantId, tenantId) + .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + } + + @Override + public InfoPerson getByPsnNo(String psnNo) { + return baseMapper.selectOne(new LambdaQueryWrapper() + .eq(InfoPerson::getPsnNo, psnNo).orderByDesc(InfoPerson::getCreateTime) + .last(YbCommonConstants.sqlConst.LIMIT1)); + } + + @Override + public boolean assessInterCrossRegionalSettlement(String psnNo, String admVs) { + InfoPerson infoPerson = getByPsnNo(psnNo); + if(infoPerson==null){ + throw new ServiceException("未查询到身份信息"); + } + //参保地 + String insuplcAdmdvs = infoPerson.getInsuplcAdmdvs(); + return admVs.equals(insuplcAdmdvs); + } + + @Override + public boolean assessIntraCrossRegionalSettlement(String psnNo, String admVs){ + InfoPerson infoPerson = getByPsnNo(psnNo); + if(infoPerson==null){ + throw new ServiceException("未查询到身份信息"); + } + //参保地 + String insuplcAdmdvs = infoPerson.getInsuplcAdmdvs(); + if(StringUtils.isEmpty(insuplcAdmdvs)){ + throw new ServiceException("该患者查询不到参保地信息"); + } + return insuplcAdmdvs.startsWith(admVs.substring(0,2)); + } + + public boolean assessCrossRegionalSettlement(String psnNo, String admVs){ + return assessIntraCrossRegionalSettlement(psnNo,admVs)||assessIntraCrossRegionalSettlement(psnNo,admVs); + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java new file mode 100644 index 00000000..3efec7bf --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/RegServiceImpl.java @@ -0,0 +1,39 @@ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.workflow.domain.SupplyRequest; +import com.openhis.yb.service.IRegService; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.mapper.RegMapper; + +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 挂号管理-服务 + */ +@Service +public class RegServiceImpl extends ServiceImpl implements IRegService { + @Override + public void updateStatus(Long id, String status) { + ClinicReg reg = new ClinicReg(); + reg.setId(id); + reg.setStatus(status); + updateById(reg); + } + + /** + * 通过单据号查询 + * + * @param busNo 单据号 + * @return + */ + @Override + public ClinicReg getByBusNo(String busNo) { + return baseMapper.selectOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, busNo) + .orderByDesc(ClinicReg::getCreateTime) + .last("LIMIT 1")); + } +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java new file mode 100644 index 00000000..fffa2503 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/service/impl/SignServiceImpl.java @@ -0,0 +1,16 @@ +package com.openhis.yb.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.yb.service.ISignService; +import com.openhis.yb.domain.Sign; +import com.openhis.yb.mapper.SignMapper; + +import org.springframework.stereotype.Service; + +/** + * 签到管理-服务 + */ +@Service +public class SignServiceImpl extends ServiceImpl implements ISignService { + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java new file mode 100644 index 00000000..ffce7919 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/CommonConstant.java @@ -0,0 +1,327 @@ +package com.openhis.yb.util; + +public interface CommonConstant { + + /** + * 正常状态 + */ + public static final Integer STATUS_NORMAL = 0; + + /** + * 禁用状态 + */ + public static final Integer STATUS_DISABLE = -1; + + /** + * 删除标志 + */ + public static final Integer DEL_FLAG_1 = 1; + + /** + * 未删除 + */ + public static final Integer DEL_FLAG_0 = 0; + + /** + * 系统日志类型: 登录 + */ + public static final int LOG_TYPE_1 = 1; + + /** + * 系统日志类型: 操作 + */ + public static final int LOG_TYPE_2 = 2; + + /** + * 操作日志类型: 查询 + */ + public static final int OPERATE_TYPE_1 = 1; + + /** + * 操作日志类型: 添加 + */ + public static final int OPERATE_TYPE_2 = 2; + + /** + * 操作日志类型: 更新 + */ + public static final int OPERATE_TYPE_3 = 3; + + /** + * 操作日志类型: 删除 + */ + public static final int OPERATE_TYPE_4 = 4; + + /** + * 操作日志类型: 倒入 + */ + public static final int OPERATE_TYPE_5 = 5; + + /** + * 操作日志类型: 导出 + */ + public static final int OPERATE_TYPE_6 = 6; + + + /** {@code 500 Server Error} (HTTP/1.0 - RFC 1945) */ + public static final Integer SC_INTERNAL_SERVER_ERROR_500 = 500; + /** {@code 200 OK} (HTTP/1.0 - RFC 1945) */ + public static final Integer SC_OK_200 = 200; + + /**访问权限认证未通过 510*/ + public static final Integer SC_JEECG_NO_AUTHZ=510; + + /** 登录用户Shiro权限缓存KEY前缀 */ + public static String PREFIX_USER_SHIRO_CACHE = "shiro:cache:org.jeecg.config.shiro.ShiroRealm.authorizationCache:"; + /** 登录用户Token令牌缓存KEY前缀 */ + public static final String PREFIX_USER_TOKEN = "prefix_user_token_"; + /** Token缓存时间:3600秒即一小时 */ + public static final int TOKEN_EXPIRE_TIME = 3600; + + + /** + * 0:一级菜单 + */ + public static final Integer MENU_TYPE_0 = 0; + /** + * 1:子菜单 + */ + public static final Integer MENU_TYPE_1 = 1; + /** + * 2:按钮权限 + */ + public static final Integer MENU_TYPE_2 = 2; + + /**通告对象类型(USER:指定用户,ALL:全体用户)*/ + public static final String MSG_TYPE_UESR = "USER"; + public static final String MSG_TYPE_ALL = "ALL"; + + /**发布状态(0未发布,1已发布,2已撤销)*/ + public static final String NO_SEND = "0"; + public static final String HAS_SEND = "1"; + public static final String HAS_CANCLE = "2"; + + /**阅读状态(0未读,1已读)*/ + public static final String HAS_READ_FLAG = "1"; + public static final String NO_READ_FLAG = "0"; + + /**优先级(L低,M中,H高)*/ + public static final String PRIORITY_L = "L"; + public static final String PRIORITY_M = "M"; + public static final String PRIORITY_H = "H"; + + /** + * 短信模板方式 0 .登录模板、1.注册模板、2.忘记密码模板 + */ + public static final String SMS_TPL_TYPE_0 = "0"; + public static final String SMS_TPL_TYPE_1 = "1"; + public static final String SMS_TPL_TYPE_2 = "2"; + + /** + * 状态(0无效1有效) + */ + public static final String STATUS_0 = "0"; + public static final String STATUS_1 = "1"; + + /** + * 同步工作流引擎1同步0不同步 + */ + public static final Integer ACT_SYNC_1 = 1; + public static final Integer ACT_SYNC_0 = 0; + + /** + * 消息类型1:通知公告2:系统消息 + */ + public static final String MSG_CATEGORY_1 = "1"; + public static final String MSG_CATEGORY_2 = "2"; + + /** + * 是否配置菜单的数据权限 1是0否 + */ + public static final Integer RULE_FLAG_0 = 0; + public static final Integer RULE_FLAG_1 = 1; + + /** + * 是否用户已被冻结 1正常(解冻) 2冻结 + */ + public static final Integer USER_UNFREEZE = 1; + public static final Integer USER_FREEZE = 2; + + /**字典翻译文本后缀*/ + public static final String DICT_TEXT_SUFFIX = "_dictText"; + + /** + * 表单设计器主表类型 + */ + public static final Integer DESIGN_FORM_TYPE_MAIN = 1; + + /** + * 表单设计器子表表类型 + */ + public static final Integer DESIGN_FORM_TYPE_SUB = 2; + + /** + * 表单设计器URL授权通过 + */ + public static final Integer DESIGN_FORM_URL_STATUS_PASSED = 1; + + /** + * 表单设计器URL授权未通过 + */ + public static final Integer DESIGN_FORM_URL_STATUS_NOT_PASSED = 2; + + /** + * 表单设计器新增 Flag + */ + public static final String DESIGN_FORM_URL_TYPE_ADD = "add"; + /** + * 表单设计器修改 Flag + */ + public static final String DESIGN_FORM_URL_TYPE_EDIT = "edit"; + /** + * 表单设计器详情 Flag + */ + public static final String DESIGN_FORM_URL_TYPE_DETAIL = "detail"; + /** + * 表单设计器复用数据 Flag + */ + public static final String DESIGN_FORM_URL_TYPE_REUSE = "reuse"; + /** + * 表单设计器编辑 Flag (已弃用) + */ + public static final String DESIGN_FORM_URL_TYPE_VIEW = "view"; + + /** + * online参数值设置(是:Y, 否:N) + */ + public static final String ONLINE_PARAM_VAL_IS_TURE = "Y"; + public static final String ONLINE_PARAM_VAL_IS_FALSE = "N"; + + /** + * 文件上传类型(本地:local,Minio:minio,阿里云:alioss) + */ + public static final String UPLOAD_TYPE_LOCAL = "local"; + public static final String UPLOAD_TYPE_MINIO = "minio"; + public static final String UPLOAD_TYPE_OSS = "alioss"; + + /** + * 文档上传自定义桶名称 + */ + public static final String UPLOAD_CUSTOM_BUCKET = "eoafile"; + /** + * 文档上传自定义路径 + */ + public static final String UPLOAD_CUSTOM_PATH = "eoafile"; + /** + * 文件外链接有效天数 + */ + public static final Integer UPLOAD_EFFECTIVE_DAYS = 1; + + /** + * 员工身份 (1:普通员工 2:上级) + */ + public static final Integer USER_IDENTITY_1 = 1; + public static final Integer USER_IDENTITY_2 = 2; + + /** sys_user 表 username 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_SYS_USER_USERNAME = "uniq_sys_user_username"; + /** sys_user 表 work_no 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_SYS_USER_WORK_NO = "uniq_sys_user_work_no"; + /** sys_user 表 phone 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_SYS_USER_PHONE = "uniq_sys_user_phone"; + /** sys_user 表 email 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_SYS_USER_EMAIL = "uniq_sys_user_email"; + /** sys_quartz_job 表 job_class_name 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_JOB_CLASS_NAME = "uniq_job_class_name"; + /** sys_position 表 code 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_CODE = "uniq_code"; + /** sys_role 表 code 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_SYS_ROLE_CODE = "uniq_sys_role_role_code"; + /** sys_depart 表 code 唯一键索引 */ + public static final String SQL_INDEX_UNIQ_DEPART_ORG_CODE = "uniq_depart_org_code"; + /** + * 在线聊天 是否为默认分组 + */ + public static final String IM_DEFAULT_GROUP = "1"; + /** + * 在线聊天 图片文件保存路径 + */ + public static final String IM_UPLOAD_CUSTOM_PATH = "imfile"; + /** + * 在线聊天 用户状态 + */ + public static final String IM_STATUS_ONLINE = "online"; + + /** + * 在线聊天 SOCKET消息类型 + */ + public static final String IM_SOCKET_TYPE = "chatMessage"; + + /** + * 在线聊天 是否开启默认添加好友 1是 0否 + */ + public static final String IM_DEFAULT_ADD_FRIEND = "1"; + + /** + * 在线聊天 用户好友缓存前缀 + */ + public static final String IM_PREFIX_USER_FRIEND_CACHE = "sys:cache:im:im_prefix_user_friend_"; + + /** + * 考勤补卡业务状态 (1:同意 2:不同意) + */ + public static final String SIGN_PATCH_BIZ_STATUS_1 = "1"; + public static final String SIGN_PATCH_BIZ_STATUS_2 = "2"; + + /** + * 公文文档上传自定义路径 + */ + public static final String UPLOAD_CUSTOM_PATH_OFFICIAL = "officialdoc"; + /** + * 公文文档下载自定义路径 + */ + public static final String DOWNLOAD_CUSTOM_PATH_OFFICIAL = "officaldown"; + + /** + * WPS存储值类别(1 code文号 2 text(WPS模板还是公文发文模板)) + */ + public static final String WPS_TYPE_1="1"; + public static final String WPS_TYPE_2="2"; + + + public final static String X_ACCESS_TOKEN = "X-Access-Token"; + public final static String X_SIGN = "X-Sign"; + public final static String X_TIMESTAMP = "X-TIMESTAMP"; + + /** + * 多租户 请求头 + */ + public final static String TENANT_ID = "tenant-id"; + + /** + * 微服务读取配置文件属性 服务地址 + */ + public final static String CLOUD_SERVER_KEY = "spring.cloud.nacos.discovery.server-addr"; + + /** + * 第三方登录 验证密码/创建用户 都需要设置一个操作码 防止被恶意调用 + */ + public final static String THIRD_LOGIN_CODE = "third_login_code"; + + /** + * 第三方APP同步方向:本地 --> 第三方APP + */ + String THIRD_SYNC_TO_APP = "SYNC_TO_APP"; + /** + * 第三方APP同步方向:第三方APP --> 本地 + */ + String THIRD_SYNC_TO_LOCAL = "SYNC_TO_LOCAL"; + + /** 系统通告消息状态:0=未发布 */ + String ANNOUNCEMENT_SEND_STATUS_0 = "0"; + /** 系统通告消息状态:1=已发布 */ + String ANNOUNCEMENT_SEND_STATUS_1 = "1"; + /** 系统通告消息状态:2=已撤销 */ + String ANNOUNCEMENT_SEND_STATUS_2 = "2"; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java new file mode 100644 index 00000000..8243ee86 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/yb/util/YbParamBuilderUtil.java @@ -0,0 +1,2440 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.yb.util; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.*; +import java.util.stream.Collectors; + +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.core.common.core.domain.model.LoginUser; +import com.core.common.enums.TenantOptionDict; +import com.core.common.exception.ServiceException; +import com.core.common.utils.AssignSeqUtil; +import com.core.common.utils.DateUtils; +import com.core.common.utils.SecurityUtils; +import com.core.common.utils.StringUtils; +import com.core.system.service.impl.SysUserServiceImpl; +import com.core.web.util.TenantOptionUtil; +import com.openhis.administration.domain.*; +import com.openhis.administration.service.*; +import com.openhis.clinical.domain.Condition; +import com.openhis.clinical.domain.ConditionDefinition; +import com.openhis.clinical.service.IConditionDefinitionService; +import com.openhis.clinical.service.IConditionService; +import com.openhis.common.constant.CommonConstants; +import com.openhis.common.constant.YbCommonConstants; +import com.openhis.common.enums.*; +import com.openhis.common.enums.ybenums.*; +import com.openhis.financial.domain.Contract; +import com.openhis.financial.domain.PaymentRecDetail; +import com.openhis.financial.domain.PaymentReconciliation; +import com.openhis.financial.service.IContractService; +import com.openhis.financial.service.IPaymentRecDetailService; +import com.openhis.financial.service.IPaymentReconciliationService; +import com.openhis.medication.domain.Medication; +import com.openhis.medication.domain.MedicationDefinition; +import com.openhis.medication.domain.MedicationDispense; +import com.openhis.medication.domain.MedicationRequest; +import com.openhis.medication.service.IMedicationDefinitionService; +import com.openhis.medication.service.IMedicationDispenseService; +import com.openhis.medication.service.IMedicationRequestService; +import com.openhis.medication.service.IMedicationService; +import com.openhis.workflow.domain.*; +import com.openhis.workflow.service.*; +import com.openhis.workflow.service.impl.InventoryItemServiceImpl; +import com.openhis.yb.domain.ClinicPreSettle; +import com.openhis.yb.domain.ClinicReg; +import com.openhis.yb.domain.ClinicSettle; +import com.openhis.yb.domain.InfoPerson; +import com.openhis.yb.dto.*; +import com.openhis.yb.mapper.MedicalInsuranceMapper; +import com.openhis.yb.model.Clinic2207OrderParam; +import com.openhis.yb.service.*; +import com.openhis.ybcatalog.domain.CatalogDrugInfo; +import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; +import com.openhis.ybcatalog.service.ICatalogDrugInfoService; +import com.openhis.ybcatalog.service.ICatalogMedicalHerbInfoService; + +/** + * 医保接口调用工具 todo:sjq 若部署云服务,该工具类内所有的查询原则上增加租户的查询条件 + * + * @author SunJQ + * @date 2025-04-03 + */ +@Component +public class YbParamBuilderUtil { + + /********************* Mapper服务 *******************/ + @Autowired + private MedicalInsuranceMapper medicalInsuranceMapper; + /********************* 业务实体服务 *******************/ + @Autowired + private IEncounterService iEncounterService; + @Autowired + private IAccountService accountService; + @Autowired + private IEncounterDiagnosisService iEncounterDiagnosisService; + @Autowired + private IConditionService iConditionService; + @Autowired + private IConditionDefinitionService iConditionDefinitionService; + @Autowired + private IEncounterParticipantService iEncounterParticipantService; + @Autowired + private IPractitionerService iPractitionerService; + @Autowired + private IOrganizationService iOrganizationService; + @Autowired + private IChargeItemService iChargeItemService; + @Autowired + private IMedicationDefinitionService iMedicationDefinitionService; + @Autowired + private IDeviceDefinitionService iDeviceDefinitionService; + @Autowired + private IActivityDefinitionService iActivityDefinitionService; + @Autowired + private IContractService iContractService; + @Autowired + private IPatientService iPatientService; + @Autowired + private IPaymentReconciliationService iPaymentReconciliationService; + @Autowired + private IPaymentRecDetailService iPaymentRecDetailService; + @Autowired + private IServiceRequestService iServiceRequestService; + @Autowired + private IMedicationRequestService iMedicationRequestService; + @Autowired + private IDeviceRequestService iDeviceRequestService; + @Autowired + private IMedicationService iMedicationService; + @Autowired + private IDeviceService iDeviceService; + @Autowired + private IMedicationDispenseService iMedicationDispenseService; + @Autowired + private IDeviceDispenseService iDeviceDispenseService; + @Autowired + private InventoryItemServiceImpl inventoryItemService; + @Autowired + private IChargeItemDefinitionService iChargeItemDefinitionService; + @Autowired + private IChargeItemDefDetailService iChargeItemDefDetailService; + @Autowired + private ISupplyRequestService iSupplyRequestService; + @Autowired + private ISupplyDeliveryService iSupplyDeliveryService; + @Autowired + private ISupplierService iSupplierService; + @Autowired + private IInvoiceService iInvoiceService; + @Autowired + private SysUserServiceImpl userService; + @Autowired + private IHealthcareServiceService iHealthcareServiceService; + @Autowired + private AssignSeqUtil assignSeqUtil; + /********************* 医保实体服务 *******************/ + // @Autowired + // private IReadcardService iReadcardService; + @Autowired + private ICatalogDrugInfoService iCatalogDrugInfoService; + @Autowired + private ICatalogMedicalHerbInfoService iCatalogMedicalHerbInfoService; + @Autowired + private IPerinfoService iPerinfoService; + @Autowired + private IRegService iRegService; + @Autowired + private IClinicPreSettleService iClinicPreSettleService; + @Autowired + private IClinicSettleService iClinicSettleService; + @Autowired + private IClinicUnSettleService iClinicUnSettleService; + + /** + * 获取基础读卡实体 + * + * @param certType 就诊凭证 + * @param certNo 凭证编号 + * @return 读卡基础实体 + */ + public Info1101ReadcardParam getReadCard(String certType, String certNo) { + YbMdtrtCertType ybCertType = YbMdtrtCertType.getByValue(certType); + // YbPsnCertType ybPsnCertType = YbPsnCertType.getByValue(psnCertType); + if (ybCertType == null) { + throw new ServiceException("未选择就诊凭证类型"); + } + Info1101ReadcardParam readcard = new Info1101ReadcardParam(); + readcard.setMdtrtCertNo(certNo).setMdtrtCertType(ybCertType.getValue()); + // if (ybPsnCertType != null) { + // readcard.setPsnCertType(ybPsnCertType.getValue()); + // } else { + // readcard.setPsnCertType(ybCertType.getValue()); + // } + return readcard; + } + + /** + * 【2201】组装医保挂号参数 + * + * @return + */ + public ClinicReg getReg(YbMdtrtCertType ybMdtrtCertType, String busiCardInfo, Long encounterId, YbMedType medType, + Integer tenantId) { + // 查询此次就诊信息(此处需要业务上保证下述两个实体一对一关系) + Encounter encounter = iEncounterService.getById(encounterId); + Account account = + accountService.getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, encounterId) + .eq(Account::getTenantId, tenantId).ne(Account::getTypeCode, AccountType.PERSONAL_CASH_ACCOUNT) + .eq(Account::getEncounterFlag, Whether.YES.getValue())); + if (account == null || encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + Patient patient = iPatientService.getById(encounter.getPatientId()); + if (patient == null) { + throw new ServiceException("未查询到患者信息"); + } + YbMdtrtCertType certType = YbMdtrtCertType.getByValue(account.getTypeCode());// 2025/05/28 该值存01/02/03 + if (certType == null) { + throw new ServiceException("未查询到就诊凭证信息"); + } + InfoPerson perinfo = iPerinfoService.getOne(new LambdaQueryWrapper() + .eq(InfoPerson::getCertno, patient.getIdCard()).eq(InfoPerson::getTenantId, tenantId) + .orderByDesc(InfoPerson::getCreateTime).last(YbCommonConstants.sqlConst.LIMIT1)); + if (perinfo == null) { + throw new ServiceException("未查询到就诊凭证信息"); + } + // InfoReadcard1101Param readcard = iReadcardService.getOne(new LambdaQueryWrapper() + // .eq(InfoReadcard1101Param::getPsnCertType, certType.getValue()) + // .eq(InfoReadcard1101Param::getCertno, account.getNo()).eq(InfoReadcard1101Param::getTenantId, tenantId)); + // Info1101ReadcardParam readcard = JSONObject.parseObject(perinfo.getResult1101(), + // Info1101ReadcardParam.class); + // if (readcard == null) { + // throw new ServiceException("未查询到就诊凭证信息"); + // } + // 主治医生查询 + EncounterParticipant participant = null; + Practitioner doctor = null; + List list = + iEncounterParticipantService.list(new LambdaQueryWrapper() + .eq(EncounterParticipant::getEncounterId, encounterId).eq(EncounterParticipant::getTenantId, tenantId)); + for (EncounterParticipant encounterParticipant : list) { + if (ParticipantType.ADMITTER.getCode().equals(encounterParticipant.getTypeCode())) { + participant = encounterParticipant; + } + } + if (participant == null) { + throw new ServiceException("未查询到就诊医生信息"); + } + doctor = iPractitionerService.getById(participant.getPractitionerId()); + if (doctor == null) { + throw new ServiceException("未查询到就诊医生信息"); + } + + // 查询科室信息 + Organization organization = iOrganizationService.getById(doctor.getOrgId()); + if (organization == null) { + throw new ServiceException("未查询到就诊科室信息"); + } + + ClinicReg reg = new ClinicReg(); + reg.setPsnNo(perinfo.getPsnNo()).setInsutype(perinfo.getInsutype()).setBegntime(new Date()) + .setMdtrtCertType(ybMdtrtCertType.getValue()).setMdtrtCertNo(busiCardInfo) + .setIptOtpNo(encounter.getBusNo() + "-" + medType.getValue()).setAtddrNo(doctor.getYbNo()) + .setDrName(doctor.getName()).setDeptCode(organization.getYbNo()).setDeptName(organization.getName()) + .setCaty(organization.getCaty()).setInsuplcAdmdvs(perinfo.getInsuplcAdmdvs()) + .setMedType(medType.getValue()); + + return reg; + } + + /** + * 【2203】组装就诊信息参数 + * + * @return + */ + public Clinic2203MedicalParam getClinicMedical2203Param(Long encounterId, Integer tenantId, + ClinicReg2201Output reg2201Output, YbMedType ybMedType) { + + // 查询诊断信息 + EncounterDiagnosis mainEncounterDiagnosis = null; + List encounterDiagnosis = + iEncounterDiagnosisService.list(new LambdaQueryWrapper() + .eq(EncounterDiagnosis::getEncounterId, encounterId).eq(EncounterDiagnosis::getTenantId, tenantId) + .eq(EncounterDiagnosis::getMedTypeCode, ybMedType.getValue()));// 2025/08/05 + // 农大患者结算慢病时会上传普通门诊的疾病,医保回复该参保人未做该病种的门慢门特备案,故此修正根据门诊类型去上传 + for (EncounterDiagnosis diagnosis : encounterDiagnosis) { + if (Objects.equals(Whether.YES.getValue(), diagnosis.getMaindiseFlag())) { + mainEncounterDiagnosis = diagnosis; + break; + } + } + if (mainEncounterDiagnosis == null && (ybMedType == YbMedType.CHRONIC_DISEASE_OUTPATIENT + || ybMedType == YbMedType.SPECIAL_DISEASE_OUTPATIENT)) { + mainEncounterDiagnosis = encounterDiagnosis.get(0); + } + if (encounterDiagnosis.isEmpty()) { + throw new ServiceException("未查询到诊断信息"); + } + if (mainEncounterDiagnosis == null) { + throw new ServiceException("未查询到主诊断信息"); + } + // 查询主诊断 + Condition mainCondition = iConditionService.getById(mainEncounterDiagnosis.getConditionId()); + if (mainCondition == null) { + throw new ServiceException("未查询到主诊断信息"); + } + // 查询诊断定义信息 + ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(mainCondition.getDefinitionId()); + if (conditionDefinition == null) { + throw new ServiceException("未查询到诊断定义信息"); + } + + // 组装诊断信息参数 + List diseinfo = getDiseinfo(encounterDiagnosis); + + Clinic2203MedicalParam medical2203Param = new Clinic2203MedicalParam(); + + medical2203Param.setMdtrtId(reg2201Output.getMdtrtId()).setPsnNo(reg2201Output.getPsnNo()) + .setBegntime(reg2201Output.getBegntime()).setMedType(reg2201Output.getMedType()) + .setMainCondDscr(mainCondition.getDescription()).setInsuplcAdmdvs(reg2201Output.getInsuplcAdmdvs()) + .setDiseCodg(mainCondition.getYbNo()).setDiseName(conditionDefinition.getName()).setDiseinfoList(diseinfo); + + return medical2203Param; + } + + /** + * 【2203】组装诊断信息参数 + * + * @return + */ + public List getDiseinfo(List encounterDiagnosisList) { + List diseinfos = new ArrayList<>(); + for (EncounterDiagnosis encounterDiagnosis : encounterDiagnosisList) { + Condition condition = iConditionService.getById(encounterDiagnosis.getConditionId()); + if (condition == null) { + continue; + } + ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(condition.getDefinitionId()); + Practitioner doctor = iPractitionerService.getById(condition.getRecorderId()); + if (doctor == null) { + continue; + } + // 查询科室信息 + Organization organization = iOrganizationService.getById(doctor.getOrgId()); + if (organization == null) { + throw new ServiceException("未查询到科室信息"); + } + + Clinic2203DiseInfoParam diseinfo = new Clinic2203DiseInfoParam(); + diseinfo.setDiagCode(condition.getYbNo()).setDiagName(conditionDefinition.getName()) + .setDiagDept(organization.getYbNo()).setDiseDorName(doctor.getName()).setDiseDorNo(doctor.getYbNo()) + .setDiagTime(condition.getRecordedDatetime()).setValiFlag(Whether.YES.getValue().toString()) + .setDiagType(conditionDefinition.getTypeCode()) + .setDiagSrtNo(encounterDiagnosis.getDiagSrtNo().toString()); + + diseinfos.add(diseinfo); + + } + return diseinfos; + } + + /** + * 【2204】组装费用明细参数 + * + * @return + */ + public List getClinicFeedetailList(Integer tenantId, ClinicReg2201Output reg, + String chrgBchno, List chargeItemIds) { + + List clincFeedetailList = new ArrayList(); + // 查询收费项 + List ChargeItemList = iChargeItemService.list(new LambdaQueryWrapper() + .in(ChargeItem::getId, chargeItemIds).eq(ChargeItem::getTenantId, tenantId)); + + // 是否是电子处方 + Whether eFlag = Whether.getByValue(0); + + for (ChargeItem chargeItem : ChargeItemList) { + Clinic2204FeeDetailParam clinicFeedetail = new Clinic2204FeeDetailParam(); + // 查询项目信息 + String productTable = chargeItem.getProductTable(); + if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(productTable)) { + MedicationDefinition medication = iMedicationDefinitionService.getById(chargeItem.getProductId()); + if (medication == null) { + throw new ServiceException("未查询到药品信息"); + } + clinicFeedetail.setMedListCodg(medication.getYbNo()).setMedinsListCodg(medication.getBusNo()); + } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(productTable)) { + DeviceDefinition device = iDeviceDefinitionService.getById(chargeItem.getProductId()); + if (device == null) { + throw new ServiceException("未查询到药品信息"); + } + clinicFeedetail.setMedListCodg(device.getYbNo()).setMedinsListCodg(device.getYbOrgNo()); + } else { + ActivityDefinition activity = iActivityDefinitionService.getById(chargeItem.getProductId()); + if (activity == null) { + throw new ServiceException("未查询到药品信息"); + } + clinicFeedetail.setMedListCodg(activity.getYbNo()).setMedinsListCodg(activity.getBusNo()); + } + + // 开单科室查询 + Organization org = iOrganizationService.getById(chargeItem.getRequestingOrgId()); + if (org == null) { + throw new ServiceException("未查询到开单科室信息"); + } + // 开立医生查询 + Practitioner doctor = iPractitionerService.getById(chargeItem.getEntererId()); + if (doctor == null) { + throw new ServiceException("未查询到开立医生信息"); + } + + // 外购处方标志(文档上没有详细介绍) 2025/04/14经确认,暂定非处方流转传0,处方流转传1 + clinicFeedetail + .setFeedetlSn( + chargeItem.getBusNo() + assignSeqUtil.getSeqByDay(AssignSeqEnum.YB_CLINIC_FEE.getPrefix(), 5)) + .setMdtrtId(reg.getMdtrtId()).setPsnNo(reg.getPsnNo()).setChrgBchno(chrgBchno) + .setFeeOcurTime(chargeItem.getEnteredDate()) + .setDetItemFeeSumamt(chargeItem.getTotalPrice().doubleValue()) + .setCnt(chargeItem.getQuantityValue().doubleValue()).setPric(chargeItem.getUnitPrice().doubleValue()) + .setBilgDeptCodg(org.getYbNo()).setBilgDeptName(org.getName()).setBilgDrCodg(doctor.getYbNo()) + // 默认无需审批 + .setBilgDrName(doctor.getName()).setHospApprFlag(YbHospApprFlag.NO_APPROVAL_REQUIRED.getValue()) + .setRxCircFlag(eFlag.getValue().toString()); + + clincFeedetailList.add(clinicFeedetail); + } + return clincFeedetailList; + } + + /** + * 【2204】门诊费用明细信息 + * + * @param tenantId 租户id + * @return + */ + public Clinic2204OrderParam getClinicOrder2204Param(Integer tenantId, List chargeItemIds, + ClinicReg2201Output reg2201Output) { + + Clinic2204OrderParam clinicOrderPage = new Clinic2204OrderParam(); + + // 排番 + clinicOrderPage.setChrgBchno(assignSeqUtil.getSeqByDay(AssignSeqEnum.YB_CLINIC_ORDER.getPrefix(), 12)); + clinicOrderPage.setChrgBchno(clinicOrderPage.getChrgBchno()); + + List clincFeedetailList = + getClinicFeedetailList(tenantId, reg2201Output, clinicOrderPage.getChrgBchno(), chargeItemIds); + + clinicOrderPage.setFeedetail(clincFeedetailList).setInsuplcAdmdvs(reg2201Output.getInsuplcAdmdvs()); + return clinicOrderPage; + } + + /** + * 【2205】费用明细撤销 + * + * @return + */ + public Clinic2205OrderParam getClinic2205OrderParam(Long encounterId, String ChrgBchno) { + Clinic2205OrderParam clinicOrderPage = new Clinic2205OrderParam(); + Encounter encounter = iEncounterService.getById(encounterId); + ClinicReg reg = + iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, encounter.getBusNo())); + return clinicOrderPage.setMdtrtId(reg.getMdtrtId()).setPsnNo(reg.getPsnNo()).setChrgBchno(ChrgBchno) + .setInsuplcAdmdvs(reg.getInsuplcAdmdvs()); + } + + /** + * 【2206】门诊预结算参数 + * + * @return + */ + /** + * 【2206】门诊预结算参数 + * + * @param payFee 2204返回的费用总额 + * @param chrgBchno 收费批次号 + * @return + */ + public Clinic2206OrderParam getClinicOrder2206Param(BigDecimal payFee, ClinicReg2201Output reg, String chrgBchno, + String busiCardInfo) { + + // 个人结算方式 + YbPsnSetlWay setlWay = YbPsnSetlWay.getByValue("01"); + + Clinic2206OrderParam clinicOrder = new Clinic2206OrderParam(); + clinicOrder.setPsnNo(reg.getPsnNo()).setMdtrtCertType(reg.getMdtrtCertType()).setMdtrtCertNo(busiCardInfo) + .setMedType(reg.getMedType()).setMedfeeSumamt(payFee.doubleValue()).setPsnSetlway(setlWay.getValue()) + .setMdtrtId(reg.getMdtrtId()).setChrgBchno(chrgBchno).setAcctUsedFlag(Whether.YES.getCode()) + .setInsutype(reg.getInsutype()).setInsuplcAdmdvs(reg.getInsuplcAdmdvs()); + + return clinicOrder; + } + + /** + * 【2207】门诊结算参数 + * + * @return + */ + public Clinic2207OrderParam getClinicOrder2207(Long encounterId, Integer tenantId, String psnSetlWay, + String chrgBchno, String medType) { + // 查询此次就诊信息(此处需要业务上保证下述两个实体一对一关系) + Encounter encounter = iEncounterService.getById(encounterId); + + YbMedType ybMedType = YbMedType.getByValue(medType); + if (ybMedType == null) { + ybMedType = YbMedType.GENERAL_OUTPATIENT; + } + + // 院内唯一流水号查询挂号信息 + String busNo = encounter.getBusNo(); + ClinicReg reg = iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, busNo) + .eq(ClinicReg::getTenantId, tenantId).eq(ClinicReg::getMedType, ybMedType.getValue())); + + // 个人结算方式 + YbPsnSetlWay setlWay = YbPsnSetlWay.getByValue(psnSetlWay); + if (setlWay == null) { + setlWay = YbPsnSetlWay.PSN_SETLWAY01; + } + + // ClinicSetlinfo2208Param clinicSetlinfo = iClincSetlinfoService.getOne( + // new LambdaQueryWrapper().eq(ClinicSetlinfo2208Param::getMdtrtId, reg.getMdtrtId()) + // .eq(ClinicSetlinfo2208Param::getOrderId, chrgBchno)); + + ClinicPreSettle clinicPreSettle = iClinicPreSettleService.getOne(new LambdaQueryWrapper() + .eq(ClinicPreSettle::getMdtrtId, reg.getMdtrtId()).eq(ClinicPreSettle::getChrgBchno, chrgBchno)); + + Clinic2206OrderResult clinic2206OrderResult = + JSONObject.parseObject(clinicPreSettle.getResult2206(), Clinic2206OrderResult.class); + + Clinic2207OrderParam clinicOrder = new Clinic2207OrderParam(); + clinicOrder.setPsnNo(reg.getPsnNo()).setMdtrtCertType(reg.getMdtrtCertType()) + // todo:sjq 医疗费用总额需要用ChargeItem的和 + .setMdtrtCertNo(reg.getMdtrtCertNo()).setMedType(reg.getMedType()) + .setMedfeeSumamt(clinic2206OrderResult.getMedfeeSumamt().doubleValue()).setPsnSetlway(setlWay.getValue()) + .setMdtrtId(reg.getMdtrtId()).setChrgBchno(chrgBchno).setAcctUsedFlag(Whether.YES.getCode()) + .setInsutype(reg.getInsutype()).setFulamtOwnpayAmt(clinic2206OrderResult.getFulamtOwnpayAmt().doubleValue()) + .setOverlmtSelfpay(clinic2206OrderResult.getOverlmtSelfpay().doubleValue()) + .setPreselfpayAmt(clinic2206OrderResult.getPreselfpayAmt().doubleValue()) + .setInscpScpAmt(clinic2206OrderResult.getInscpScpAmt().doubleValue()); + + return clinicOrder; + } + + /** + * 【2208】门诊结算撤销参数 + * + * @return + */ + public Clinic2208UnSetlInfoParam getClinicOrder2208(Integer tenantId, String settleId) { + // 查询此次就诊信息(此处需要业务上保证下述两个实体一对一关系) + // Encounter encounter = iEncounterService.getById(encounterId); + + ClinicSettle clinicSettle = iClinicSettleService.getBySettleId(settleId); + if (clinicSettle == null) { + throw new ServiceException("未查询到医保结算信息"); + } + + // 院内唯一流水号查询挂号信息 + // String busNo = encounter.getBusNo(); + ClinicReg reg = + iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicSettle.getMdtrtId()) + .eq(ClinicReg::getTenantId, tenantId).eq(ClinicReg::getMdtrtId, clinicSettle.getMdtrtId())); + if (reg == null) { + throw new ServiceException("未查询到医保结算信息"); + } + Clinic2208UnSetlInfoParam clinicSetl = new Clinic2208UnSetlInfoParam(); + clinicSetl.setPsnNo(reg.getPsnNo()).setMdtrtId(clinicSettle.getMdtrtId()).setSetlId(settleId) + .setInsuplcAdmdvs(reg.getInsuplcAdmdvs()); + + return clinicSetl; + } + + /** + * 【3201】结算对总账 + * + * @return + */ + public Financial3201Param getFinancial3201Param(Settlement3201WebParam settlement3201WebParam, + Settlement3201DetailDto reconciliation) { + + // 查询合同信息 + Contract contract = iContractService.getByContractNo(settlement3201WebParam.getContractNo()); + if (contract == null) { + throw new ServiceException("未查询到合同信息"); + } + YbClrType clrType = YbClrType.getByValue(settlement3201WebParam.getClrType()); + YbInsuType insuType = YbInsuType.getByValue(settlement3201WebParam.getInsuType().toString()); + if (clrType == null) { + clrType = YbClrType.OUTPATIENT_CLINIC; + } + if (insuType == null) { + insuType = YbInsuType.YB_INSU_TYPE310; + } + + Financial3201Param financial3201Param = new Financial3201Param(); + financial3201Param.setInsutype(insuType.getValue()).setClrType(clrType.getValue()) + .setSetlOptins(contract.getAdmVs()).setStmtBegndate(settlement3201WebParam.getStmtBegnDate()) + .setStmtEnddate(settlement3201WebParam.getStmtEndDate()) + .setMedfeeSumamt(reconciliation.getMedFeeSumAmt().doubleValue()) + .setFundPaySumamt(reconciliation.getFundPaySumAmt().doubleValue()) + .setAcctPay(reconciliation.getAcctPay().add(reconciliation.getAcctGjPay()).doubleValue()) + .setFixmedinsSetlCnt(reconciliation.getFixMedInsSetlCnt()) + .setInsuplcAdmdvs(SecurityUtils.getLoginUser().getOptionJson().getString("admvs")); + + return financial3201Param; + } + + /** + * 【3203】清算申请 + * + * @param financial3203WebParam 前台参数 + * @return 3203参数 + */ + public Financial3203Param getFinancial3203Param(Financial3203WebParam financial3203WebParam) { + Long orgId = SecurityUtils.getLoginUser().getHospitalId(); + iOrganizationService.getById(orgId); + + YbClrType clrType = YbClrType.getByValue(financial3203WebParam.getClrType()); + if (clrType == null) { + clrType = YbClrType.OUTPATIENT_CLINIC; + } + + Financial3203Dto financial3203VO = medicalInsuranceMapper.get3203Param(financial3203WebParam.getBegndate(), + financial3203WebParam.getEnddate(), SecurityUtils.getLoginUser().getTenantId(), + financial3203WebParam.getClrType(), YbPayment.SELF_YB_ZH_PAY.getValue(), + YbPayment.SELF_YB_ZH_GJ_VALUE.getValue(), YbPayment.SELF_CASH_VALUE.getValue(), + YbPayment.SELF_CASH_VX_VALUE.getValue(), YbPayment.SELF_CASH_ALI_VALUE.getValue(), + YbPayment.SELF_CASH_UNION_VALUE.getValue(), YbPayment.YB_FUND_PAY.getValue()); + + // 数据处理 + financial3203VO + .setAcctGjPay(financial3203VO.getAcctGjPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctGjPay()); + financial3203VO + .setAcctPay(financial3203VO.getAcctPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctPay()); + financial3203VO.setFundPaySumAmt( + financial3203VO.getFundPaySumAmt() == null ? BigDecimal.ZERO : financial3203VO.getFundPaySumAmt()); + financial3203VO.setMedFeeSumAmt( + financial3203VO.getMedFeeSumAmt() == null ? BigDecimal.ZERO : financial3203VO.getMedFeeSumAmt()); + financial3203VO.setSelfPayCash( + financial3203VO.getSelfPayCash() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayCash()); + financial3203VO + .setSelfPayALI(financial3203VO.getSelfPayALI() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayALI()); + financial3203VO + .setSelfPayVX(financial3203VO.getSelfPayVX() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayVX()); + financial3203VO.setSelfPayUNION( + financial3203VO.getSelfPayUNION() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayUNION()); + + BigDecimal cashSum = financial3203VO.getSelfPayCash().add(financial3203VO.getSelfPayVX()) + .add(financial3203VO.getSelfPayUNION()).add(financial3203VO.getSelfPayALI()); + + Financial3203Param financial3203Param = new Financial3203Param(); + financial3203Param.setClrType(financial3203WebParam.getClrType()) + .setMedfeeSumamt(financial3203VO.getMedFeeSumAmt()).setMedSumfee(financial3203VO.getMedSumfee()) + .setCashPayamt(cashSum).setAcctPay(financial3203VO.getAcctPay()) + .setBegndate(financial3203WebParam.getBegndate()).setEnddate(financial3203WebParam.getEnddate()) + .setClrWay(financial3203WebParam.getClrWay()) + .setSetlym(financial3203WebParam.getBegndate().toString().substring(0, 7)) + .setFundAppySum(financial3203VO.getFundPaySumAmt()).setPsntime(financial3203VO.getPsntime()); + + return financial3203Param; + } + + /** + * 【3203A】清算申请【吉林省】 + * + * @param financial3203AWebParam + * @return + */ + // public Financial3203AParam getFinancial3203AParam(Financial3203AWebParam financial3203AWebParam) { + // + // YbClrType clrType = YbClrType.getByValue(financial3203AWebParam.getClrType()); + // if (clrType == null) { + // clrType = YbClrType.OUTPATIENT_CLINIC; + // } + // + // //Financial3203Dto financial3203VO = + // medicalInsuranceMapper.get3203Param(financial3203AWebParam.getStmtBegnDate(), + // // financial3203AWebParam.getStmtEndDate(), SecurityUtils.getLoginUser().getTenantId(), clrType.getValue(), + // // YbPayment.SELF_YB_ZH_PAY.getValue(), YbPayment.SELF_YB_ZH_GJ_VALUE.getValue(), + // // YbPayment.SELF_CASH_VALUE.getValue(), YbPayment.SELF_CASH_VX_VALUE.getValue(), + // // YbPayment.SELF_CASH_ALI_VALUE.getValue(), YbPayment.SELF_CASH_UNION_VALUE.getValue(), + // // YbPayment.YB_FUND_PAY.getValue()); + // + // + // // 数据处理 + // financial3203VO + // .setAcctGjPay(financial3203VO.getAcctGjPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctGjPay()); + // financial3203VO + // .setAcctPay(financial3203VO.getAcctPay() == null ? BigDecimal.ZERO : financial3203VO.getAcctPay()); + // financial3203VO.setFundPaySumAmt( + // financial3203VO.getFundPaySumAmt() == null ? BigDecimal.ZERO : financial3203VO.getFundPaySumAmt()); + // financial3203VO.setMedFeeSumAmt( + // financial3203VO.getMedFeeSumAmt() == null ? BigDecimal.ZERO : financial3203VO.getMedFeeSumAmt()); + // financial3203VO.setSelfPayCash( + // financial3203VO.getSelfPayCash() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayCash()); + // financial3203VO + // .setSelfPayALI(financial3203VO.getSelfPayALI() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayALI()); + // financial3203VO + // .setSelfPayVX(financial3203VO.getSelfPayVX() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayVX()); + // financial3203VO.setSelfPayUNION( + // financial3203VO.getSelfPayUNION() == null ? BigDecimal.ZERO : financial3203VO.getSelfPayUNION()); + // + // BigDecimal cashSum = financial3203VO.getSelfPayCash().add(financial3203VO.getSelfPayVX()) + // .add(financial3203VO.getSelfPayUNION()).add(financial3203VO.getSelfPayALI()); + // + // Financial3203AParam busMonthSetlApply = new Financial3203AParam(); + // busMonthSetlApply.setClrType(clrType.getValue()).setMedfeeSumamt() + // .setMedSumfee().setCashPayamt() + // .setAcctPay() + // .setBegndate(DateUtils.dateTime("yyyy-MM-dd", financial3203AWebParam.getStmtBegnDate().toString())) + // .setEnddate(DateUtils.dateTime("yyyy-MM-dd", financial3203AWebParam.getStmtEndDate().toString())) + // .setClrOptins(financial3203AWebParam.getClrOptins()); + // + // return busMonthSetlApply; + // } + + /** + * 【3101】明细审核事前分析服务参数 + * + * @return + */ + public FsiConsultation3101Param getHealthcareConsultationDetail3101(String syscode, List encounterId, + YbPayLoc payLoc, Whether inOutDiagType) { + + Integer tenantId = SecurityUtils.getLoginUser().getTenantId(); + // 查询就诊记录 + List encounters = iEncounterService.list( + new LambdaQueryWrapper().in(Encounter::getId, encounterId).eq(Encounter::getTenantId, tenantId)); + + List patients = new ArrayList<>(); + for (Encounter encounter : encounters) { + // 查询账户信息 + Account account = accountService.getOne(new LambdaQueryWrapper() + .eq(Account::getEncounterId, encounter.getId()).eq(Account::getEncounterFlag, Whether.YES.getValue()) + .orderByDesc(Account::getId).last(YbCommonConstants.sqlConst.LIMIT1)); + // 查询患者信息 + Patient patient = iPatientService.getOne(new LambdaQueryWrapper() + .in(Patient::getId, encounter.getPatientId()).eq(Patient::getTenantId, tenantId) + .orderByDesc(Patient::getId).last(YbCommonConstants.sqlConst.LIMIT1)); + + // 查询就诊信息集合 + List list = getFsiEncounterList(encounter, patient, tenantId, payLoc, inOutDiagType); + + FsiPatient3101Param patientYb = new FsiPatient3101Param(); + // 患者唯一标识暂定使用id + patientYb.setPatnId(patient.getId().toString()).setPatnName(patient.getName()) + .setGend(patient.getGenderEnum().toString()).setBrdy(patient.getBirthDate()) + .setPoolarea(account.getYbAreaNo()).setCurrMdtrtId(encounter.getBusNo()).setFsiEncounterDtos(list); + + patients.add(patientYb); + } + + // 创建实体 + FsiConsultation3101Param healthcareConsultationDetail = new FsiConsultation3101Param(); + healthcareConsultationDetail.setSyscode(syscode).setPatientDtos(patients); + + return healthcareConsultationDetail; + } + + /** + * [3101]明细审核事前分析服务参数-就诊信息集合 + * + * @return + */ + private List getFsiEncounterList(Encounter encounter, Patient patient, Integer tenantId, + YbPayLoc payLoc, Whether outSetlFlag) { + // 查询就诊记录 + List encounters = iEncounterService.list(new LambdaQueryWrapper() + .eq(Encounter::getPatientId, patient.getId()).eq(Encounter::getTenantId, tenantId)); + + List list = new ArrayList(); + for (Encounter enc : encounters) { + // 查询机构信息 + Long hospitalIdByOrgId = userService.getHospitalIdByOrgId(enc.getOrganizationId()); + Organization organization = iOrganizationService.getById(hospitalIdByOrgId); + // 查询医嘱信息 + List fsiOrders = getFsiOrderList(enc, patient, tenantId); + // 查询手术信息 + List fsiOperations = getFsiOperationList(enc, patient, tenantId); + + YbMedinsType medinsType = YbMedinsType.getByValue(organization.getMedinsType()); + if (medinsType == null) { + medinsType = YbMedinsType.FIXMEDINS_TYPE1; + } + + // 查询诊断信息 + List encounterDiagnosisList = iEncounterDiagnosisService + .list(new LambdaQueryWrapper().eq(EncounterDiagnosis::getEncounterId, enc.getId()) + .eq(EncounterDiagnosis::getTenantId, enc.getTenantId())); + EncounterDiagnosis mainEncounterDiagnosis = null; + + for (EncounterDiagnosis encounterDiagnosis : encounterDiagnosisList) { + if (Whether.YES.getValue().equals(encounterDiagnosis.getMaindiseFlag())) { + mainEncounterDiagnosis = encounterDiagnosis; + } + } + + Condition condition = iConditionService.getById(mainEncounterDiagnosis.getConditionId()); + ConditionDefinition conditionDefinition = iConditionDefinitionService.getById(condition.getDefinitionId()); + // 查询诊断信息集合 + List fsiDiagnoses = getFsiDiagnoseList(encounterDiagnosisList, tenantId); + // 查询主治医生 + EncounterParticipant encounterParticipant = iEncounterParticipantService.getOne( + new LambdaQueryWrapper().eq(EncounterParticipant::getEncounterId, enc.getId()) + .eq(EncounterParticipant::getTypeCode, ParticipantType.ATTENDING_DOCTOR.getCode())); + Practitioner doctor = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, encounterParticipant.getPractitionerId())); + // 查询科室 + Organization org = iOrganizationService.getById(doctor.getOrgId()); + // 查询医疗类别 + YbClrType clrType = YbClrType.getByValue(enc.getYbClassEnum().toString()); + YbMedMdtrtType ybMedMdtrtType = null; + switch (clrType) { + case OUTPATIENT_CLINIC: + ybMedMdtrtType = YbMedMdtrtType.OUTPATIENT_CLINIC; + break; + case INPATIENT_CARE: + ybMedMdtrtType = YbMedMdtrtType.INPATIENT_CARE; + break; + default: + ybMedMdtrtType = YbMedMdtrtType.OTHER; + break; + } + // 院内唯一流水号查询挂号信息 + String busNo = encounter.getBusNo(); + ClinicReg reg = iRegService.getOne(new LambdaQueryWrapper().eq(ClinicReg::getIptOtpNo, busNo) + .eq(ClinicReg::getTenantId, tenantId)); + // 查询付款实体 + List payList = iPaymentReconciliationService.list( + new LambdaQueryWrapper().eq(PaymentReconciliation::getEncounterId, enc.getId()) + .eq(PaymentReconciliation::getTenantId, tenantId)); + // 自费金额 + BigDecimal ownPay = BigDecimal.ZERO; + // 自付金额 + BigDecimal selfPay = BigDecimal.ZERO; + for (PaymentReconciliation paymentReconciliation : payList) { + // 查询付款详情 + List details = + iPaymentRecDetailService.list(new LambdaQueryWrapper() + .eq(PaymentRecDetail::getReconciliationId, paymentReconciliation.getId()) + .eq(PaymentRecDetail::getTenantId, tenantId)); + for (PaymentRecDetail detail : details) { + if (YbPayment.SELF_PAY.getValue().equals(detail.getPayEnum())) { + ownPay = ownPay.add(detail.getAmount()); + } + if (YbPayment.SELF_CASH_VALUE.getValue().equals(detail.getPayEnum()) + || YbPayment.SELF_CASH_VX_VALUE.getValue().equals(detail.getPayEnum()) + || YbPayment.SELF_CASH_ALI_VALUE.getValue().equals(detail.getPayEnum()) + || YbPayment.SELF_CASH_UNION_VALUE.getValue().equals(detail.getPayEnum())) { + selfPay = selfPay.add(detail.getAmount()); + } + } + } + + FsiEncounter3101Param fsiEncounter = new FsiEncounter3101Param(); + fsiEncounter.setMdtrtId(enc.getBusNo()).setMedinsId(organization.getYbNo()) + .setMedinsName(organization.getName()).setMedinsAdmdvs(organization.getMedinsAdmdvs()) + .setMedinsType(medinsType.getValue()).setMedinsLv(organization.getMedinsLv()) + .setAdmDate(enc.getStartTime()).setDscgDate(enc.getEndTime()).setDscgMainDiseCodg(condition.getYbNo()) + .setDscgMainDiseName(conditionDefinition.getName()).setDrCodg(doctor.getYbNo()) + .setAdmDeptCodg(org.getYbNo()).setAdmDeptName(org.getName()) + // 门诊的入院出院暂定相同,住院的情况应分出一个if + .setDscgDeptCodg(org.getYbNo()).setDscgDeptName(org.getName()) + .setMedMdtrtType(ybMedMdtrtType.getValue()) + // 生育状态默认未知 + .setMedType(reg.getMedType()).setMedType(YbMatnStas.UNKNOWN.getValue()).setOwnpayAmt(ownPay) + .setSelfpayAmt(selfPay).setSetlTotlnum(payList.size()).setInsutype(reg.getInsutype()) + .setReimFlag(payLoc.getValue()).setOutSetlFlag(outSetlFlag.getValue().toString()); + + list.add(fsiEncounter); + } + + return list; + } + + /** + * [3101]明细审核事前分析服务参数-手术集合 + * + * @return + */ + private List getFsiOperationList(Encounter enc, Patient patient, Integer tenantId) { + return null; + } + + /** + * [3101]明细审核事前分析服务参数-诊断集合 + * + * @return + */ + private List getFsiDiagnoseList(List encounterDiagnosisList, + Integer tenantId) { + + List fsiDiagnoses = new ArrayList(); + // List conditionIdList = encounterDiagnosisList.stream() + // .map(EncounterDiagnosis::getConditionId) + // .collect(Collectors.toList()); + // + // List conditionList = iConditionService.list(new + // LambdaQueryWrapper().in(Condition::getId, conditionIdList).eq(Condition::getTenantId, tenantId)); + // + // List definitionList = conditionList.stream() + // .map(Condition::getDefinitionId) + // .collect(Collectors.toList()); + // + // List conditionDefinitions = iConditionDefinitionService.list(new + // LambdaQueryWrapper().in(ConditionDefinition::getId, + // definitionList).eq(ConditionDefinition::getTenantId, tenantId)); + + Condition condition = null; + ConditionDefinition conditionDefinition = null; + int sort = 1; + for (EncounterDiagnosis encounterDiagnosis : encounterDiagnosisList) { + FsiDiagnose3101Param fsiDiagnose = new FsiDiagnose3101Param(); + // 出入院诊断及门诊诊断 + if (YbIptDiseTypeCode.DISCHARGE_DIAGNOSIS.getValue() + .equals(encounterDiagnosis.getIptDiseTypeCode().toString())) { + fsiDiagnose.setInoutDiseType(YbInOutDiagType.YB_OUT_DIAG_TYPE.getValue()); + } else if (YbIptDiseTypeCode.ADMISSION_DIAGNOSIS.getValue() + .equals(encounterDiagnosis.getIptDiseTypeCode().toString())) { + fsiDiagnose.setInoutDiseType(YbInOutDiagType.YB_IN_DIAG_TYPE.getValue()); + } else if (YbIptDiseTypeCode.OUTPATIENT_DIAGNOSIS.getValue() + .equals(encounterDiagnosis.getIptDiseTypeCode().toString())) { + //// TODO: sjq 门诊诊断怎么存? + } else { + continue; + } + condition = iConditionService.getOne(new LambdaQueryWrapper() + .eq(Condition::getId, encounterDiagnosis.getConditionId()).eq(Condition::getTenantId, tenantId)); + if (condition == null) { + continue; + } else { + conditionDefinition = iConditionDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ConditionDefinition::getId, condition.getDefinitionId()) + .eq(ConditionDefinition::getTenantId, tenantId)); + if (conditionDefinition == null) { + continue; + } + } + // 主诊断判断 + if (Whether.YES.getValue().equals(encounterDiagnosis.getMaindiseFlag())) { + fsiDiagnose.setMaindiseFlag(Whether.YES.getValue().toString()); + } + + fsiDiagnose.setDiseId(condition.getBusNo()).setDiasSrtNo(String.valueOf(sort)) + .setDiseCodg(conditionDefinition.getYbNo()).setDiseName(conditionDefinition.getName()) + .setDiseDate(condition.getRecordedDatetime()); + + sort++; + + fsiDiagnoses.add(fsiDiagnose); + } + + return fsiDiagnoses; + } + + /** + * [3101]明细审核事前分析服务参数-处方(医嘱)集合 + * + * @return + */ + private List getFsiOrderList(Encounter enc, Patient patient, Integer tenantId) { + // 查询医嘱信息 + List medicationRequests = + iMedicationRequestService.list(new LambdaQueryWrapper() + .eq(MedicationRequest::getEncounterId, enc.getId()).eq(MedicationRequest::getTenantId, tenantId)); + + List deviceRequests = iDeviceRequestService.list(new LambdaQueryWrapper() + .eq(DeviceRequest::getEncounterId, enc.getId()).eq(DeviceRequest::getTenantId, tenantId)); + + List serviceRequests = iServiceRequestService.list(new LambdaQueryWrapper() + .eq(ServiceRequest::getEncounterId, enc.getId()).eq(ServiceRequest::getTenantId, tenantId)); + + for (MedicationRequest medicationRequest : medicationRequests) { + // 查询药品定义 + Medication medication = iMedicationService.getById(medicationRequest.getDeviceDefId()); + if (medication == null) { + continue; + } + MedicationDefinition medicationDefinition = + iMedicationDefinitionService.getById(medication.getMedicationDefId()); + if (medicationDefinition == null) { + continue; + } + // 是否是长期医嘱 + Whether whether = Whether.NO; + if (TherapyTimeType.LONG_TERM.getValue().equals(medicationRequest.getTherapyEnum())) { + whether = Whether.YES; + } + // 查询收费项 + ChargeItem chargeItem = iChargeItemService + .getOne(new LambdaQueryWrapper().eq(ChargeItem::getEncounterId, enc.getId()) + .eq(ChargeItem::getServiceTable, CommonConstants.TableName.MED_MEDICATION_REQUEST) + .eq(ChargeItem::getTenantId, tenantId)); + if (chargeItem == null) { + continue; + } + YbMedChrgItmType medChrgItmType = YbMedChrgItmType.getByCode(chargeItem.getContextEnum()); + if (medChrgItmType == null) { + continue; + } + // 查询医保等级 + YbChrgitmLv chrgitmLv = YbChrgitmLv.getByValue(medicationDefinition.getChrgitmLv()); + if (chrgitmLv == null) { + chrgitmLv = YbChrgitmLv.SELF_PAY; + } + // 查询医保目录价格 + Double price; + String ybNo = medicationDefinition.getYbNo(); + CatalogDrugInfo drugInfo = iCatalogDrugInfoService.getOne(new LambdaQueryWrapper() + .eq(CatalogDrugInfo::getMedicalCatalogCode, ybNo).last(YbCommonConstants.sqlConst.LIMIT1)); + if (drugInfo == null) { + CatalogMedicalHerbInfo herbInfo = + iCatalogMedicalHerbInfoService.getOne(new LambdaQueryWrapper() + .eq(CatalogMedicalHerbInfo::getMedicalCatalogCode, ybNo) + .last(YbCommonConstants.sqlConst.LIMIT1)); + } else { + + } + // 查询医院信息 + Long hospitalId = userService.getHospitalIdByOrgId(enc.getOrganizationId()); + Organization org = iOrganizationService.getById(hospitalId); + + FsiOrder3101Param fsiOrder = new FsiOrder3101Param(); + fsiOrder.setRxId(medicationRequest.getBusNo()).setRxno(medicationRequest.getPrescriptionNo()) + .setLongDrordFlag(whether.getCode()).setHilistCode(medicationDefinition.getCategoryCode()) + // 医嘱类别暂定全部使用其他 + .setChrgType(medChrgItmType.getValue()).setDrordBhvr(YbDrordBhvr.OTHER.getValue()) + .setHilistCode(medicationDefinition.getYbNo()) + // 医保目录价格未定义 + .setHilistName(medicationDefinition.getName()).setHilistLv(chrgitmLv.getValue().toString()) + .setHosplistCode(org.getYbNo()).setHosplistName(org.getName()) + .setCnt(new BigDecimal(chargeItem.getQuantityValue().toString())).setPric(chargeItem.getUnitPrice()) + .setSumamt(chargeItem.getTotalPrice()); + // todo:sjq 从第23项后面的值越来越离谱,暂定先停止3101和3103的开发 + + } + + return null; + } + + /** + * 【3202】医药机构费用结算对明细账 + * + * @param settlement3202WebParam 费用结算对明细账前端入参 + * @return 医保参数 + */ + public FinancialSettlement3202Param getFinancialSettlement3202Param(Settlement3202WebParam settlement3202WebParam) { + // 数据库查询 + Settlement3202Dto reconciliation = + medicalInsuranceMapper.get3202Param(settlement3202WebParam.getStmtBegnDate().toString(), + settlement3202WebParam.getStmtEndDate().toString(), SecurityUtils.getLoginUser().getTenantId(), + settlement3202WebParam.getOrgId(), settlement3202WebParam.getClrType(), + settlement3202WebParam.getSetlOptins(), YbPayment.SELF_YB_ZH_PAY.getValue(), + YbPayment.SELF_YB_ZH_GJ_VALUE.getValue(), YbPayment.SELF_CASH_VALUE.getValue(), + YbPayment.SELF_CASH_VX_VALUE.getValue(), YbPayment.SELF_CASH_ALI_VALUE.getValue(), + YbPayment.SELF_CASH_UNION_VALUE.getValue(), YbPayment.YB_FUND_PAY.getValue()); + // 数据处理 + reconciliation + .setAcctGjPay(reconciliation.getAcctGjPay() == null ? BigDecimal.ZERO : reconciliation.getAcctGjPay()); + reconciliation.setAcctPay(reconciliation.getAcctPay() == null ? BigDecimal.ZERO : reconciliation.getAcctPay()); + reconciliation.setFundPaySumAmt( + reconciliation.getFundPaySumAmt() == null ? BigDecimal.ZERO : reconciliation.getFundPaySumAmt()); + reconciliation.setMedFeeSumAmt( + reconciliation.getMedFeeSumAmt() == null ? BigDecimal.ZERO : reconciliation.getMedFeeSumAmt()); + reconciliation.setSelfPayCash( + reconciliation.getSelfPayCash() == null ? BigDecimal.ZERO : reconciliation.getSelfPayCash()); + reconciliation + .setSelfPayALI(reconciliation.getSelfPayALI() == null ? BigDecimal.ZERO : reconciliation.getSelfPayALI()); + reconciliation + .setSelfPayVX(reconciliation.getSelfPayVX() == null ? BigDecimal.ZERO : reconciliation.getSelfPayVX()); + reconciliation.setSelfPayUNION( + reconciliation.getSelfPayUNION() == null ? BigDecimal.ZERO : reconciliation.getSelfPayUNION()); + + BigDecimal cashSum = reconciliation.getSelfPayCash().add(reconciliation.getSelfPayVX()) + .add(reconciliation.getSelfPayUNION()).add(reconciliation.getSelfPayALI()); + // BigDecimal zhSum = reconciliation.getAcctGjPay().add(reconciliation.getAcctPay()); + // 组装参数 + FinancialSettlement3202Param financialSettlement3202Param = new FinancialSettlement3202Param(); + financialSettlement3202Param.setClrType(settlement3202WebParam.getClrType()).setCashPayamt(cashSum) + .setFileQuryNo(settlement3202WebParam.getFileQuryNo()) + .setFixmedinsSetlCnt(reconciliation.getFixMedInsSetlCnt()).setMedfeeSumamt(reconciliation.getMedFeeSumAmt()) + .setSetlOptins(settlement3202WebParam.getSetlOptins()) + .setStmtBegndate(DateUtils.parseDate(settlement3202WebParam.getStmtBegnDate())) + .setStmtEnddate(DateUtils.parseDate(settlement3202WebParam.getStmtEndDate())) + .setFundPaySumamt(reconciliation.getFundPaySumAmt()); + // 返回结果 + return financialSettlement3202Param; + } + + /** + * 【3202】对账明细的文件数据 + * + * @param paymentIds 付款实体ids + * @return 查询结果 + */ + public List getFinancial3202FileParam(List paymentIds) { + List list = new ArrayList<>(); + for (Long paymentId : paymentIds) { + + // 查询基础信息 + List paymentRecDetails = iPaymentRecDetailService + .list(new LambdaQueryWrapper().eq(PaymentRecDetail::getReconciliationId, paymentId)); + PaymentReconciliation paymentReconciliation = iPaymentReconciliationService.getById(paymentId); + if (paymentReconciliation == null) { + throw new ServiceException("未查询到付款信息"); + } + String ybSettleIds = paymentReconciliation.getYbSettleIds(); + if (StringUtils.isEmpty(ybSettleIds)) { + continue; + } + List settleIdList = + Arrays.stream(ybSettleIds.split(",")).map(String::trim).filter(s -> !s.isEmpty()).map(s -> { + try { + return Long.valueOf(s); + } catch (NumberFormatException e) { + return null; + } + }).filter(Objects::nonNull).collect(Collectors.toList()); + for (Long settleId : settleIdList) { + ClinicSettle clinicSettle = iClinicSettleService + .getOne(new LambdaQueryWrapper().eq(ClinicSettle::getSetlId, settleId)); + if (paymentReconciliation == null || paymentRecDetails.isEmpty() || clinicSettle == null) { + continue; + } + ClinicReg clinicReg = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtId, clinicSettle.getMdtrtId())); + + // 计算金额 + BigDecimal fundPay = BigDecimal.ZERO; + BigDecimal accountPay = BigDecimal.ZERO; + for (PaymentRecDetail paymentRecDetail : paymentRecDetails) { + if (YbPayment.YB_FUND_PAY.getValue().equals(paymentRecDetail.getPayEnum())) { + fundPay = fundPay.add(paymentRecDetail.getAmount()); + } else if (YbPayment.SELF_YB_ZH_PAY.getValue().equals(paymentRecDetail.getPayEnum()) + || YbPayment.SELF_YB_ZH_GJ_VALUE.getValue().equals(paymentRecDetail.getPayEnum())) { + accountPay = accountPay.add(paymentRecDetail.getAmount()); + } + } + + // 反结标志 + String refdSetlFlag = Whether.NO.getValue().toString(); + if (paymentReconciliation.getPaymentEnum().equals(PaymentType.UN_PAY.getValue())) { + refdSetlFlag = Whether.YES.getValue().toString();// 1 是退费 2 否退费 + } + Financial3202FileParam financial3202FileParam = new Financial3202FileParam(); + financial3202FileParam.setSetlId(clinicSettle.getSetlId()).setMdtrtId(clinicSettle.getMdtrtId()) + .setPsnNo(clinicReg.getPsnNo()).setMedfeeSumamt(paymentReconciliation.getTenderedAmount()) + .setFundPaySumamt(fundPay).setAcctPay(accountPay).setRefdSetlFlag(refdSetlFlag); + // 添加集合 + list.add(financial3202FileParam); + } + } + return list; + } + + /** + * 【3301】获取医保目录对照入参 + * + * @param tableName 对应定义表 + * @param id 主键 + * @return 医保参数 + */ + public MedicalDirectory3301Param getMedicalDirectory3301Param(String tableName, Long id) { + MedicalDirectory3301Param medicalDirectory3301Param = new MedicalDirectory3301Param(); + if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(tableName)) { + // 耗材 + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(id); + if (deviceDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + YbListType listType = YbListType.getByValue(deviceDefinition.getCategoryCode()); + if (listType == null) { + listType = YbListType.MEDICAL_CONSUMABLES; + } + medicalDirectory3301Param.setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(deviceDefinition.getName()).setListType(listType.getValue()) + .setMedListCodg(deviceDefinition.getYbNo()) + .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) + .setEnddate(YbCommonConstants.constants.END_TIME); + } else if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(tableName)) { + // 药品 + MedicationDefinition medicationDefinition = iMedicationDefinitionService.getById(id); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 项目类型为中成药(1)、西药(2)、外购药品(3)、中草药(4)时查药品表;为耗材(9)时查器材表 + YbListType listType = YbListType.getByValue(medicationDefinition.getCategoryCode()); + if (listType == null) { + listType = switch (medicationDefinition.getCategoryCode()) { + case "1", "2" -> YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE; + case "4" -> YbListType.IMPORTANT_HERBAL_SLICES; + default -> throw new ServiceException("未查询到目录类别"); + }; + } + medicalDirectory3301Param.setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(medicationDefinition.getName()).setListType(listType.getValue()) + .setMedListCodg(medicationDefinition.getYbNo()) + .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) + .setEnddate(YbCommonConstants.constants.END_TIME); + } else if (CommonConstants.TableName.WOR_ACTIVITY_DEFINITION.equals(tableName)) { + // 医疗项目 + ActivityDefinition activityDefinition = iActivityDefinitionService.getById(id); + if (activityDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + YbListType listType = YbListType.getByValue(activityDefinition.getCategoryCode()); + if (listType == null) { + listType = YbListType.MEDICAL_SERVICE_ITEM; + } + medicalDirectory3301Param.setFixmedinsHilistId(activityDefinition.getBusNo()) + .setFixmedinsHilistName(activityDefinition.getName()).setListType(listType.getValue()) + .setMedListCodg(activityDefinition.getYbNo()) + .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) + .setEnddate(YbCommonConstants.constants.END_TIME); + } else if (CommonConstants.TableName.ADM_HEALTHCARE_SERVICE.equals(tableName)) { + // 医疗服务 + HealthcareService healthcareServiceService = iHealthcareServiceService.getById(id); + if (healthcareServiceService == null) { + throw new ServiceException("未查询到药品信息"); + } + YbListType listType = YbListType.getByValue(healthcareServiceService.getCategoryCode()); + if (listType == null) { + listType = YbListType.MEDICAL_SERVICE_ITEM; + } + medicalDirectory3301Param.setFixmedinsHilistId(String.valueOf(healthcareServiceService.getId())) + .setFixmedinsHilistName(healthcareServiceService.getName()).setListType(listType.getValue()) + .setMedListCodg(healthcareServiceService.getYbNo()) + .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) + .setEnddate(YbCommonConstants.constants.END_TIME); + } else { + throw new ServiceException("未查询到医疗项目"); + } + return medicalDirectory3301Param; + } + + /** + * 【3301】医保目录对照参数作成(药品) + * + * @param categoryCode 药品分类 + * @param busNo 药品编号 + * @param name 药品编号 + * @param ybNo 医保编码 + * @return 医保目录对照参数 + */ + public MedicalDirectory3301Param getMedicalDirectory3301ParamMedication(String categoryCode, String busNo, + String name, String ybNo) { + String listType; + if (MedCategoryCode.TRADITIONAL_CHINESE_MEDICINE.getValue().equals(categoryCode) + || MedCategoryCode.WESTERN_MEDICINE.getValue().equals(categoryCode)) { + listType = YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE.getValue(); + } else if (MedCategoryCode.CHINESE_HERBAL_MEDICINE.getValue().equals(categoryCode)) { + listType = YbListType.IMPORTANT_HERBAL_SLICES.getValue(); + } else { + throw new ServiceException("无效的目录类别"); + } + return new MedicalDirectory3301Param().setFixmedinsHilistId(busNo).setFixmedinsHilistName(name) + .setListType(listType).setMedListCodg(ybNo) + .setBegndate(DateUtils.dateTimeNow(YbCommonConstants.constants.YYYY_MM_DD)) + .setEnddate(YbCommonConstants.constants.END_TIME); + } + + /** + * 【3302】医保目录对照撤销 + * + * @param tableName 对应定义表 + * @param id 主键 + * @return + */ + public MedicalDirectory3302Param getMedicalDirectory3302Param(String tableName, Long id) { + MedicalDirectory3302Param medicalDirectory3302Param = new MedicalDirectory3302Param(); + if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(tableName)) { + // 耗材 + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(id); + if (deviceDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + YbListType listType = YbListType.getByValue(deviceDefinition.getCategoryCode()); + if (listType == null) { + listType = YbListType.MEDICAL_CONSUMABLES; + } + medicalDirectory3302Param.setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) + .setListType(listType.getValue()).setMedListCodg(deviceDefinition.getYbNo()); + } else if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(tableName)) { + // 药品 + MedicationDefinition medicationDefinition = iMedicationDefinitionService.getById(id); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 项目类型为中成药(1)、西药(2)、外购药品(3)、中草药(4)时查药品表;为耗材(9)时查器材表 + YbListType listType = YbListType.getByValue(medicationDefinition.getCategoryCode()); + if (listType == null) { + listType = switch (medicationDefinition.getCategoryCode()) { + case "1", "2" -> YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE; + case "4" -> YbListType.IMPORTANT_HERBAL_SLICES; + default -> throw new ServiceException("未查询到目录类别"); + }; + } + medicalDirectory3302Param.setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) + .setListType(listType.getValue()).setMedListCodg(medicationDefinition.getYbNo()); + } else if (CommonConstants.TableName.WOR_ACTIVITY_DEFINITION.equals(tableName)) { + // 医疗项目 + ActivityDefinition activityDefinition = iActivityDefinitionService.getById(id); + if (activityDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + YbListType listType = YbListType.getByValue(activityDefinition.getCategoryCode()); + if (listType == null) { + listType = YbListType.MEDICAL_SERVICE_ITEM; + } + medicalDirectory3302Param.setFixmedinsHilistId(activityDefinition.getBusNo()) + .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) + .setListType(listType.getValue()).setMedListCodg(activityDefinition.getYbNo()); + } else { + // 医疗项目 + HealthcareService healthcareService = iHealthcareServiceService.getById(id); + if (healthcareService == null) { + throw new ServiceException("未查询到药品信息"); + } + YbListType listType = YbListType.getByValue(healthcareService.getCategoryCode()); + if (listType == null) { + listType = YbListType.MEDICAL_SERVICE_ITEM; + } + medicalDirectory3302Param.setFixmedinsHilistId(healthcareService.getId().toString()) + .setFixmedinsCode(SecurityUtils.getLoginUser().getOptionJson().getString("fixmedinsCode")) + .setListType(listType.getValue()).setMedListCodg(healthcareService.getYbNo()); + } + return medicalDirectory3302Param; + } + + /** + * 【3302】医保目录对照撤销参数作成(药品) + * + * @param categoryCode 药品分类 + * @param busNo 药品编号 + * @param ybNo 医保编码 + * @return 医保目录对照撤销参数 + */ + public MedicalDirectory3302Param getMedicalDirectory3302ParamMedication(String categoryCode, String busNo, + String ybNo) { + String listType; + if (MedCategoryCode.TRADITIONAL_CHINESE_MEDICINE.getValue().equals(categoryCode) + || MedCategoryCode.WESTERN_MEDICINE.getValue().equals(categoryCode)) { + listType = YbListType.WESTERN_AND_CHINESE_PATENT_MEDICINE.getValue(); + } else if (MedCategoryCode.CHINESE_HERBAL_MEDICINE.getValue().equals(categoryCode)) { + listType = YbListType.IMPORTANT_HERBAL_SLICES.getValue(); + } else { + throw new ServiceException("无效的目录类别"); + } + return new MedicalDirectory3302Param().setFixmedinsHilistId(busNo) + .setFixmedinsCode(TenantOptionUtil.getOptionContent(TenantOptionDict.FIXMEDINS_CODE)).setListType(listType) + .setMedListCodg(ybNo); + } + + /** + * + * @param clearing3205AWebParma [3205]前台传参 + * @return 医保入参 + */ + public Clearing3205AParma getClearing3205AParma(Clearing3205AWebParma clearing3205AWebParma) { + String clrStas = clearing3205AWebParma.getClrStas(); + // 10 已申请20 已受理50 已清算如不填写,默认为10 + if (StringUtils.isEmpty(clrStas)) { + clrStas = YbClrStas.CLR_STAS10.getValue(); + } + YbClrStas ybClrStas = YbClrStas.getByValue(clrStas); + // 年月格式,例如:202310 + // 查询clr_sta为20、50的时候,该值必填 + if (ybClrStas != YbClrStas.CLR_STAS10 && StringUtils.isEmpty(clearing3205AWebParma.getClrYm())) { + throw new ServiceException("请填写清算状态"); + } + Clearing3205AParma clearing3205AParma = new Clearing3205AParma(); + clearing3205AParma.setClrOptins(clearing3205AWebParma.getClrOptins()) + .setClrStas(clearing3205AWebParma.getClrStas()).setClrYm(clearing3205AWebParma.getClrYm()); + return clearing3205AParma; + } + + /** + * 【3501】库存明细上传 + * + * @param id 供应申请id + * @return 3501医保参数 + */ + public MedicalInventory3501Param getMedicalInventory3501Param(Long id, Integer talentId) { + MedicalInventory3501Param medicalInventory3501Param = new MedicalInventory3501Param(); + // 查库存 + InventoryItem inventoryItem = inventoryItemService.getById(id); + if (inventoryItem == null) { + throw new ServiceException("未查询到库存信息"); + } + if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(inventoryItem.getItemTable())) { + // 查询药品 + MedicationDefinition medicationDefinition = iMedicationDefinitionService.getById(inventoryItem.getItemId()); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 查询盘存数据 + SupplyDelivery one = iSupplyDeliveryService.getOne(new LambdaQueryWrapper() + .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .eq(SupplyDelivery::getItemId, medicationDefinition.getId()).eq(SupplyDelivery::getTenantId, talentId)); + medicalInventory3501Param.setMedListCodg(medicationDefinition.getYbNo()) + .setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .setRxFlag(medicationDefinition.getRxFlag().toString()).setInvdate(one.getOccurrenceEndTime()) + .setInvCnt(inventoryItem.getQuantity()).setFixmedinsBchno(inventoryItem.getLotNumber()) + .setManuDate(inventoryItem.getProductionDate()).setExpyEnd(inventoryItem.getExpirationDate()); + } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(inventoryItem.getItemTable())) { + // 查询器材 + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(inventoryItem.getItemId()); + if (deviceDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 查询盘存数据 + SupplyDelivery one = iSupplyDeliveryService.getOne(new LambdaQueryWrapper() + .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(SupplyDelivery::getItemId, deviceDefinition.getId()).eq(SupplyDelivery::getTenantId, talentId)); + medicalInventory3501Param.setMedListCodg(deviceDefinition.getYbNo()) + .setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .setRxFlag(deviceDefinition.getRxFlag().toString()).setInvdate(one.getOccurrenceEndTime()) + .setInvCnt(inventoryItem.getQuantity()).setFixmedinsBchno(inventoryItem.getLotNumber()) + .setManuDate(inventoryItem.getProductionDate()).setExpyEnd(inventoryItem.getExpirationDate()); + } else { + throw new ServiceException("未查询到信息"); + } + return medicalInventory3501Param; + } + + /** + * 【3502】库存信息变更 + * + * @param id 供应发放id + * @param invChgType 变更类型 参考枚举 + * @param talentId 租户id + * @return + */ + public MedicalInventory3502Param getMedicalInventory3502Param(Long id, String invChgType, Integer talentId) { + MedicalInventory3502Param medicalInventory3502Param = new MedicalInventory3502Param(); + + // 查供应发放实体 + SupplyDelivery supplyDelivery = iSupplyDeliveryService.getById(id); + if (supplyDelivery == null) { + throw new ServiceException("未查询到供应信息"); + } + + // 库存变更类型 + YbInvChgType chgType = YbInvChgType.getByValue(invChgType); + if (chgType == null) { + throw new ServiceException("未查询到付款信息"); + } + + if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(supplyDelivery.getItemTable())) { + // 查询药品信息 + MedicationDefinition medicationDefinition = + iMedicationDefinitionService.getById(supplyDelivery.getItemId()); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 查询定价信息 + ChargeItemDefinition chargeItemDefinition = + iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .eq(ChargeItemDefinition::getInstanceId, medicationDefinition.getId()) + .eq(ChargeItemDefinition::getTenantId, talentId)); + if (chargeItemDefinition == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查查询定价子表 + ChargeItemDefDetail chargeItemDefDetail = + iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) + .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) + .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) + .last(YbCommonConstants.sqlConst.LIMIT1)); + if (chargeItemDefDetail == null) { + throw new ServiceException("未查询到定价信息"); + } + // 最小单位售卖价格 + BigDecimal price; + if (medicationDefinition.getPartPercent().compareTo(BigDecimal.ZERO) > 0) { + price = + chargeItemDefDetail.getAmount().divide(medicationDefinition.getPartPercent(), RoundingMode.HALF_UP); + } else { + price = chargeItemDefDetail.getAmount().divide(BigDecimal.ONE, RoundingMode.HALF_UP); + } + + medicalInventory3502Param.setMedListCodg(medicationDefinition.getYbNo()).setInvChgType(chgType.getValue()) + .setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .setRxFlag(medicationDefinition.getRxFlag().toString()).setPric(price) + .setCnt(supplyDelivery.getQuantity()).setInvChgTime(supplyDelivery.getUpdateTime()); + } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(supplyDelivery.getItemTable())) { + // 查询耗材信息 + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(supplyDelivery.getItemId()); + if (deviceDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 查询定价信息 + ChargeItemDefinition chargeItemDefinition = + iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(ChargeItemDefinition::getInstanceId, deviceDefinition.getId()) + .eq(ChargeItemDefinition::getTenantId, talentId)); + if (chargeItemDefinition == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查查询定价子表 + ChargeItemDefDetail chargeItemDefDetail = + iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) + .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) + .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) + .last(YbCommonConstants.sqlConst.LIMIT1)); + if (chargeItemDefDetail == null) { + throw new ServiceException("未查询到定价信息"); + } + // 最小单位售卖价格 + BigDecimal price; + if (deviceDefinition.getPartPercent().compareTo(BigDecimal.ZERO) > 0) { + price = chargeItemDefDetail.getAmount().divide(deviceDefinition.getPartPercent(), RoundingMode.HALF_UP); + } else { + price = chargeItemDefDetail.getAmount().divide(BigDecimal.ONE, RoundingMode.HALF_UP); + } + + medicalInventory3502Param.setMedListCodg(deviceDefinition.getYbNo()).setInvChgType(chgType.getValue()) + .setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .setRxFlag(deviceDefinition.getRxFlag().toString()).setPric(price).setCnt(supplyDelivery.getQuantity()) + .setInvChgTime(supplyDelivery.getUpdateTime()); + } else { + throw new ServiceException("未查询到信息"); + } + return medicalInventory3502Param; + } + + /** + * 【3503】商品采购 + * + * @param id 供应发放id + * @param talentId 租户id + * @return + */ + public Medical3503Param getMedical3503Param(Long id, Integer talentId) { + Medical3503Param medical3503Param = new Medical3503Param(); + // 查供应发放实体 + SupplyDelivery supplyDelivery = iSupplyDeliveryService.getById(id); + if (supplyDelivery == null) { + throw new ServiceException("未查询到供应发放信息"); + } + // 查询发放请求实体 + SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() + .eq(SupplyRequest::getId, supplyDelivery.getRequestId()).eq(SupplyRequest::getTenantId, talentId) + .eq(SupplyRequest::getTypeEnum, SupplyType.PURCHASE_INVENTORY.getValue())); + if (supplyRequest == null) { + throw new ServiceException("未查询到供应信息"); + } + // 查库存信息 + InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() + .eq(InventoryItem::getLocationStoreId, supplyRequest.getSourceLocationStoreId()) + .eq(InventoryItem::getLocationId, supplyRequest.getPurposeLocationId()) + .eq(InventoryItem::getTenantId, talentId)); + + // 查询经办人 + Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, supplyDelivery.getReceiverId()).eq(Practitioner::getTenantId, talentId)); + + if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(supplyDelivery.getItemTable())) { + // 查询药品信息 + MedicationDefinition medicationDefinition = + iMedicationDefinitionService.getById(supplyDelivery.getItemId()); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 查询定价信息 + ChargeItemDefinition chargeItemDefinition = + iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .eq(ChargeItemDefinition::getInstanceId, medicationDefinition.getId()) + .eq(ChargeItemDefinition::getTenantId, talentId)); + if (chargeItemDefinition == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查查询定价子表 + ChargeItemDefDetail chargeItemDefDetail = + iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) + .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) + .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) + .last(YbCommonConstants.sqlConst.LIMIT1)); + if (chargeItemDefDetail == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查询供应商 + Supplier supplier = iSupplierService.getById(medicationDefinition.getSupplyId()); + + medical3503Param.setMedListCodg(medicationDefinition.getYbNo()) + .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .setRxFlag(medicationDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) + .setManuLotnum(supplyDelivery.getLotNumber()) + .setProdentpName(medicationDefinition.getManufacturerText()) + .setAprvno(medicationDefinition.getApprovalNumber()).setManuDate(inventoryItem.getProductionDate()) + .setExpyEnd(inventoryItem.getExpirationDate()).setPurcRetnCnt(supplyDelivery.getQuantity()) + .setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()).setPurcRetnOpterName(practitioner.getName()); + } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(supplyDelivery.getItemTable())) { + // 查询耗材信息 + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(supplyDelivery.getItemId()); + if (deviceDefinition == null) { + throw new ServiceException("未查询到耗材信息"); + } + // 查询定价信息 + ChargeItemDefinition chargeItemDefinition = + iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(ChargeItemDefinition::getInstanceId, deviceDefinition.getId()) + .eq(ChargeItemDefinition::getTenantId, talentId)); + if (chargeItemDefinition == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查查询定价子表 + ChargeItemDefDetail chargeItemDefDetail = + iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) + .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) + .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) + .last(YbCommonConstants.sqlConst.LIMIT1)); + if (chargeItemDefDetail == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查询供应商 + Supplier supplier = iSupplierService.getById(deviceDefinition.getSupplyId()); + + medical3503Param.setMedListCodg(deviceDefinition.getYbNo()).setFixmedinsBchno(inventoryItem.getLotNumber()) + .setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .setRxFlag(deviceDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) + .setManuLotnum(supplyDelivery.getLotNumber()).setProdentpName(deviceDefinition.getManufacturerText()) + .setAprvno(deviceDefinition.getApprovalNumber()).setManuDate(inventoryItem.getProductionDate()) + .setExpyEnd(inventoryItem.getExpirationDate()).setPurcRetnCnt(supplyDelivery.getQuantity()) + .setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()).setPurcRetnOpterName(practitioner.getName()); + } else { + throw new ServiceException("未查询到信息"); + } + return medical3503Param; + } + + /** + * 【3504】商品采购退货 + * + * @param id 供应发放id + * @param talentId 租户id + * @return + */ + public MedicalPurchase3504Param getMedicalPurchase3504Param(Long id, Integer talentId) { + + MedicalPurchase3504Param medicalPurchase3504Param = new MedicalPurchase3504Param(); + // 查供应发放实体 + SupplyDelivery supplyDelivery = iSupplyDeliveryService.getById(id); + if (supplyDelivery == null) { + throw new ServiceException("未查询到供应信息"); + } + // 查询发放请求实体 + SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() + .eq(SupplyRequest::getId, supplyDelivery.getRequestId()).eq(SupplyRequest::getTenantId, talentId) + .eq(SupplyRequest::getTypeEnum, SupplyType.PRODUCT_RETURN.getValue())); + if (supplyRequest == null) { + throw new ServiceException("未查询到供应信息"); + } + // 查库存信息 + InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() + .eq(InventoryItem::getLocationStoreId, supplyRequest.getSourceLocationStoreId()) + .eq(InventoryItem::getLocationId, supplyRequest.getPurposeLocationId()) + .eq(InventoryItem::getTenantId, talentId)); + + // 查询经办人 + Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, supplyDelivery.getReceiverId()).eq(Practitioner::getTenantId, talentId)); + + if (CommonConstants.TableName.MED_MEDICATION_DEFINITION.equals(supplyDelivery.getItemTable())) { + // 查询药品信息 + MedicationDefinition medicationDefinition = + iMedicationDefinitionService.getById(supplyDelivery.getItemId()); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + // 查询定价信息 + ChargeItemDefinition chargeItemDefinition = + iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .eq(ChargeItemDefinition::getInstanceId, medicationDefinition.getId()) + .eq(ChargeItemDefinition::getTenantId, talentId)); + if (chargeItemDefinition == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查查询定价子表 + ChargeItemDefDetail chargeItemDefDetail = + iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) + .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) + .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) + .last(YbCommonConstants.sqlConst.LIMIT1)); + if (chargeItemDefDetail == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查询供应商 + Supplier supplier = iSupplierService.getById(medicationDefinition.getSupplyId()); + if (supplier == null) { + throw new ServiceException("未查询到供应商信息"); + } + medicalPurchase3504Param.setMedListCodg(medicationDefinition.getYbNo()) + .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .setRxFlag(medicationDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) + .setPurcInvoNo(supplyRequest.getInvoiceNo()).setManuDate(inventoryItem.getProductionDate()) + .setExpyEnd(inventoryItem.getExpirationDate()).setPurcRetnCnt(supplyDelivery.getQuantity()) + .setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()).setPurcRetnOpterName(practitioner.getName()); + } else if (CommonConstants.TableName.ADM_DEVICE_DEFINITION.equals(supplyDelivery.getItemTable())) { + // 查询耗材信息 + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(supplyDelivery.getItemId()); + if (deviceDefinition == null) { + throw new ServiceException("未查询到耗材信息"); + } + // 查询定价信息 + ChargeItemDefinition chargeItemDefinition = + iChargeItemDefinitionService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefinition::getInstanceTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(ChargeItemDefinition::getInstanceId, deviceDefinition.getId()) + .eq(ChargeItemDefinition::getTenantId, talentId)); + if (chargeItemDefinition == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查查询定价子表 + ChargeItemDefDetail chargeItemDefDetail = + iChargeItemDefDetailService.getOne(new LambdaQueryWrapper() + .eq(ChargeItemDefDetail::getDefinitionId, chargeItemDefinition.getId()) + .eq(ChargeItemDefDetail::getConditionCode, ConditionCode.UNIT.getCode()) + .eq(ChargeItemDefDetail::getTenantId, talentId).orderByDesc(ChargeItemDefDetail::getConditionValue) + .last(YbCommonConstants.sqlConst.LIMIT1)); + if (chargeItemDefDetail == null) { + throw new ServiceException("未查询到定价信息"); + } + // 查询供应商 + Supplier supplier = iSupplierService.getById(deviceDefinition.getSupplyId()); + if (supplier == null) { + throw new ServiceException("未查询到供应商信息"); + } + medicalPurchase3504Param.setMedListCodg(deviceDefinition.getYbNo()) + .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .setRxFlag(deviceDefinition.getRxFlag().toString()).setSplerName(supplier.getName()) + .setManuDate(inventoryItem.getProductionDate()).setExpyEnd(inventoryItem.getExpirationDate()) + .setPurcRetnCnt(supplyDelivery.getQuantity()).setPurcRetnStoinTime(supplyDelivery.getOccurrenceTime()) + .setPurcRetnOpterName(practitioner.getName()).setPurcInvoNo(supplyRequest.getInvoiceNo()); + } else { + throw new ServiceException("未查询到信息"); + } + return medicalPurchase3504Param; + } + + /** + * 【3505】商品销售 + * + * @param id 发放id + * @param ListType 耗材/药品 + * @param tenantId 租户id + * @return + */ + public Medical3505Param getMedical3505Param(Long id, String ListType, Integer tenantId) { + Medical3505Param medical3505Param = new Medical3505Param(); + // 销售商品的种类 + YbListType type = YbListType.getByValue(ListType); + if (type == YbListType.MEDICAL_CONSUMABLES) { + // 耗材的相关处理 + DeviceDispense deviceDispense = iDeviceDispenseService.getById(id); + if (deviceDispense == null) { + throw new ServiceException("未查询到耗材信息"); + } + if (!deviceDispense.getStatusEnum().equals(DispenseStatus.COMPLETED.getValue())) { + throw new ServiceException("耗材未发放"); + } + DeviceRequest deviceRequest = iDeviceRequestService.getById(deviceDispense.getDeviceReqId()); + if (deviceRequest == null) { + throw new ServiceException("未查询到耗材请求信息"); + } + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(deviceDispense.getDeviceDefId()); + if (deviceDefinition == null) { + throw new ServiceException("未查询到耗材信息"); + } + // 查询库存信息 + InventoryItem inventoryItem = inventoryItemService.getOne( + new LambdaQueryWrapper().eq(InventoryItem::getLotNumber, deviceDispense.getLotNumber()) + .eq(InventoryItem::getLocationId, deviceDispense.getLocationId()) + .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(InventoryItem::getItemId, deviceDispense.getDeviceDefId()) + .eq(InventoryItem::getTenantId, tenantId)); + if (inventoryItem == null) { + throw new ServiceException("未查询到库存信息"); + } + // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 + // SupplyRequest supplyRequest = iSupplyRequestService.getOne( + // new LambdaQueryWrapper().eq(SupplyRequest::getLotNumber, deviceDispense.getLotNumber()) + // .eq(SupplyRequest::getPurposeLocationId, deviceDispense.getLocationId()) + // .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + // .eq(SupplyRequest::getItemId, deviceDispense.getDeviceDefId()) + // .eq(SupplyRequest::getTenantId, tenantId)); + // if (supplyRequest == null) { + // return null; + // } + // 查询开方医生姓名 + Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, deviceRequest.getRequesterId()).eq(Practitioner::getTenantId, tenantId)); + // 查询当前登录用户的姓名(药师) + Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); + // 查询发药人 + Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, deviceDispense.getPerformerId()).eq(Practitioner::getTenantId, tenantId)); + // 查询费用结算信息 + ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() + .eq(ChargeItem::getServiceTable, CommonConstants.TableName.WOR_DEVICE_REQUEST) + .eq(ChargeItem::getServiceId, deviceRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); + if (chargeItem == null) { + throw new ServiceException("未查询到收费项信息"); + } + // 查询付款信息 + PaymentReconciliation paymentReconciliation = + iPaymentReconciliationService.getOne(new LambdaQueryWrapper() + .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) + .eq(PaymentReconciliation::getTenantId, tenantId) + .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) + .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) + .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) + .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); + if (paymentReconciliation == null) { + throw new ServiceException("未查询到付款信息"); + } + // 查询合同实体 + Contract contract = iContractService.getOne( + new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); + if (contract == null) { + throw new ServiceException("未查询到合同信息"); + } + // 查询就诊信息 + Encounter encounter = iEncounterService.getById(deviceDispense.getEncounterId()); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + // 查询账户信息 + Account account = accountService + .getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, chargeItem.getEncounterId()) + .eq(Account::getTenantId, tenantId).eq(Account::getEncounterFlag, Whether.YES.getValue())); + if (account == null) { + throw new ServiceException("未查询到账户信息"); + } + YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); + if (mdtrtCertType == null) { + throw new ServiceException("未查询到就诊凭证类型"); + } + // 查询就诊id + if (contract.getCategoryEnum().equals(Category.SELF.getValue()) + || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { + medical3505Param.setMdtrtSn(encounter.getBusNo()); + } else { + ClinicReg one = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) + .eq(ClinicReg::getMdtrtCertNo, account.getNo())); + if (one != null) { + medical3505Param.setMdtrtSn(one.getMdtrtId()); + } + } + // 判断拆零标志 + Whether flag; + if (deviceDefinition.getSalesUnitCode().equals(deviceDispense.getUnitCode())) { + flag = Whether.NO; + } else { + flag = Whether.YES; + } + // 查询发票信息 + Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); + if (invoice == null) { + throw new ServiceException("未查询到发票信息"); + } + medical3505Param.setMedListCodg(deviceDefinition.getYbNo()).setFixmedinsBchno(inventoryItem.getLotNumber()) + .setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .setPrscDrName(practitioner.getName()).setPharName(medDoctor.getName()) + .setPharPracCertNo(medDoctor.getPharPracCertNo()).setPsnCertType(mdtrtCertType.getValue()) + .setManuLotnum(deviceDispense.getLotNumber()).setManuDate(inventoryItem.getProductionDate()) + .setTrdnFlag(flag.getCode()).setRtalDocno(invoice.getId().toString()) + .setSelRetnCnt(deviceDispense.getQuantity()).setSelRetnTime(deviceDispense.getDispenseTime()) + .setSelRetnOpterName(performer.getName()).setRxFlag(deviceDefinition.getRxFlag().toString()) + .setExpyEnd(inventoryItem.getExpirationDate()); + + // 溯源码 + SupplyDelivery supplyDelivery = iSupplyDeliveryService.getOne( + new LambdaQueryWrapper().eq(SupplyDelivery::getLotNumber, deviceDispense.getLotNumber()) + .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(SupplyDelivery::getItemId, deviceDispense.getDeviceDefId())); + if (supplyDelivery != null) { + Map map = new HashMap<>(); + map.put("drug_trac_codg", supplyDelivery.getTraceNo()); + // medical3505Param.setDrugtracinfo(JSON.toJSONString(map)); + } + + } else if (type != YbListType.MEDICAL_SERVICE_ITEM) { + // 药品的相关处理 + MedicationDispense medicationDispense = iMedicationDispenseService.getById(id); + if (medicationDispense == null) { + throw new ServiceException("未查询到药品信息"); + } + if (medicationDispense.getStatusEnum() != DispenseStatus.COMPLETED.getValue()) { + throw new ServiceException("未发药"); + } + MedicationRequest medicationRequest = iMedicationRequestService.getById(medicationDispense.getMedReqId()); + if (medicationRequest == null) { + throw new ServiceException("未查询到药品请求信息"); + } + MedicationDefinition medicationDefinition = + iMedicationDefinitionService.getById(medicationDispense.getMedicationId()); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + + // 查询库存信息 + InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() + .eq(InventoryItem::getLotNumber, medicationDispense.getLotNumber()) + .eq(InventoryItem::getLocationId, medicationDispense.getLocationId()) + .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(InventoryItem::getItemId, medicationDispense.getMedicationId()) + .eq(InventoryItem::getTenantId, tenantId)); + if (inventoryItem == null) { + throw new ServiceException("未查询到库存信息"); + } + // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 + // SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() + // .eq(SupplyRequest::getLotNumber, medicationDispense.getLotNumber()) + // .eq(SupplyRequest::getPurposeLocationId, medicationDispense.getLocationId()) + // .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + // .eq(SupplyRequest::getItemId, medicationDispense.getMedicationId()) + // .eq(SupplyRequest::getTenantId, tenantId)); + // if (supplyRequest == null) { + // return null; + // } + // 查询开方医生姓名 + Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, medicationRequest.getPractitionerId()) + .eq(Practitioner::getTenantId, tenantId)); + // 查询当前登录用户的姓名(药师) + Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); + // 查询发药人 + Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, medicationDispense.getPractitionerId()) + .eq(Practitioner::getTenantId, tenantId)); + // 查询费用结算信息 + ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() + .eq(ChargeItem::getServiceTable, CommonConstants.TableName.MED_MEDICATION_REQUEST) + .eq(ChargeItem::getServiceId, medicationRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); + if (chargeItem == null) { + throw new ServiceException("未查询到收费信息"); + } + // 查询付款信息 + PaymentReconciliation paymentReconciliation = + iPaymentReconciliationService.getOne(new LambdaQueryWrapper() + .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) + .eq(PaymentReconciliation::getTenantId, tenantId) + .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) + .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) + .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) + .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); + if (paymentReconciliation == null) { + throw new ServiceException("未查询到收费信息"); + } + // 查询合同实体 + Contract contract = iContractService.getOne( + new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); + if (contract == null) { + throw new ServiceException("未查询到合同信息"); + } + // 查询就诊信息 + Encounter encounter = iEncounterService.getById(medicationDispense.getEncounterId()); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + // 查询账户信息 + Account account = accountService + .getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, chargeItem.getEncounterId()) + .eq(Account::getTenantId, tenantId).eq(Account::getEncounterFlag, Whether.YES.getValue())); + if (account == null) { + throw new ServiceException("未查询到账号信息"); + } + YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); + if (mdtrtCertType == null) { + throw new ServiceException("未查询到就诊凭证信息"); + } + // 查询就诊id + if (contract.getCategoryEnum().equals(Category.SELF.getValue()) + || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { + medical3505Param.setMdtrtSn(encounter.getBusNo()); + } else { + ClinicReg one = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) + .eq(ClinicReg::getMdtrtCertNo, account.getNo())); + if (one != null) { + medical3505Param.setMdtrtSn(one.getMdtrtId()); + } + } + // 判断拆零标志 + Whether flag; + if (medicationDefinition.getDefEncounterUnitCode().equals(medicationDispense.getUnitCode())) { + flag = Whether.NO; + } else { + flag = Whether.YES; + } + // 查询发票信息 + Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); + if (invoice == null) { + throw new ServiceException("未查询到发票信息"); + } + // todo:sjq 商品销售的数量是根据是否拆零计算出来的数量吗? + medical3505Param.setMedListCodg(medicationDefinition.getYbNo()) + .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .setPrscDrName(practitioner.getName()).setPharName(medDoctor.getName()) + .setPharPracCertNo(medDoctor.getPharPracCertNo()).setPsnCertType(mdtrtCertType.getValue()) + .setManuLotnum(medicationDispense.getLotNumber()).setManuDate(inventoryItem.getProductionDate()) + .setTrdnFlag(flag.getCode()).setRtalDocno(invoice.getBusNo()) + .setSelRetnCnt(new BigDecimal(medicationDispense.getQuantity().toString())) + .setSelRetnTime(medicationDispense.getDispenseTime()).setSelRetnOpterName(performer.getName()) + .setRxFlag(medicationDefinition.getRxFlag().toString()).setExpyEnd(inventoryItem.getExpirationDate()); + + // 溯源码 + SupplyDelivery supplyDelivery = iSupplyDeliveryService.getOne(new LambdaQueryWrapper() + .eq(SupplyDelivery::getLotNumber, medicationDispense.getLotNumber()) + .eq(SupplyDelivery::getItemTable, CommonConstants.TableName.MED_MEDICATION_DEFINITION) + .eq(SupplyDelivery::getItemId, medicationDispense.getMedicationId())); + if (supplyDelivery != null) { + Map map = new HashMap<>(); + map.put("drug_trac_codg", supplyDelivery.getTraceNo()); + // medical3505Param.setDrugtracinfo(JSON.toJSONString(map)); + } + } + return medical3505Param; + } + + /** + * 【3506】商品销售退货 + * + * @param id 对应发放业务的主键id + * @param ListType 目录种类 + * @param tenantId 租户id + * @return 3506参数 + */ + public Medical3506Param getMedical3506Param(Long id, String ListType, Integer tenantId) { + Medical3506Param medical3506Param = new Medical3506Param(); + // 销售商品的种类 + YbListType type = YbListType.getByValue(ListType); + if (type == YbListType.MEDICAL_CONSUMABLES) { + // 耗材的相关处理 + DeviceDispense deviceDispense = iDeviceDispenseService.getById(id); + if (deviceDispense == null) { + throw new ServiceException("未查询到耗材信息"); + } + if (deviceDispense.getStatusEnum() != DispenseStatus.REFUNDED.getValue()) { + throw new ServiceException("未退耗材"); + } + DeviceRequest deviceRequest = iDeviceRequestService.getById(deviceDispense.getDeviceReqId()); + if (deviceRequest == null) { + throw new ServiceException("未查询到耗材请求信息"); + } + DeviceDefinition deviceDefinition = iDeviceDefinitionService.getById(deviceDispense.getDeviceDefId()); + if (deviceDefinition == null) { + throw new ServiceException("未查询到耗材信息"); + } + // 查询库存信息 + InventoryItem inventoryItem = inventoryItemService.getOne( + new LambdaQueryWrapper().eq(InventoryItem::getLotNumber, deviceDispense.getLotNumber()) + .eq(InventoryItem::getLocationId, deviceDispense.getLocationId()) + .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(InventoryItem::getItemId, deviceDispense.getDeviceDefId()) + .eq(InventoryItem::getTenantId, tenantId)); + if (inventoryItem == null) { + throw new ServiceException("未查询到库存信息"); + } + // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 + SupplyRequest supplyRequest = iSupplyRequestService.getOne( + new LambdaQueryWrapper().eq(SupplyRequest::getLotNumber, deviceDispense.getLotNumber()) + .eq(SupplyRequest::getPurposeLocationId, deviceDispense.getLocationId()) + .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(SupplyRequest::getItemId, deviceDispense.getDeviceDefId()) + .eq(SupplyRequest::getTenantId, tenantId)); + if (supplyRequest == null) { + throw new ServiceException("未查询到供应信息"); + } + // 查询开方医生姓名 + Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, deviceRequest.getRequesterId()).eq(Practitioner::getTenantId, tenantId)); + // 查询当前登录用户的姓名(药师) + Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); + // 查询发药人 + Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, deviceDispense.getPerformerId()).eq(Practitioner::getTenantId, tenantId)); + // 查询费用结算信息 + ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() + .eq(ChargeItem::getServiceTable, CommonConstants.TableName.WOR_DEVICE_REQUEST) + .eq(ChargeItem::getServiceId, deviceRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); + if (chargeItem == null) { + throw new ServiceException("未查询到收费信息"); + } + // 查询付款信息 + PaymentReconciliation paymentReconciliation = + iPaymentReconciliationService.getOne(new LambdaQueryWrapper() + .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) + .eq(PaymentReconciliation::getTenantId, tenantId) + .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) + .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) + .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) + .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); + if (paymentReconciliation == null) { + throw new ServiceException("未查询到付款信息"); + } + // 查询合同实体 + Contract contract = iContractService.getOne( + new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); + if (contract == null) { + throw new ServiceException("未查询到合同信息"); + } + // 查询就诊信息 + Encounter encounter = iEncounterService.getById(deviceDispense.getEncounterId()); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + // 查询账户信息 + Account account = accountService.getOne(new LambdaQueryWrapper() + .eq(Account::getEncounterId, chargeItem.getEncounterId()).eq(Account::getTenantId, tenantId)); + if (account == null) { + throw new ServiceException("未查询到账户信息"); + } + YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); + if (mdtrtCertType == null) { + throw new ServiceException("未查询到就诊凭证信息"); + } + // 查询就诊id + if (contract.getCategoryEnum().equals(Category.SELF.getValue()) + || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { + medical3506Param.setMdtrtSn(encounter.getBusNo()); + } else { + ClinicReg one = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) + .eq(ClinicReg::getMdtrtCertNo, account.getNo())); + if (one != null) { + medical3506Param.setMdtrtSn(one.getMdtrtId()); + } + } + // 判断拆零标志 + Whether flag; + if (deviceDefinition.getSalesUnitCode().equals(deviceDispense.getUnitCode())) { + flag = Whether.NO; + } else { + flag = Whether.YES; + } + // 查询发票信息 + Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); + if (invoice == null) { + throw new ServiceException("未查询到发票信息"); + } + medical3506Param.setMedListCodg(deviceDefinition.getYbNo()).setTrdnFlag(flag.getCode()) + .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(deviceDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .setPsnCertType(mdtrtCertType.getValue()).setManuLotnum(deviceDispense.getLotNumber()) + .setManuDate(inventoryItem.getProductionDate()).setTrdnFlag(flag.getCode()) + .setSelRetnCnt(new BigDecimal(deviceDispense.getQuantity().toString())) + .setSelRetnTime(deviceDispense.getDispenseTime()).setSelRetnOpterName(performer.getName()) + .setRxFlag(deviceDefinition.getRxFlag().toString()).setExpyEnd(inventoryItem.getExpirationDate()); + + } else if (type != YbListType.MEDICAL_SERVICE_ITEM) { + // 药品的相关处理 + MedicationDispense medicationDispense = iMedicationDispenseService.getById(id); + if (medicationDispense == null) { + throw new ServiceException("未查询到药品信息"); + } + if (medicationDispense.getStatusEnum() != DispenseStatus.REFUNDED.getValue()) { + throw new ServiceException("未退药"); + } + MedicationRequest medicationRequest = iMedicationRequestService.getById(medicationDispense.getMedReqId()); + if (medicationRequest == null) { + throw new ServiceException("未查询到药品信息"); + } + MedicationDefinition medicationDefinition = + iMedicationDefinitionService.getById(medicationDispense.getMedicationId()); + if (medicationDefinition == null) { + throw new ServiceException("未查询到药品信息"); + } + + // 查询库存信息 + InventoryItem inventoryItem = inventoryItemService.getOne(new LambdaQueryWrapper() + .eq(InventoryItem::getLotNumber, medicationDispense.getLotNumber()) + .eq(InventoryItem::getLocationId, medicationDispense.getLocationId()) + .eq(InventoryItem::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(InventoryItem::getItemId, medicationDispense.getMedicationId()) + .eq(InventoryItem::getTenantId, tenantId)); + if (inventoryItem == null) { + throw new ServiceException("未查询到库存信息"); + } + // 查询供应申请单 2025/04/18经在微信群中确认,仅能通过locid,lotnumber,定义id定位库存记录,无法继续准确追到供应请求 + SupplyRequest supplyRequest = iSupplyRequestService.getOne(new LambdaQueryWrapper() + .eq(SupplyRequest::getLotNumber, medicationDispense.getLotNumber()) + .eq(SupplyRequest::getPurposeLocationId, medicationDispense.getLocationId()) + .eq(SupplyRequest::getItemTable, CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .eq(SupplyRequest::getItemId, medicationDispense.getMedicationId()) + .eq(SupplyRequest::getTenantId, tenantId)); + if (supplyRequest == null) { + throw new ServiceException("未查询到供应信息"); + } + // 查询开方医生姓名 + Practitioner practitioner = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, medicationRequest.getPractitionerId()) + .eq(Practitioner::getTenantId, tenantId)); + // 查询当前登录用户的姓名(药师) + Practitioner medDoctor = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, SecurityUtils.getUserId()).eq(Practitioner::getTenantId, tenantId)); + // 查询发药人 + Practitioner performer = iPractitionerService.getOne(new LambdaQueryWrapper() + .eq(Practitioner::getUserId, medicationDispense.getPractitionerId()) + .eq(Practitioner::getTenantId, tenantId)); + // 查询费用结算信息 + ChargeItem chargeItem = iChargeItemService.getOne(new LambdaQueryWrapper() + .eq(ChargeItem::getServiceTable, CommonConstants.TableName.MED_MEDICATION_REQUEST) + .eq(ChargeItem::getServiceId, medicationRequest.getId()).eq(ChargeItem::getTenantId, tenantId)); + if (chargeItem == null) { + throw new ServiceException("未查询到收费信息"); + } + // 查询付款信息 + PaymentReconciliation paymentReconciliation = + iPaymentReconciliationService.getOne(new LambdaQueryWrapper() + .eq(PaymentReconciliation::getEncounterId, chargeItem.getEncounterId()) + .eq(PaymentReconciliation::getTenantId, tenantId) + .like(PaymentReconciliation::getChargeItemIds, chargeItem.getId()) + .eq(PaymentReconciliation::getStatusEnum, ChargeItemStatus.BILLED.getValue()) + .eq(PaymentReconciliation::getPatientId, chargeItem.getPatientId()) + .eq(PaymentReconciliation::getPaymentEnum, PaymentType.PAY.getValue())); + if (paymentReconciliation == null) { + throw new ServiceException("未查询到付款信息"); + } + // 查询合同实体 + Contract contract = iContractService.getOne( + new LambdaQueryWrapper().eq(Contract::getBusNo, paymentReconciliation.getContractNo())); + if (contract == null) { + throw new ServiceException("未查询到合同信息"); + } + // 查询就诊信息 + Encounter encounter = iEncounterService.getById(medicationDispense.getEncounterId()); + if (encounter == null) { + throw new ServiceException("未查询到就诊信息"); + } + // 查询账户信息 + Account account = accountService + .getOne(new LambdaQueryWrapper().eq(Account::getEncounterId, chargeItem.getEncounterId()) + .eq(Account::getTenantId, tenantId).eq(Account::getEncounterFlag, Whether.YES.getValue())); + if (account == null) { + throw new ServiceException("未查询到账户信息"); + } + YbMdtrtCertType mdtrtCertType = YbMdtrtCertType.getByValue(account.getTypeCode()); + if (mdtrtCertType == null) { + throw new ServiceException("未查询到就诊凭证信息"); + } + // 查询就诊id + if (contract.getCategoryEnum().equals(Category.SELF.getValue()) + || contract.getCategoryEnum().equals(Category.PUBLIC.getValue())) { + medical3506Param.setMdtrtSn(encounter.getBusNo()); + } else { + ClinicReg one = iRegService + .getOne(new LambdaQueryWrapper().eq(ClinicReg::getMdtrtCertType, account.getTypeCode()) + .eq(ClinicReg::getMdtrtCertNo, account.getNo())); + if (one != null) { + medical3506Param.setMdtrtSn(one.getMdtrtId()); + } + } + // 判断拆零标志 + Whether flag; + if (medicationDefinition.getDefEncounterUnitCode().equals(medicationDispense.getUnitCode())) { + flag = Whether.NO; + } else { + flag = Whether.YES; + } + // 查询发票信息 + Invoice invoice = iInvoiceService.getById(paymentReconciliation.getInvoiceId()); + if (invoice == null) { + throw new ServiceException("未查询到发票信息"); + } + // todo:sjq 商品销售的数量是根据是否拆零计算出来的数量吗? + medical3506Param.setMedListCodg(medicationDefinition.getYbNo()) + .setFixmedinsBchno(inventoryItem.getLotNumber()).setFixmedinsHilistId(medicationDefinition.getBusNo()) + .setFixmedinsHilistName(CommonConstants.TableName.ADM_DEVICE_DEFINITION) + .setPsnCertType(mdtrtCertType.getValue()).setManuLotnum(medicationDispense.getLotNumber()) + .setManuDate(inventoryItem.getProductionDate()).setTrdnFlag(flag.getCode()) + .setSelRetnCnt(new BigDecimal(medicationDispense.getQuantity().toString())) + .setSelRetnTime(medicationDispense.getDispenseTime()).setSelRetnOpterName(performer.getName()) + .setRxFlag(medicationDefinition.getRxFlag().toString()).setExpyEnd(inventoryItem.getExpirationDate()); + } + return medical3506Param; + } + + /** + * 【3507】商品信息删除参数 + * + * @param id 库存项目id + * @param invDataType 进销存类型 + * @return 3507参数 + */ + public Medical3507Param getMedical3507Param(Long id, String invDataType) { + InventoryItem inventoryItem = inventoryItemService.getById(id); + if (inventoryItem == null) { + throw new ServiceException("未查询到库存信息"); + } + YbInvDataType dataType = YbInvDataType.getByValue(invDataType); + if (dataType == null) { + throw new ServiceException("未查询进销存类型"); + } + Medical3507Param medical3507Param = new Medical3507Param(); + medical3507Param.setFixmedinsBchno(inventoryItem.getLotNumber()).setInvDataType(dataType.getValue()); + return medical3507Param; + } + + /** + * 【9001】签到 + * + * @param id 员工id + * @return 9001参数 + */ + public Sign getSignParam(Long id, String mac) { + Practitioner practitioner = iPractitionerService.getPractitionerByUserId(id); + if (practitioner == null) { + return null; + } + + Sign sign = new Sign(); + sign.setOpterNo(practitioner.getBusNo()).setMac(mac); + return sign; + } + + /** + * 【3209A】查询跨省三方对账未成功数据(吉林省) + * + * @param settlement3209AWebParam 前台参数 + * @return 3209A参数 + */ + public FinancialSettlement3209AParam + getFinancialSettlement3209AParam(Settlement3209AWebParam settlement3209AWebParam) { + FinancialSettlement3209AParam financialSettlement3209AParam = new FinancialSettlement3209AParam(); + BeanUtils.copyProperties(settlement3209AWebParam, financialSettlement3209AParam); + return financialSettlement3209AParam; + } + + /** + * 【13203】医药机构费用结算日对账结果查询 + * + * @param financial13203WebParam 13203 前台参数 + * @return 13203参数 + */ + public Financial13203Param getFinancial13203Param(Financial13203WebParam financial13203WebParam) { + Financial13203Param financial13203Param = new Financial13203Param(); + BeanUtils.copyProperties(financial13203WebParam, financial13203Param); + return financial13203Param; + } + + /** + * 基础信息获取 + * + * @return 基础信息 + */ + public BaseInfo getBaseInfo(JSONObject jsonObj, Contract contract) { + LoginUser loginUser = SecurityUtils.getLoginUser(); + Long hospitalId = loginUser.getHospitalId(); + // Organization hospital = iOrganizationService.getById(hospitalId); + BaseInfo baseInfo = new BaseInfo(); + if (jsonObj != null && jsonObj.get("insuplc_admdvs") != null) { + baseInfo.setInsuplcAdmdvs(String.valueOf(jsonObj.get("insuplc_admdvs"))); + } + // 异地患者问题 + // if (contract.getBusNo() != null) { + // baseInfo.setInsuplcAdmdvs(contract.getBusNo()); + // } + if (jsonObj != null && jsonObj.get("decrypt_flag") != null) { + baseInfo.setDecryptFlag(String.valueOf(jsonObj.get("decrypt_flag"))); + } else { + baseInfo.setDecryptFlag("1"); + } + // 电子处方 + // JSONObject optionJson = SecurityUtils.getLoginUser().getOptionJson(); + + if (contract == null) { + List redisContractList = iContractService.getContractListByYb(); + Optional max = redisContractList.stream().max(Comparator.comparingInt(Contract::getSort)); + if (max.isPresent()) { + contract = max.get(); + } else { + throw new ServiceException("没有对合同进行优先级排序"); + } + } + + return baseInfo.setUserId(loginUser.getUserId()).setRealname(loginUser.getUsername()) + .setFixmedinsCode(contract.getFixmedinsCode()).setFixmedinsName(contract.getFixmedinsName()) + .setYbClientSecret(contract.getClientSecret()).setYbUsername(contract.getUsername()) + .setYbPassword(contract.getPassword()).setYbGrantType(contract.getGrantType()) + .setYbScope(contract.getScope()).setYbCliPrvKey(contract.getCliPrvKey()) + .setYbClientId(contract.getClientId()).setAdmvs(contract.getAdmVs()); + } + + public BaseInfo getBaseInfo(String medType, String dutyDoctorName) { + // 随机获取一个合同 + List contractListByYb = iContractService.getContractListByYb(); + if (contractListByYb.isEmpty()) { + throw new ServiceException("无医保配置信息"); + } + Contract contract = contractListByYb.get(0); + LoginUser loginUser = SecurityUtils.getLoginUser(); + Long hospitalId = loginUser.getHospitalId(); + Organization hospital = iOrganizationService.getById(hospitalId); + BaseInfo baseInfo = new BaseInfo(); + // 电子处方 + JSONObject optionJson = SecurityUtils.getLoginUser().getOptionJson(); + String prePrvKey = optionJson.getString(CommonConstants.Option.APP_PRVKEY); + String prePubKey = contract.getCliPubKey(); + String clientId = contract.getClientId(); + String eleAddress = optionJson.getString(CommonConstants.Option.ELE_ADDRESS); + String username = contract.getUsername(); + String password = contract.getPassword(); + String scope = contract.getScope(); + String grantType = contract.getGrantType(); + String clientSecret = contract.getClientSecret(); + String time = optionJson.getString(CommonConstants.Option.TIME); + String preAppId = optionJson.getString(CommonConstants.Option.PRE_APP_ID); + String preAppSecret = optionJson.getString(CommonConstants.Option.PRE_APP_SECRET); + String templatePath = optionJson.getString(CommonConstants.Option.TEMPLATE_PATH); + String outputPath = optionJson.getString(CommonConstants.Option.OUTPUT_PATH); + String hospitalSealPath = optionJson.getString(CommonConstants.Option.HOSPITAL_SEAL_PATH); + + return baseInfo.setUserId(loginUser.getUserId()).setRealname(loginUser.getUsername()) + .setAdmvs(contract.getAdmVs()).setFixmedinsCode(contract.getFixmedinsCode()) + .setFixmedinsName(contract.getFixmedinsName()).setPrePrvKey(prePrvKey).setPrePubKey(prePubKey) + .setClientId(clientId).setEleAddress(eleAddress).setUsername(username).setPassword(password).setScope(scope) + .setGrantType(grantType).setClientSecret(clientSecret).setTime(time).setPreAppId(preAppId) + .setPreAppSecret(preAppSecret).setTemplatePath(templatePath).setOutputPath(outputPath) + .setHospitalSealPath(hospitalSealPath).setMedType(medType).setDutyDoctorName(dutyDoctorName); + + } + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java new file mode 100644 index 00000000..c4f61d04 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfo.java @@ -0,0 +1,319 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 西药中成药目录Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_drug_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogDrugInfo { + + /** 医疗目录编码 */ + @TableId(type = IdType.ASSIGN_ID) + private String medicalCatalogCode; + + /** 药品商品名 */ + private String drugTradeName; + + /** 通用名编号 */ + private String genericNameId; + + /** 药品通用名 */ + private String drugGenericName; + + /** 化学名称 */ + private String chemicalName; + + /** 别名 */ + private String alias; + + /** 英文名称 */ + private String englishName; + + /** 注册名称 */ + private String registeredName; + + /** 药监本位码 */ + private String drugSupervisionCode; + + /** 药品剂型 */ + private String drugForm; + + /** 药品剂型名称 */ + private String drugFormName; + + /** 药品类别 */ + private String drugCategory; + + /** 药品类别名称 */ + private String drugCategoryName; + + /** 药品规格 */ + private String drugSpecification; + + /** 药品规格代码 */ + private String drugSpecCode; + + /** 注册剂型 */ + private String registeredForm; + + /** 注册规格 */ + private String registeredSpec; + + /** 注册规格代码 */ + private String registeredSpecCode; + + /** 每次用量 */ + private String dosage; + + /** 使用频次 */ + private String frequency; + + /** 酸根盐基 */ + private String acidBase; + + /** 国家药品编号 */ + private String nationalDrugCode; + + /** 用法 */ + private String usage; + + /** 中成药标志 */ + private String tcmFlag; + + /** 生产地类别 */ + private String productionAreaType; + + /** 生产地类别名称 */ + private String productionAreaName; + + /** 计价单位类型 */ + private String pricingUnitType; + + /** 非处方药标志 */ + private String otcFlag; + + /** 非处方药标志名称 */ + private String otcFlagName; + + /** 包装材质 */ + private String packagingMaterial; + + /** 包装材质名称 */ + private String packagingMaterialName; + + /** 包装规格 */ + private String packagingSpec; + + /** 包装数量 */ + private String packagingQuantity; + + /** 功能主治 */ + private String functionIndication; + + /** 给药途径 */ + private String administrationRoute; + + /** 说明书 */ + private String instructions; + + /** 开始日期 */ + private String startDate; + + /** 结束日期 */ + private String endDate; + + /** 最小使用单位 */ + private String minUseUnit; + + /** 最小销售单位 */ + private String minSaleUnit; + + /** 最小计量单位 */ + private String minMeasurementUnit; + + /** 最小包装数量 */ + private String minPackageQuantity; + + /** 最小包装单位 */ + private String minPackageUnit; + + /** 最小制剂单位 */ + private String minPreparationUnit; + + /** 最小包装单位名称 */ + private String minPackageUnitName; + + /** 最小制剂单位名称 */ + private String minPreparationUnitName; + + /** 转换比 */ + private String conversionRatio; + + /** 药品有效期 */ + private String shelfLife; + + /** 最小计价单位 */ + private String minPricingUnit; + + /** 五笔助记码 */ + private String wubiCode; + + /** 拼音助记码 */ + private String pinyinCode; + + /** 分包装厂家 */ + private String repackager; + + /** 生产企业编号 */ + private String manufacturerCode; + + /** 生产企业名称 */ + private String manufacturerName; + + /** 特殊限价药品标志 */ + private String specialPriceLimitFlag; + + /** 特殊药品标志 */ + private String specialDrugFlag; + + /** 限制使用范围 */ + private String useRestriction; + + /** 限制使用标志 */ + private String useRestrictionFlag; + + /** 药品注册证号 */ + private String registrationCertNo; + + /** 药品注册证号开始日期 */ + private String regCertStartDate; + + /** 药品注册证号结束日期 */ + private String regCertEndDate; + + /** 批准文号 */ + private String approvalNo; + + /** 批准文号开始日期 */ + private String approvalStartDate; + + /** 批准文号结束日期 */ + private String approvalEndDate; + + /** 市场状态 */ + private String marketStatus; + + /** 市场状态名称 */ + private String marketStatusName; + + /** 药品注册批件电子档案 */ + private String regDocumentArchive; + + /** 药品补充申请批件电子档案 */ + private String suppApplicationArchive; + + /** 国家医保药品目录备注 */ + private String nationalInsuranceNotes; + + /** 基本药物标志名称 */ + private String essentialDrugFlagName; + + /** 基本药物标志 */ + private String essentialDrugFlag; + + /** 增值税调整药品标志 */ + private String vatAdjustmentFlag; + + /** 增值税调整药品名称 */ + private String vatAdjustmentName; + + /** 上市药品目录集药品 */ + private String listedDrugFlag; + + /** 医保谈判药品标志 */ + private String negotiationDrugFlag; + + /** 医保谈判药品名称 */ + private String negotiationDrugName; + + /** 卫健委药品编码 */ + private String nhcDrugCode; + + /** 备注 */ + private String remarks; + + /** 有效标志 */ + private String validFlag; + + /** 唯一记录号 */ + private String uniqueRecordId; + + /** 数据创建时间 */ + private String createdAt; + + /** 数据更新时间 */ + private String updatedAt; + + /** 版本号 */ + private String version; + + /** 版本名称 */ + private String versionName; + + /** 儿童用药 */ + private String pediatricUse; + + /** 公司名称 */ + private String companyName; + + /** 仿制药一致性评价药品 */ + private String genericEvaluationFlag; + + /** 经销企业 */ + private String distributionCompany; + + /** 经销企业联系人 */ + private String distributionContact; + + /** 经销企业授权书电子档案 */ + private String distributionAuthArchive; + + /** 国家医保药品目录剂型 */ + private String insuranceForm; + + /** 国家医保药品目录甲乙类标识 */ + private String insuranceClass; + + /** 上市许可证持有人 */ + private String marketingAuthorizationHolder; + + /** 下发标志 */ + private String releaseFlag; + + /** 传输数据ID */ + private String transmissionDataId; + + /** 生效时间 */ + private String validFrom; + + /** 失效时间 */ + private String validTo; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java new file mode 100644 index 00000000..bdad01c8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogDrugInfoUsual.java @@ -0,0 +1,319 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 西药中成药目录Entity实体 + * + * @author system + * @date 2025-07-02 + */ +@Data +@TableName("yb_catalog_drug_info_usual") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogDrugInfoUsual { + + /** 医疗目录编码 */ + @TableId(type = IdType.ASSIGN_ID) + private String medicalCatalogCode; + + /** 药品商品名 */ + private String drugTradeName; + + /** 通用名编号 */ + private String genericNameId; + + /** 药品通用名 */ + private String drugGenericName; + + /** 化学名称 */ + private String chemicalName; + + /** 别名 */ + private String alias; + + /** 英文名称 */ + private String englishName; + + /** 注册名称 */ + private String registeredName; + + /** 药监本位码 */ + private String drugSupervisionCode; + + /** 药品剂型 */ + private String drugForm; + + /** 药品剂型名称 */ + private String drugFormName; + + /** 药品类别 */ + private String drugCategory; + + /** 药品类别名称 */ + private String drugCategoryName; + + /** 药品规格 */ + private String drugSpecification; + + /** 药品规格代码 */ + private String drugSpecCode; + + /** 注册剂型 */ + private String registeredForm; + + /** 注册规格 */ + private String registeredSpec; + + /** 注册规格代码 */ + private String registeredSpecCode; + + /** 每次用量 */ + private String dosage; + + /** 使用频次 */ + private String frequency; + + /** 酸根盐基 */ + private String acidBase; + + /** 国家药品编号 */ + private String nationalDrugCode; + + /** 用法 */ + private String usage; + + /** 中成药标志 */ + private String tcmFlag; + + /** 生产地类别 */ + private String productionAreaType; + + /** 生产地类别名称 */ + private String productionAreaName; + + /** 计价单位类型 */ + private String pricingUnitType; + + /** 非处方药标志 */ + private String otcFlag; + + /** 非处方药标志名称 */ + private String otcFlagName; + + /** 包装材质 */ + private String packagingMaterial; + + /** 包装材质名称 */ + private String packagingMaterialName; + + /** 包装规格 */ + private String packagingSpec; + + /** 包装数量 */ + private String packagingQuantity; + + /** 功能主治 */ + private String functionIndication; + + /** 给药途径 */ + private String administrationRoute; + + /** 说明书 */ + private String instructions; + + /** 开始日期 */ + private String startDate; + + /** 结束日期 */ + private String endDate; + + /** 最小使用单位 */ + private String minUseUnit; + + /** 最小销售单位 */ + private String minSaleUnit; + + /** 最小计量单位 */ + private String minMeasurementUnit; + + /** 最小包装数量 */ + private String minPackageQuantity; + + /** 最小包装单位 */ + private String minPackageUnit; + + /** 最小制剂单位 */ + private String minPreparationUnit; + + /** 最小包装单位名称 */ + private String minPackageUnitName; + + /** 最小制剂单位名称 */ + private String minPreparationUnitName; + + /** 转换比 */ + private String conversionRatio; + + /** 药品有效期 */ + private String shelfLife; + + /** 最小计价单位 */ + private String minPricingUnit; + + /** 五笔助记码 */ + private String wubiCode; + + /** 拼音助记码 */ + private String pinyinCode; + + /** 分包装厂家 */ + private String repackager; + + /** 生产企业编号 */ + private String manufacturerCode; + + /** 生产企业名称 */ + private String manufacturerName; + + /** 特殊限价药品标志 */ + private String specialPriceLimitFlag; + + /** 特殊药品标志 */ + private String specialDrugFlag; + + /** 限制使用范围 */ + private String useRestriction; + + /** 限制使用标志 */ + private String useRestrictionFlag; + + /** 药品注册证号 */ + private String registrationCertNo; + + /** 药品注册证号开始日期 */ + private String regCertStartDate; + + /** 药品注册证号结束日期 */ + private String regCertEndDate; + + /** 批准文号 */ + private String approvalNo; + + /** 批准文号开始日期 */ + private String approvalStartDate; + + /** 批准文号结束日期 */ + private String approvalEndDate; + + /** 市场状态 */ + private String marketStatus; + + /** 市场状态名称 */ + private String marketStatusName; + + /** 药品注册批件电子档案 */ + private String regDocumentArchive; + + /** 药品补充申请批件电子档案 */ + private String suppApplicationArchive; + + /** 国家医保药品目录备注 */ + private String nationalInsuranceNotes; + + /** 基本药物标志名称 */ + private String essentialDrugFlagName; + + /** 基本药物标志 */ + private String essentialDrugFlag; + + /** 增值税调整药品标志 */ + private String vatAdjustmentFlag; + + /** 增值税调整药品名称 */ + private String vatAdjustmentName; + + /** 上市药品目录集药品 */ + private String listedDrugFlag; + + /** 医保谈判药品标志 */ + private String negotiationDrugFlag; + + /** 医保谈判药品名称 */ + private String negotiationDrugName; + + /** 卫健委药品编码 */ + private String nhcDrugCode; + + /** 备注 */ + private String remarks; + + /** 有效标志 */ + private String validFlag; + + /** 唯一记录号 */ + private String uniqueRecordId; + + /** 数据创建时间 */ + private String createdAt; + + /** 数据更新时间 */ + private String updatedAt; + + /** 版本号 */ + private String version; + + /** 版本名称 */ + private String versionName; + + /** 儿童用药 */ + private String pediatricUse; + + /** 公司名称 */ + private String companyName; + + /** 仿制药一致性评价药品 */ + private String genericEvaluationFlag; + + /** 经销企业 */ + private String distributionCompany; + + /** 经销企业联系人 */ + private String distributionContact; + + /** 经销企业授权书电子档案 */ + private String distributionAuthArchive; + + /** 国家医保药品目录剂型 */ + private String insuranceForm; + + /** 国家医保药品目录甲乙类标识 */ + private String insuranceClass; + + /** 上市许可证持有人 */ + private String marketingAuthorizationHolder; + + /** 下发标志 */ + private String releaseFlag; + + /** 传输数据ID */ + private String transmissionDataId; + + /** 生效时间 */ + private String validFrom; + + /** 失效时间 */ + private String validTo; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java new file mode 100644 index 00000000..ee71a46b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalConsumables.java @@ -0,0 +1,241 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 医疗耗材信息Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_medical_consumables") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogMedicalConsumables { + + /** 医疗目录编码 */ + @TableId(type = IdType.ASSIGN_ID) + private String medicalCatalogCode; + + /** $column.columnComment */ + private String consumableName; + + /** $column.columnComment */ + private String deviceUniqueId; + + /** $column.columnComment */ + private String insuranceGenericCode; + + /** $column.columnComment */ + private String insuranceGenericName; + + /** $column.columnComment */ + private String productModel; + + /** $column.columnComment */ + private String specCode; + + /** $column.columnComment */ + private String specification; + + /** $column.columnComment */ + private String consumableCategory; + + /** $column.columnComment */ + private String specModel; + + /** $column.columnComment */ + private String materialCode; + + /** $column.columnComment */ + private String materialType; + + /** $column.columnComment */ + private String packageSpec; + + /** $column.columnComment */ + private String packageQuantity; + + /** $column.columnComment */ + private String packageMaterial; + + /** $column.columnComment */ + private String packageUnit; + + /** $column.columnComment */ + private String conversionRatio; + + /** $column.columnComment */ + private String minUsageUnit; + + /** $column.columnComment */ + private String productionAreaType; + + /** $column.columnComment */ + private String productionAreaName; + + /** $column.columnComment */ + private String productStandard; + + /** $column.columnComment */ + private String expiryDate; + + /** $column.columnComment */ + private String structureComposition; + + /** $column.columnComment */ + private String applicableScope; + + /** $column.columnComment */ + private String usageMethod; + + /** $column.columnComment */ + private String imageCode; + + /** $column.columnComment */ + private String qualityStandard; + + /** $column.columnComment */ + private String instructions; + + /** $column.columnComment */ + private String proofMaterials; + + /** $column.columnComment */ + private String specialDeviceFlag; + + /** $column.columnComment */ + private String specialDeviceName; + + /** $column.columnComment */ + private String kitName; + + /** $column.columnComment */ + private String kitFlag; + + /** $column.columnComment */ + private String usageRestrictionFlag; + + /** $column.columnComment */ + private String insuranceRestriction; + + /** $column.columnComment */ + private String minSaleUnit; + + /** 高值耗材标志(true:是 false:否) */ + private String highValueFlag; + + /** $column.columnComment */ + private String medicalMaterialCode; + + /** $column.columnComment */ + private String implantFlag; + + /** $column.columnComment */ + private String sterilizationFlag; + + /** $column.columnComment */ + private String sterilizationName; + + /** $column.columnComment */ + private String implantInterventionFlag; + + /** $column.columnComment */ + private String implantInterventionName; + + /** $column.columnComment */ + private String disposableFlag; + + /** $column.columnComment */ + private String disposableFlagName; + + /** $column.columnComment */ + private String registrantName; + + /** $column.columnComment */ + private String startDate; + + /** $column.columnComment */ + private String endDate; + + /** $column.columnComment */ + private String deviceManagementCategory; + + /** $column.columnComment */ + private String deviceCategoryName; + + /** $column.columnComment */ + private String registrationNo; + + /** $column.columnComment */ + private String registeredProductName; + + /** $column.columnComment */ + private String structureDetails; + + /** $column.columnComment */ + private String otherContent; + + /** $column.columnComment */ + private String approvalDate; + + /** $column.columnComment */ + private String registrantAddress; + + /** $column.columnComment */ + private String certEffectiveStart; + + /** $column.columnComment */ + private String certEffectiveEnd; + + /** $column.columnComment */ + private String manufacturerCode; + + /** $column.columnComment */ + private String manufacturerName; + + /** $column.columnComment */ + private String productionAddress; + + /** $column.columnComment */ + private String agentCompany; + + /** $column.columnComment */ + private String agentAddress; + + /** $column.columnComment */ + private String productionCountry; + + /** $column.columnComment */ + private String serviceAgency; + + /** $column.columnComment */ + private String certArchivePath; + + /** $column.columnComment */ + private String productImages; + + /** 有效标志(true:有效 false:无效) */ + private String validFlag; + + /** $column.columnComment */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String versionNumber; + + /** $column.columnComment */ + private String versionName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java new file mode 100644 index 00000000..a3b6147d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalHerbInfo.java @@ -0,0 +1,121 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 中药材信息Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_medical_herb_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogMedicalHerbInfo { + + /** 医疗目录编码 */ + @TableId(type = IdType.ASSIGN_ID) + private String medicalCatalogCode; + + /** $column.columnComment */ + private String singleDrugName; + + /** 单复方标志(true:复方 false:单方) */ + private String singleCompoundFlag; + + /** $column.columnComment */ + private String qualityGrade; + + /** 中草药年份 */ + private String herbalYear; + + /** $column.columnComment */ + private String medicinalPart; + + /** $column.columnComment */ + private String safeDosage; + + /** $column.columnComment */ + private String conventionalUsage; + + /** $column.columnComment */ + private String propertiesTaste; + + /** $column.columnComment */ + private String meridianAttribution; + + /** $column.columnComment */ + private String species; + + /** $column.columnComment */ + private String startDate; + + /** $column.columnComment */ + private String endDate; + + /** 有效标志(true:有效 false:无效) */ + private String validFlag; + + /** $column.columnComment */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String versionNumber; + + /** $column.columnComment */ + private String versionName; + + /** $column.columnComment */ + private String herbName; + + /** $column.columnComment */ + private String indications; + + /** $column.columnComment */ + private String processingMethod; + + /** $column.columnComment */ + private String efficacyClassification; + + /** $column.columnComment */ + private String herbSource; + + /** $column.columnComment */ + private String nationalInsurancePolicy; + + /** $column.columnComment */ + private String provincialInsurancePolicy; + + /** $column.columnComment */ + private String standardName; + + /** $column.columnComment */ + private String standardPage; + + /** $column.columnComment */ + private String electronicRecord; + + /** $column.columnComment */ + private String issuanceFlag; + + /** $column.columnComment */ + private String transferDataId; + + /** $column.columnComment */ + private String effectiveTime; + + /** $column.columnComment */ + private String expiryTime; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java new file mode 100644 index 00000000..e09a5cd3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogMedicalService.java @@ -0,0 +1,88 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 医疗服务项目Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_medical_service") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogMedicalService { + + /** 医疗目录编码 */ + @TableId(type = IdType.ASSIGN_ID) + private String medicalCatalogCode; + + /** 计价单位 */ + private String billingUnit; + + /** $column.columnComment */ + private String billingUnitName; + + /** $column.columnComment */ + private String medicalItemDesc; + + /** $column.columnComment */ + private String exclusionContent; + + /** $column.columnComment */ + private String medicalItemConnotation; + + /** 有效标志(true:有效 false:无效) */ + private String validFlag; + + /** $column.columnComment */ + private String remarks; + + /** $column.columnComment */ + private String serviceCategory; + + /** $column.columnComment */ + private String medicalServiceName; + + /** $column.columnComment */ + private String projectDescription; + + /** $column.columnComment */ + private String startDate; + + /** $column.columnComment */ + private String endDate; + + /** 唯一记录号(UUID) */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String versionNumber; + + /** $column.columnComment */ + private String versionName; + + /** $column.columnComment */ + private String issuanceFlag; + + /** $column.columnComment */ + private String transferDataId; + + /** $column.columnComment */ + private String effectiveTime; + + /** $column.columnComment */ + private String expiryTime; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java new file mode 100644 index 00000000..2a75cda8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialDisease.java @@ -0,0 +1,70 @@ +package com.openhis.ybcatalog.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 特慢病目录Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_special_disease") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogSpecialDisease { + /** 门慢门特病种目录代码 */ + @TableId(type = IdType.ASSIGN_ID) + private String diseaseCatalogCode; + + /** 门慢门特病种大类名称 */ + private String diseaseCategoryName; + + /** 门慢门特病种细分类名称 */ + private String diseaseSubcategoryName; + + /** 医保区划 */ + private String medicalInsuranceArea; + + /** 备注 */ + private String remarks; + + /** 有效标志 */ + private String validFlag; + + /** 唯一记录号 */ + private String uniqueRecordId; + + /** 数据创建时间 */ + private String createTime; + + /** 数据更新时间 */ + private String updateTime; + + /** 版本号 */ + private String versionNumber; + + /** 病种内涵 */ + private String diseaseConnotation; + + /** 版本名称 */ + private String versionName; + + /** 诊疗指南页码 */ + private String treatmentGuidePage; + + /** 诊疗指南电子档案 */ + private String treatmentGuideFile; + + /** 门慢门特病种名称 */ + private String diseaseName; + + /** 门慢门特病种大类代码 */ + private String diseaseCategoryCode; +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java new file mode 100644 index 00000000..08881c0d --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSpecialInsuranceDisease.java @@ -0,0 +1,30 @@ +package com.openhis.ybcatalog.domain; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +@Data +@TableName("yb_catalog_special_insurance_disease") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogSpecialInsuranceDisease { + + private String diseaseCode; // 门慢门特病种目录代码 + private String diseaseCategoryName; // 门慢门特病种大类名称 + private String diseaseSubcategoryName; // 门慢门特病种细分类名称 + private String medicalInsuranceZone; // 医保区划 + private String remark; // 备注 + private String validFlag; // 有效标志 + private String uniqueRecordId; // 唯一记录号 + private String dataCreateTime; // 数据创建时间 + private String dataUpdateTime; // 数据更新时间 + private String versionNumber; // 版本号 + private String diseaseDescription; // 病种内涵 + private String versionName; // 版本名称 + private String guidePageNumber; // 诊疗指南页码 + private String guideElectronicFile; // 诊疗指南电子档案 + private String diseaseName; // 门慢门特病种名称 + private String diseaseCategoryCode; // 门慢门特病种大类代码 +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java new file mode 100644 index 00000000..951b21a8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogSurgeryStandardDirectory.java @@ -0,0 +1,94 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 手术标准目录Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_surgery_standard_directory") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogSurgeryStandardDirectory { + + /** $column.columnComment */ + @TableId(type = IdType.ASSIGN_ID) + private String id; + + /** $column.columnComment */ + private String chapter; + + /** $column.columnComment */ + private String chapterCodeRange; + + /** $column.columnComment */ + private String chapterName; + + /** $column.columnComment */ + private String categoryCode; + + /** $column.columnComment */ + private String categoryName; + + /** $column.columnComment */ + private String subcategoryCode; + + /** $column.columnComment */ + private String subcategoryName; + + /** $column.columnComment */ + private String itemCode; + + /** $column.columnComment */ + private String itemName; + + /** $column.columnComment */ + private String operationCode; + + /** $column.columnComment */ + private String operationName; + + /** $column.columnComment */ + private String usageFlag; + + /** $column.columnComment */ + private String groupStandardOperationCode; + + /** $column.columnComment */ + private String groupStandardOperationName; + + /** $column.columnComment */ + private String clinicalVersionOperationCode; + + /** $column.columnComment */ + private String clinicalVersionOperationName; + + /** $column.columnComment */ + private String remarks; + + /** $column.columnComment */ + private String validFlag; + + /** $column.columnComment */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String versionNumber; + + /** $column.columnComment */ + private String versionName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java new file mode 100644 index 00000000..98d89df3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogWesternDisease.java @@ -0,0 +1,94 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 西医疾病诊断信息Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_western_disease") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogWesternDisease { + + /** $column.columnComment */ + @TableId(type = IdType.ASSIGN_ID) + private String diseaseId; + + /** $column.columnComment */ + private String chapter; + + /** $column.columnComment */ + private String chapterCodeRange; + + /** $column.columnComment */ + private String chapterName; + + /** $column.columnComment */ + private String sectionCodeRange; + + /** $column.columnComment */ + private String sectionName; + + /** $column.columnComment */ + private String categoryCode; + + /** $column.columnComment */ + private String categoryName; + + /** $column.columnComment */ + private String subcategoryCode; + + /** $column.columnComment */ + private String subcategoryName; + + /** 诊断代码 */ + private String diagnosisCode; + + /** $column.columnComment */ + private String diagnosisName; + + /** 使用标记(true:启用 false:停用) */ + private String usageFlag; + + /** $column.columnComment */ + private String gbDiagnosisCode; + + /** $column.columnComment */ + private String gbDiagnosisName; + + /** $column.columnComment */ + private String clinicalCode; + + /** $column.columnComment */ + private String clinicalName; + + /** $column.columnComment */ + private String remarks; + + /** 有效标志(true:有效 false:无效) */ + private String validFlag; + + /** $column.columnComment */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String versionNumber; + + /** $column.columnComment */ + private String versionName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java new file mode 100644 index 00000000..33087520 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZyDiseaseDiagnosis.java @@ -0,0 +1,64 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 中医疾病诊断Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_zy_disease_diagnosis") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogZyDiseaseDiagnosis { + + /** $column.columnComment */ + @TableId(type = IdType.ASSIGN_ID) + private String id; + + /** $column.columnComment */ + private String categoryCode; + + /** $column.columnComment */ + private String categoryName; + + /** $column.columnComment */ + private String specialtySystemCategoryCode; + + /** $column.columnComment */ + private String specialtySystemCategoryName; + + /** $column.columnComment */ + private String diseaseCategoryCode; + + /** $column.columnComment */ + private String diseaseCategoryName; + + /** $column.columnComment */ + private String remarks; + + /** $column.columnComment */ + private String validFlag; + + /** $column.columnComment */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String versionNumber; + + /** $column.columnComment */ + private String versionName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java new file mode 100644 index 00000000..97fa7a00 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/domain/CatalogZySyndrome.java @@ -0,0 +1,64 @@ +package com.openhis.ybcatalog.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【中医症候】Entity实体 + * + * @author system + * @date 2025-04-09 + */ +@Data +@TableName("yb_catalog_zy_syndrome") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class CatalogZySyndrome { + + /** $column.columnComment */ + @TableId(type = IdType.ASSIGN_ID) + private String tcmSyndromeId; + + /** $column.columnComment */ + private String syndromeClassCode; + + /** $column.columnComment */ + private String syndromeClassName; + + /** $column.columnComment */ + private String syndromePropertyCode; + + /** $column.columnComment */ + private String syndromeProperty; + + /** $column.columnComment */ + private String syndromeTypeCode; + + /** $column.columnComment */ + private String syndromeTypeName; + + /** $column.columnComment */ + private String activeFlag; + + /** $column.columnComment */ + private String uniqueRecordId; + + /** $column.columnComment */ + private String craetTime; + + /** $column.columnComment */ + private String version; + + /** $column.columnComment */ + private String versionName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java new file mode 100644 index 00000000..27c7b4ad --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import com.openhis.ybcatalog.domain.CatalogDrugInfo; +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 西药中成药目录Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogDrugInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java new file mode 100644 index 00000000..da48c179 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogDrugInfoUsualMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; + +/** + * 西药中成药目录Mapper接口 + * + * @author system + * @date 2025-07-02 + */ +@Repository +public interface CatalogDrugInfoUsualMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java new file mode 100644 index 00000000..ea63f13b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalConsumablesMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogMedicalConsumables; + +/** + * 医疗耗材信息Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogMedicalConsumablesMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java new file mode 100644 index 00000000..42f7ff9e --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalHerbInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; + +/** + * 中药材信息Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogMedicalHerbInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java new file mode 100644 index 00000000..aa72230a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogMedicalServiceMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogMedicalService; + +/** + * 医疗服务项目Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogMedicalServiceMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java new file mode 100644 index 00000000..16c6a8a9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSpecialDiseaseMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogSpecialInsuranceDisease; + +/** + * 特慢病目录 Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogSpecialDiseaseMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java new file mode 100644 index 00000000..bb7f413c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogSurgeryStandardDirectoryMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogSurgeryStandardDirectory; + +/** + * 手术标准目录Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogSurgeryStandardDirectoryMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java new file mode 100644 index 00000000..9d0a2251 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogWesternDiseaseMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogWesternDisease; + +/** + * 西医疾病诊断信息Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogWesternDiseaseMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java new file mode 100644 index 00000000..f501c91b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZyDiseaseDiagnosisMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogZyDiseaseDiagnosis; + +/** + * 中医疾病诊断Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogZyDiseaseDiagnosisMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java new file mode 100644 index 00000000..58c72619 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/mapper/CatalogZySyndromeMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybcatalog.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybcatalog.domain.CatalogZySyndrome; + +/** + * 【请填写功能名称】Mapper接口 + * + * @author system + * @date 2025-04-09 + */ +@Repository +public interface CatalogZySyndromeMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java new file mode 100644 index 00000000..5c986199 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoService.java @@ -0,0 +1,28 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.workflow.domain.ElepMedicationRequest; +import com.openhis.ybcatalog.domain.CatalogDrugInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 西药中成药目录Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogDrugInfoService extends IService { +// /** +// * 获取药品信息 +// * +// * @param pageNo 当前页 +// * @param pageSize 每页多少条 +// */ +// Page selectCatalogDrugInfo(Integer pageNo, +// Integer pageSize, String searchKey); + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java new file mode 100644 index 00000000..88b1ae67 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogDrugInfoUsualService.java @@ -0,0 +1,23 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; + +/** + * 西药中成药目录Service接口 + * + * @author system + * @date 2025-07-02 + */ +public interface ICatalogDrugInfoUsualService extends IService { + /** + * 获取药品信息 + * + * @param pageNo 当前页 + * @param pageSize 每页多少条 + */ + Page selectCatalogDrugInfoUsual(Integer pageNo, + Integer pageSize, String searchKey); +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java new file mode 100644 index 00000000..77b9a399 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalConsumablesService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogMedicalConsumables; + +/** + * 医疗耗材信息Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogMedicalConsumablesService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java new file mode 100644 index 00000000..ee5f75cc --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalHerbInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; + +/** + * 中药材信息Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogMedicalHerbInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java new file mode 100644 index 00000000..d71c2dff --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogMedicalServiceService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogMedicalService; + +/** + * 医疗服务项目Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogMedicalServiceService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java new file mode 100644 index 00000000..a901a3e4 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSpecialDiseaseService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogSpecialInsuranceDisease; + +/** + * 特慢病目录 Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogSpecialDiseaseService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java new file mode 100644 index 00000000..895c4492 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogSurgeryStandardDirectoryService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogSurgeryStandardDirectory; + +/** + * 手术标准目录Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogSurgeryStandardDirectoryService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java new file mode 100644 index 00000000..9665f44a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogWesternDiseaseService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogWesternDisease; + +/** + * 西医疾病诊断信息Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogWesternDiseaseService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java new file mode 100644 index 00000000..6708fb82 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZyDiseaseDiagnosisService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogZyDiseaseDiagnosis; + +/** + * 中医疾病诊断Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogZyDiseaseDiagnosisService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java new file mode 100644 index 00000000..19a6a2df --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/ICatalogZySyndromeService.java @@ -0,0 +1,14 @@ +package com.openhis.ybcatalog.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybcatalog.domain.CatalogZySyndrome; + +/** + * 【请填写功能名称】Service接口 + * + * @author system + * @date 2025-04-09 + */ +public interface ICatalogZySyndromeService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java new file mode 100644 index 00000000..343dd4ce --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoServiceImpl.java @@ -0,0 +1,31 @@ +package com.openhis.ybcatalog.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.openhis.ybcatalog.domain.CatalogDrugInfo; +import com.openhis.ybcatalog.mapper.CatalogDrugInfoMapper; +import com.openhis.ybcatalog.service.ICatalogDrugInfoService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * 西药中成药目录Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogDrugInfoServiceImpl extends ServiceImpl implements ICatalogDrugInfoService { +// /** +// * 获取药品信息 +// */ +// +// @Override +// public Page selectCatalogDrugInfo(Integer pageNo, +// Integer pageSize, String searchKey) { +// Page page = new Page<>(pageNo, pageSize); +// return (baseMapper.selectPage(page, new LambdaQueryWrapper().like(CatalogDrugInfo::getRegisteredName, searchKey).or().like(CatalogDrugInfo::getPinyinCode, searchKey).or().like(CatalogDrugInfo::getWubiCode, searchKey))); +// } +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java new file mode 100644 index 00000000..0c19a2f6 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogDrugInfoUsualServiceImpl.java @@ -0,0 +1,35 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogDrugInfoUsual; +import com.openhis.ybcatalog.mapper.CatalogDrugInfoUsualMapper; +import com.openhis.ybcatalog.service.ICatalogDrugInfoUsualService; + +/** + * 西药中成药目录Service业务层处理 + * + * @author system + * @date 2025-07-02 + */ +@Service +public class CatalogDrugInfoUsualServiceImpl extends ServiceImpl + implements ICatalogDrugInfoUsualService { + /** + * 获取药品信息 + */ + + @Override + public Page selectCatalogDrugInfoUsual(Integer pageNo, Integer pageSize, String searchKey) { + Page page = new Page<>(pageNo, pageSize); + return (baseMapper.selectPage(page, + new LambdaQueryWrapper().like(CatalogDrugInfoUsual::getRegisteredName, searchKey).or() + .like(CatalogDrugInfoUsual::getPinyinCode, searchKey).or() + .like(CatalogDrugInfoUsual::getWubiCode, searchKey).or() + .like(CatalogDrugInfoUsual::getApprovalNo, searchKey).or() + .like(CatalogDrugInfoUsual::getManufacturerName, searchKey))); + } +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java new file mode 100644 index 00000000..ccaaad58 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalConsumablesServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogMedicalConsumables; +import com.openhis.ybcatalog.mapper.CatalogMedicalConsumablesMapper; +import com.openhis.ybcatalog.service.ICatalogMedicalConsumablesService; + +/** + * 医疗耗材信息Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogMedicalConsumablesServiceImpl extends ServiceImpl implements ICatalogMedicalConsumablesService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java new file mode 100644 index 00000000..d480d0ba --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalHerbInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogMedicalHerbInfo; +import com.openhis.ybcatalog.mapper.CatalogMedicalHerbInfoMapper; +import com.openhis.ybcatalog.service.ICatalogMedicalHerbInfoService; + +/** + * 中药材信息Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogMedicalHerbInfoServiceImpl extends ServiceImpl implements ICatalogMedicalHerbInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java new file mode 100644 index 00000000..d00089c9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogMedicalServiceServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogMedicalService; +import com.openhis.ybcatalog.mapper.CatalogMedicalServiceMapper; +import com.openhis.ybcatalog.service.ICatalogMedicalServiceService; + +/** + * 医疗服务项目Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogMedicalServiceServiceImpl extends ServiceImpl implements ICatalogMedicalServiceService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java new file mode 100644 index 00000000..87e5f6eb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSpecialDiseaseServiceImpl.java @@ -0,0 +1,20 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogSpecialInsuranceDisease; +import com.openhis.ybcatalog.mapper.CatalogSpecialDiseaseMapper; +import com.openhis.ybcatalog.service.ICatalogSpecialDiseaseService; + +/** + * 特慢病目录 Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogSpecialDiseaseServiceImpl extends + ServiceImpl implements ICatalogSpecialDiseaseService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java new file mode 100644 index 00000000..46bf5e8f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogSurgeryStandardDirectoryServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogSurgeryStandardDirectory; +import com.openhis.ybcatalog.mapper.CatalogSurgeryStandardDirectoryMapper; +import com.openhis.ybcatalog.service.ICatalogSurgeryStandardDirectoryService; + +/** + * 手术标准目录Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogSurgeryStandardDirectoryServiceImpl extends ServiceImpl implements ICatalogSurgeryStandardDirectoryService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java new file mode 100644 index 00000000..47f3448f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogWesternDiseaseServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogWesternDisease; +import com.openhis.ybcatalog.mapper.CatalogWesternDiseaseMapper; +import com.openhis.ybcatalog.service.ICatalogWesternDiseaseService; + +/** + * 西医疾病诊断信息Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogWesternDiseaseServiceImpl extends ServiceImpl implements ICatalogWesternDiseaseService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java new file mode 100644 index 00000000..e62f8b59 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZyDiseaseDiagnosisServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogZyDiseaseDiagnosis; +import com.openhis.ybcatalog.mapper.CatalogZyDiseaseDiagnosisMapper; +import com.openhis.ybcatalog.service.ICatalogZyDiseaseDiagnosisService; + +/** + * 中医疾病诊断Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogZyDiseaseDiagnosisServiceImpl extends ServiceImpl implements ICatalogZyDiseaseDiagnosisService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java new file mode 100644 index 00000000..ab75747f --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybcatalog/service/impl/CatalogZySyndromeServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybcatalog.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybcatalog.domain.CatalogZySyndrome; +import com.openhis.ybcatalog.mapper.CatalogZySyndromeMapper; +import com.openhis.ybcatalog.service.ICatalogZySyndromeService; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author system + * @date 2025-04-09 + */ +@Service +public class CatalogZySyndromeServiceImpl extends ServiceImpl implements ICatalogZySyndromeService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java new file mode 100644 index 00000000..adc73783 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultDetail.java @@ -0,0 +1,64 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_medresult_detail") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepMedresultDetail extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医疗目录编码 */ + private String medListCodg; + + /** 药品通用名 */ + private String drugGenname; + + /** 药品商品名 */ + private String drugProdname; + + /** 药品剂型 */ + private String drugDosform; + + /** 药品规格 */ + private BigDecimal drugSpec; + + /** 数量 */ + private BigDecimal cnt; + + /** 批准文号 */ + private String aprvno; + + /** 批次号 */ + private String bchno; + + /** 生产批号 */ + private String manuLotnum; + + /** 生产厂家 */ + private String prdrName; + + /** 取药标志位 */ + private String takeDrugFlag; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java new file mode 100644 index 00000000..565ec192 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInfo.java @@ -0,0 +1,49 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方取药结果查询-输出】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_medresult_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepMedresultInfo extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医保处方编号 */ + private String hiRxno; + + /** 医保结算时间(yyyy-MM-dd HH:mm:ss) */ + private String setlTime; + + /** 医保处方状态编码(参考rx_stas_codg) */ + private String rxStasCodg; + + /** 医保处方状态名称 */ + private String rxStasName; + + /** 处方使用状态编号(参考rx_used_stas_codg) */ + private String rxUsedStasCodg; + + /** 处方使用状态名称 */ + private String rxUsedStasName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java new file mode 100644 index 00000000..00b7ac22 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepMedresultInput.java @@ -0,0 +1,49 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方取药结果查询-输入】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_medresult_input") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepMedresultInput extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 医保处方编号 */ + private String hiRxno; + + /** 医保就诊ID(医保门诊挂号时返回) */ + private String mdtrtId; + + /** 人员名称 */ + private String psnName; + + /** 人员证件类型 */ + private String psnCertType; + + /** 证件号码 */ + private String certno; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java new file mode 100644 index 00000000..7d07dcab --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerDiagnosisInfo.java @@ -0,0 +1,73 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_quer_diagnosis_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepQuerDiagnosisInfo extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 诊断类别 */ + private String diagType; + + /** 主诊断标志 */ + private String maindiagFlag; + + /** 诊断排序号 */ + private String diagSrtNo; + + /** 诊断代码 */ + private String diagCode; + + /** 诊断名称 */ + private String diagName; + + /** 诊断科室 */ + private String diagDept; + + /** 诊断科室代码 */ + private String diagDeptCode; + + /** 诊断医生编码 */ + private String diagDrNo; + + /** 诊断医生姓名 */ + private String diagDrName; + + /** 诊断时间(yyyy-MM-dd HH:mm:ss) */ + private String diagTime; + + /** 中医病名代码 */ + private String tcmDiseCode; + + /** 中医病名名称 */ + private String tcmDiseName; + + /** 中医症候代码 */ + private String tcmsympCode; + + /** 中医症候 */ + private String tcmsymp; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java new file mode 100644 index 00000000..7d8b1050 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionDetail.java @@ -0,0 +1,142 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList) 】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_quer_prescription_detail") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepQuerPrescriptionDetail extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医疗目录编码(医保目录编码) */ + private String medListCodg; + + /** 定点医药机构目录编号(院内药品编码) */ + private String fixmedinsHilistId; + + /** 院内制剂标志(Y/N) */ + private String hospPrepFlag; + + /** 处方项目分类代码 */ + private String rxItemTypeCode; + + /** 处方项目分类名称 */ + private String rxItemTypeName; + + /** 中药类别名称 */ + private String tcmdrugTypeName; + + /** 中药类别代码 */ + private String tcmdrugTypeCode; + + /** 草药脚注 */ + private String tcmherbFoote; + + /** 药物类型代码 */ + private String mednTypeCode; + + /** 药物类型 */ + private String mednTypeName; + + /** 主要用药标志 */ + private String mainMedcFlag; + + /** 加急标志 */ + private String urgtFlag; + + /** 基本药物标志(Y/N) */ + private String basMednFlag; + + /** 基本药物标志(Y/N) */ + private String impDrugFlag; + + /** 药品商品名 */ + private String drugProdname; + + /** 药品通用名 */ + private String drugGenname; + + /** 药品剂型 */ + private String drugDosform; + + /** 药品规格 */ + private String drugSpec; + + /** 生产厂家 */ + private String prdrName; + + /** 用药途径代码 */ + private String medcWayCodg; + + /** 用药途径描述 */ + private String medcWayDscr; + + /** 用药开始时间(yyyy-MM-dd HH:mm:ss) */ + private String medcBegntime; + + /** 用药结束时间(yyyy-MM-dd HH:mm:ss) */ + private String medcEndtime; + + /** 用药天数 */ + private BigDecimal medcDays; + + /** 药品总用药量 */ + private BigDecimal drugCnt; + + /** 药品总用药量单位 */ + private String drugDosunt; + + /** 单次用量 */ + private BigDecimal sinDoscnt; + + /** 单次剂量单位 */ + private String sinDosunt; + + /** 使用频次编码 */ + private String usedFrquCodg; + + /** 使用频次名称 */ + private String usedFrquName; + + /** 医院审批标志(Y/N) */ + private String hospApprFlag; + + /** 取药标志位(Y/N) */ + private String takeDrugFlag; + + /** 是否OTC药品(0-处方药品、1-OTC药品) */ + private String otcFlag; + + /** 自费原因类型 */ + private String selfPayRea; + + /** 自费原因描述 */ + private String realDscr; + + /** 所需药品库存数量 */ + private String drugTotlcnt; + + /** 所需药品库存单位 */ + private String drugTotlcntEmp; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java new file mode 100644 index 00000000..1905d5e8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInfo.java @@ -0,0 +1,120 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方信息查询-输出-处方信息 】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_quer_prescription_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepQuerPrescriptionInfo extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医保处方编号 */ + private String hiRxno; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 定点医疗机构名称 */ + private String fixmedinsName; + + /** 医保处方状态编码 */ + private String rxStasCodg; + + /** 医保处方状态名称 */ + private String rxStasName; + + /** 医保处方使用状态编码 */ + private String rxUsedStasCodg; + + /** 医保处方使用状态名称 */ + private String rxUsedStasName; + + /** 开方时间 */ + private String prscTime; + + /** 药品总用量(剂数) */ + private BigDecimal rxDrugCnt; + + /** 处方整剂用法编码 */ + private String rxUsedWayCodg; + + /** 处方整剂用法名称 */ + private String rxUsedWayName; + + /** 处方整剂频次编号 */ + private String rxFrquCodg; + + /** 处方整剂频次名称 */ + private String rxFrquName; + + /** 处方整剂剂量单位 */ + private String rxDosunt; + + /** 处方整剂单次剂量数 */ + private BigDecimal rxDoscnt; + + /** 处方整剂医嘱说明 */ + private String rxDrordDscr; + + /** 处方有效天数 */ + private BigDecimal valiDays; + + /** 有效截止时间 */ + private String valiEndTime; + + /** 复用(多次)使用标志,0-否、1-是 */ + private String reptFlag; + + /** 最大复用次数 */ + private BigDecimal maxReptCnt; + + /** 已复用次数 */ + private BigDecimal reptdCnt; + + /** 使用最小间隔(天数) */ + private BigDecimal minInrvDays; + + /** 处方类别编码 */ + private String rxTypeCode; + + /** 处方类别名称 */ + private String rxTypeName; + + /** 长期处方标志,0-否、1-是 */ + private String longRxFlag; + + /** 业务类型代码 */ + private String bizTypeCode; + + /** 业务类型名称 */ + private String bizTypeName; + + /** 处方附加属性代码 */ + private String rxExraAttrCode; + + /** 处方附加属性名称 */ + private String rxExraAttrName; + + /** 处方循环限制标志 */ + private String rxCircLimitFlag; +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java new file mode 100644 index 00000000..ff9def00 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerPrescriptionInput.java @@ -0,0 +1,49 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方信息查询-输入】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_quer_prescription_input") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepQuerPrescriptionInput extends HisBaseEntity { + + /** 定点医疗机构编号 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 医保处方编号 */ + private String hiRxno; + + /** 医保就诊 ID */ + private String mdtrtId; + + /** 人员名称 */ + private String psnName; + + /** 人员证件类型 */ + private String psnCertType; + + /** 证件号码 */ + private String certno; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java new file mode 100644 index 00000000..a507455c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepQuerVisitInfo.java @@ -0,0 +1,109 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_quer_visit_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepQuerVisitInfo extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医疗类别(参考医疗类别med_type) */ + private String medType; + + /** 门诊/住院号 */ + private String iptOtpNo; + + /** 门诊住院标志(1-门诊,2-住院) */ + private String otpIptFlag; + + /** 患者姓名 */ + private String patnName; + + /** 年龄 */ + private BigDecimal patnAge; + + /** 患者身高(cm) */ + private BigDecimal patnHgt; + + /** 患者体重(kg) */ + private BigDecimal patnWt; + + /** 性别 */ + private String gend; + + /** 妊娠(孕周) */ + private Integer gesoVal; + + /** 新生儿标志(0-否、1-是) */ + private String nwbFlag; + + /** 新生儿日、月龄 */ + private String nwbAge; + + /** 哺乳期标志(0-否、1-是) */ + private Integer suckPrdFlag; + + /** 过敏史 */ + private String algsHis; + + /** 险种类型 */ + private String insutype; + + /** 开方科室名称 */ + private String prscDeptName; + + /** 开方医师姓名 */ + private String prscDrName; + + /** 药师姓名 */ + private String pharName; + + /** 医疗机构药师审方时间(yyyy-MM-dd HH:mm:ss) */ + private String pharChkTime; + + /** 就诊时间(yyyy-MM-dd HH:mm:ss) */ + private String mdtrtTime; + + /** 病种编码(按病种结算病种目录代码/门诊慢特病种目录代码) */ + private String diseCodg; + + /** 病种名称 */ + private String diseName; + + /** 是否特殊病种 */ + private String spDiseFlag; + + /** 主诊断代码 */ + private String maindiagCode; + + /** 主诊断名称 */ + private String maindiagName; + + /** 疾病病情描述 */ + private String diseCondDscr; + + /** 是否初诊(0-否、1-是) */ + private String fstdiagFlag; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java new file mode 100644 index 00000000..a851c9d1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeInput.java @@ -0,0 +1,60 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【电子处方撤销-输入】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_revoke_input") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepRevokeInput extends HisBaseEntity { + + /** 医保处方编号 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医保处方编号 */ + private String hiRxno; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 撤销医师的医保医师代码 */ + private String drCode; + + /** 撤销医师姓名 */ + private String undoDrName; + + /** 撤销医师证件类型 */ + private String undoDrCertType; + + /** 撤销医师证件号码 */ + private String undoDrCertno; + + /** 撤销原因描述 */ + private String undoRea; + + /** 撤销时间,格式:yyyy-MM-dd HH:mm:ss */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date undoTime; +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java new file mode 100644 index 00000000..6c56f408 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepRevokeOutput.java @@ -0,0 +1,41 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方撤销-输出】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_revoke_output") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepRevokeOutput extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医保处方编号 */ + + private String hiRxno; + + /** 医保处方状态编码 */ + private String rxStasCodg; + + /** 医保处方状态名称 */ + private String rxStasName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java new file mode 100644 index 00000000..f33c54fd --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureInput.java @@ -0,0 +1,52 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方医保电子签名 -输入】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_signature_input") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepSignatureInput extends HisBaseEntity { + + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 定点机构代码,定点机构唯一标识,用于识别机构对应的医保数字证书 */ + private String fixmedinsCode; + + /** 原始待签名处方信息,JSONString序列化后的base64字符值 */ + private String originalValue; + + /** 原始待签名处方文件,文件base64的字符值 */ + private String originalRxFile; + + /** 扩展字段,JSON序列化成字符串后长度不能超过4000 */ + private String extras; + + /** 医保处方编号 */ + @JSONField(serialize=false) + private String hiRxno; + + /** 院内内部处方号 */ + private String prescriptionNo; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java new file mode 100644 index 00000000..a5aa89be --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepSignatureOutput.java @@ -0,0 +1,49 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方医保电子签名 -输出】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_signature_output") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepSignatureOutput extends HisBaseEntity { + + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 处方文件,医保电子签名后处方文件originalRxFile的base64值 */ + private String rxFile; + + /** 签名摘要值,医保电子签名后处方信息originalValue的签名结果值 */ + private String signDigest; + + /** 签名机构证书SN */ + private String signCertSn; + + /** 签名机构证书DN */ + private String signCertDn; + + /** 医保处方编号 */ + @JSONField(serialize=false) + private String hiRxno; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java new file mode 100644 index 00000000..7d3289ff --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadInput.java @@ -0,0 +1,104 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【电子处方上传-输入】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_upload_input") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepUploadInput extends HisBaseEntity { + + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 处方追溯码 */ + private String rxTraceCode; + + /** 医保处方编号 */ + private String hiRxno; + + /** 医院就诊 ID */ + private String mdtrtId; + + /** 患者姓名 */ + private String patnName; + + /** 人员证件类型 */ + private String psnCertType; + + /** 证件号码 */ + private String certno; + + /** 定点医疗机构名称 */ + private String fixmedinsName; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 开方医保医师代码 */ + private String drCode; + + /** 开方医师姓名 */ + private String prscDrName; + + /** 审方药师科室名称 */ + private String pharDeptName; + + /** 审方药师科室编号 */ + private String pharDeptCode; + + /** 审方药师职称编码 */ + private String pharProfttlCodg; + + /** 审方药师职称名称 */ + private String pharProfttlName; + + /** 审方医保药师代码 */ + private String pharCode; + + /** 审方药师证件类型 */ + private String pharCertType; + + /** 审方药师证件号码 */ + private String pharCertno; + + /** 审方药师姓名 */ + private String pharName; + + /** 审方药师执业资格证号 */ + private String pharPracCertNo; + + /** 医疗机构药师审方时间,格式:yyyy-MM-dd HH:mm:ss */ + private String pharChkTime; + + /** 处方原件,医保电子签名后的处方文件base64字符(PDF或OFD格式) */ + private String rxFile; + + /** 处方信息签名值 */ + private String signDigest; + + /** 扩展字段,JSON格式,长度不超过4000 */ + private String extras; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java new file mode 100644 index 00000000..8bdb8224 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepUploadOutput.java @@ -0,0 +1,40 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方上传-输出】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_upload_output") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepUploadOutput extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 医保处方编号 */ + private String hiRxno; + + /** 医保处方状态编码 */ + private String rxStasCodg; + + /** 医保处方状态名称 */ + private String rxStasName; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java new file mode 100644 index 00000000..71e878fa --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriDiagnosisInfo.java @@ -0,0 +1,86 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_veri_diagnosis_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepVeriDiagnosisInfo extends HisBaseEntity { + + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 诊断类别,参考诊断类别(diag_type) */ + private String diagType; + + /** 主诊断标志,0-否、1-是 */ + private String maindiagFlag; + + /** 诊断排序号 */ + private String diagSrtNo; + + /** 诊断代码,医保疾病诊断代码 */ + private String diagCode; + + /** 诊断名称 */ + private String diagName; + + /** 诊断科室名称 */ + private String diagDept; + + /** 诊断科室代码,与科室信息上传中的hosp_dept_codg医院科室编码保持一致 */ + private String diagDeptCode; + + /** 诊断医生编码,国家医保医师代码 */ + private String diagDrNo; + + /** 诊断医生姓名 */ + private String diagDrName; + + /** 诊断时间,格式:yyyy-MM-dd HH:mm:ss */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date diagTime; + + /** 中医病名代码,diag_type为中医诊断(值为2,3)时上传 */ + private String tcmDiseCode; + + /** 中医病名,diag_type为中医诊断(值为2,3)时上传 */ + private String tcmDiseName; + + /** 中医证候代码,diag_type为中医诊断(值为2,3)时上传 */ + private String tcmsympCode; + + /** 中医证候,diag_type为中医诊断(值为2,3)时上传 */ + private String tcmsymp; + + /** 院内内部处方号 */ + @JSONField(serialize=false) + private String prescriptionNo; + + /** 医保处方编号(电子处方信息查询返回时插入记录) */ + @JSONField(serialize=false) + private String hiRxno; +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java new file mode 100644 index 00000000..377c4997 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionDetail.java @@ -0,0 +1,157 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_veri_prescription_detail") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepVeriPrescriptionDetail extends HisBaseEntity { + + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + /** 医疗目录编码(医保药品编码) */ + private String medListCodg; + + /** 定点医药机构目录编号(院内药品编码) */ + private String fixmedinsHilistId; + + /** 医疗机构制剂标志(0-否、1-是) */ + private String hospPrepFlag; + + /** 处方项目分类代码(11:西药,12:中成药,13:中药饮片) */ + private String rxItemTypeCode; + + /** 处方项目分类名称 */ + private String rxItemTypeName; + + /** 中药类别代码(中药饮片固定传3) */ + private String tcmdrugTypeCode; + + /** 中药类别名称 */ + private String tcmdrugTypeName; + + /** 草药脚注 */ + private String tcmherbFoote; + + /** 药物类型代码(参考medn_type_code) */ + private String mednTypeCode; + + /** 药物类型名称 */ + private String mednTypeName; + + /** 主要用药标志(0-否、1-是) */ + private String mainMedcFlag; + + /** 加急标志(0-否、1-是) */ + private String urgtFlag; + + /** 基本药物标志(0-否、1-是) */ + private String basMednFlag; + + /** 是否进口药品(0-否、1-是) */ + private String impDrugFlag; + + /** 是否OTC药品(0-处方药品、1-OTC药品) */ + private String otcFlag; + + /** 药品通用名 */ + private String drugGenname; + + /** 药品剂型 */ + private String drugDosform; + + /** 药品规格 */ + private String drugSpec; + + /** 药品商品名(非必填) */ + private String drugProdname; + + /** 生产厂家(非必填) */ + private String prdrName; + + /** 用药途径代码(西药/中成药必填) */ + private String medcWayCodg; + + /** 用药途径描述(西药/中成药必填) */ + private String medcWayDscr; + + /** 用药开始时间(yyyy-MM-dd HH:mm:ss) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date medcBegntime; + + /** 用药结束时间(yyyy-MM-dd HH:mm:ss) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date medcEndtime; + + /** 用药天数 */ + private String medcDays; + + /** 单次剂量单位(西药/中成药必填) */ + private String sinDosunt; + + /** 单次用量(西药/中成药必填) */ + private String sinDoscnt; + + /** 使用频次编码(西药/中成药必填) */ + private String usedFrquCodg; + + /** 使用频次名称(西药/中成药必填) */ + private String usedFrquName; + + /** 药品总用药量单位(发药计价单位) */ + private String drugDosunt; + + /** 药品总用药量(医保结算数量) */ + private String drugCnt; + + /** 药品单价(按drug_dosunt计价) */ + private String drugPric; + + /** 药品总金额(drug_cnt×drug_pric) */ + private String drugSumamt; + + /** 医院审批标志(1-纳入报销,2-自费) */ + private String hospApprFlag; + + /** 自费原因类型(hosp_appr_flag=2时必填) */ + private String selfPayRea; + + /** 自费原因描述(自费原因类型为6时必填) */ + private String realDscr; + + /** 扩展数据(地方业务扩展信息) */ + private String extras; + + /** 院内内部处方号 */ + @JSONField(serialize=false) + private String prescriptionNo; + + /** 医保处方编号(电子处方信息查询返回时插入记录) */ + @JSONField(serialize=false) + private String hiRxno; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java new file mode 100644 index 00000000..d27f326b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionInfo.java @@ -0,0 +1,126 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【电子处方上传预核验-输入-处方信息】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_veri_prescription_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepVeriPrescriptionInfo extends HisBaseEntity { + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 就诊凭证类型(01-电子凭证令牌、02-身份证号、03-社会保障卡号) */ + private String mdtrtCertType; + + /** 就诊凭证编号 */ + private String mdtrtCertNo; + + /** 卡识别码(就诊凭证类型为"03"时必填) */ + private String cardSn; + + /** 业务类型代码(01-定点医疗机构就诊,02-互联网医院问诊) */ + private String bizTypeCode; + + /** 处方附加属性代码(01-双通道处方,02-门诊统筹处方,99-其他) */ + private String rxExraAttrCode; + + /** 电子凭证令牌(使用医保电子凭证就诊时必填) */ + private String ecToken; + + /** 电子凭证线上身份核验流水号(线上场景互联网医院问诊时使用) */ + private String authNo; + + /** 参保地编号 */ + private String insuPlcNo; + + /** 就医地编号 */ + private String mdtrtareaNo; + + /** 定点医疗机构处方编号(院内内部处方号) */ + private String hospRxno; + + /** 续方的原处方编号 */ + private String initRxno; + + /** 处方类别代码(参考rx_type_code) */ + private String rxTypeCode; + + /** 开方时间(yyyy-MM-dd HH:mm:ss) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date prscTime; + + /** 药品类目数(剂数) */ + private String rxDrugCnt; + + /** 处方整剂用法编号 */ + private String rxUsedWayCodg; + + /** 处方整剂用法名称 */ + private String rxUsedWayName; + + /** 处方整剂频次编号(参考used_frequ) */ + private String rxFrquCodg; + + /** 处方整剂频次名称 */ + private String rxFrquName; + + /** 处方整剂剂量单位 */ + private String rxDosunt; + + /** 处方整剂单次剂量数 */ + private String rxDoscnt; + + /** 处方整剂医嘱说明 */ + private String rxDrordDscr; + + /** 处方有效天数 */ + private String valiDays; + + /** 有效截止时间(开方时间+处方有效天数) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date valiEndTime; + + /** 复用(多次)使用标志(0-否、1-是) */ + private String reptFlag; + + /** 最大使用次数(预留字段) */ + private String maxReptCnt; + + /** 使用最小间隔(天数)(预留字段) */ + private String minInvDays; + + /** 续方标志(0-否、1-是) */ + private String rxCotnFlag; + + /** 长期处方标志(0-否、1-是) */ + private String longRxFlag; + + /** 医保处方编号(电子处方信息查询返回时插入记录) */ + @JSONField(serialize=false) + private String hiRxno; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java new file mode 100644 index 00000000..2ab37b3a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriPrescriptionOutput.java @@ -0,0 +1,36 @@ +package com.openhis.ybelep.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.core.common.core.domain.HisBaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 【电子处方上传预核验-输出】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_veri_prescription_output") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepVeriPrescriptionOutput extends HisBaseEntity { + + /** 自增主键 */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 处方追溯码 */ + private String rxTraceCode; + + /** 医保处方编号 */ + private String hiRxno; + + /** 药品请求的处方号 */ + private String prescriptionNo; +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java new file mode 100644 index 00000000..ae7f14c8 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/ElepVeriVisitInfo.java @@ -0,0 +1,182 @@ +package com.openhis.ybelep.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import com.core.common.core.domain.HisBaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo) 】Entity实体 + * + * @author system + * @date 2025-04-17 + */ +@Data +@TableName("yb_elep_veri_visit_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class ElepVeriVisitInfo extends HisBaseEntity { + /** 自增主键 */ + @JSONField(serialize=false) + @TableId(type = IdType.ASSIGN_ID) + private Long id; + + /** 定点医疗机构名称 */ + private String fixmedinsName; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 医保就诊ID(医保门诊挂号时返回) */ + private String mdtrtId; + + /** 医疗类别(参考med_type) */ + private String medType; + + /** 门诊/住院号 */ + private String iptOtpNo; + + /** 门诊住院标识(1-门诊、2-住院) */ + private String otpIptFlag; + + /** 医保人员编号 */ + private String psnNo; + + /** 患者姓名 */ + private String patnName; + + /** 人员证件类型(参考psn_cert_type) */ + private String psnCertType; + + /** 证件号码 */ + private String certno; + + /** 年龄 */ + private String patnAge; + + /** 患者身高(cm) */ + private String patnHgt; + + /** 患者体重(kg) */ + private String patnWt; + + /** 性别(参考gend) */ + private String gend; + + /** 计划生育手术类别 */ + private String birctrlType; + + /** 计划生育手术或生育日期(yyyy-MM-dd) */ + private String birctrlMatnDate; + + /** 生育类别 */ + private String matnType; + + /** 妊娠(孕周) */ + private String gesoVal; + + /** 新生儿标志(0-否、1-是) */ + private String nwbFlag; + + /** 新生儿日、月龄 */ + private String nwbAge; + + /** 哺乳期标志(0-否、1-是) */ + private String suckPrdFlag; + + /** 过敏史 */ + private String algsHis; + + /** 开方科室名称 */ + private String prscDeptName; + + /** 开方科室编号(与医药机构服务的科室管理保持一致) */ + private String prscDeptCode; + + /** 开方医保医师代码(国家医保医师代码) */ + private String drCode; + + /** 开方医师姓名 */ + private String prscDrName; + + /** 开方医师证件类型(参考psn_cert_type) */ + private String prscDrCertType; + + /** 开方医师证件号码 */ + private String prscDrCertno; + + /** 医生职称编码(参考drord_dr_proftt1) */ + private String drProfttlCodg; + + /** 医生职称名称 */ + private String drProfttlName; + + /** 医生科室编码(与医院科室编码字段保持一致) */ + private String drDeptCode; + + /** 医生科室名称 */ + private String drDeptName; + + /** 科别(参考科室代码dept) */ + private String caty; + + /** 就诊时间(yyyy-MM-dd HH:mm:ss) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date mdtrtTime; + + /** 病种编码 */ + private String diseCodg; + + /** 病种名称 */ + private String diseName; + + /** 特殊病种标志(0-否、1-是) */ + private String spDiseFlag; + + /** 主诊断代码(医保疾病诊断代码) */ + private String maindiagCode; + + /** 主诊断名称 */ + private String maindiagName; + + /** 疾病病情描述 */ + private String diseCondDscr; + + /** 医保费用结算类型(参考hi_feeset1_type) */ + private String hiFeesetlType; + + /** 医保费用类别名称 */ + private String hiFeesetlName; + + /** 挂号费 */ + private String rgstFee; + + /** 医疗费总额 */ + private String medfeeSumamt; + + /** 是否初诊(0-否、1-是) */ + private String fstdiagFlag; + + /** 扩展数据(地方业务扩展信息) */ + private String extras; + + /** 院内内部处方号 */ + @JSONField(serialize=false) + private String prescriptionNo; + + /** 医保处方编号(电子处方信息查询返回时插入记录) */ + @JSONField(serialize=false) + private String hiRxno; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java new file mode 100644 index 00000000..b0bb5b59 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/InformationInquiry.java @@ -0,0 +1,26 @@ +package com.openhis.ybelep.domain; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class InformationInquiry { + + // 处方信息 + private ElepQuerPrescriptionInfo prescriptionInfo; + + // 处方明细信息 + private List rxDetlList; + + // 就诊信息 + private List rxOtpinfo; + + // 诊断信息 + private List rxDiseList; + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java new file mode 100644 index 00000000..a835ce2c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/MedicationResultInquiry.java @@ -0,0 +1,41 @@ +package com.openhis.ybelep.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.Date; +import java.util.List; + +/** + * 电子处方取药结果查询 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class MedicationResultInquiry { + + /** 医保处方编号 */ + private String hiRxno; + + /** 医保结算时间(yyyy-MM-dd HH:mm:ss) */ + private String setlTime; + + /** 医保处方状态编码(参考rx_stas_codg) */ + private String rxStasCodg; + + /** 医保处方状态名称 */ + private String rxStasName; + + /** 处方使用状态编号(参考rx_used_stas_codg) */ + private String rxUsedStasCodg; + + /** 处方使用状态名称 */ + private String rxUsedStasName; + + // 输出明细信息 + private List seltdelts; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java new file mode 100644 index 00000000..48f3f508 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/PreCheckPrescription.java @@ -0,0 +1,129 @@ +package com.openhis.ybelep.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + + +/** + * 电子处方上传预核验 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class PreCheckPrescription { + + // 处方信息 + + /** 就诊凭证类型(01-电子凭证令牌、02-身份证号、03-社会保障卡号) */ + private String mdtrtCertType; + + /** 就诊凭证编号 */ + private String mdtrtCertNo; + + /** 卡识别码(就诊凭证类型为"03"时必填) */ + private String cardSn; + + /** 业务类型代码(01-定点医疗机构就诊,02-互联网医院问诊) */ + private String bizTypeCode; + + /** 处方附加属性代码(01-双通道处方,02-门诊统筹处方,99-其他) */ + private String rxExraAttrCode; + + /** 电子凭证令牌(使用医保电子凭证就诊时必填) */ + private String ecToken; + + /** 电子凭证线上身份核验流水号(线上场景互联网医院问诊时使用) */ + private String authNo; + + /** 参保地编号 */ + private String insuPlcNo; + + /** 就医地编号 */ + private String mdtrtareaNo; + + /** 定点医疗机构处方编号(院内内部处方号) */ + private String hospRxno; + + /** 续方的原处方编号 */ + private String initRxno; + + /** 处方类别代码(参考rx_type_code) */ + private String rxTypeCode; + + /** 开方时间(yyyy-MM-dd HH:mm:ss) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date prscTime; + + /** 药品类目数(剂数) */ + private String rxDrugCnt; + + /** 处方整剂用法编号 */ + private String rxUsedWayCodg; + + /** 处方整剂用法名称 */ + private String rxUsedWayName; + + /** 处方整剂频次编号(参考used_frequ) */ + private String rxFrquCodg; + + /** 处方整剂频次名称 */ + /** 处方整剂频次名称 */ + private String rxFrquName; + + /** 处方整剂剂量单位 */ + private String rxDosunt; + + /** 处方整剂单次剂量数 */ + private String rxDoscnt; + + /** 处方整剂医嘱说明 */ + private String rxDrordDscr; + + /** 处方有效天数 */ + private String valiDays; + + /** 有效截止时间(开方时间+处方有效天数) */ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date valiEndTime; + + /** 复用(多次)使用标志(0-否、1-是) */ + private String reptFlag; + + /** 最大使用次数(预留字段) */ + private String maxReptCnt; + + /** 使用最小间隔(天数)(预留字段) */ + private String minInvDays; + + /** 续方标志(0-否、1-是) */ + private String rxCotnFlag; + + /** 长期处方标志(0-否、1-是) */ + private String longRxFlag; + + /** 医保处方编号(电子处方信息查询返回时插入记录) */ + @JSONField(serialize=false) + private String hiRxno; + + // 处方明细信息 + private List rxdrugdetail; + + // 就诊信息 + private ElepVeriVisitInfo mdtrtinfo; + + // 诊断信息 + private ElepVeriDiagnosisInfo diseinfo; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java new file mode 100644 index 00000000..53589f3c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/domain/QueryPrescription.java @@ -0,0 +1,122 @@ +package com.openhis.ybelep.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + + +/** + * 电子处方上传预核验 + */ +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +public class QueryPrescription { + + /** 医保处方编号 */ + private String hiRxno; + + /** 定点医疗机构编号 */ + private String fixmedinsCode; + + /** 定点医疗机构名称 */ + private String fixmedinsName; + + /** 医保处方状态编码 */ + private String rxStasCodg; + + /** 医保处方状态名称 */ + private String rxStasName; + + /** 医保处方使用状态编码 */ + private String rxUsedStasCodg; + + /** 医保处方使用状态名称 */ + private String rxUsedStasName; + + /** 开方时间 */ + private String prscTime; + + /** 药品总用量(剂数) */ + private BigDecimal rxDrugCnt; + + /** 处方整剂用法编码 */ + private String rxUsedWayCodg; + + /** 处方整剂用法名称 */ + private String rxUsedWayName; + + /** 处方整剂频次编号 */ + private String rxFrquCodg; + + /** 处方整剂频次名称 */ + private String rxFrquName; + + /** 处方整剂剂量单位 */ + private String rxDosunt; + + /** 处方整剂单次剂量数 */ + private BigDecimal rxDoscnt; + + /** 处方整剂医嘱说明 */ + private String rxDrordDscr; + + /** 处方有效天数 */ + private BigDecimal valiDays; + + /** 有效截止时间 */ + private String valiEndTime; + + /** 复用(多次)使用标志,0-否、1-是 */ + private String reptFlag; + + /** 最大复用次数 */ + private BigDecimal maxReptCnt; + + /** 已复用次数 */ + private BigDecimal reptdCnt; + + /** 使用最小间隔(天数) */ + private BigDecimal minInrvDays; + + /** 处方类别编码 */ + private String rxTypeCode; + + /** 处方类别名称 */ + private String rxTypeName; + + /** 长期处方标志,0-否、1-是 */ + private String longRxFlag; + + /** 业务类型代码 */ + private String bizTypeCode; + + /** 业务类型名称 */ + private String bizTypeName; + + /** 处方附加属性代码 */ + private String rxExraAttrCode; + + /** 处方附加属性名称 */ + private String rxExraAttrName; + + /** 处方循环限制标志 */ + private String rxCircLimitFlag; + + // 处方明细信息 + private List rxDetlList; + + // 就诊信息 + private ElepQuerVisitInfo rxOtpinfo; + + // 诊断信息 + private List rxDiseList; + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java new file mode 100644 index 00000000..04583e7b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultDetailMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepMedresultDetail; + +/** + * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepMedresultDetailMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java new file mode 100644 index 00000000..65c926c5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepMedresultInfo; + +/** + * 【电子处方取药结果查询-输出】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepMedresultInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java new file mode 100644 index 00000000..cef07dfb --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepMedresultInputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepMedresultInput; + +/** + * 【电子处方取药结果查询-输入】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepMedresultInputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java new file mode 100644 index 00000000..f1f10f15 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerDiagnosisInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepQuerDiagnosisInfo; + +/** + * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepQuerDiagnosisInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java new file mode 100644 index 00000000..1165239c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionDetailMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepQuerPrescriptionDetail; + +/** + * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList) 】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepQuerPrescriptionDetailMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java new file mode 100644 index 00000000..231c401b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepQuerPrescriptionInfo; + +/** + * 【电子处方信息查询-输出-处方信息 】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepQuerPrescriptionInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java new file mode 100644 index 00000000..314dd9a7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerPrescriptionInputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepQuerPrescriptionInput; + +/** + * 【电子处方信息查询-输入】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepQuerPrescriptionInputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java new file mode 100644 index 00000000..ed6459d0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepQuerVisitInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepQuerVisitInfo; + +/** + * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepQuerVisitInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java new file mode 100644 index 00000000..64423fac --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeInputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepRevokeInput; + +/** + * 【电子处方撤销-输入】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepRevokeInputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java new file mode 100644 index 00000000..0b8240b0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepRevokeOutputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepRevokeOutput; + +/** + * 【电子处方撤销-输出】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepRevokeOutputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java new file mode 100644 index 00000000..2b2913a3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureInputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepSignatureInput; + +/** + * 【电子处方医保电子签名 -输入】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepSignatureInputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java new file mode 100644 index 00000000..6696a938 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepSignatureOutputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepSignatureOutput; + +/** + * 【电子处方医保电子签名 -输出】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepSignatureOutputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java new file mode 100644 index 00000000..435e0496 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadInputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepUploadInput; + +/** + * 【电子处方上传-输入】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepUploadInputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java new file mode 100644 index 00000000..edf63ffe --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepUploadOutputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepUploadOutput; + +/** + * 【电子处方上传-输出】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepUploadOutputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java new file mode 100644 index 00000000..b348be66 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriDiagnosisInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepVeriDiagnosisInfo; + +/** + * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepVeriDiagnosisInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java new file mode 100644 index 00000000..d735b38b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionDetailMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepVeriPrescriptionDetail; + +/** + * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepVeriPrescriptionDetailMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java new file mode 100644 index 00000000..afd3cfdc --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepVeriPrescriptionInfo; + +/** + * 【电子处方上传预核验-输入-处方信息】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepVeriPrescriptionInfoMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java new file mode 100644 index 00000000..0183f2ec --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriPrescriptionOutputMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.openhis.ybelep.domain.ElepVeriPrescriptionOutput; + +/** + * 【电子处方上传预核验-输出】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepVeriPrescriptionOutputMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java new file mode 100644 index 00000000..bbde3421 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/mapper/ElepVeriVisitInfoMapper.java @@ -0,0 +1,17 @@ +package com.openhis.ybelep.mapper; + +import com.openhis.ybelep.domain.ElepVeriVisitInfo; +import org.springframework.stereotype.Repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo) 】Mapper接口 + * + * @author system + * @date 2025-04-17 + */ +@Repository +public interface ElepVeriVisitInfoMapper extends BaseMapper { + +} diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java new file mode 100644 index 00000000..a1eebf48 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultDetailService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepMedresultDetail; + +/** + * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepMedresultDetailService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java new file mode 100644 index 00000000..e6994723 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepMedresultInfo; + +/** + * 【电子处方取药结果查询-输出】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepMedresultInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java new file mode 100644 index 00000000..3985b0a7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepMedresultInputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepMedresultInput; + +/** + * 【电子处方取药结果查询-输入】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepMedresultInputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java new file mode 100644 index 00000000..3a47ee59 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerDiagnosisInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepQuerDiagnosisInfo; + +/** + * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepQuerDiagnosisInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java new file mode 100644 index 00000000..75b5dab1 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionDetailService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepQuerPrescriptionDetail; + +/** + * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList)】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepQuerPrescriptionDetailService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java new file mode 100644 index 00000000..a7f93640 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepQuerPrescriptionInfo; + +/** + * 【电子处方信息查询-输出-处方信息 】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepQuerPrescriptionInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java new file mode 100644 index 00000000..f5682adc --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerPrescriptionInputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepQuerPrescriptionInput; + +/** + * 【电子处方信息查询-输入】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepQuerPrescriptionInputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java new file mode 100644 index 00000000..e139469a --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepQuerVisitInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepQuerVisitInfo; + +/** + * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepQuerVisitInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java new file mode 100644 index 00000000..61cf1478 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeInputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepRevokeInput; + +/** + * 【电子处方撤销-输入】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepRevokeInputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java new file mode 100644 index 00000000..5c4d4528 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepRevokeOutputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepRevokeOutput; + +/** + * 【电子处方撤销-输出】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepRevokeOutputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java new file mode 100644 index 00000000..b1e24161 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureInputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepSignatureInput; + +/** + * 【电子处方医保电子签名 -输入】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepSignatureInputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java new file mode 100644 index 00000000..22a8a8ca --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepSignatureOutputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepSignatureOutput; + +/** + * 【电子处方医保电子签名 -输出】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepSignatureOutputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java new file mode 100644 index 00000000..0f985498 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadInputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepUploadInput; + +/** + * 【电子处方上传-输入】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepUploadInputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java new file mode 100644 index 00000000..4a789dc0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepUploadOutputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepUploadOutput; + +/** + * 【电子处方上传-输出】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepUploadOutputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java new file mode 100644 index 00000000..7b2f6fcf --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriDiagnosisInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepVeriDiagnosisInfo; + +/** + * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepVeriDiagnosisInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java new file mode 100644 index 00000000..bca472bd --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionDetailService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepVeriPrescriptionDetail; + +/** + * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepVeriPrescriptionDetailService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java new file mode 100644 index 00000000..e8e69f80 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepVeriPrescriptionInfo; + +/** + * 【电子处方上传预核验-输入-处方信息】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepVeriPrescriptionInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java new file mode 100644 index 00000000..818a1208 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriPrescriptionOutputService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepVeriPrescriptionOutput; + +/** + * 【电子处方上传预核验-输出】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepVeriPrescriptionOutputService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java new file mode 100644 index 00000000..b8ebd450 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/IElepVeriVisitInfoService.java @@ -0,0 +1,14 @@ +package com.openhis.ybelep.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.openhis.ybelep.domain.ElepVeriVisitInfo; + +/** + * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo)】Service接口 + * + * @author system + * @date 2025-04-17 + */ +public interface IElepVeriVisitInfoService extends IService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java new file mode 100644 index 00000000..71204bb2 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultDetailServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepMedresultDetail; +import com.openhis.ybelep.mapper.ElepMedresultDetailMapper; +import com.openhis.ybelep.service.IElepMedresultDetailService; + +/** + * 【电子处方取药结果查询-输出(节点标识:seltdelts)】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepMedresultDetailServiceImpl extends ServiceImpl implements IElepMedresultDetailService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java new file mode 100644 index 00000000..1e3b8f50 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepMedresultInfo; +import com.openhis.ybelep.mapper.ElepMedresultInfoMapper; +import com.openhis.ybelep.service.IElepMedresultInfoService; + +/** + * 【电子处方取药结果查询-输出】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepMedresultInfoServiceImpl extends ServiceImpl implements IElepMedresultInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java new file mode 100644 index 00000000..43ade099 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepMedresultInputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepMedresultInput; +import com.openhis.ybelep.mapper.ElepMedresultInputMapper; +import com.openhis.ybelep.service.IElepMedresultInputService; + +/** + * 【电子处方取药结果查询-输入】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepMedresultInputServiceImpl extends ServiceImpl implements IElepMedresultInputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java new file mode 100644 index 00000000..3db579d3 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerDiagnosisInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepQuerDiagnosisInfo; +import com.openhis.ybelep.mapper.ElepQuerDiagnosisInfoMapper; +import com.openhis.ybelep.service.IElepQuerDiagnosisInfoService; + +/** + * 【电子处方信息查询-输出-诊断信息(节点表示: rxDiseList) 】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepQuerDiagnosisInfoServiceImpl extends ServiceImpl implements IElepQuerDiagnosisInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java new file mode 100644 index 00000000..db388ede --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionDetailServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepQuerPrescriptionDetail; +import com.openhis.ybelep.mapper.ElepQuerPrescriptionDetailMapper; +import com.openhis.ybelep.service.IElepQuerPrescriptionDetailService; + +/** + * 【电子处方信息查询-输出-处方明细信息(节点标识:rxDetlList) 】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepQuerPrescriptionDetailServiceImpl extends ServiceImpl implements IElepQuerPrescriptionDetailService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java new file mode 100644 index 00000000..21665826 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepQuerPrescriptionInfo; +import com.openhis.ybelep.mapper.ElepQuerPrescriptionInfoMapper; +import com.openhis.ybelep.service.IElepQuerPrescriptionInfoService; + +/** + * 【电子处方信息查询-输出-处方信息 】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepQuerPrescriptionInfoServiceImpl extends ServiceImpl implements IElepQuerPrescriptionInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java new file mode 100644 index 00000000..7e25f9f0 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerPrescriptionInputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepQuerPrescriptionInput; +import com.openhis.ybelep.mapper.ElepQuerPrescriptionInputMapper; +import com.openhis.ybelep.service.IElepQuerPrescriptionInputService; + +/** + * 【电子处方信息查询-输入】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepQuerPrescriptionInputServiceImpl extends ServiceImpl implements IElepQuerPrescriptionInputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java new file mode 100644 index 00000000..b2c95cc9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepQuerVisitInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepQuerVisitInfo; +import com.openhis.ybelep.mapper.ElepQuerVisitInfoMapper; +import com.openhis.ybelep.service.IElepQuerVisitInfoService; + +/** + * 【电子处方信息查询-输出-就诊信息(节点标识:rxOtpinfo) 】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepQuerVisitInfoServiceImpl extends ServiceImpl implements IElepQuerVisitInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java new file mode 100644 index 00000000..9ef553a9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeInputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepRevokeInput; +import com.openhis.ybelep.mapper.ElepRevokeInputMapper; +import com.openhis.ybelep.service.IElepRevokeInputService; + +/** + * 【电子处方撤销-输入】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepRevokeInputServiceImpl extends ServiceImpl implements IElepRevokeInputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java new file mode 100644 index 00000000..1944c013 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepRevokeOutputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepRevokeOutput; +import com.openhis.ybelep.mapper.ElepRevokeOutputMapper; +import com.openhis.ybelep.service.IElepRevokeOutputService; + +/** + * 【电子处方撤销-输出】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepRevokeOutputServiceImpl extends ServiceImpl implements IElepRevokeOutputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java new file mode 100644 index 00000000..98afa448 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureInputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepSignatureInput; +import com.openhis.ybelep.mapper.ElepSignatureInputMapper; +import com.openhis.ybelep.service.IElepSignatureInputService; + +/** + * 【电子处方医保电子签名 -输入】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepSignatureInputServiceImpl extends ServiceImpl implements IElepSignatureInputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java new file mode 100644 index 00000000..6d891be5 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepSignatureOutputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepSignatureOutput; +import com.openhis.ybelep.mapper.ElepSignatureOutputMapper; +import com.openhis.ybelep.service.IElepSignatureOutputService; + +/** + * 【电子处方医保电子签名 -输出】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepSignatureOutputServiceImpl extends ServiceImpl implements IElepSignatureOutputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java new file mode 100644 index 00000000..7b9af381 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadInputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepUploadInput; +import com.openhis.ybelep.mapper.ElepUploadInputMapper; +import com.openhis.ybelep.service.IElepUploadInputService; + +/** + * 【电子处方上传-输入】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepUploadInputServiceImpl extends ServiceImpl implements IElepUploadInputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java new file mode 100644 index 00000000..d701464b --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepUploadOutputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepUploadOutput; +import com.openhis.ybelep.mapper.ElepUploadOutputMapper; +import com.openhis.ybelep.service.IElepUploadOutputService; + +/** + * 【电子处方上传-输出】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepUploadOutputServiceImpl extends ServiceImpl implements IElepUploadOutputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java new file mode 100644 index 00000000..08e32083 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriDiagnosisInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepVeriDiagnosisInfo; +import com.openhis.ybelep.mapper.ElepVeriDiagnosisInfoMapper; +import com.openhis.ybelep.service.IElepVeriDiagnosisInfoService; + +/** + * 【电子处方上传预核验-输入-诊断信息(节点表示:diseinfo)】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepVeriDiagnosisInfoServiceImpl extends ServiceImpl implements IElepVeriDiagnosisInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java new file mode 100644 index 00000000..099cae6c --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionDetailServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepVeriPrescriptionDetail; +import com.openhis.ybelep.mapper.ElepVeriPrescriptionDetailMapper; +import com.openhis.ybelep.service.IElepVeriPrescriptionDetailService; + +/** + * 【电子处方上传预核验-输入-处方明细信息(节点标识 rxdrugdetail) 】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepVeriPrescriptionDetailServiceImpl extends ServiceImpl implements IElepVeriPrescriptionDetailService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java new file mode 100644 index 00000000..138bdbf7 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepVeriPrescriptionInfo; +import com.openhis.ybelep.mapper.ElepVeriPrescriptionInfoMapper; +import com.openhis.ybelep.service.IElepVeriPrescriptionInfoService; + +/** + * 【电子处方上传预核验-输入-处方信息】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepVeriPrescriptionInfoServiceImpl extends ServiceImpl implements IElepVeriPrescriptionInfoService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java new file mode 100644 index 00000000..33e8afd9 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriPrescriptionOutputServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepVeriPrescriptionOutput; +import com.openhis.ybelep.mapper.ElepVeriPrescriptionOutputMapper; +import com.openhis.ybelep.service.IElepVeriPrescriptionOutputService; + +/** + * 【电子处方上传预核验-输出】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepVeriPrescriptionOutputServiceImpl extends ServiceImpl implements IElepVeriPrescriptionOutputService { + +} \ No newline at end of file diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java new file mode 100644 index 00000000..8bc26f85 --- /dev/null +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/ybelep/service/impl/ElepVeriVisitInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.openhis.ybelep.service.impl; + +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.openhis.ybelep.domain.ElepVeriVisitInfo; +import com.openhis.ybelep.mapper.ElepVeriVisitInfoMapper; +import com.openhis.ybelep.service.IElepVeriVisitInfoService; + +/** + * 【电子处方上传预核验-输入-就诊信息(节点标识:mdtrtinfo) 】Service业务层处理 + * + * @author system + * @date 2025-04-17 + */ +@Service +public class ElepVeriVisitInfoServiceImpl extends ServiceImpl implements IElepVeriVisitInfoService { + +} \ No newline at end of file diff --git a/openhis-ui-vue3/.gitignore b/openhis-ui-vue3/.gitignore new file mode 100644 index 00000000..b4d19a6f --- /dev/null +++ b/openhis-ui-vue3/.gitignore @@ -0,0 +1,24 @@ +.DS_Store +node_modules/ +dist/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +**/*.log + +tests/**/coverage/ +tests/e2e/reports +selenium-debug.log + +# Editor directories and files +.idea +.vscode +*.suo +*.ntvs* +*.njsproj +*.sln +*.local + +package-lock.json +yarn.lock +vite.config.js diff --git a/openhis-ui-vue3/HospitalRecordForm.vue b/openhis-ui-vue3/HospitalRecordForm.vue new file mode 100644 index 00000000..66fbfcad --- /dev/null +++ b/openhis-ui-vue3/HospitalRecordForm.vue @@ -0,0 +1,116 @@ + +// 表单数据 +const formData = reactive({ + admission: { + confirmDate: '2023年10月28日', + dischargeTime: '2023年11月13日 08时14分', + hospitalDays: '17' + }, + diagnosis: { + mainDiagnosis: '腰椎间盘突出症(L4-5)', + otherDiagnosis: '' + } +}); + +// 打印表单 +const printForm = () => { + // 创建一个新的打印窗口 + const printWindow = window.open('', '_blank'); + + // 构建打印内容 + const printContent = ` + + + + 住院病案首页 + + + +
+
吉林大学第一医院
+
+
+
组织机构代码:(${formData.hospital.orgCode || ''})
+
医疗付费方式:(${formData.hospital.paymentMethod || ''})
+
+
+ 住院病案首页 +
+
+
+
+ + + + +
+
住院信息
+
+
+ +
${formData.admission.admitTime || ''}
+
+
+ +
${formData.admission.departmentAdmitTime || ''}
+
+
+ +
${formData.admission.dischargeTime || ''}
+
+
+
+
+ +
${formData.admission.hospitalDays || ''}
+
+
+
+ + + + + + + + `; + + // 将内容写入打印窗口并打印 + printWindow.document.write(printContent); + printWindow.document.close(); +}; diff --git a/openhis-ui-vue3/package-lock.json b/openhis-ui-vue3/package-lock.json index e8b1fcb0..245d498b 100644 --- a/openhis-ui-vue3/package-lock.json +++ b/openhis-ui-vue3/package-lock.json @@ -58,18 +58,23 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.26.2", - "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.26.2.tgz", - "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", + "@babel/helper-validator-identifier": "^7.27.1", "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, "node_modules/@babel/helper-string-parser": { "version": "7.25.9", "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", @@ -79,19 +84,19 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.27.0", - "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.27.0.tgz", - "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "version": "7.26.10", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.26.10.tgz", + "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==", "dependencies": { - "@babel/types": "^7.27.0" + "@babel/types": "^7.26.10" }, "bin": { "parser": "bin/babel-parser.js" @@ -101,20 +106,17 @@ } }, "node_modules/@babel/runtime": { - "version": "7.27.0", - "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.0.tgz", - "integrity": "sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.1.tgz", + "integrity": "sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.27.0", - "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.27.0.tgz", - "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "version": "7.26.10", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.26.10.tgz", + "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==", "dependencies": { "@babel/helper-string-parser": "^7.25.9", "@babel/helper-validator-identifier": "^7.25.9" @@ -627,9 +629,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.38.0.tgz", - "integrity": "sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.35.0.tgz", + "integrity": "sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==", "cpu": [ "arm" ], @@ -640,9 +642,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.38.0.tgz", - "integrity": "sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.35.0.tgz", + "integrity": "sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA==", "cpu": [ "arm64" ], @@ -653,9 +655,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.38.0.tgz", - "integrity": "sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.35.0.tgz", + "integrity": "sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q==", "cpu": [ "arm64" ], @@ -666,9 +668,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.38.0.tgz", - "integrity": "sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.35.0.tgz", + "integrity": "sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q==", "cpu": [ "x64" ], @@ -679,9 +681,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.38.0.tgz", - "integrity": "sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.35.0.tgz", + "integrity": "sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ==", "cpu": [ "arm64" ], @@ -692,9 +694,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.38.0.tgz", - "integrity": "sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.35.0.tgz", + "integrity": "sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw==", "cpu": [ "x64" ], @@ -705,9 +707,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.38.0.tgz", - "integrity": "sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.35.0.tgz", + "integrity": "sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg==", "cpu": [ "arm" ], @@ -718,9 +720,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.38.0.tgz", - "integrity": "sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.35.0.tgz", + "integrity": "sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A==", "cpu": [ "arm" ], @@ -731,9 +733,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.38.0.tgz", - "integrity": "sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.35.0.tgz", + "integrity": "sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A==", "cpu": [ "arm64" ], @@ -744,9 +746,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.38.0.tgz", - "integrity": "sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.35.0.tgz", + "integrity": "sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg==", "cpu": [ "arm64" ], @@ -757,9 +759,9 @@ ] }, "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.38.0.tgz", - "integrity": "sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.35.0.tgz", + "integrity": "sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g==", "cpu": [ "loong64" ], @@ -770,9 +772,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.38.0.tgz", - "integrity": "sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.35.0.tgz", + "integrity": "sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA==", "cpu": [ "ppc64" ], @@ -783,22 +785,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.38.0.tgz", - "integrity": "sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.38.0.tgz", - "integrity": "sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.35.0.tgz", + "integrity": "sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g==", "cpu": [ "riscv64" ], @@ -809,9 +798,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.38.0.tgz", - "integrity": "sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.35.0.tgz", + "integrity": "sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw==", "cpu": [ "s390x" ], @@ -822,9 +811,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.38.0.tgz", - "integrity": "sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.35.0.tgz", + "integrity": "sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA==", "cpu": [ "x64" ], @@ -835,9 +824,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.38.0.tgz", - "integrity": "sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.35.0.tgz", + "integrity": "sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg==", "cpu": [ "x64" ], @@ -848,9 +837,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.38.0.tgz", - "integrity": "sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.35.0.tgz", + "integrity": "sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg==", "cpu": [ "arm64" ], @@ -861,9 +850,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.38.0.tgz", - "integrity": "sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.35.0.tgz", + "integrity": "sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw==", "cpu": [ "ia32" ], @@ -874,9 +863,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.38.0.tgz", - "integrity": "sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.35.0.tgz", + "integrity": "sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw==", "cpu": [ "x64" ], @@ -901,9 +890,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, "node_modules/@types/lodash": { @@ -920,9 +909,9 @@ } }, "node_modules/@types/node": { - "version": "22.13.15", - "resolved": "https://registry.npmmirror.com/@types/node/-/node-22.13.15.tgz", - "integrity": "sha512-imAbQEEbVni6i6h6Bd5xkCRwLqFc8hihCsi2GbtDoAtUcAFQ6Zs4pFXTZUUbroTkXdImczWM9AI8eZUuybXE3w==", + "version": "22.13.10", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-22.13.10.tgz", + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", "dev": true, "dependencies": { "undici-types": "~6.20.0" @@ -1681,11 +1670,6 @@ "node": ">=10.0.0" } }, - "node_modules/canvg/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", @@ -1831,14 +1815,11 @@ } }, "node_modules/commander": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/commander/-/commander-1.1.1.tgz", - "integrity": "sha512-71Rod2AhcH3JhkBikVpNd0pA+fWsmAaVoti6OR38T76chA7vE3pSerS0Jor4wDw+tOueD2zLVvFOw5H0Rcj7rA==", - "dependencies": { - "keypress": "0.1.x" - }, + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "engines": { - "node": ">= 0.6.x" + "node": ">= 10" } }, "node_modules/component-emitter": { @@ -1856,6 +1837,20 @@ "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", "dev": true }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, "node_modules/copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz", @@ -2192,14 +2187,6 @@ "node": ">=12" } }, - "node_modules/d3-dsv/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "engines": { - "node": ">= 10" - } - }, "node_modules/d3-ease": { "version": "3.0.1", "resolved": "https://registry.npmmirror.com/d3-ease/-/d3-ease-3.0.1.tgz", @@ -2836,6 +2823,20 @@ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", "dev": true }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", @@ -4194,6 +4195,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true, + "optional": true, + "peer": true + }, "node_modules/is-windows": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz", @@ -4241,9 +4250,10 @@ } }, "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "version": "9.0.1", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "dev": true }, "node_modules/jsbarcode": { "version": "3.12.1", @@ -4315,6 +4325,34 @@ "node": ">=0.10.0" } }, + "node_modules/less": { + "version": "4.2.2", + "resolved": "https://registry.npmmirror.com/less/-/less-4.2.2.tgz", + "integrity": "sha512-tkuLHQlvWUTeQ3doAqnHbNn8T6WX1KA8yvbKG9x4VtKtIjHsVKQZCH11zRgAfbDAXC2UNIg/K9BYAAcEzUIrNg==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -4394,6 +4432,21 @@ "@jridgewell/sourcemap-codec": "^1.5.0" } }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/map-cache": { "version": "0.2.2", "resolved": "https://registry.npmmirror.com/map-cache/-/map-cache-0.2.2.tgz", @@ -4468,6 +4521,20 @@ "node": ">=8.6" } }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", @@ -4562,9 +4629,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "version": "3.3.9", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.9.tgz", + "integrity": "sha512-SppoicMGpZvbF1l3z4x7No3OlIjP7QJvC9XR7AhZr1kL133KHnKPztkKDc+Ir4aJ/1VhTySrtKhrsycmrMQfvg==", "funding": [ { "type": "github", @@ -4656,6 +4723,24 @@ "node": ">=0.10.0" } }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", @@ -4899,6 +4984,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmmirror.com/pascalcase/-/pascalcase-0.1.1.tgz", @@ -4949,6 +5045,17 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, "node_modules/pinia": { "version": "2.1.7", "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.1.7.tgz", @@ -5029,6 +5136,17 @@ } } }, + "node_modules/pinyin/node_modules/commander": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/commander/-/commander-1.1.1.tgz", + "integrity": "sha512-71Rod2AhcH3JhkBikVpNd0pA+fWsmAaVoti6OR38T76chA7vE3pSerS0Jor4wDw+tOueD2zLVvFOw5H0Rcj7rA==", + "dependencies": { + "keypress": "0.1.x" + }, + "engines": { + "node": ">= 0.6.x" + } + }, "node_modules/pkg-types": { "version": "1.3.1", "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz", @@ -5172,10 +5290,18 @@ "@province-city-china/types": "8.5.8" } }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true, + "peer": true + }, "node_modules/quansync": { - "version": "0.2.10", - "resolved": "https://registry.npmmirror.com/quansync/-/quansync-0.2.10.tgz", - "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", + "version": "0.2.8", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-0.2.8.tgz", + "integrity": "sha512-4+saucphJMazjt7iOM27mbFCk+D9dd/zmgMDCzRZ8MEoBfYp7lAvoN38et/phRQF6wOPMy/OROBGgoWeSKyluA==", "dev": true, "funding": [ { @@ -5319,9 +5445,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, "node_modules/regex-not": { "version": "1.0.2", @@ -5473,12 +5599,12 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.38.0.tgz", - "integrity": "sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.35.0.tgz", + "integrity": "sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg==", "dev": true, "dependencies": { - "@types/estree": "1.0.7" + "@types/estree": "1.0.6" }, "bin": { "rollup": "dist/bin/rollup" @@ -5488,26 +5614,25 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.38.0", - "@rollup/rollup-android-arm64": "4.38.0", - "@rollup/rollup-darwin-arm64": "4.38.0", - "@rollup/rollup-darwin-x64": "4.38.0", - "@rollup/rollup-freebsd-arm64": "4.38.0", - "@rollup/rollup-freebsd-x64": "4.38.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.38.0", - "@rollup/rollup-linux-arm-musleabihf": "4.38.0", - "@rollup/rollup-linux-arm64-gnu": "4.38.0", - "@rollup/rollup-linux-arm64-musl": "4.38.0", - "@rollup/rollup-linux-loongarch64-gnu": "4.38.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.38.0", - "@rollup/rollup-linux-riscv64-gnu": "4.38.0", - "@rollup/rollup-linux-riscv64-musl": "4.38.0", - "@rollup/rollup-linux-s390x-gnu": "4.38.0", - "@rollup/rollup-linux-x64-gnu": "4.38.0", - "@rollup/rollup-linux-x64-musl": "4.38.0", - "@rollup/rollup-win32-arm64-msvc": "4.38.0", - "@rollup/rollup-win32-ia32-msvc": "4.38.0", - "@rollup/rollup-win32-x64-msvc": "4.38.0", + "@rollup/rollup-android-arm-eabi": "4.35.0", + "@rollup/rollup-android-arm64": "4.35.0", + "@rollup/rollup-darwin-arm64": "4.35.0", + "@rollup/rollup-darwin-x64": "4.35.0", + "@rollup/rollup-freebsd-arm64": "4.35.0", + "@rollup/rollup-freebsd-x64": "4.35.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.35.0", + "@rollup/rollup-linux-arm-musleabihf": "4.35.0", + "@rollup/rollup-linux-arm64-gnu": "4.35.0", + "@rollup/rollup-linux-arm64-musl": "4.35.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.35.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.35.0", + "@rollup/rollup-linux-riscv64-gnu": "4.35.0", + "@rollup/rollup-linux-s390x-gnu": "4.35.0", + "@rollup/rollup-linux-x64-gnu": "4.35.0", + "@rollup/rollup-linux-x64-musl": "4.35.0", + "@rollup/rollup-win32-arm64-msvc": "4.35.0", + "@rollup/rollup-win32-ia32-msvc": "4.35.0", + "@rollup/rollup-win32-x64-msvc": "4.35.0", "fsevents": "~2.3.2" } }, @@ -5654,6 +5779,14 @@ "node": ">=14.0.0" } }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "dev": true, + "optional": true, + "peer": true + }, "node_modules/scule": { "version": "1.3.0", "resolved": "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz", @@ -5668,6 +5801,17 @@ "preval.macro": "^4.0.0" } }, + "node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmmirror.com/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "peer": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz", @@ -6205,12 +6349,6 @@ "url": "https://github.com/sponsors/antfu" } }, - "node_modules/strip-literal/node_modules/js-tokens": { - "version": "9.0.1", - "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz", - "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", - "dev": true - }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", @@ -6478,15 +6616,6 @@ "node": ">=10.13.0" } }, - "node_modules/svgo/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, "node_modules/text-segmentation": { "version": "1.0.3", "resolved": "https://registry.npmmirror.com/text-segmentation/-/text-segmentation-1.0.3.tgz", @@ -7000,9 +7129,9 @@ } }, "node_modules/v-dropdown": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/v-dropdown/-/v-dropdown-3.4.0.tgz", - "integrity": "sha512-wgMb9P2jNhwrCVdD4ckcuou2XivK0ac9XNUH4cXithWMi4LRdOYgNNoT/Gl9ltXaIdO0I7izxpOZG/ddRJUkow==", + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/v-dropdown/-/v-dropdown-3.3.0.tgz", + "integrity": "sha512-OkNipbg+V4vQ6xyYLxTk+WQOs3A17nXtoqY9kqHRSAXnpE6mlwdsxar/qIgAAbhDpF0RYI8v4p75809S6ch+Rg==", "dependencies": { "vue": "^3.5.13" }, @@ -7435,13 +7564,20 @@ "dev": true }, "@babel/code-frame": { - "version": "7.26.2", - "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.26.2.tgz", - "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "requires": { - "@babel/helper-validator-identifier": "^7.25.9", + "@babel/helper-validator-identifier": "^7.27.1", "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "picocolors": "^1.1.1" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + } } }, "@babel/helper-string-parser": { @@ -7450,30 +7586,27 @@ "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==" }, "@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==" + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==" }, "@babel/parser": { - "version": "7.27.0", - "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.27.0.tgz", - "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "version": "7.26.10", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.26.10.tgz", + "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==", "requires": { - "@babel/types": "^7.27.0" + "@babel/types": "^7.26.10" } }, "@babel/runtime": { - "version": "7.27.0", - "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.0.tgz", - "integrity": "sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==", - "requires": { - "regenerator-runtime": "^0.14.0" - } + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.1.tgz", + "integrity": "sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==" }, "@babel/types": { - "version": "7.27.0", - "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.27.0.tgz", - "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "version": "7.26.10", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.26.10.tgz", + "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==", "requires": { "@babel/helper-string-parser": "^7.25.9", "@babel/helper-validator-identifier": "^7.25.9" @@ -7740,142 +7873,135 @@ } }, "@rollup/rollup-android-arm-eabi": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.38.0.tgz", - "integrity": "sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.35.0.tgz", + "integrity": "sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==", "dev": true, "optional": true }, "@rollup/rollup-android-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.38.0.tgz", - "integrity": "sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.35.0.tgz", + "integrity": "sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA==", "dev": true, "optional": true }, "@rollup/rollup-darwin-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.38.0.tgz", - "integrity": "sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.35.0.tgz", + "integrity": "sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q==", "dev": true, "optional": true }, "@rollup/rollup-darwin-x64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.38.0.tgz", - "integrity": "sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.35.0.tgz", + "integrity": "sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q==", "dev": true, "optional": true }, "@rollup/rollup-freebsd-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.38.0.tgz", - "integrity": "sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.35.0.tgz", + "integrity": "sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ==", "dev": true, "optional": true }, "@rollup/rollup-freebsd-x64": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.38.0.tgz", - "integrity": "sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.35.0.tgz", + "integrity": "sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.38.0.tgz", - "integrity": "sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.35.0.tgz", + "integrity": "sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-musleabihf": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.38.0.tgz", - "integrity": "sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.35.0.tgz", + "integrity": "sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.38.0.tgz", - "integrity": "sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.35.0.tgz", + "integrity": "sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.38.0.tgz", - "integrity": "sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.35.0.tgz", + "integrity": "sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg==", "dev": true, "optional": true }, "@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.38.0.tgz", - "integrity": "sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.35.0.tgz", + "integrity": "sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g==", "dev": true, "optional": true }, "@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.38.0.tgz", - "integrity": "sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.35.0.tgz", + "integrity": "sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA==", "dev": true, "optional": true }, "@rollup/rollup-linux-riscv64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.38.0.tgz", - "integrity": "sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg==", - "dev": true, - "optional": true - }, - "@rollup/rollup-linux-riscv64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.38.0.tgz", - "integrity": "sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.35.0.tgz", + "integrity": "sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g==", "dev": true, "optional": true }, "@rollup/rollup-linux-s390x-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.38.0.tgz", - "integrity": "sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.35.0.tgz", + "integrity": "sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.38.0.tgz", - "integrity": "sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.35.0.tgz", + "integrity": "sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.38.0.tgz", - "integrity": "sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.35.0.tgz", + "integrity": "sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg==", "dev": true, "optional": true }, "@rollup/rollup-win32-arm64-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.38.0.tgz", - "integrity": "sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.35.0.tgz", + "integrity": "sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg==", "dev": true, "optional": true }, "@rollup/rollup-win32-ia32-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.38.0.tgz", - "integrity": "sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.35.0.tgz", + "integrity": "sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw==", "dev": true, "optional": true }, "@rollup/rollup-win32-x64-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.38.0.tgz", - "integrity": "sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw==", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.35.0.tgz", + "integrity": "sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw==", "dev": true, "optional": true }, @@ -7891,9 +8017,9 @@ "dev": true }, "@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, "@types/lodash": { @@ -7910,9 +8036,9 @@ } }, "@types/node": { - "version": "22.13.15", - "resolved": "https://registry.npmmirror.com/@types/node/-/node-22.13.15.tgz", - "integrity": "sha512-imAbQEEbVni6i6h6Bd5xkCRwLqFc8hihCsi2GbtDoAtUcAFQ6Zs4pFXTZUUbroTkXdImczWM9AI8eZUuybXE3w==", + "version": "22.13.10", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-22.13.10.tgz", + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", "dev": true, "requires": { "undici-types": "~6.20.0" @@ -8496,13 +8622,6 @@ "rgbcolor": "^1.0.1", "stackblur-canvas": "^2.0.0", "svg-pathdata": "^6.0.3" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - } } }, "chalk": { @@ -8614,12 +8733,9 @@ } }, "commander": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/commander/-/commander-1.1.1.tgz", - "integrity": "sha512-71Rod2AhcH3JhkBikVpNd0pA+fWsmAaVoti6OR38T76chA7vE3pSerS0Jor4wDw+tOueD2zLVvFOw5H0Rcj7rA==", - "requires": { - "keypress": "0.1.x" - } + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" }, "component-emitter": { "version": "1.3.1", @@ -8633,6 +8749,17 @@ "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", "dev": true }, + "copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "is-what": "^3.14.1" + } + }, "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz", @@ -8875,13 +9002,6 @@ "commander": "7", "iconv-lite": "0.6", "rw": "1" - }, - "dependencies": { - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" - } } }, "d3-ease": { @@ -9338,6 +9458,17 @@ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", "dev": true }, + "errno": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "prr": "~1.0.1" + } + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", @@ -10312,6 +10443,14 @@ "get-intrinsic": "^1.2.6" } }, + "is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true, + "optional": true, + "peer": true + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz", @@ -10350,9 +10489,10 @@ "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==" }, "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "version": "9.0.1", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "dev": true }, "jsbarcode": { "version": "3.12.1", @@ -10414,6 +10554,26 @@ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", "dev": true }, + "less": { + "version": "4.2.2", + "resolved": "https://registry.npmmirror.com/less/-/less-4.2.2.tgz", + "integrity": "sha512-tkuLHQlvWUTeQ3doAqnHbNn8T6WX1KA8yvbKG9x4VtKtIjHsVKQZCH11zRgAfbDAXC2UNIg/K9BYAAcEzUIrNg==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "copy-anything": "^2.0.1", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "parse-node-version": "^1.0.1", + "source-map": "~0.6.0", + "tslib": "^2.3.0" + } + }, "lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -10479,6 +10639,18 @@ "@jridgewell/sourcemap-codec": "^1.5.0" } }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmmirror.com/map-cache/-/map-cache-0.2.2.tgz", @@ -10535,6 +10707,14 @@ "picomatch": "^2.3.1" } }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "peer": true + }, "mime-db": { "version": "1.52.0", "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", @@ -10607,9 +10787,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==" + "version": "3.3.9", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.9.tgz", + "integrity": "sha512-SppoicMGpZvbF1l3z4x7No3OlIjP7QJvC9XR7AhZr1kL133KHnKPztkKDc+Ir4aJ/1VhTySrtKhrsycmrMQfvg==" }, "nanomatch": { "version": "1.2.13", @@ -10673,6 +10853,18 @@ } } }, + "needle": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + } + }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", @@ -10853,6 +11045,14 @@ "lines-and-columns": "^1.1.6" } }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "optional": true, + "peer": true + }, "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmmirror.com/pascalcase/-/pascalcase-0.1.1.tgz", @@ -10891,6 +11091,14 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "peer": true + }, "pinia": { "version": "2.1.7", "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.1.7.tgz", @@ -10914,6 +11122,16 @@ "integrity": "sha512-SED2wWr1X0QwH6rXIDgg20zS1mAk0AVMO8eM3KomUlOYzC8mNMWZnspZWhhI0M8MBIbF2xwa+5r30jTSjAqNsg==", "requires": { "commander": "~1.1.1" + }, + "dependencies": { + "commander": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/commander/-/commander-1.1.1.tgz", + "integrity": "sha512-71Rod2AhcH3JhkBikVpNd0pA+fWsmAaVoti6OR38T76chA7vE3pSerS0Jor4wDw+tOueD2zLVvFOw5H0Rcj7rA==", + "requires": { + "keypress": "0.1.x" + } + } } }, "pkg-types": { @@ -11027,10 +11245,18 @@ "@province-city-china/types": "8.5.8" } }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true, + "peer": true + }, "quansync": { - "version": "0.2.10", - "resolved": "https://registry.npmmirror.com/quansync/-/quansync-0.2.10.tgz", - "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", + "version": "0.2.8", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-0.2.8.tgz", + "integrity": "sha512-4+saucphJMazjt7iOM27mbFCk+D9dd/zmgMDCzRZ8MEoBfYp7lAvoN38et/phRQF6wOPMy/OROBGgoWeSKyluA==", "dev": true }, "query-string": { @@ -11134,9 +11360,9 @@ } }, "regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, "regex-not": { "version": "1.0.2", @@ -11243,32 +11469,31 @@ "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "rollup": { - "version": "4.38.0", - "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.38.0.tgz", - "integrity": "sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw==", - "dev": true, - "requires": { - "@rollup/rollup-android-arm-eabi": "4.38.0", - "@rollup/rollup-android-arm64": "4.38.0", - "@rollup/rollup-darwin-arm64": "4.38.0", - "@rollup/rollup-darwin-x64": "4.38.0", - "@rollup/rollup-freebsd-arm64": "4.38.0", - "@rollup/rollup-freebsd-x64": "4.38.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.38.0", - "@rollup/rollup-linux-arm-musleabihf": "4.38.0", - "@rollup/rollup-linux-arm64-gnu": "4.38.0", - "@rollup/rollup-linux-arm64-musl": "4.38.0", - "@rollup/rollup-linux-loongarch64-gnu": "4.38.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.38.0", - "@rollup/rollup-linux-riscv64-gnu": "4.38.0", - "@rollup/rollup-linux-riscv64-musl": "4.38.0", - "@rollup/rollup-linux-s390x-gnu": "4.38.0", - "@rollup/rollup-linux-x64-gnu": "4.38.0", - "@rollup/rollup-linux-x64-musl": "4.38.0", - "@rollup/rollup-win32-arm64-msvc": "4.38.0", - "@rollup/rollup-win32-ia32-msvc": "4.38.0", - "@rollup/rollup-win32-x64-msvc": "4.38.0", - "@types/estree": "1.0.7", + "version": "4.35.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.35.0.tgz", + "integrity": "sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg==", + "dev": true, + "requires": { + "@rollup/rollup-android-arm-eabi": "4.35.0", + "@rollup/rollup-android-arm64": "4.35.0", + "@rollup/rollup-darwin-arm64": "4.35.0", + "@rollup/rollup-darwin-x64": "4.35.0", + "@rollup/rollup-freebsd-arm64": "4.35.0", + "@rollup/rollup-freebsd-x64": "4.35.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.35.0", + "@rollup/rollup-linux-arm-musleabihf": "4.35.0", + "@rollup/rollup-linux-arm64-gnu": "4.35.0", + "@rollup/rollup-linux-arm64-musl": "4.35.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.35.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.35.0", + "@rollup/rollup-linux-riscv64-gnu": "4.35.0", + "@rollup/rollup-linux-s390x-gnu": "4.35.0", + "@rollup/rollup-linux-x64-gnu": "4.35.0", + "@rollup/rollup-linux-x64-musl": "4.35.0", + "@rollup/rollup-win32-arm64-msvc": "4.35.0", + "@rollup/rollup-win32-ia32-msvc": "4.35.0", + "@rollup/rollup-win32-x64-msvc": "4.35.0", + "@types/estree": "1.0.6", "fsevents": "~2.3.2" } }, @@ -11367,6 +11592,14 @@ "source-map-js": ">=0.6.2 <2.0.0" } }, + "sax": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "dev": true, + "optional": true, + "peer": true + }, "scule": { "version": "1.3.0", "resolved": "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz", @@ -11381,6 +11614,14 @@ "preval.macro": "^4.0.0" } }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmmirror.com/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "peer": true + }, "set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz", @@ -11790,14 +12031,6 @@ "dev": true, "requires": { "js-tokens": "^9.0.1" - }, - "dependencies": { - "js-tokens": { - "version": "9.0.1", - "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz", - "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", - "dev": true - } } }, "supports-color": { @@ -12008,14 +12241,6 @@ "csso": "^4.2.0", "picocolors": "^1.0.0", "stable": "^0.1.8" - }, - "dependencies": { - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true - } } }, "text-segmentation": { @@ -12421,9 +12646,9 @@ } }, "v-dropdown": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/v-dropdown/-/v-dropdown-3.4.0.tgz", - "integrity": "sha512-wgMb9P2jNhwrCVdD4ckcuou2XivK0ac9XNUH4cXithWMi4LRdOYgNNoT/Gl9ltXaIdO0I7izxpOZG/ddRJUkow==", + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/v-dropdown/-/v-dropdown-3.3.0.tgz", + "integrity": "sha512-OkNipbg+V4vQ6xyYLxTk+WQOs3A17nXtoqY9kqHRSAXnpE6mlwdsxar/qIgAAbhDpF0RYI8v4p75809S6ch+Rg==", "requires": { "vue": "^3.5.13" } diff --git a/openhis-ui-vue3/src/assets/images/ty.jpg b/openhis-ui-vue3/src/assets/images/ty.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a25f3780c78161ce9981482007e565422d44cb91 GIT binary patch literal 39365 zcmd431zeO{*FHReh=PFVi~64HwZYufOHR`5>iSx0shwwb#AB41M_sx+o!v5CvgiV1OP1|3F_R zK~!)%!^a?yloW^o1OlA{u3Z9Q0ecw0zpsB^MnNJV{PVbYxaaWkaPbHT@Ch$phg`mN z>GCZyimTU|=$Y>@(Zd*7c_ai_IYc=bVRu!8MDI(>E6B45ARi%RA4gLG%_nKQuMPQZ2086xaUH<*RaUY2`=LuC$TaSez&M=hLJ z4UzBuM8m3W;dUPP%2i?#Qrerh=;#^P*f}`4xOqhG!9~Ty5fTcDO3Es#YDgVjy~p|n zhDMfF);6|w_73hZJYITwy+Q>B1&4&b2@6NZCnP2%r=+H(=f5o|EGjN3Evu=mt8Zv* zYHsQ2?du;H92y>(oSL4Qots}+T-w;&+TPjS`@DZ}Di;O_>ld+pm+Tw4hyb}T&z!+J zgL5hu2Bs}gu!zoJ-(Ws_Nk|Uok@;mR7T0rN;efcj>hsjB@}D5u7Tvg4XxJucH%>+S zD%sBo=Jp>+_Pb#Jl4}HX0Sg1@JS-xRAZUAuF8(?0|8GiSEGEjBODj>yaEF%;V~dIU zj17Jeq8U~hf7m(Yc#jLk>3?XhcyohqweC*3ONFIsD-m{I^Pt<3bt%}R&-%K` zd5*WKl96L9?!$KJe&&2J%d|EJ==y2uZjuW51>apw(T*F3tzn)==akg=gi>xD6~VS4 zbvi?oS+}1ko02ejwNJ&|v-X>EWZu&WslxR*l8@Q!7_Pbm4XcMl)GO-p-5c)WMCqMe z(>p>Ym|h-_DFbCrD@0uX+t5cuRD+Jo!eXpm&JtvAqw%I#- zlo;XgKBIy`g`@`%!l^<*cg5DJ*Oq%(GnDs9XX%YXZ>Cth%M+M?7=1HO&|ddJO|s0z z#jFACs&)G8TNK+$P9|`t$NEkb89KMd%U*9hQ3@`3DHI%_>PR*iDZfU&HbbeSoR^bM zuN|Z4AicAb)Re>HyEZ3S%9pXNqf9+ueeOVmm2mf^(Etm-oH4j8p|YJMn@8}{1QTaG z=b{SLhQ#z~O2AlAL;LTbmSlwwgIkD`Ar2M2@xt3}k1^)4R#rdSpUMS%u(d=T}3w;vLOq^CCk z#iQu{2SoyS30*q~cGECWlFUeLT+ty2)l{*8pLixyw`Dqi`)G+)o_RcozJWJFEj6hG zb@6^agP$d8hUrMeo{Ng=hQe`o(EfmWD@_VZIWvEAw%Rn+JBVepYH$(HVGPl5Z2$>N z!0|*#kolBx>G_MIsr(M;n)uQrR2nS&Mc!q-@b&Dq^IIvl6fZXR6~S((`sT{vpr>n; zKIAfNa^n8=#PKK)-LHii4wl9Ewuk}%ap8|mt?exb2Z6s9q1f}(CDGJj$pM1n+E8J9 z7unaKCK{}_xUFEN1`FS|LT*@iPwiAtkFoiV2=bzxTaAwU4ex_H_2!DC16=8^Emfy( z7W0$xdL@zg!XK?z%42Dn1R_XUc>r?{Y zFiJD@&%`jmn$tdrTkNqo<3K1!nJi-pB)@>1NZn8~^KUF8(3-7?)QQGD697uG;8Xa* zcQ68IC|6;6-6*5Pfi|PW(6)t#8~2`{oQx4IWgX)ijVu>&5>uEoY&%0=)t^z$t5;M< zixJV5E}o}q!lFJ)5!<`m3A=6bWYp?1i{IM3UrQOjU|o70?b4YQa(l?2%w-Y-t6Cxw zgAU)&xR-WwcQ?xNqd(3ioh>WoEL(tqwngmV-H#I_6+Y! z=avfeyeXfMtp$lr9i832!-=)W{d?E-c)DNpjW2N&q3*wB2pF=EnbbI*e>J16+;b=4 zt)O7iL)I(Y+6aN;+BB-j;Cnhh2QD#zEQYheYOZ|CzCWpU}UACHbzH&+4`OuYWz z)_(aOIW&m*?i7j+v%e_G-e?$Q(-_AMd22jnLwr^C3+R2&5x!-xa$XkKN;|c(`Eb-~ zcACDmAA@!CiZs4v6Z>2x_nEl@#+{61tt-Myf*$+XsXBt;_n8$sC3*Ggm)D4~0 z175r7Dp$74!zeag=}Pf^>G?Ce$!M1g^2S5R~rbibj=54W*BkDp&+#aq+ zlA244Hh6nawE;^H7iWAbCTZZZ?y9uIIp(6|)XATe1HbYqN8H~T^G&ngiG9wjSl@}Xz{vre9*oV!m2+RH|20cwH!s=$Z8Y((rc z?3TL|v6Ips7Y}kZ;%;xmiK@c-^}%HyWc+qrzCc}xMR@K*Ipg2QuZ&6n$3?7XYi zFDO5I>sxdyRE`Hqc`2aK^fJi_`xg-I0?g!NnbaroY+c>tPY;bVh)3nS{WMtp0%~X2 zo9*&p#r`cgALIoYmNOzZEL;-q9@hpOxa?$Hkf`L)(bT#yn;I*pCCu0LEzYE__>vQ6 z&^J-1W_JqrD<9luPL6f{?qI$20GXL; z=5S}5-ApCx3c8G+rdLI{8xC&x#e9B8!^30I&3!v1jQOt)n_bFyos9I@AvX6DDq2bIfZ_)@Ngu#t}OvE>Tuu=Q-cK?5;(unG*@I zH4@!h--bAl6P!HQ*U5D$FxSk#=XEC?w43rYE5Y4Q*(f(}sY8npPkgM??CS7YW8vHQ zLvgJy{l9<;`txzXh55C;n)o`RcySWsEFF}krl&-^KM5}9A&XPU6Iv)IsRIWWU6YhV zNY`G_M$u=s@Sv~Zy+&y$+24l6Q&yna5722$l_{cT`ezO=^p)0I({@19Qc$d@8kfr> z7giD1K4GRePvz{-8^+kUoD_=WNLk+)a9gt4Phf9so_gK8NA2OlDl1TxT7_^s1}mFh zmAbfbhxeH)qD1BFNa5j5sY@-&BPZutR$J9xck026;yX!jBalngVDirnYHsEF{< zb*UR)K(3^Q0iDV^pZkt2n;sxF{q7k~QaUJ7DkmRj4_QYG9-Id9KUfbCL~in5 zUJb3<+PHeWO)oHN`~}264Zwtl{TzQP*vWjCFza1o+;RTki8IydY3jFv_>>y!L{7#{tF+zQrLTC2&aZhwL?2ubZQQ$h&!wU?`w1(7_lGErUfR;9!Vr|$ zExV@XMfvm^lMX5+>RXx8G2-35(l-80x&bd)y&o#)CZnt!h)}3}UhQBdf53Lh{o`S! zss+_pOn0K894Iy>tbeeH`vp|wmY;LPp|Ac?p8_x*8=Z{bGau-l8*7WdfQ$+@69p??yRY%8*j&mP)_+WzGR(1%n3TPh`Yp3p4`?Y$F@|iqciX}QkLCeD>S``5YR3d z3)qH@4Uo_TB50yZ6XPou`+~=ZtGP?d^9<1lrK@R z?ic{dlHTAVxag(Orgre>N%Uj93r|)T64(dSKAVhOU|V@?>Wpn%e?~TYC_#zhxpvtj zchf2TduCZjVzkDSt;4x`dLB;u>~D=HN9pYS+1i)J1sR61P|$Q@J273W25;&v6x8mK zER~NUp^*GX2l*c5W*UPKcg#?fgbuhzRvdC+FLZY~Joz5QT#%v3&7Ltds7~97ZWu3LWh-`l)G@*h7U2-i>o{Pd=mLP& zz-Ui-J_*2N=?(B}0y9U4G{{p0%>B9{Vd+#se17o@4Dh*@>iXZFf#V%c|~02X~f_{?#g zq_7Wz_~`|4C%D96?aHK3%c!DHbw-xv+%6CAKp*!sjP#qIk$Cq}DINPMuI$UE0k&y! z|A+G3a3g~s!vDV^foF3ol+BYdmam@_mTRoPj=18VlNo*tCH(@beQf>itVKKu8!|(o z`aQOzG)}d(qOy2{OJuXSCr$1HyWAUS>1kP{s}3fbh*1-uC_hw=4j1Hep;j(*y!eJq zfnU5l!vid*Ec^TW#HCme%Iu6Q5HT9GN-hBn!H#>T@#5J>1vh3E)bsoCjWrGTgbZvN z$2}EP`K66f?{1FVo6hno3ZU5J%fA}%n$-faE)|QbpmEjI(x-fh_E!q}8x{SD?dQk- z*c64Z!pyzf`RBrq-+xpQ(wPk5)!Nu}DXW@B)_AAnCDOMzlC9j4S@fz-<^)gcwf#JS|VN;8OsyRUw<$AghG~t&|n-$3#1RJl&iTXD%II zmH>h1TG52o$oG)4N>Ae=@At`%!2$Ej;3seJ6johsA}Nl{UFVa0N(41YR^C}vwMCDw zc2l=)4j!g8F00C1J{Q(fL1n$iP*C&Ex+qt@ zMd#I9pB5}7FW<_Gv(9=j7RWbE8r@tktKDJIQFjo8fLn66Jh*(v!eWe@A7DIz!vFHU ze2+(IGboLgT}c0mT6`c%2k;R7fsaWSdnQ|_zOy~wNoF%Ua*!IJfU-VfpBj&iV=k>q zg$>%cdca|{_H^y0x&XDq4)MT@6-J5WsVX+4t+2C3J*B;!GI;0a5#^D@y zJw`{$@Cfm(90vv0=uZkO4Gpp5&wcc!@{`EZ+|JGO&F7_`47S#l6#}2nr|SpXU?wHS zmjxCz!rf5x_{^^n;^O4X0$)IC1^H*#Tw@M1n$s-h#-tG@20@MN5?k_x1(cQHLMIE{ z>}?P1+}5U{1XLo6eJAYx2%S)xpg#0;+H1*4Zv9v4_dZl?Fm_0c#0m{Z1nn!6?XhaS z+mDJoMC(DCdESPu%!VK&ZNRv6nN2^8I`eEGIe6H|htJ%4Lvq4#>ME>QU6Yh2@r<~& zhb~U>j6Cv*6IS4U&Cjs8MWF!){PW9Z(AfM>;}v$sp)9$pT`oJz=8AOhiNQ;&DKB5x z@=OXdkLk)bUh?pPDB56wkL0^GujG{p<08K^VB|C;{OfcB+|s=R4Oi}xus7MgR$y)4 zHBjF}?0KC~t0|?%T?_9+yU{O=B%-}%biGtO9z3vAp8ym0j#uikH|@6DOpv{9?V;kD zZ8jY!`P5^XW@9O9V$B_%1;<2fOLqe*{ClwNFO1|n*F-eLygoSR-8#HZ*i&w^VBBd< z@@!SYp7$!(7m%Qb`7~vzP6YUP6p|W`+VTbcm3JUPfRchi+GUjZM$U4FWUHG&hxv|< zD*Sh8$mWS>9F>FTCZX|*?bYKH!32hu8Vvzc7eOz#KW<;LIWkTZQ;}74BNT@Arzo=` zDZClzq45$D40st~S=uc3ClzhkpC%Tvnbc@a!1b{tnctI_qo>$m!p8fpr8O5;wQ3Uk zcdqs^N$PsNc|kewcDXI*LDcXQ`<)E#a+o`y1(sx!KjV4)c8{dEk-D+r+APs~kFXPw zWhr>EE?b1nJ*AZ7g+Y}}Vt26Mgh|Q*)b#$RBaTVkvbw+n8%R+)4px#)Pt8vFpd|hP zoEM*Iq+Za%-PV?0N(&1tKlnsDKGU}lTyz;+Ag6dIF+N@ELG|N^6#om`vO}9tov81&-Ac9dEn)?E+Xg?$9@Adr5PwpeInRN=SA)hpJFTUP~-OIfc(diK$vl z-dxMm@SNKKo##DSL58UUF8qe9bB*V0DQn8Bd&+Xn@-2AGGDK^^fc7>1i&A`3m+#k+ z79?VQ9W{UuEK3}W${VY%lr}EfI5VOA=5_{tdLgjj0;N)3uGmF8zO_LqA?pI<@+5=YzLGpDyPd9EUtWao69%D95hJw&S& z*_*%+L8_2MzoNT{Cfj>~pfi}^}3v#!t=2QDx7?qW88uIOpT?f3ppG~YVAvA9hu2HK-;}#{UIjP z9WkuF3^#ZF{K_VFX+AdHTO-PUDl#fS4iZ&!oi-vCi#zL>wKjW&wsK!3pKw{7$0We? z;q&yhpz`R#cpS*MB;He9o8H=_Os`lsI_mQmj8ME7r~XE_<}2E~zJg0A3Y0-d^khl-cxFFGRM`c0cI#KJxapnK?GvaRlo$pYf9qw%0!OVE-X2 ze;JCFro%#SJQ=GtA=Jo&v@82oS}?Jz-LbelOX;Dn5}>8ge~quDXD$e6*F2VQ8}~|3 zC5#qCzG(O>9SRNnCzc`fIj#g97^GB=cRpu!_}sqOgk_gfB{e+s@KOt|Nc41Q_PdD* zsNDq_Jv)^fF_#xP%$B3Yp$q+px{@7!}Ai}{Rz=8WUidYA+AsTbdaPy<*TfPrkJ zFPG+^2KR%wlqd=!B+VS4fvg@Re7N&FrWX_S;@<8@T07U|?>se8A7HMN5GIsf-N}qw z)?m-mq%t3PSA*htT^Jk6x<4hVoNEYK3=#o>qq@%q_6470c zutCj4g8((Uz=t#uecO~06CqdS&eVlnE|+FU69>|qC-so)!gW4N ze>X=WiWWO=K{)bZ0YEOZq%i-6VV=o6R+p8;Q?_g^#(kHZEyEy$hoHt*BB2??NquxoKIedm_; zxXkbTi0g&o3*0&dPT0o6WWC}8-uB4>UA~}{9_`Rd_ug;2|8I{oQl(*;Ng;mY@?ry7 zD(q9OnT$5+=H+vyNqWl90-m4(XMH*zg_VbzB+hh;(&dnCx_v8luytY*xdFy0Ao2F> zC9X?O0HE|w$Tv~~;3^@Cr!Ym`dDrAV+X;-45r$E_}x!^$jg0{V9 zPNXI6gmeMaNS^WTCF#VrZwr@8;f*w6Sr9Q+EcgHkEm#2r4#U0)Kbv3Zqs4n>B+T9q zzJ1WwA;GXBABZZy)mKRTeYdK@DzY|rg}M|uRW6O+@4a6iRV9;j z589UHWoe^M;e=c>X?+-vf=0goF(`X?VJL4O^BC{D)!nJ8`}|SyKspF^6fsJFj;}Z; zH@jtI1ZwcYEL928FG4V%F|?Q<)T)wqHY%l7=c4%Ft#YD)99(S3B3)_*bsozkjiKJtpmBVJ9`RkJ{$`Oni1*&c&sdQwqj-&Z~rNVjHA&Y?c$K zjU}n}@o3$-xwZEICpd#gNa8$OamGn2uP0KJQ!e89&O8j>xT&SYdAsdYatw z{-}+^uc1WZV}r~}q+R%NfI&QJk_#|?-}l+Rf)*R#`0d2I{^pMU-B!kzBV>T9?=2?? z7X#{Z&t6y2N0QYHv}Byq&8AqO6#a~C#u;xr#h{EwEjIKasSR1o+9B?6y#v=X!P}M8 zWj+KC9E5<#PIhhTY0u+xvL)y4wCf`2-NxLx$)a23xKp9|r!jM0^#SGf`?CJM6jdvO zH)#B5yw~c(%K{yGSXoQ;wcDf-{EN`m45dC>zNJEPQGkzX>;BL+D+rbaNki4)J*4|} zZ!vS7)zhprZ>(!b-GO4p9IllUPv4VGkHvV8RcIqy`(YxWU--52)+M??8bu%BbZ-!j zgg-95ahI4iprYS%QvW>Vj)1cmUZEQvn^e?AU(01FN_rN0rJZ$Ju;yKIiTbOFDOFd*qZ0Mis1`z#{(A>O%_N zCM#SS<>V@!z+6yD+M}02bAmmEi(al^x`ng!Ql%)% zyjLwGF9*svr~$T(MZ7+$l&06XIZLU}Su9FEBjQRR3QB!F{s%GNq{IX^P+?m9BFu$j z|Lk>z=99fbm7eW=c08Zg{?Cuv7xq|XLSL0ryOvne*7>@;YCbk}3#z2c!7neezpZ?VKtCKjrwJ-Q3xO90WhRfW z8K{>B@B7iE6jv&CvH2C0lt#H&rOe`d_WP`&6^r4jIb=j>B&J2-H}VjK8HJG4oHsai zP2?|27*)=;*@SkorQjAsoGaG+gS#^yMdeR36jz9cAggKH6;{tZ=jQu2Ih0Fq#PtYt*!$??H4ZhqapdP z^AaEhMQh&e+#y@x~;8#KMPDtrG*;M37%G4>P-R)CmciLU0(Y#cs|J4ix$!-*2c- z)zIz)9VjbB#kMV#3q=OtppZz34ZqW=qkk4_`%dT`;v(LwE?bJ{M*ZO3ho1CN^=3;m z|GLu0f+4nOr$`&+X7EEZZh_>oJKGxL6AjyjmgSYN;ytu|h z6akzvCv*KR0`k4BsG*U%q)J7p_~nd9%16t>Qsp<2Y;{y>k+v~rCP^~mDdU}%ns&sg zS+JgwaVqaeirOhT+9B-chPD@LLpcDgDP;Q@)xnZ_jA4mZ=qartGO7m;k5;vPaPl-Y z>PYN^3||KL8{KDj#Y2rMeUB#-j$~Sfi6v_H^hcHG$ww<>hJW;zdL`+ zVeSZNj$a1M78@t>8>2UD$BPfpwM0i8dcfQwI|2@wiGKJ`hu*jM%UX6>#}`%brd*3~ zHD{Qk>ug;!TC8p#hMe0fr+!d-pjuFTSwhh1dh;$tNTGNv2n1f*nZ$+r0OzFZrf>D;>@- zXPPryuSo?FO03i~&siG{my6uLa=r zQi<6u2XmQ>4~Ho(biSvE-f7@v&C{pJ{ILIraSCCd)cP-341p4V*|u~lW!S5U~!{>Asp29 zQ*H1g3q&YEZ-8kG6{{!{zg#+VfV&QZ^$dK~LuFG>tM&X*`yM9RV10lD7(MkLIs6eE!lPBA#F03mhQR4)j4e4plm5E zv&!e&EXXH&OBUG+ZOV}A3+ZG@97{3-+ymBs0OQKL6Lej+-{5@=l^tc&aiwIkdV`-~a za_D&qs~c(^Ey-LRQ40g{5GrUe#W})un$Zd;OS_oK{nqsC=bN8+^&P!lR5aJpa{&B1 z9k)W2TY7-1z$_xCfVTMR>LIHV)SSxp75&Cj+P;7$)#l1IF>6;sZ+O)O9<{4aE^alA zyx^X-RJtn*ng%c3r8n*uJB5%t|4BDqDqX+A^z@Ob*hxqix^_ceUkd+t5NCgYeQ<3! z%G5Oy2;pi8%>w`bIs^6(x2F@;g;|rweBKl|MeZ!aCfdcPG4I7GL^8leE2hZ4F08rcj#1Hk}ApZgy$*yBA(thpBTWGrc z=7V;gcFMfT)nyGKnm`$O3uDi#D$@5Xv>DXL0Uo7-QTOlQ^Yj|bVByLakU>9nQ%mC; z_6SWC57_P~f}5=L{Q>SMA%&6GfVU}|sV_F4JO&U$nos___kn{iyDDX`O%)UyCUeOh z^gN}txw(>EUsj45xDskRl5sG2HGL`2=yJ@YhfGV=v{XMky){Xzz&)L{TaUhg2GfNr zMn3zx*zl6EXIMJs4FT4DmfQa~NR~BVOHUf3Bcb_7h~&hQ6v{u;{G_i@PYK&uffmbR zK4*C8qszD=&vJIF_1O5XN|t9z^W~ld0@c@Wu<~5>_w4FVoWoSMsk$1TD9sNN49H^0 zaiomUXLFel7L-7tHVnd{^$8sfj@=Rt(>;L|%JyHa-%q?07?(Rm zSNjiQZuzDbF<@j|x*=zp*U`w~ccBR<=JL zBhU<4t7FP$1-%>)N86i0hF|9)$Q^AVQRPysk5snU>y{i|jJ%kQ^73}--v*<7<6uX# ziClM`?`@~MNNjEpdvdmt`{MSOZmXaAGV@%&4GsW5KsSvoYaQ&Pr&pN-Z7J{Xu?HBN z464vyc=m=X`=FtpaaI0YBQEn!b|gEKy(Pb|H@|?sjr3XiJ~^$pg;Oj29~brpML(o9 zwN;$!JSX$Mio&e~G^)V*^Rp+^Tz#8^FSE*QE(wQB*m!&uNY(%& z)9n0qHnmpeq2@lWv-mr?bxna{I~d!ZnX}El%CZKNWuW6A0aH>I*g{)>R~Rs{SYD?g zmw#92fp9kd1ALJ=qb8Yq@*jE+2A?o%6u;0po~?Ufh2auqjn`9opP`U9+Ls)Ol^Ty) zmUaNf@Hc*d4+2vZ;8rE5UOVhc zbY7L#_yUqJe;t(1KxAPf`r&242PVP7mJ)qpSx4LjI8~|=ZURUlV>ku-+%QEXReYu! zkmdZ{)UF&GnPjh;I+E1M zOLR?o5>66d+J^bJPX9L{I@dvvrKqt&?Jnh$DuP;Ou`SA+Bt`0WTCk$_ERC<<-P}Wn z|HN0$ohA+@2rgV{U|?uWBi_uoVGxgs2PBNe^xuxpm>7F)jJTzNL=4F-zMwIG+~*ZE9qkH&292E5`6e@RbG51w8>|b^F^Ip9T+?DsEOSyyeW8 z-p+oZeANTzNOJ58s8>Y2aJlP*l%Gcs^E9IGBm6z#{UdSDXJ$Q6MK$nec!q61kg-&t zPtC~JqlMT=r7g*-zSr!~IPN2tGFKT4dLXSA{)*r8kyJ@Z=$uWcK4ar{YDQa@X8U4Z zwes7D-iP%7V$6Mmz4~C#tf=j|1V%foiEL-jLgiK?3dzmg57UM=&gRnLuMG3dE zQy>eIhH93q<%BXJmUoikQ7b%OTkm^y{@HVZp(v2s95Wl?H7hfr9R6sIm$t9oZIY(| zsoy|OLh@j9g<99Me7}fgjj$3ezH#3t_itYdvyy|`r~I>TqJ&~)F}!m@y3wE=_HlzE zs+M~2@$P=ivc{liCcOVsK!eU}0Mv(6oG*n`&e=@HrLY2N6WP<5zl~*yxe67ld*-9` zhmDp_I5JzSn$#CDXtuMl6iYafFY@)hS1E-wO42rK#yg(f+t*g4Y(XIP=`VQp8%WEOf{?=I192r^ z^K`NyV)Dkp{e_E6#qcNh&8--D3U%ZQ472XfE8jt)c^cm3n!N1tboTJPVH_GTBBpP{ zsGi0)0&UMwR-#CWkxz)|!^Z@odw-$O8EDPdAI38uIWx=auXNxwsqZ1Q;KHRWKZyYV_rd_s|Iba!Z_nx* z+qkXESYyr0l{yzDNIfKe*w?|=QWIE~H&^+|p&QjVxZ>QL$}HzKyYHE|t`;&a&6l4y zE6v1I1MmZyKR4dLsm^V4xS^eM=c?^wq#o72-(aC4)yxVCmsK%h=J!(g? zVYs4@yE;Jf+^LtF4+xnW8~+t{B|x16+3#9YBtA}hjZ`UU+_dc5(!BlJM6ho(M`KN} zr!*GYS}%jPS+V~duB8k-SnB%+!2S)mzq`eHP^;i&eaF)y#O8!wY$v+x#{Vyn;DW`5?87ax&Uu&5BE{xhm>WWqkRsx0_Kw8Y#hyR^IURf>yU zQ#^`Q1BduqGV=Xn80f~LW|8Y-7~4j`VKcx>9*7nkn#2Z7)5WklLCb{-KtPVbi4E&pB^hTB26Y$7<7i%fNWw^PTR&UIDoS+cC^`2L(ONo@^ zHM34%WVaS$)Tn;QEn8sJFd%>?|GAKGe-C>~uj?!SihDC4dt_^3y7w%OT?k1@c|uX~ z;EFzoO8Sy&s{EUXqRhh`uGXt)CC*CzRO3#4}8gJ(r; zaAN`B!ExZkREMgWnp`3Fyp^_slVuyqk%vSkGGD-6Uor}Pl??MK(!gRp-a3XVs-$@) zG+(Ri6!u_(+W?7Anz!zLzu$hIgns+H5=^>FYZ!4Ji^hB>qaZ9TSTQ6F4FFP4U6;fL z*A4%V?o!zibq8kDtKGit1fbPrjZULYhTfTw@Hs_K>Ql!hJnY+d{^c0WQ16phUg1l0 zBo^~X3R;d2EhiUz$$0cykl(ZYwxEYepPVSQkDM6p9R}pCVQnBiMJ9DiCg9ZkKEH*j zd<&&NoMQj*V^g&Y?kIcH=WM4v^BTf2jhM7d=1a5g%sEh@Ft&o=!kK7;zx@7BB`^Kj zh6su8A{Wq=NRV_TH0{$`(Cqc{NaqdDCc;msl*!{;tCwK?H7AQQO@tei$YtT@%)d-Z z=-~<)-31~5;KB);|BCte78Gb1u7ijO4;{bT4@^#1Y#Z}FtGG}h3@M>80`7ixvihZ zg>UfVcWNjU+XJLI|K9b$R|W;!n)K^)_}8hhms~1WWf##_Xpi@I&v{cuRbty-DO!Ar zS$}C&i5SxF8P~R-l-Dc#hP8a?nH-H=x@eq|C9==t1R4dI1^GZd9xJE>w4tL*JC)2uyFP`JS2&Tcky za029!TLsagmXwinq#sA2fY=NzSWY$kyV#-Dn*}6<$nL^I4{XyLldPP<1s8h8iF#)q zEF-%;*?QQLC=3&=n&K20yfNPYlGxPurvYfVD4iUARtjW6!4PB<8!-PuW?nTUF1vZo zs5kok^k(M4#xievw4RE6E})S=o-_Zmq5BbX{`q{y6%K`ov2$?>C%qIXe#0k>H><*E zs9pEMwjra2yBCMvQ@^r5xw+O*Mki}&>v*j@9?1BS;;Fet%va(mSU29BQSe+lN-G{9 zt^8*KyMgAp|LBk5ssF8gaYKXHvjOONK6v8QvuopLC->g3@f#;4=ewPwdYgvL{`lU< zw6}@idC})@g zr{EsJbCR+kMq1qs`q9eZH+nc zVVeVP1fqww%4|LO1%-^wZg$6MN@FNjFhkBG&EPvnBdt2|J_PzUa6LUpBo)^itkN~7 zc4Pv$a3L}9w}i(3H=Xzg;ju_W=+Eeq&hAv=`xo}d@;cq_Gq zwQV_jfmV(E~0rvAJ3PiqumHa8G=!$wM zSx|wBM4^~?(IHdJ1*eUm9d2ZEGo*rSQo87k^T@>k zgQN2&Soy{n|F2z>K+<6(>Z7U$wuQ{_>+}6M%lxLY4({W=>heV5>`q4J~yNlhFW_IGG6attLQobkvfUxf>n-*n(KMD z+Z^(ijM~gI4KCe*h}~sCZl}q56OBuwJX6DBagk8Vhu{9v|G_Z^v)V{@2tgcW8%LAC zvTIWogNOoM8kCt0=-AEO7Dtl%mf8G-I!YPcOshA_y&8GWDriKf#K{<`eLO4fnIflU z{e;!MLYlOI%v$trQsRPr0(;9g_wzx$NiV)iMsBjE`YM8urh6~dl-Wogb75AV?I6NV zl%tyj=)xN@C_2a`@dVr^^R}ni{4kY3n=u7gac*pC1#) zJZ}KY(&f-?x&2J?;2)6a7s?8|X#ipiPD#?p?^(+c-<-bTQeg+~Q@0V3Gu3|cOgTC# zUQ_Gh4Dr-jV^x=mP|9cLkx@drEnTwNGQyf7h_E+?W zXV4Wq-IAK=^ib+-Ama#NKuQq_uB=R=LGcExJ2FjJJ%LiP>rtKyhv=3bIl&$5Cj`Or1E;Yo24*>BK%bPr|8hBg zaXlb)pM&R>UH0HM{dIOhC&H&6pSF~myVP=T2x0`&0gFdGn*S37{}GOVw0|}REZ;Us z1$?vm2)P?gRvzZgt@@_QQiaqaw5bGGUx7G0V;3nkK6k-9MC9n{`!As7K?S|I;gRPP z55m5HCQOW_6zPD~_p(bK@iZ;^Ud!}WCnQuC@{HNbS?^M=5lsatfe311P{fQmbd4ttEZQ>6esD{?0dXJ7l5%DDEyaT{MUSUAZh&cvr$~S zgaua7*le&(#zi$vjf+&S9gfqe-r`UFePJw30e&V@8ivxEc#1Q-qO?40_Sc>mbWA*d zTsHcEK&?(FxFBoI42pyrT-VGK^}>nG4x6MoxoJuUU9z|`LHRE1tR4~8xSwFi6QrHd z2qW7}%S05m35Ilb*rT+%1)p>G+^!is)XZ&26&xl`yW5z>gBpiEc~US0n5Vx_AN~sh zd}l?kzuprJDv*Ed_TKtB;N0Hd(m6Rev9izm0_ubxE#zi<0;j0Io(ce#uX5qRoL)$_ ze|5Zbv}l{M_hu`;+PqJ}HfPUsUUc^4)6oKXqZ}e&iLPlU7Fb1%P1m6dSVad-hhdNy z53Iojq^AC|Bk|h~urwN2UjDSz|C|T?qvNlPIiy{_qUXt4^_KQEzm3~xbGi}r{B=E! zk%gTeL%O5V=T^vEkS!%Ww^uvcvF_~1q1O%1O_ip+cu~|=cp)AMX1wNhkRklrt#8Yrc)=h5BR&q^-yvsLQ>l1qiyI}V<#2u-d}nNDjDPWB;G zpOItM(F*%=J4jdH61}K#?t=@%gcZ7`8A>m@3TD25-k3R;vP_0QV<_Gko+KqLmz=0GnJbnc^&@8{->u-&Ar1PSJ0QU-JN8*vZ^ z5Irz8Y+(3^84ml;UDQ8%4?o(M*HyIagaE6kb)lx6qk5=uut7}+Qjy{Rbmy>Ze#a{_5zqP+OjKe%@ltzl)mFLcB+h-Gfc-q)c1 zN((`#tb_J*9Vw49YbsW`I_WV2jRbd@m}L^sCBzboNJZ|V!I8D-I0rOT>Q z<8bp2-#{x2s0pqoAm)Ho7x^EY9I&-8lrI<;I`k}xKSZFqlWG3mJN7}bql&nL2Kwnn(vQn*Vkg6>xzw~>@FC%dWN9BE z`7(8mzsqWr_&b4qG1aG?M`yl(d@QWwR_J$0)0pP91#TGeufjU#PuLlr-79bG)Vunz zp#;s~oF$oioY}GAOjWh9xcnLM1vHQrG{s1{*;6BTvW%tW2*33rWypC%KS^u@Ps(&B zbP)O(>)5DIi@R$^kngRi%ZL|19XDGTvqwcHncqGYnGS^_cp8Alor@E1zdJG zi`HWh*mi#N;#}P1#+t-U zXub6l0}YsB)4rwGzN#>|b(eiE^utB=b4`a*74oi&A?(Ha8(7l*7}jUHg8DwyAS>FdDt)IR%(SG;#SplWlEtZ;zHnzOiJLCj@-qS-YhXAsoz~MkT ze}NqOhb9jLu&d86h5nvuK=<{;|C-D41J{Tzr$OsRkbI>h7ujo7buyQ01UqeV%``!Q zfZM*iSS`#U7D3O=3q)ZUP7}c}f$F⪙!l(g2dl|`1-GQ`g@_R(@ea(z=Nk*b^ds8 zAdk(tWGAD@Av;dn($JnwtGeWtA5RuqlhO$kbLRW$NN+zSckPZ+gXQ#UK~uI z^5RhHv79z&2R-!sBg3X1_C&vj?)45dUqCh|>;k^PVn95l6nV)_0+P#?+vZyI2-OO( z1FKA?Kx1jvYR2)Xm)EZO3ENJ|t9L7@&M#CvbPv$7D?F@(4R87?8h8At$M<~eNM!*Z zWhbNN-WEY%li)|u=;Alx7H?STcP%BCWJ*qQ%PAJ44chGjmq`uZT-$%({3wXPzYWh8nuRs%CGY-(PTBO^yYZMGIMn1b2_E1ZWe$OZGfV6qi zh{=PYTR*N_qcX*p&365GZ)8mcutrdF&`d;RMnJKveuVL#|y)nUMd`2I!gJplS7r1Z9jPfR>0bs*y6$}PtEV~zt z!}B(h18l0bR9rg^&*IGY6n`vpo8%N?v$&m}%ic~W!JD8*vwI8ZF2!INI2ho&2ubw6 z&1w5@IkKNb`g#;*MN!H=4J79kcEBxr>sI#Ozar_clUlz`Zv8*q-oXu}pLH!3VGJlv zXMQj%Cx=Mf!yEdLzwxrr@VUve9r9$7V~2sAoH}W@&Bi4i(*`%z?HY zM?q49H)L#cSGEJp)h`;^aDs@LCZ8Q}D_sG^L{y=_tKO zKtxLDgx;H!5I}krA}Ce56zLEMoggKY03sdfB@}7WJ4o-~U4Hj`d+)pN{?2pGx#vFj z{>YP+m1Jc-EAM*WImaAx3{X>>85iklulA!uxq3j5mzew-p(ir8qTsubeW{hI{da~E zS8aO9#t+x_X4pHN8v#i?f@V)}30gpF{usm)w(Rfr4^4J^}t02==9 zOu_mJZ1-v<(1H!qy+y%Q>GC008|ImappR3~N;iFYB-+6A{;ZtyyYm*9pE)K%xP#hg z`Tkt;gsR-4pLu;%*h>2S)cObuefeVppHDn$p!x#F^!2aUk-3EGMD5pKM(5^UYnk&K zJOqj49pH>V*P}P{8GDyAo;O|Q%GV?k>iV3^U%|f-3pS_2evm#f|$Xj{d?i7xVqL2nwo-uKZHd*9129qs_br%y9jPdb%uzQzyLDjtiJ%sdSl% zPRydFP6?2l(qsaOeBzY^RPLQC{gL$5xqz=b-MjTY@kl`6{OHC`YA!r{aEuAWM2OoM)_n2#yanMLI#*PRgtXA}5Guqr1srEPBK+GUn2n2*yrsuN?!K zi13MKQRe#Auu9E^TG&xIWIk`Bd{eRrwGu&0xFMIDCcLB|&Rddk8mxE*kMN448Y7?WJ3d$OkVnh2&irjoHkRcbl84Hq+noNb=tk1R~>vJ3b^coT=W zgD=YkA@VaqlN@{uvXp|`=g_FTDz`jG{5NH769f-mc)AUylSMU$Ge{c`^91Jf9v_^) zZhk5m4@qn~BTuu_f&;?lGLcc5(k8|tx@uMeQ{ARkBRngrk%dBHX$gpw&26SQ zqB>QkoubUKXTvU#lIn?C93JYm6AFJ#gfgj*0qp_+6M< zr{=iAEUo2D86TEM6b<4p*NT|fhr-d~dX?OI-fLqF$8EB%_G)gQYk`2zs-c?P91V;p zs!Jmeak+CQ$S<6XI~nIk@aA+3PyP=N)tWy(RZ4Cih3W@x1rKpcana&NJk^X{L#_OJ z1{9DS^Z3JO963jK71+gJofDePdm&3(E@j4j5%ZLZlU%U;A#tYMwMKrqqfq%K=yRqW ziorqMz6P*EF9ln+$f~!-<(Am^FPuqU08e=D17J{@_SKi?6nTnz`w~me*`lu8EE3yk z_P=oa+H|8-%RgKi<=j39C#aC2?Rk@L^M@ktXXMudBqF*Mkq`^S-<4{-zjM?-XRbeT z)jwPSc>hrPhd>4aK|ufqiu-fp6Zvn^%C|~*qu~H=oeejF+~MhJF{s@(2P2y#^k(vo zRe!O0sk+LhwyZ!pjvbIdila((|2hU3)wLgBv4Ec@({=%95cp>ABq%1m{mhz!Ymwxiz ztrPQ|ACCDt!d?l|CO*XYex^0 zUbEe~X8yEK^1B@aR(rQ~C{aULR({E*Xv|wS`;~lcMH25+DMK2hsgKuyowb60$wq;V zHkCl%lm!^_fDRv^)Pl_U1K$OL2KIl&pCMCj zVA`1N-$JQj$l^L7L~H1J39UpmoIZN;I#LgDvtaRn94iBQ~=|$`u_tK0iy`6MW}0OQ=AbqBoc7 zj=%W0fiF5A1hbjvkh8K{Z8{KFI0s_|jyOG_Tz)5=7iU`hZ9Yw*lxA^Hj|=yp38XG8 zsf348fRDwO{NA~9{+3-?&IyK=GwI7M3F7kw3cM2?X}>Cxs9YKSc2w)7u~9#LPN~sr zd>i1#=Xvf+iB+EUy_IoDN}Ll^wDEcKNm1usn8M+mC|sNE_b-N9XR`J$Hb{TYZ4JGe zFqXXv+o&9od!QV<3Z~VfDD{~uG4FV6z)mH%+p$kPR6Zdj9jvXfD$D7K4X?6t;Jyn? z4aHJ`l;&Rto^K%E?gR&Zr}V%l?_%>_#aBk23~Q9(@=zMRd?rbFI%b*U*`kOgXy2pp zirVS^dO_?BoZfOl;QNb+N80LB$MJ4v@upJSgktq3N@HklZvU!U`;7hGQw^hpq}^*1 z+PCw+no0gpO@i|vY6{JeglI7{W4>qJ9BAYrdedA{Zy}!eMX;cSU_XpH&&eiRK5?!Tr7QaJ7 z`mL*hZrDQwPJH=Ym_8~!T<^Iy%c z|6lL>V_61=xsl@<&-cx&5g1C-7W(il*KYj0wtCE5NpREyUrBK~rCw(PDC~4eJnY+E z3E8vUFYcmK3!J|MFWIiV7N|QX`%nb7=y0z0^W~geiz1arzS6P;g><4qEFM>5+Xg<2 z@A&spY$RTh43;|g+A_LasPDi&Vc+12EmdwHKQc72O~56u&~7acl(#K8NDXL}DUiNd zwh2_{%5j-+FWI@%u)d!Gx0psTOd{P@uZ9gmWymXAe=l&rSo!+{Xng*v=49Y47v`q? zqBA-tTr75>3gf<0c`U4p)ylD#{NWioA|pGNIE0#lF&7jvD1I>9sA-v zXF^Yq?V8vX68ZFg^<9gfG<)bajT@tPXDB0MK`8?0&ebcCvifVF=e`NAHI9iFCNQ6J zBQ=T1iV9XWmuvD=)ZAmm;y#W8GUxg+f&X}7|K;sJ{DqVT0Rt%j3$KI#5U0$ehZ^)Y z3sfEipx$ft+~3%W+s9lF6TA1zeV@;lws9!ft^H{(hxT8A26i<9HbaW{T1tW z%Kb!%q?Jmi0A%~SkJ1`a3@z%Mz|gk^)#ryOejM!Aaw*TCjqF$7WHlkfyacW!HoYIQ&DzgAf!tTk-W7<^t%jA_o*sS0xQ zsx^7M$T@%KCIkP|vw}SMYba229{7dx<8du#5!BwASK$^@qlG%b^3k3_c9-XRnLA7a z1t-ysOz9uAeXuK7b6zG7=UCRFJ9)`{KvhJtR$YF#q|T3t+()k=`b%|4LgyHq>=%yn zt{gI*^zmBUEsEsfvswydv9;w{A;}GWS~*@4=M}zSfxh4g%+C`! zF5g#xHAz9#T%FK)DdUxZ57i<5+u~zUr2(&X&g{e%JO)gS!aCyIW z3Bn%{=mG} z5(2UQs6!zZJ2g?Zd;RmULcfLLB*I!u-bF7VL#v3Vo;?1geKw;=6 zhtPgjM5r)xDCz3hQkae?CD_lmioGq}x}@t8W0W3Kz;ao`8u}nee<;n^o~TENTXV=D zSrh1~DjO${tAtRttF_?Atmz3~Q4PH=AJ%{9asl1T7^;HuY9iS-0Zvc4PyU5OJlI!g zRpe?ho1w({EHbnJnsbR78IjxdkH2X1(Y_&=tph2}d^bL(#Oq?PZoxs~Lw{E^d#BVG zThE&PBS0Vfa^+0F;w@ew^$T`=OPF}+oaUouVBrXLx*{>3bP$}P0d=>Sv|h9WK| z3ej0(8p|&RJ!qZqLuFYcc4g4EUNBrW*hj{=pw;dNvVjY z1W{wW`$iG_mEVHI?qW4{K0Iw5*2o=fW#^E(9spD>t1BC%UI&lA#)?QfMQP{~couov zCSXl*V)i5Bzug=zn;R%#>t(iY3}UqEalxRxO=-10iG!>ec&MeX21}^6v#M}<8ByM^ zMl6cQaeJG`G{Q+X&bh>m>psfmO~^G%QC@H~w^3hW@pg)9#idN&1zDXD6tRZR;~hJS zo<*~*1aOaL5#|5*dX(EOpjH5-(4rre@-tmh=aq`dy|V9Y({+6~J0^#K@u_l58t%24nT)1#8hsDE>uM{Z z$N6+uiQ_)|^A!=41E!Rm_<)?XB5Vmp@Pni+BBHPk-+Qal0A8_H#!eekb0ydsiD)1g zSRQ43mS2>KwyL!??2R27lyRf~`d7rJf8MVF#`~yJ-0QZiEF_Kdtfo)QA5d2RDC*qS zY2Pzpg#9AZ(%SQk?9x`ZvhF&SqUTjjujARFA>tnv*0;@B=a%reQxf^0qNE`wwhYg9xf-LelI@v4O{-nlbjaRy z@I#BeZ)wpQq`R`8L*D=ktgBeD62ce8KV&fc{f^#YHJooh`-E)AlsKD!>MmhlLSn;o%|ezj z?EOjfk)(A+bROjX3Sy8!eL5hIRJ-n+<@sHziHVA$ecju4DZ9+wi%ERD*S&J|`35>j zuHofuPB`blQISiZtvvTqO*FH5#m7}nRN{-WSmh<&b@Ey2hS#qNF?NC1qHLSY4zc@d zOFvU)yeaS5uwUl}ZEQEM*sMynf2IxC)Y)DM+dQ0K0H;_Rx*VX`_LMmaIGHUY@~G`) z*;eZX&H2V+asBu5POuV;Sn<;@-6W?>=QGPyt_4i?k0m*2d2St}_+)z`RSlC}j!k0) zOIQ>F!o5F`Qd!A2oqn3f(7^8&w5akksAW^c%ItAhM3SIwOa? z*RNy6mrX@1@!b+IV3WI7#Gt)gf~+LjDMMV|P){@}`yles>%bVsv)}40kF?L8%$RpT z7o{?~E1>9;2iD{gQ?Jz`CqVd1hO|1>B!;(Ji%mqC)6wJ5#5G?#O2^qZEkmgs?8L-j zfjTfMzsDGIz1;3v3V=V$FZ7Yf6Jv5N{b1D3@N8%cAls?v8;9J)bBx-ayD!#T|d}KM7mQ&!bY{ zS&N-dUrAUuzJcA+Y^dPwirU`!k@yS8xVB&`ugW=*1WZGeg$+A4=Rl9dqo*u+Oe3{G zNiIfe?cXGQG^osm$9E<;hYlri#;0PBAm|FX>znRV9hQO5>q7eV>lE~O2x>-LB%Jw{)wZhm! zmObQ(LYsYbdeZZV36ZTGBvMSi_!LE$Rm=oh#QCvk383#$`-7D1-=e)o1X{4-4M z#o$t;lZ!J_VXx48WL#Vt$~Dhl%jZZHd=rfgG7L8z3KTJ3O%|~gpBnVw6IW{7mEqj7Yo~^UbZ=xJ6t@FzYksf~dOW0N7s@DnUz2r872- zfan=`Baj@Tfop?^{hcoJ19(JWBAtxv@x8p6c)10cfz;S_#bkcX49yDZ-X8ezKt6-< zXVp{tx>XLZ?5W<-fa&BoGTo?o1FiG?trIP%xcbC1my_fS82$3=2VgfbrNJ1(@N_23 zYfMb(hL+Xn6C`baCA=J`z-``=%U7^$qJA*58{@z2r1m(=X3q}1z`aUcBb)#xdKHrj z2vxc$)45y}N|d2OnwIrfqvQx-PExbq3Q-(h__(A>_z{@=!*Lv6W03$d{OsyvTZf3EkVh zlVR}!5sSs>vb~VFD&8NZWcH>e-+C1605yn(KKOa}Y>ZW-9lezGeYMS@axqq33%pfb z+F;;AqkTRg3!fE~aWmlLe5v}Bt`J9Saa3z8BriI~0l_<7{kTqaf!s%>f!fhm2DO3Q>T!~TC zPec5MHGTtXv>hR6s_dF`u9x{Zyr5pqVYhE3DfTT?jE5i@d)SdvulXJY&A=<_1^)%c zT3ZG6m<4lNO{DhmGp|y+*1k@H zrS8j_!cfk0_5nBywHP4M_nk+Hk6{|zF)(CHZPcn0&KQ^@C;9?W;q0U1ky9a&h6he- zyXm5%?1IvU1%;K;gI)RUTunGt;uPRM91Br%M<`p*bgE?02X`AhOQq*4epaR!e7_IY z3}ToD!N3qqxmb~D93oDjtPKbJ6{4C+VgBsSx7x@F>GX3)&hqLqbQNBAs19Afeyn1O z=a-B8?5VJL88<8SuQG4!79yka{WB`afGcQBKkUG**ek-OYszAjs6RZ1MYTdN$f92+=({ytf}YcKLGHPHn5KuL9NIfPlY9o3Cev4-G!2 z!UP59*>cE?l=Diq-XvZz%msiTKdWJf5Xq^;nA0&Ic^N1{MNm)ZizhCfs_zBo*u!-{ zM$OOEsV*ef;lDi$efr9V@vwXGDxl#x8(sd_eklWSOKC|nvi__S4|bg1e6~Y^q$@Pk zk8aXp`Ab}e<+ZxEyfSj5wjP}0U-#)Wz9t72CUK=2v0X7>e#AQ;-{05ow5SPPFvIfA zUZJ;Z3db3Z%MO-}J7*mVzI#IUcHoZm;_5^*bb;}7gl0+xdhRCYo z7u7PKh=|87U^QWy@p$b`ap3_(Ql&z!OZZl9?Y0J_K(FbI{}2qyi=p=AJ<&MGgpBWh zhmU=`+P$(u4o6PEz+0Wqv`DmAcY%CQHJ18?V}!qtBCdQh1qYU#I)emH*JU4bfGY5O z_1PE`;dCosl0{MrJ-FYb#3ME{_OUG0b@TeGS9{B`lG|kzXjq=hK!=O00yxF#B*F4I z^$n{-eDbkf?qT2YY!hb}z5Aa5Rna;88-4t1M$E?4)i_j^?q^OK4K_mr1CUKl=FGozWj$Nt@ zL3FUdbQk_k$>klLSC;4+QH^HaD=q&~)asGF$D8cv5a(7+jgOFl4nom(=*x9f>QSwtJR!F`{diEh+eT5HffGyBwG|?#SWexrNE>b4WMSO+pj!ets7n5V2W*vT zk;3OLzo`fQfQ56^P7d`95@=ZHxZIO$PAOa)(lexG=Ov35l&wk4O-m7H@2h0swEHqK zlLKE`*i*lvAY1ns^4%!FA6Pima*YHNkqTLCa$voUHZ$C(8|m4N?Z`^FQy#)Xr``;A z{m_1#-A(rGF*<8!YvXc0L;~$Bc?aMR0XznlBDEAA5!*e{E-?>OnYf^h#D3?G9gd_o zAXBkyhN5Ipc*Ol{6;lf~sNr*bp#LfzZ(o28PgQcSgW(1A{5J8qSf0y=vq2*tPv@@( z+9p|rL!RbjS14-+HA2=GFU4&PDy)W^pw%aKd+*{3oCeb9dbp((6?619x&A@nYOeQilh-j!g zzV+598juJz$*&B~LgrXBWl}ZSX6%sytc^D##)mNAnnuTWoG%wHG&o9zoMJLs{qhW8 z1^N@vqqS#mXLLo{q0GB<$x+eI{KzFf(jCRW&Pb36w>LXjJ1D+=P&94=egFB;SjJ%r zka8;2ELGu*x3T>;?~*ZXaK$_#dLiY-SAHWx`tB<&n}ZK)w_2|gL!6Ype2#6+j8EkL zt^yP02wzUKQ{|p%(`PG6)*RiLxy|EJNhH!Q7^~wh`Y;XfY)$w&*8#x}M`J!zI7hN%~YV{jE+Gr8)+Y zk)Mk!!AL9yQZ&36*5vBAOe<{_Y8GXx2z@N-nC*02M2@RyfV99WbTt9p!@p}~xH{@a zNBmFDZ`RP7Juj8QP*s1t95(j5AO&%zkPPg(u>6!sNhkk>6P4nB)dleMhes-HN^xVw znWv*H4vQNJXpQD2S3UcYaq?0-N)OOk~>Ul zE3C}1z8i8ct1B?6ZO*qXy25v07Mg%4@xizBTjU~!D-8ssu?-yr6dcm&E1Ur;gssSW5s`q>9M|L_X@=t=R5d9Xm zmi7q1D&78OyW!R9qeEj(IjI9N%S4q4{FYu&Z`qmT#6Ju4@l z7Dq!$*4o;ItljU&6*Lc7T{7ESsG^Gd+Xopw_>T z4IP4d22S}hPN5IFRI#pttuXq#*ka0t&kxih*N%g+I`-n4EMI~JR%_N>wCd&n_r)2T zJ|@=QD%MYv)dQn6*|JN_kYcfbr%+C>WUG0B3G;oBNU_LPZxZ8-xl*!;4PGv#mpZl*HlZ8aoINGMu7?IdS*XCKFD%T))COf? zhW(rP&%fqJQ`{Kdtd4IWPfpKY?_XN0s6JibiaHq1Z+rm_MfYW^g7YoXHzm+a@ zU<%jYA6@B_n+M^axERvs)(O%8{2{wB&tO;6v#@!=tO#wm;mQH3@T~RFg?KJkDzEF& z7ytg}3xdV*3*wDNimA;60-P>&{Fc2*Zxpi|7`|)LsOpYf;jpTV}e(9>glC z&IsPN0_kRyumV$250@85QuXUDS%hd>xPh_gjLY=d=7FF8hOC8=4Gv2(ARq=0c zxS*(%=BO0t$HD#IZuUun1D?uXV1Z}UeZlQ6rfEe?xpeHEp-qHY1b$bTL_k`lH-Q@^q6Pej4T<>lXHnxi0-()6 zX`R%&ue&?~-+KxQDag-MHq!glJGa5~_-88dcF=s~))t~VoSBUraF!l~AQEz9;~2N2 z0UDWlW?aONHAQ9Cu}6xqj-a9NQIzDJy%3&Op`61DM#%ZPqwBQU`NbLh)$^mn!E2lZh|#H!ArImC9c7 z^*D0oCbsMd#v(4t^XD2=8*~RN(PbZ8X1k_U^FEgtYR9eSpv4@=<@1eU+Fn~d{Q7-^ z3b)Ko8N3sIsMS?TVv@dIt%*{MY=}7<8<2)wFXYQR)49LixnvMPL}&rwxjR>?;OTW< zyk;lu4s-Ff>Yj2*Z@!0TC>g0nFprn1FlgVwQ~3JZwY zdhqF(iJ?ibfkXb6bs6^n)VpJqaJ zaLV+Ismkz#9qMD=_wSd0UPti2k6{WJZ%b(1r1C=xaeGaK$=B-9 zo*`)O(I?E7I1tiNA51|^y|pVhRA~4`A>q~Hk8N10qdS~vWEUcepF$rc%QNelyUR(( zn>xz)XlEgH*LgSVt0JY=<(PI+a#|;Tk^0I)vssdRed<7dV#n)fJ0vHbFIZ;X?8l?H zlb|1Z+f`!YfE0eXih8lpA~yZOded2AIC}TZk8UKukr{T_wd5#Q=%sH1&`fiqk^KRqA#z64 zN|LLb51WhyMM(|h9*2fP=T5k-N$UfT4hSdE?;g^Uw8_Bjc(#(SZKl+PEu#)N zJN<1kdetYzv5hXTES^lgArW??gN%;e@A1#b)LLAw$u-~BjRf}+Q5hBm1oKWFb=TDTvzTIMT0R?|2fhh1gTa)%Sbkna0G_hbcT43JvS z?@CpMYPLZ1ZTl(&YUvR*)nlcTB5o!KEO+6Lnx-1FgTkX-A+JD*kZr0!7y3t^uSvTR z;Yj-WUcw%swoQJjJ_0g%O|G6Fp0U2YFV_n=b(c!R19e5lp+#p7*_Y|eucBP4se0Ah zC<5$3M3l-+)6_dBVO!RO54Ba+Z*u09H3aODFh9vqpQ4_1()d23Z22_yen-QAq`r!?oKR8Opul;u_a2|Y%a>CYGpwrVb1yj=L%^1ktFEDGk9o7T8dM{; zb%=nMTXz`h+yij!nux)LWuAR`K#H?h`0yojaV$<%i_^ z785K0L$8LMwNhWl+mwN-J-)t$%A9fuyREVBXeIIrP*pQC&pdy-1JY`{u2pUKDGA-z zVi50Wqi**nd5-6=iT>kEs!w zI~fyZwi2ZlqO@ctQ3--RiWXPV3Vy*EM7ro9&LIejQ2Y{{wT;&x?czjB@*t+!f5Q-d zG@2EDyOGvK%eppwb{VR7l^3?^wqQ?mx=gZktet&GQ&nFNl|S`nJ1Y4>Y-_t(6JPBU;Y3U69&Cgk2|&!{tj}_AAH;h|i<8EJ%ma$}qXwD0J$0fydJI zx0%>~l5+HSf@Ka8@%A3TTFzGgZ8r7%&)DGFzd&%V3-+EMdM7O>oXO3C^BP<$zmXUb zeC`w{(O}!>q|(kQY-&q)dw%^h0iP<4_vjIF?v!G}fHz)z^WaQ#LMUXnr}}}#4Zn47 z2Jb~pqz^q`v*uB1)oF_U8)L0--t&* zs0<+fgY8NvgEpP(-4r$A#Gl60U=MT#BQCnRob64YI*X0EkvWx%mZ`_Bp~+$q7`6-E zcjw(f5?yEqNuuwMy1k+fZC5m3_49}j6fb_s@e{avWOzj}C6_av%WD_B&abUKL4IEL z@QeU0b!gSilc?>eczw@z-0+edyOBFnGe4o)UKgF|ino)8yQR9mQJdqudT33W%#-;8 zNYWu3S_4m_w4{FFTtjt}f6CirgkEMS7Ia1t&1B4n`w2AeL`)xhZlKy8(PJ;eWQh^_19XhoL&qkJ-;DDGsUSNF<`*x0suCi8gxGT|N8gs8nm(ym>f; zgIFcSZT%2gb7Rs}OM~z`q8WsGU1KKDhdH)SL6=3vZgUaxy$ll zm-L;>teP*R(e5&RzRED$@3Jj9znXuWj8~UC+dpluC&A+j;*`wZP>yN=i`EKCSCQ*dzhDDGs}P7!#PgEAQQV z6aJBad>ovoAab$7wlDJ{hkvC&n( zBNo;%+EFq@3PyZW_J;DlOe)JwO#9AAjHq@zeAeXBR(-CHD?Ew#f}s3}R8%5Ma}nr9 zp>D{7el+fSiZt)%lI6^QCs+3NBKn%ILB@*C2n7xS4t)TMoV&JxtD(Ty&W@K$oeO%b zX{s3zroRSyS%LuCJ^p)|YyPSj^>6!c|6V%*uhjpAObhv)xK;iKDq8<^@Y{bLDDI!X j%mUorzft_(b@xAx{?ESvd;s@foyzYo{1+d%zrOzu&S+9i literal 0 HcmV?d00001 diff --git a/openhis-ui-vue3/src/template/nursingRecordSheet.vue b/openhis-ui-vue3/src/template/nursingRecordSheet.vue new file mode 100644 index 00000000..4213e3e3 --- /dev/null +++ b/openhis-ui-vue3/src/template/nursingRecordSheet.vue @@ -0,0 +1,392 @@ + + + + + + diff --git a/openhis-ui-vue3/src/template/surgicalPatientHandover.vue b/openhis-ui-vue3/src/template/surgicalPatientHandover.vue index 9cfeb564..4fda3190 100644 --- a/openhis-ui-vue3/src/template/surgicalPatientHandover.vue +++ b/openhis-ui-vue3/src/template/surgicalPatientHandover.vue @@ -20,7 +20,7 @@
姓名:{{ state.formData.patientName }}
-
性别:{{ state.formData.gender }}
+
性别:{{ state.formData.sex }}
年龄:{{ state.formData.age }}岁
@@ -89,13 +89,35 @@
手术标识 - - + {{ item.dictLabel }}
- + + +
+ 药物使用方法 + + + +
+
+
@@ -166,7 +188,11 @@
皮肤情况 部位 - + 面积
部位 - + 面积 × - 皮肤情况 部位 - + 面积
部位 - + 面积 × -
- 手术室/麻醉复苏室护士签名 + 手术室/麻醉复苏室护士签名
@@ -491,14 +529,13 @@ mmHg
- +
交接时间
-
@@ -525,6 +562,9 @@ defineOptions({ }); import { getCurrentInstance, onBeforeMount, onMounted, reactive } from 'vue'; import { ElMessageBox, ElMessage, ElLoading, ElTree } from 'element-plus'; +import useOptionsList from './useOptionsList'; +// import { A } from '../../dist/assets/api-DmiMW8YF'; +const { statisticsOptionList, getStatisticsOptionList } = useOptionsList(); const { proxy } = getCurrentInstance(); const emits = defineEmits(['submitOk']); const props = defineProps({}); @@ -533,7 +573,7 @@ const state = reactive({ // 患者基本信息 date: '2025/8/13 13:36:41', patientName: '于学斌', - gender: '男', + sex: '男', age: '46', department: '普外科门诊区', bedNumber: '035', @@ -591,20 +631,22 @@ const state = reactive({ }, }); -const submit = ()=> { +const submit = () => { // ElMessage.success('提交成功'); - emits('submitOk',state.formData) -} + emits('submitOk', state.formData); +}; const setFormData = (data) => { - if (data) { state.formData = data; } -} +}; + onBeforeMount(() => {}); -onMounted(() => {}); - -defineExpose({ state, submit,setFormData }); +onMounted(() => { + // { statisticsOptionList,getStatisticsOptionList } =await useOptionsList(); +}); + +defineExpose({ state, submit, setFormData }); diff --git a/openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index.vue b/openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index.vue new file mode 100644 index 00000000..b357ace3 --- /dev/null +++ b/openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index.vue @@ -0,0 +1,298 @@ + + + + diff --git a/openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index1.vue b/openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index1.vue new file mode 100644 index 00000000..9018cfbb --- /dev/null +++ b/openhis-ui-vue3/src/views/basicmanage/caseTemplatesStatistics/index1.vue @@ -0,0 +1,144 @@ + + + diff --git a/openhis-ui-vue3/src/views/catalog/device/components/deviceDialog.vue b/openhis-ui-vue3/src/views/catalog/device/components/deviceDialog.vue index 654bd459..49039725 100644 --- a/openhis-ui-vue3/src/views/catalog/device/components/deviceDialog.vue +++ b/openhis-ui-vue3/src/views/catalog/device/components/deviceDialog.vue @@ -136,7 +136,7 @@ - + diff --git a/openhis-ui-vue3/src/views/catalog/diagnosistreatment/index.vue b/openhis-ui-vue3/src/views/catalog/diagnosistreatment/index.vue index 2fe7c55b..773773c0 100644 --- a/openhis-ui-vue3/src/views/catalog/diagnosistreatment/index.vue +++ b/openhis-ui-vue3/src/views/catalog/diagnosistreatment/index.vue @@ -115,6 +115,11 @@ >启用 + + + 导入 + + 查询 @@ -337,10 +342,34 @@ } " /> + + + + + +
将文件拖到此处,或点击上传
+ +
+ +
- \ No newline at end of file + diff --git a/openhis-ui-vue3/src/views/charge/outpatientregistration/components/patientAddDialog.vue b/openhis-ui-vue3/src/views/charge/outpatientregistration/components/patientAddDialog.vue index d26bfb55..961cea09 100644 --- a/openhis-ui-vue3/src/views/charge/outpatientregistration/components/patientAddDialog.vue +++ b/openhis-ui-vue3/src/views/charge/outpatientregistration/components/patientAddDialog.vue @@ -355,7 +355,7 @@ function getPatientInfo(idCard) { }; getOutpatientRegistrationList(param).then((res) => { console.log(param, 'param'); - if (res.data.records.length > 0) { + if (res.data.records.length == 1) { patientInfo.value = res.data.records[0]; console.log(patientInfo.value, 'patientInfo.value'); // 将表单数据发送给父组件 diff --git a/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/component/template.json b/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/component/template.json index 128854aa..3e01fed9 100644 --- a/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/component/template.json +++ b/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/component/template.json @@ -6,6 +6,28 @@ "paperType": "A4", "height": 297, "width": 210, + "paperNumberDisabled": true, + "paperNumberContinue": true, + "overPrintOptions": { + "content": "", + "opacity": 0.7, + "type": 1 + }, + "watermarkOptions": { + "content": "", + "fillStyle": "rgba(184, 184, 184, 0.3)", + "fontSize": "14px", + "rotate": 25, + "width": 175, + "height": 200, + "timestamp": false, + "format": "YYYY-MM-DD HH:mm" + }, + "panelLayoutOptions": { + "layoutType": "column", + "layoutRowGap": 0, + "layoutColumnGap": 0 + }, "paperHeader": 0, "paperFooter": 841.8897637795277, "printElements": [ @@ -714,6 +736,46 @@ "type": "text" } }, + { + "options": { + "left": 416.5, + "top": 191.5, + "height": 13.5, + "width": 45, + "title": "体检费", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "qrCodeLevel": 0, + "field": "1" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 465, + "top": 192, + "height": 13.5, + "width": 84, + "title": "体检费", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "qrCodeLevel": 0, + "field": "9999", + "textAlign": "right", + "testData": "20000.00", + "hideTitle": true, + "formatter": "function(title,value,options,templateData,target,paperNo){\n return value ? value.toFixed(2) + ' 元' : '0.00' + ' 元'\n}" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, { "options": { "left": 16.5, @@ -1372,8 +1434,8 @@ }, { "options": { - "left": 19, - "top": 368.5, + "left": 16.5, + "top": 363, "height": 13.5, "width": 76.5, "title": "省医保总额", @@ -1388,10 +1450,32 @@ "type": "text" } }, + { + "options": { + "left": 220.5, + "top": 363, + "height": 13.5, + "width": 75, + "title": "文本", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "qrCodeLevel": 0, + "field": "municipalYbTotal", + "textAlign": "right", + "testData": "20000.00", + "hideTitle": true, + "formatter": "function(title,value,options,templateData,target,paperNo){\n return value ? value.toFixed(2) + ' 元' : '0.00' + ' 元'\n}" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, { "options": { "left": 81.5, - "top": 369.5, + "top": 363.5, "height": 13.5, "width": 75, "title": "文本", @@ -1412,8 +1496,8 @@ }, { "options": { - "left": 164, - "top": 369.5, + "left": 162.5, + "top": 363.5, "height": 13.5, "width": 64.5, "title": "市医保总额", @@ -1430,8 +1514,26 @@ }, { "options": { - "left": 220.5, - "top": 370.5, + "left": 17, + "top": 389, + "height": 13.5, + "width": 76.5, + "title": "现金收入总额", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "qrCodeLevel": 0, + "field": "1" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 79.5, + "top": 390, "height": 13.5, "width": 75, "title": "文本", @@ -1439,7 +1541,7 @@ "widthHeightSync": false, "fontSize": 9, "qrCodeLevel": 0, - "field": "municipalYbTotal", + "field": "totalCash", "textAlign": "right", "testData": "20000.00", "hideTitle": true, @@ -1450,10 +1552,49 @@ "type": "text" } }, + { + "options": { + "left": 163.5, + "top": 390, + "height": 13.5, + "width": 64.5, + "title": "体检人次", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "qrCodeLevel": 0, + "field": "1" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 218.5, + "top": 391, + "height": 13.5, + "width": 75, + "title": "体检人次", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "qrCodeLevel": 0, + "field": "physicalExaminationCount", + "textAlign": "right", + "testData": "20000.00", + "hideTitle": true + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, { "options": { "left": 15, - "top": 397.5, + "top": 426, "height": 9, "width": 567, "borderWidth": "1.5", @@ -1468,7 +1609,7 @@ { "options": { "left": 162, - "top": 411, + "top": 439.5, "height": 13.5, "width": 76.5, "title": "制表人", @@ -1486,7 +1627,7 @@ { "options": { "left": 216, - "top": 411, + "top": 439.5, "height": 13.5, "width": 75, "title": "文本", @@ -1507,7 +1648,7 @@ { "options": { "left": 333, - "top": 411, + "top": 439.5, "height": 13.5, "width": 76.5, "title": "制表时间", @@ -1525,7 +1666,7 @@ { "options": { "left": 390, - "top": 411, + "top": 439.5, "height": 13.5, "width": 129, "title": "文本", @@ -1545,29 +1686,7 @@ } ], "paperNumberLeft": 389, - "paperNumberTop": 573, - "paperNumberDisabled": true, - "paperNumberContinue": true, - "overPrintOptions": { - "content": "", - "opacity": 0.7, - "type": 1 - }, - "watermarkOptions": { - "content": "", - "fillStyle": "rgba(184, 184, 184, 0.3)", - "fontSize": "14px", - "rotate": 25, - "width": 175, - "height": 200, - "timestamp": false, - "format": "YYYY-MM-DD HH:mm" - }, - "panelLayoutOptions": { - "layoutType": "column", - "layoutRowGap": 0, - "layoutColumnGap": 0 - } + "paperNumberTop": 573 } ] } \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/indexccu.vue b/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/indexccu.vue index c5ce414f..597a2b7e 100644 --- a/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/indexccu.vue +++ b/openhis-ui-vue3/src/views/clinicmanagement/dayEnd/indexccu.vue @@ -155,15 +155,15 @@ --> 微信: - {{ formatValue(reportValue['0000cash']) }} + {{ formatValue(reportValue.vxCashSum) }} 支付宝: - {{ '0.00 元' }} + {{ formatValue(reportValue.aliCashSum) }} 网银: - {{ '0.00 元' }} + {{ formatValue(reportValue.peisCnt) }} + @@ -101,6 +113,7 @@ getList(); function getList() { queryParams.value.organizationId = props.patientInfo.orgId; getAdviceBaseInfo(queryParams.value).then((res) => { + console.log('ssssssssss', res.data.records); if (res.data.records.length > 0) { adviceBaseList.value = res.data.records.filter((item) => { if (item.adviceType == 1 || item.adviceType == 2) { @@ -117,7 +130,14 @@ function getList() { } }); } - +// 从priceList列表中获取价格 +function getPriceFromInventory(row) { + if (row.priceList && row.priceList.length > 0) { + const price = row.priceList[0].price || 0; + return Number(price).toFixed(2) + ' 元'; + } + return '-'; +} // 处理键盘事件 const handleKeyDown = (event) => { const key = event.key; @@ -182,9 +202,9 @@ defineExpose({ handleKeyDown, }); - + \ No newline at end of file + diff --git a/openhis-ui-vue3/src/views/doctorstation/components/api.js b/openhis-ui-vue3/src/views/doctorstation/components/api.js index 8158c818..69a217a1 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/api.js +++ b/openhis-ui-vue3/src/views/doctorstation/components/api.js @@ -179,6 +179,17 @@ export function getEncounterDiagnosis(encounterId) { }) } +/** + * + * 获取诊断集合数据 + */ +export function getDiagnosisList(searchKey) { + return request({ + url: '/doctor-station/diagnosis/get-diagnosis-list?searchKey=' + searchKey, + method: 'get', + }) +} + /** * * 删除就诊诊断 @@ -671,3 +682,25 @@ export function getOrderGroup(data) { params: data }) } + +/** + * 查询诊疗项目耗材绑定信息 + */ +export function getActivityBindDevice(data) { + return request({ + url: '/doctor-station/advice/activity-bind-device-info', + method: 'get', + params: data + }) +} + +/** + * 是否是食源性诊断 + */ +export function isFoodDiseasesNew(params) { + return request({ + url: '/external-integration/foodborne-acquisition/is-food-diseases-new', + method: 'get', + params: params + }) +} diff --git a/openhis-ui-vue3/src/views/doctorstation/components/diagnosis/addDiagnosisDialog.vue b/openhis-ui-vue3/src/views/doctorstation/components/diagnosis/addDiagnosisDialog.vue index 77359f89..7454ad5b 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/diagnosis/addDiagnosisDialog.vue +++ b/openhis-ui-vue3/src/views/doctorstation/components/diagnosis/addDiagnosisDialog.vue @@ -85,7 +85,7 @@ - + \ No newline at end of file +:deep(.el-dialog__body) { + max-height: 10vh; /* 设置最大高度为视口高度的 60% */ + overflow-y: auto; /* 超出时显示纵向滚动条 */ +} + diff --git a/openhis-ui-vue3/src/views/doctorstation/components/emr/emrtemplate.vue b/openhis-ui-vue3/src/views/doctorstation/components/emr/emrtemplate.vue index 9d9498a2..35fa36d8 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/emr/emrtemplate.vue +++ b/openhis-ui-vue3/src/views/doctorstation/components/emr/emrtemplate.vue @@ -1,22 +1,23 @@ - + \ No newline at end of file + diff --git a/openhis-ui-vue3/src/views/doctorstation/components/eprescriptiondialog.vue b/openhis-ui-vue3/src/views/doctorstation/components/eprescriptiondialog.vue index 4dfb6ab1..92d7e858 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/eprescriptiondialog.vue +++ b/openhis-ui-vue3/src/views/doctorstation/components/eprescriptiondialog.vue @@ -88,18 +88,22 @@ - + @@ -115,6 +119,36 @@ --> + + + + + + + + + +
@@ -393,12 +427,12 @@ \ No newline at end of file + diff --git a/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue b/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue index f4c4b3c8..5ce3a36c 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue +++ b/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue @@ -350,6 +350,11 @@ :label="item.label" @click=" () => { + if (item.type == unitMap['minUnit']) { + scope.row.unitPrice = scope.row.minUnitPrice; + } else { + scope.row.unitPrice = scope.row.unitTempPrice; + } scope.row.unitCode_dictText = item.label; } " @@ -728,6 +733,7 @@ import { updateGroupId, getContract, getAdviceBaseInfo, + getActivityBindDevice, } from '../api'; import adviceBaseList from '../advicebaselist'; import { computed, getCurrentInstance, nextTick, watch } from 'vue'; @@ -736,6 +742,7 @@ import OrderGroupDrawer from './orderGroupDrawer'; import PrescriptionHistory from './prescriptionHistory'; import Decimal from 'decimal.js'; import useUserStore from '@/store/modules/user'; +import { ElMessageBox } from 'element-plus'; const emit = defineEmits(['selectDiagnosis']); const total = ref(0); @@ -986,6 +993,21 @@ function handleChange(value) { * 选择药品回调 */ function selectAdviceBase(key, row) { + if (row.adviceType == 3) { + getActivityBindDevice({ activityId: row.adviceDefinitionId }).then((res) => { + if (res.data.activityBindDeviceInfos?.length > 0) { + ElMessageBox.confirm('该诊疗项目已绑定所需耗材,点击确定将自动添加到医嘱列表', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning', + closeOnClickModal: false, + closeOnPressEscape: false, + }).then(() => { + handleSaveGroup(res.data.activityBindDeviceInfos); + }); + } + }); + } getOrgList(); unitCodeList.value = []; unitCodeList.value.push({ value: row.unitCode, label: row.unitCode_dictText, type: 'unit' }); @@ -1064,6 +1086,7 @@ function selectAdviceBase(key, row) { prescriptionList.value[rowIndex.value].inventoryId = stock.inventoryId; prescriptionList.value[rowIndex.value].locationId = stock.locationId; prescriptionList.value[rowIndex.value].unitPrice = stock.price; + prescriptionList.value[rowIndex.value].unitTempPrice = stock.price; prescriptionList.value[rowIndex.value].minUnitPrice = new Decimal(stock.price) .div(row.partPercent) .toFixed(2); @@ -1310,14 +1333,17 @@ function handleSaveSign(row, index) { row.minUnitQuantity = row.quantity; } row.conditionId = conditionId.value; - // if (row.unitCodeList.find((item) => item.value == row.unitCode).type == 'unit') { - // row.unitPrice = row.unitPrice; - // } else { - // row.unitCode_dictText = row.unitCodeList.find( - // (item) => item.value == row.minUnitCode - // ).label; - // row.unitPrice = row.minUnitPrice; - // } + // 处理总量为小单位情况,需要把单价也保存成小单位的 + if (row.unitCodeList.find((item) => item.value == row.unitCode).type == 'unit') { + if (row.adviceType != 3) { + row.unitPrice = row.unitTempPrice; + } + } else { + row.unitCode_dictText = row.unitCodeList.find( + (item) => item.value == row.minUnitCode + ).label; + row.unitPrice = row.minUnitPrice; + } row.conditionDefinitionId = conditionDefinitionId.value; row.encounterDiagnosisId = encounterDiagnosisId.value; row.diagnosisName = diagnosisName.value; @@ -1429,7 +1455,7 @@ function setValue(row) { // 库存列表 + 价格列表拼成批次号的下拉框 if (row.adviceType != 3) { if (row.inventoryList && row.inventoryList.length == 0) { - expandOrder.value = []; + // expandOrder.value = []; proxy.$modal.msgWarning('该项目无库存'); return; } @@ -1457,6 +1483,9 @@ function setValue(row) { prescriptionList.value[rowIndex.value].locationId = stock.locationId; prescriptionList.value[rowIndex.value].unitPrice = stock.price; prescriptionList.value[rowIndex.value].positionName = stock.locationName; + prescriptionList.value[rowIndex.value].minUnitPrice = new Decimal(stock.price) + .div(row.partPercent) + .toFixed(2); } } else { prescriptionList.value[rowIndex.value].orgId = JSON.parse(JSON.stringify(row)).positionId; @@ -1496,6 +1525,7 @@ function handleSaveGroup(orderGroupList) { prescriptionList.value[rowIndex.value] = { ...prescriptionList.value[rowIndex.value], // ...orderGroupValue, + uniqueKey: nextId.value++, patientId: props.patientInfo.patientId, encounterId: props.patientInfo.encounterId, accountId: accountId.value, @@ -1802,10 +1832,14 @@ const groupMarkers = ref([]); // 计算总价 function calculateTotalPrice(row, index) { nextTick(() => { - if (row.unitCode == row.minUnitCode) { - row.totalPrice = new Decimal(row.unitPrice).div(row.partPercent) * row.quantity; - } else { + if (row.adviceType == 3) { row.totalPrice = (row.unitPrice * row.quantity * 100) / 100; + } else { + if (row.unitCode == row.minUnitCode) { + row.totalPrice = row.minUnitPrice * row.quantity; + } else { + row.totalPrice = (row.unitPrice * row.quantity * 100) / 100; + } } }); } diff --git a/openhis-ui-vue3/src/views/hospitalRecord/HospitalRecordForm.vue b/openhis-ui-vue3/src/views/hospitalRecord/HospitalRecordForm.vue new file mode 100644 index 00000000..38cff998 --- /dev/null +++ b/openhis-ui-vue3/src/views/hospitalRecord/HospitalRecordForm.vue @@ -0,0 +1,269 @@ + + + + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirst.vue b/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirst.vue new file mode 100644 index 00000000..b5b4e91c --- /dev/null +++ b/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirst.vue @@ -0,0 +1,472 @@ + + + + + diff --git a/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirstPrint.json b/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirstPrint.json new file mode 100644 index 00000000..43e5b1cb --- /dev/null +++ b/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordFirstPrint.json @@ -0,0 +1,3 @@ +{ + "printContent": "\n\n\n 住院病案首页\n \n\n\n
\n
吉林大学第一医院
\n
\n
\n
组织机构代码:(${formData.hospital.orgCode || ''})
\n
医疗付费方式:(${formData.hospital.paymentMethod || ''})
\n
\n
\n 住院病案首页\n
\n
\n
条形码
\n
\n
\n
\n
\n
健康卡号:(${formData.patient.healthCardNo || ''})
\n
第(${formData.patient.times || ''})住院
\n
住院ID:(${formData.patient.hospitalizationId || ''})
\n
病案号:(${formData.patient.recordNo || ''})
\n
\n
\n
\n
\n \n
\n
\n
\n \n
${formData.patient.name || ''}
\n
\n
\n \n
${formData.patient.gender === '1' ? '男' : formData.patient.gender === '2' ? '女' : ''}
\n
\n
\n \n
${formData.patient.birthDate || ''}
\n
\n
\n \n
${formData.patient.age || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n \n
\n
\n
\n
\n \n
${formData.patient.birthDate || ''}
\n \n
${formData.patient.birthDate || ''}市
\n
${formData.patient.birthDate || ''}县(区、市)
\n
\n
\n \n
${formData.patient.nativePlace || ''}省(区、市)
\n
\n
\n \n
${formData.patient.ethnicity || ''}
\n
\n
\n
\n
\n \n
${formData.patient.idCardNo || ''}省(区、市)
\n
\n
\n \n
${formData.patient.nationality || ''}省(区、市)
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}省(区、市)
\n
${formData.patient.nationality || ''}市
\n
${formData.patient.birthDate || ''}县(区、市)
\n
${formData.patient.birthDate || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}省(区、市)
\n
${formData.patient.nationality || ''}市
\n
${formData.patient.birthDate || ''}县(区、市)
\n
${formData.patient.birthDate || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n
${'1' || ''}
\n \n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n \n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
出院诊断疾病编码入院病情转归情况
主要诊断:腰椎间盘突出症(L4-5)121
其他诊断:腰椎椎管狭窄(L4-5)122
其他诊断:右下肢不全瘫122
----
----
----
----
----
----
----
----
\n
\n
入院病情:1.有 2.临床未确定 3.情况不明 4.无
\n
转归情况:1.治愈 2.好转 3.未愈 4.死亡 5.其他
\n
\n
\n
\n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n
${formData.patient.nationality || ''}
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n
${'0' || ''}
\n \n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n \n
${formData.patient.nationality || '-'}
\n \n \n
${formData.patient.nationality || '-'}
\n \n \n
${formData.patient.nationality || '-'}
\n \n \n
${formData.patient.nationality || '-'}
\n \n \n
${formData.patient.nationality || '-'}
\n \n
\n
\n
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n
${'1' || ''}
\n \n
\n
\n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n
${'1' || ''}
\n \n
\n
\n \n
${'1' || ''}
\n \n
\n
\n
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n \n
${formData.patient.nationality || '-'}
\n
\n
\n
\n + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordThird.vue b/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordThird.vue new file mode 100644 index 00000000..813f16fa --- /dev/null +++ b/openhis-ui-vue3/src/views/hospitalRecord/components/medicalRecordThird.vue @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/index.vue b/openhis-ui-vue3/src/views/index.vue index a5e025f7..f084f71c 100644 --- a/openhis-ui-vue3/src/views/index.vue +++ b/openhis-ui-vue3/src/views/index.vue @@ -3,9 +3,9 @@
效期预警 {{total}}
- + + +
diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js index b2fa53b6..25415ce2 100644 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js @@ -5,6 +5,7 @@ */ import request from '@/utils/request' +// ====== 文书记录 // 新增记录 export function addRecord(data) { return request({ @@ -22,3 +23,38 @@ export function getRecordByEncounterIdList(params) { params }) } +// 初始化文书定义 +export function init() { + return request({ + url: '/document/record/init', + method: 'get', + }) +} + +// ====== 文书模板 +// 新增模板 +export function addTemplate(data) { + return request({ + url: '/document/template/add', + method: 'post', + data + }) +} +// +export function getListByDefinitionId(definitionId) { + return request({ + url: '/document/template/getListByDefinitionId', + method: 'get', + params: {definitionId} + }) +} +// 更新模板 +export function updateTemplate(data) { + return request({ + url: '/document/template/update', + method: 'put', + data + }) +} + + diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/history.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/history.vue index e52ae7b5..1824a9d5 100644 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/history.vue +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/history.vue @@ -11,7 +11,7 @@
diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue new file mode 100644 index 00000000..5e741e5b --- /dev/null +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue @@ -0,0 +1,112 @@ + + + + + diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/templateEdit.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/templateEdit.vue new file mode 100644 index 00000000..008f1fbe --- /dev/null +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/templateEdit.vue @@ -0,0 +1,133 @@ + + + diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue index 61e4f2c0..bae4d7b0 100644 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue @@ -28,10 +28,9 @@
- 新建 + 存为模版 刷新 - 删除 保存
@@ -44,18 +43,35 @@
- + + + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/inpatientNurse/medicalOrderProofread/index.vue b/openhis-ui-vue3/src/views/inpatientNurse/medicalOrderProofread/index.vue index a7a935dc..d7d378a5 100644 --- a/openhis-ui-vue3/src/views/inpatientNurse/medicalOrderProofread/index.vue +++ b/openhis-ui-vue3/src/views/inpatientNurse/medicalOrderProofread/index.vue @@ -28,13 +28,20 @@
- - - + + + + - Config - Role - Task
@@ -44,8 +51,63 @@ import PatientList from './components/patientList.vue'; import PrescriptionList from './components/prescriptionList.vue'; -const activeName = ref('first'); +const activeName = ref('unverified'); const active = ref('first'); +const requestStatus = ref(2); + +// 存储子组件引用的对象 +const prescriptionRefs = ref({}); + +// 定义处方列表tabs配置 +const prescriptionTabs = [ + { label: '未校对', name: 'unverified' }, + { label: '已校对', name: 'verified' }, + { label: '已停止', name: 'stopped' }, + { label: '已退回', name: 'cancelled' }, +]; + +// 设置处方组件引用 +function setPrescriptionRef(el, name) { + if (el) { + prescriptionRefs.value[name] = el; + } +} + +function handleTabClick(tabName) { + // tabName是tab的name属性值 + const activeTabName = tabName || activeName.value; + + switch (activeTabName) { + case 'unverified': + requestStatus.value = 2; + break; + case 'verified': + requestStatus.value = 3; + break; + case 'stopped': + requestStatus.value = 6; + break; + case 'cancelled': + requestStatus.value = 1; + break; + } + // 调用子组件方法 + nextTick(() => { + debugger; + console.log(prescriptionRefs.value[activeTabName], '1'); + + if ( + prescriptionRefs.value[activeTabName] && + typeof prescriptionRefs.value[activeTabName].handleGetPrescription === 'function' + ) { + prescriptionRefs.value[activeTabName].handleGetPrescription(); + } + }); +} + +provide('handleGetPrescription', (value) => { + prescriptionRefs.value[activeName.value].handleGetPrescription(); +}); \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/login.vue b/openhis-ui-vue3/src/views/login.vue index 476be277..548ec4bc 100644 --- a/openhis-ui-vue3/src/views/login.vue +++ b/openhis-ui-vue3/src/views/login.vue @@ -51,10 +51,10 @@ /> - - 连接医保 - - + + + + + - + - 添加行 + 添加行 -
+
{ if (res.code == 200) { + pageLoading.value = false proxy.$modal.msgSuccess('操作成功'); tagsViewStore.delView(router.currentRoute.value); store.clearCurrentDataBS(); @@ -1040,6 +1043,8 @@ function handelApply() { query: { type: 'lossReporting' }, }); } + }).catch(() => { + pageLoading.value = false }); } /** 提交审核按钮 */ diff --git a/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/api.js b/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/api.js new file mode 100644 index 00000000..97c3c217 --- /dev/null +++ b/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/api.js @@ -0,0 +1,58 @@ +import request from '@/utils/request'; + +// 查询费用定价信息列表 +export function listDefinition (query) { + return request ({ + url: '/dict-dictionary/definition/charge-item-info', + method: 'get', + params: query, + }); +} + +// 初始化下拉选 +export function initOption (query) { + return request ({ + url: '/dict-dictionary/definition/init', + method: 'get', + params: query, + }); +} +// 获取药品列表 +export function getMedicineList (query) { + return request ({ + url: '/doctor-station/advice/advice-base-info', + method: 'get', + params: query, + }); +} +// 修改费用定价信息 +export function updateDefinition (data) { + return request ({ + url: `/dict-dictionary/definition/update-charge-item?id=${data.id}&price=${data.price}`, + method: 'put', + }); +} + +// 修改费用定价信息 +export function getOptions () { + return request ({ + url: '/dict-dictionary/definition/status-enum-option', + method: 'get', + }); +} + +// 修改费用定价信息 +export function getDetail (id) { + return request ({ + url: '/dict-dictionary/definition/charge-item-info-detail?id=' + id, + method: 'get', + }); +} +// 供应商查询 +export function getSupplierList (query) { + return request ({ + url: '/change/price/searchAllSupply', + method: 'get', + params: query, + }); +} \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/medicineList.vue b/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/medicineList.vue new file mode 100644 index 00000000..6efa2c69 --- /dev/null +++ b/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/components/medicineList.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/index.vue b/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/index.vue new file mode 100644 index 00000000..cc368508 --- /dev/null +++ b/openhis-ui-vue3/src/views/medicationmanagement/priceAdjustmentManagement/index.vue @@ -0,0 +1,636 @@ + + + diff --git a/openhis-ui-vue3/src/views/medicationmanagement/purchaseDocument/index.vue b/openhis-ui-vue3/src/views/medicationmanagement/purchaseDocument/index.vue index 5f454cb7..57cb274f 100644 --- a/openhis-ui-vue3/src/views/medicationmanagement/purchaseDocument/index.vue +++ b/openhis-ui-vue3/src/views/medicationmanagement/purchaseDocument/index.vue @@ -1,5 +1,5 @@ + + + - +
+ {{ reconciliation }} + + 手动对账 + +
-