Browse Source

增加单病种缴费

hurugang 5 years ago
parent
commit
616cbe9712

+ 14 - 1
src/main/java/cn/hnthyy/thmz/common/Constants.java

@@ -175,7 +175,10 @@ public class Constants {
      */
     public static final String ZFB="F";
 
-
+    /**
+     * 医保记账缴费
+     */
+    public static final String YBJZ="2";
     /**
      * 医技分组编号
      */
@@ -202,6 +205,16 @@ public class Constants {
     public static final String BRZZJF_NAME="自助缴费";
 
 
+    /**
+     * 单病种收费员编码
+     */
+    public static final String DBZJF_CODE="99998";
+
+    /**
+     * 单病种收费员编码
+     */
+    public static final String DBZJF_NAME="单病种收费员";
+
     /**
      * 120卡号
      */

+ 60 - 0
src/main/java/cn/hnthyy/thmz/controller/api/MedicalViewApiController.java

@@ -1561,4 +1561,64 @@ public class MedicalViewApiController {
         }
     }
 
+
+
+
+
+    /**
+     * 门诊缴费订单支付(单病种)
+     *
+     * @param mzDepositFileVo
+     * @return
+     */
+    @RequestMapping(value = "/payChargeDetailFormDbzsf", method = {RequestMethod.POST})
+    public Map<String, Object> payChargeDetailFormDbzsf(@RequestBody MzDepositFileVo mzDepositFileVo) {
+        Map<String, Object> results = new HashMap<>();
+        if (mzDepositFileVo == null) {
+            results.put("resultCode", -1);
+            results.put("resultMessage", "门诊缴费订单支付参数为空");
+            return results;
+        }
+        if (StringUtils.isBlank(mzDepositFileVo.getPatientId())) {
+            results.put("code", -1);
+            results.put("message", "病人编码不能为空");
+            return results;
+        }
+        if (mzDepositFileVo.getTimes() == null) {
+            results.put("code", -1);
+            results.put("message", "病人就诊次数不能为空");
+            return results;
+        }
+        if (mzDepositFileVo.getReceiptNo() == null) {
+            results.put("code", -1);
+            results.put("message", "病人结算次数不能为空");
+            return results;
+        }
+        if(mzDepositFileVo.getMzDepositFiles()==null || mzDepositFileVo.getMzDepositFiles().size()==0){
+            results.put("code", -1);
+            results.put("message", "病人缴费方式不能为空");
+            return results;
+        }
+        MzDepositFile mzDepositFile = mzDepositFileVo.getMzDepositFiles().get(0);
+        if(mzDepositFile.getAmount()==null){
+            results.put("code", -1);
+            results.put("message", "病人缴费金额不能为空");
+            return results;
+        }
+        try {
+            mzDepositFile.setChequeType(Constants.YBJZ);
+            mzDepositFileVo.setMzDepositFiles(Arrays.asList(mzDepositFile));
+            mzChargeDetailService.chargeFee(Constants.DBZJF_CODE, mzDepositFileVo);
+            results.put("resultCode", 0);
+            results.put("resultMessage", "单病种缴费成功");
+            results.put("guideListInfo", "");
+            return results;
+        } catch (Exception e) {
+            e.printStackTrace();
+            results.put("resultCode", -1);
+            results.put("resultMessage", "单病种门诊缴费订单支付失败,请联系管理员");
+            log.error("系统异常,错误信息{}", e.getMessage());
+            return results;
+        }
+    }
 }