lighter 2 лет назад
Родитель
Сommit
ec152b34a2

+ 5 - 6
src/main/java/thyyxxk/wxservice_server/service/SavePayResultService.java

@@ -14,7 +14,6 @@ import thyyxxk.wxservice_server.dao.WxApiDao;
 import thyyxxk.wxservice_server.entity.ResultVo;
 import thyyxxk.wxservice_server.entity.appointment.MzyReqrec;
 import thyyxxk.wxservice_server.entity.appointment.SaveAppointmentParam;
-import thyyxxk.wxservice_server.entity.hrgresponse.QueryMzPayStatusResponse;
 import thyyxxk.wxservice_server.entity.hrgresponse.SaveGhFeeResponse;
 import thyyxxk.wxservice_server.entity.hrgresponse.SaveMzFeeResponse;
 import thyyxxk.wxservice_server.entity.inpatient.GetZyFeeParam;
@@ -92,7 +91,7 @@ public class SavePayResultService {
     public ResultVo<Object> saveMzChargeInfo(WxPayOrder order, QuerySource source, String successTime) {
         if (dao.alreadyPayed(order.getTradeNo()) == 1) {
             log.info("订单号:{} 的门诊缴费信息已保存,无需再次保存。", order.getTradeNo());
-            dao.updateSuccessHisStatus(order.getTradeNo());
+            updateHisChargeStatus(order.getHisOrdNum(), order.getTradeNo());
             return ResultVoUtil.success("保存门诊缴费信息成功。");
         }
         JSONObject hrgParam = new JSONObject();
@@ -110,8 +109,7 @@ public class SavePayResultService {
         log.info("保存门诊缴费信息:\n参数:{},\n结果:{}", hrgParam, saveMzFeeResponse);
         if (null != saveMzFeeResponse && null != saveMzFeeResponse.getResultCode() &&
                 saveMzFeeResponse.getResultCode() == 0) {
-            dao.updateSuccessHisStatus(order.getTradeNo());
-            updateSiMzSavedFlag(order.getHisOrdNum());
+            updateHisChargeStatus(order.getHisOrdNum(), order.getTradeNo());
             if (source == QuerySource.INTERFACE) {
                 String hisOrdNum = order.getHisOrdNum();
                     String[] hsrdnms = hisOrdNum.split("_");
@@ -125,7 +123,7 @@ public class SavePayResultService {
             return ResultVoUtil.success("保存门诊缴费信息成功。");
         }
         if (dao.alreadyPayed(order.getTradeNo()) == 1) {
-            dao.updateSuccessHisStatus(order.getTradeNo());
+            updateHisChargeStatus(order.getHisOrdNum(), order.getTradeNo());
             if (source == QuerySource.INTERFACE) {
                 String hisOrdNum = order.getHisOrdNum();
                 String[] hsrdnms = hisOrdNum.split("_");
@@ -152,9 +150,10 @@ public class SavePayResultService {
         return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "【" + message +  "】自动退款失败,请联系服务中心进行退款。");
     }
 
-    private void updateSiMzSavedFlag(String hisOrdNum) {
+    private void updateHisChargeStatus(String hisOrdNum, String tradeNo) {
         String[] patinfo = hisOrdNum.split("_");
         dao.updateMzSavedFlag(patinfo[0], patinfo[1]);
+        dao.updateSuccessHisStatus(tradeNo);
     }
 
     public ResultVo<Object> saveZyYjjInfo(WxPayOrder order) {