diff --git a/src/main/java/com/ynxbd/common/service/MedicalService.java b/src/main/java/com/ynxbd/common/service/MedicalService.java index 0f226cf..3ef90b8 100644 --- a/src/main/java/com/ynxbd/common/service/MedicalService.java +++ b/src/main/java/com/ynxbd/common/service/MedicalService.java @@ -167,7 +167,7 @@ public class MedicalService { String ordStas = result.getDataMapString("OrdStas"); // BigDecimal deposit = result.getDataMapBigDecimal("Deposit"); // 住院押金(医保6202返回) - log.info("[医保-住院结算]HIS费用上传明细接口返回 payAuthNo={}, payOrdId={}, payToken={}, mdtrtId={}, chrgBchno={}, userIdYBZF={}", payAuthNo, payOrdId, payToken, mdTrtId, chrgBchno, mdUserId); + log.info("[医保-住院结算]HIS费用上传明细接口返回-授权信息 payAuthNo={}, payOrdId={}, payToken={}, mdtrtId={}, chrgBchno={}, userIdYBZF={}", payAuthNo, payOrdId, payToken, mdTrtId, chrgBchno, mdUserId); if (payOrdId == null || payToken == null || mdTrtId == null || chrgBchno == null) { throw new ServiceException("[医保]费用明细上传参数缺失"); } @@ -181,32 +181,33 @@ public class MedicalService { medicalInfo.setMdUserId(mdUserId); BigDecimal totalFee = result.getDataMapBigDecimal("FeeSumamt"); // 订单总金额医保返回 - BigDecimal hifpFee = result.getDataMapBigDecimal("FundPay"); // 统筹金额[基金金额] - BigDecimal hisOwnPayAmt = result.getDataMapBigDecimal("OwnPayAmt"); // 现金支付(医保6202返回) - BigDecimal hisPsnAcctPay = result.getDataMapBigDecimal("PsnAcctPay"); // 个人账户支出(医保6202返回) - log.info("[医保-住院结算]HIS费用上传明细接口返回2 payOrdId={}, hifpFee={}, hisOwnPayAmt={}, hisPsnAcctPay={}", - payOrdId, hifpFee, hisOwnPayAmt, hisPsnAcctPay); + BigDecimal cashFee = result.getDataMapBigDecimal("OwnPayAmt"); // 现金支付(医保6202返回) + BigDecimal hifpFee = result.getDataMapBigDecimal("FundPay"); // 统筹金额[基金金额] + BigDecimal acctPay = result.getDataMapBigDecimal("PsnAcctPay"); // 个人账户支出(医保6202返回) + log.info("[医保-住院结算]HIS费用上传明细接口返回-费用明细 payOrdId={}, totalFee={}, cashFee={}, hifpFee={}, acctPay={}", + payOrdId, totalFee, cashFee, hifpFee, acctPay); String extData = result.getDataMapString("ExtData"); - log.info("[医保-住院结算]扩展数据 extData={}", extData); - if (extData == null || totalFee == null) { - throw new ServiceException("[上传明细失败]响应参数缺失 extData is null"); + + if (totalFee == null) { + throw new ServiceException("[上传明细失败]订单总金额为空"); + } + if (ObjectUtils.isEmpty(extData)) { + throw new ServiceException("[上传明细失败]响应参数ExtData缺失"); } JSONObject extDataJson = JsonHelper.parseObject(extData); JSONObject preSetl = extDataJson.getJSONObject("preSetl"); medicalInfo.setMedFeeSumAmt(new BigDecimal(preSetl.getString("medfee_sumamt"))); // 医保金额 - medicalInfo.setCashFee(new BigDecimal(preSetl.getString("psn_cash_pay"))); // 现金支付 - BigDecimal acctPay = new BigDecimal(preSetl.getString("acct_pay")); // 个人账户支付 -// BigDecimal hifpPay = new BigDecimal(preSetl.getString("hifp_pay")); - medicalInfo.setAcctFee(acctPay); // 个人账户支付 - medicalInfo.setHifpFee(hifpFee); // 统筹支付金额 medicalInfo.setTotalFee(totalFee); // 医保订单总金额 + medicalInfo.setCashFee(cashFee); // 现金部分 + medicalInfo.setHifpFee(hifpFee); // 统筹支付金额 + medicalInfo.setAcctFee(acctPay); // 个人账户支付 - medicalInfo.setInsuranceFee(acctPay.add(hifpFee)); // (个账 + 统筹) + medicalInfo.setInsuranceFee(acctPay.add(hifpFee)); // 医保支付(个账 + 统筹) - log.info("[医保-住院结算]结算完成返回数据 medicalFee={}", medicalInfo); + log.info("[医保-住院结算]结算完成返回数据 medicalFee={}", JsonHelper.toJsonString(medicalInfo)); return medicalInfo; } @@ -299,7 +300,7 @@ public class MedicalService { String medicalCardId = order.getMedicalCardId(); log.info("[医保][{}]下单 hasDBOrder={}, payOpenId={}, msgOpenId={}, patientId={}, treatNum={}, outTradeNo={}, payOrdId={}, payAuthNo={}, totalFee={}, acctFee={}, hifpFee={}, cashFee={}, idCardNo={}, realName={}, familyType={}, familyName={}, medicalCardId={}, medicalCardInstId={}", - serverEnum.NAME, hasDBOrder, payOpenId, msgOpenId, order.getPatientId(), order.getTreatNum(), outTradeNo, payOrdId, payAuthNo, totalFee, order.getAcctFee(), order.getHifpFee(), order.getPayMoney(), ParamHelper.hideIdCardNo(order.getIdCardNo()), order.getPatientName(), familyType, familyName, medicalCardId,medicalCardInstId); + serverEnum.NAME, hasDBOrder, payOpenId, msgOpenId, order.getPatientId(), order.getTreatNum(), outTradeNo, payOrdId, payAuthNo, totalFee, order.getAcctFee(), order.getHifpFee(), order.getPayMoney(), ParamHelper.hideIdCardNo(order.getIdCardNo()), order.getPatientName(), familyType, familyName, medicalCardId, medicalCardInstId); if (ObjectUtils.isEmpty(payOpenId)) { payOpenId = msgOpenId; @@ -368,7 +369,7 @@ public class MedicalService { String outTradeNo = order.getOutTradeNo(); if (ObjectUtils.isEmpty(outTradeNo) || ObjectUtils.isEmpty(payOrdId) || ObjectUtils.isEmpty(treatNum)) { - log.info("[医保][处方]参数缺失 outTradeNo={}, payOrdId={}, treatNum={}", outTradeNo, payOrdId, treatNum); + log.info("[医保][处方]参数缺失 outTradeNo={}, payOrdId={}, treatNum={}", outTradeNo, payOrdId, treatNum); return Result.error(ResultEnum.PARAM_IS_DEFECT); } diff --git a/src/main/resources/copy/healthcard/石林县人民医院-hc-config.xml b/src/main/resources/copy/healthcard/石林县人民医院-hc-config.xml index 5b88cf6..48e4d44 100644 --- a/src/main/resources/copy/healthcard/石林县人民医院-hc-config.xml +++ b/src/main/resources/copy/healthcard/石林县人民医院-hc-config.xml @@ -1,5 +1,27 @@ + + + true + true + false + true + + 32091 + e4a05c13301f2f6a8b07b3de872dfe2d + e5322dfd9bfab939851319812c30f9f1 + + 5a4a6eacbe1040d8a91c76608aefb943 + mfkwewyhkozizj0caqyikozizj0daqcdqgaepc6p0omuruc5lq7cwdu18ca4cgmqbtjpwdyrglo4wbal9/m3dv4oywez7fbgtnkkgj/kfojvze6sc/dka+ddca== + 4e181412b5874b22ba113ea3a907e244 + http://220.164.109.105:19211/internet + + + + + + + @@ -7,16 +29,19 @@ - - true - - false - + true + true + true + false + + 100000637 - - 3431de05cbf9d0ffdbc064a352835981 + + 3431de05cbf9d0ffdbc064a352835981 - 3431de05cbf9d0ffdbc064a352835981 + 3431de05cbf9d0ffdbc064a352835981 + + 800002592 石林彝族自治县人民医院 diff --git a/src/main/resources/hc-config.xml b/src/main/resources/hc-config.xml index de501ad..68f7419 100644 --- a/src/main/resources/hc-config.xml +++ b/src/main/resources/hc-config.xml @@ -36,9 +36,7 @@ true true true - - - true + true 34edf7cd14e646ae9c1bbca791b7b685 diff --git a/src/main/resources/webservice-copy.xml b/src/main/resources/webservice-copy.xml new file mode 100644 index 0000000..c24bbac --- /dev/null +++ b/src/main/resources/webservice-copy.xml @@ -0,0 +1 @@ + false false false 127.0.0.1:8888 127.0.0.1:8888 200.200.200.60:7777 200.200.200.60:7777 \ No newline at end of file