Procházet zdrojové kódy

手机端支持门诊统筹支付

hurugang před 3 roky
rodič
revize
04559f4786

+ 10 - 0
src/main/java/cn/hnthyy/thmz/common/Constants.java

@@ -179,6 +179,16 @@ public class Constants {
      * 医保记账缴费
      */
     public static final String YBJZ="2";
+
+    /**
+     * 市医保卡缴费
+     */
+    public static final String SSHIYBK="6";
+
+    /**
+     * 省医保卡缴费
+     */
+    public static final String SHENYBK="7";
     /**
      * 医技分组编号
      */

+ 132 - 72
src/main/java/cn/hnthyy/thmz/controller/api/MedicalViewApiController.java

@@ -1,10 +1,7 @@
 package cn.hnthyy.thmz.controller.api;
 
 
-import cn.hnthyy.thmz.Utils.DateUtil;
-import cn.hnthyy.thmz.Utils.HttpUtil;
-import cn.hnthyy.thmz.Utils.NumberToCN;
-import cn.hnthyy.thmz.Utils.TokenUtil;
+import cn.hnthyy.thmz.Utils.*;
 import cn.hnthyy.thmz.common.Constants;
 import cn.hnthyy.thmz.entity.MzException;
 import cn.hnthyy.thmz.entity.haici.HaiciCharge;
@@ -15,10 +12,7 @@ import cn.hnthyy.thmz.entity.his.zd.ZdMzClass;
 import cn.hnthyy.thmz.entity.his.zd.ZdUnitCode;
 import cn.hnthyy.thmz.entity.his.zy.ZyActpatient;
 import cn.hnthyy.thmz.entity.his.zy.ZyDepositFile;
-import cn.hnthyy.thmz.entity.thmz.Clinic;
-import cn.hnthyy.thmz.entity.thmz.HybirdTest;
-import cn.hnthyy.thmz.entity.thmz.User;
-import cn.hnthyy.thmz.entity.thmz.WhiteList;
+import cn.hnthyy.thmz.entity.thmz.*;
 import cn.hnthyy.thmz.enums.*;
 import cn.hnthyy.thmz.pageDto.MzChargeDetailPageDto;
 import cn.hnthyy.thmz.pageDto.MzyReqrecPageDto;
@@ -31,10 +25,7 @@ import cn.hnthyy.thmz.service.his.zd.ZdUnitCodeService;
 import cn.hnthyy.thmz.service.his.zy.APatientMiService;
 import cn.hnthyy.thmz.service.his.zy.ZyActpatientService;
 import cn.hnthyy.thmz.service.his.zy.ZyDepositFileService;
-import cn.hnthyy.thmz.service.thmz.ClinicService;
-import cn.hnthyy.thmz.service.thmz.HybirdTestService;
-import cn.hnthyy.thmz.service.thmz.UserService;
-import cn.hnthyy.thmz.service.thmz.WhiteListService;
+import cn.hnthyy.thmz.service.thmz.*;
 import cn.hnthyy.thmz.vo.*;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -98,6 +89,8 @@ public class MedicalViewApiController {
     private ClinicService clinicService;
     @Autowired
     private WhiteListService whiteListService;
+    @Autowired
+    private TsmzService tsmzService;
     //海慈身份证类型
     private static final String ID_CARD_TYPE = "11";
     //诊疗卡类型
@@ -503,11 +496,11 @@ public class MedicalViewApiController {
     @RequestMapping(value = "/getMzChargeDetailForUnPaid", method = {RequestMethod.POST})
     public Map<String, Object> getMzChargeDetailForUnPaid(@RequestBody Haicipat haicipat, HttpServletRequest httpServletRequest) {
         Map<String, Object> results = new HashMap<>();
-        String ip=HttpUtil.getIPAddress(httpServletRequest);
-        WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-        if(whiteList==null){
+        String ip = HttpUtil.getIPAddress(httpServletRequest);
+        WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+        if (whiteList == null) {
             results.put("resultCode", -1);
-            results.put("resultMessage", "当前请求来源未在白名单中【"+ip+"】");
+            results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
             return results;
         }
         if (haicipat == null) {
@@ -542,8 +535,8 @@ public class MedicalViewApiController {
             mzChargeDetailService.formatMzChargeDetail(mzChargeDetailList);
             List<Map<String, Object>> returnList = new ArrayList<>();
             for (MzChargeDetail mzChargeDetail : mzChargeDetailList) {
-                Clinic clinic=clinicService.queryByPatientIdAndTimesAndReceiptNo(mzChargeDetail.getPatientId(),mzChargeDetail.getTimes(),mzChargeDetail.getReceiptNo());
-                if(clinic!=null && StringUtils.isNotBlank(clinic.getOpId()) && !whiteList.getOpId().equals(clinic.getOpId())){
+                Clinic clinic = clinicService.queryByPatientIdAndTimesAndReceiptNo(mzChargeDetail.getPatientId(), mzChargeDetail.getTimes(), mzChargeDetail.getReceiptNo());
+                if (clinic != null && StringUtils.isNotBlank(clinic.getOpId()) && !whiteList.getOpId().equals(clinic.getOpId())) {
                     continue;
                 }
                 Map<String, Object> map = new HashMap<>();
@@ -557,6 +550,9 @@ public class MedicalViewApiController {
                 map.put("medInsAmt", BigDecimal.ZERO);
                 map.put("selfAmt", totalAmount);
                 map.put("priceTime", DateUtil.fomart(mzChargeDetail.getPriceTime(), "yyyy-MM-dd HH:mm:ss"));
+                map.put("patientId", mzChargeDetail.getPatientId());
+                map.put("times", mzChargeDetail.getTimes());
+                map.put("receiptNo", mzChargeDetail.getReceiptNo());
                 returnList.add(map);
             }
             results.put("resultCode", 0);
@@ -573,6 +569,45 @@ public class MedicalViewApiController {
     }
 
 
+    /**
+     * 门诊待缴费记录查询(支持门诊统筹报销)
+     *
+     * @param haicipat
+     * @return
+     */
+    @RequestMapping(value = "/getMzChargeDetailForUnPaidForMztc", method = {RequestMethod.POST})
+    public Map<String, Object> getMzChargeDetailForUnPaidForMztc(@RequestBody Haicipat haicipat, HttpServletRequest httpServletRequest) {
+        Map<String, Object> results = getMzChargeDetailForUnPaid(haicipat, httpServletRequest);
+        String ip = HttpUtil.getIPAddress(httpServletRequest);
+        WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+        if (whiteList == null) {
+            results.put("resultCode", -1);
+            results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
+            return results;
+        }
+        if ((Integer) results.get("resultCode") == 0) {
+            List<Map<String, Object>> returnList = (List<Map<String, Object>>) results.get("data");
+            if (returnList != null && returnList.size() > 0) {
+                for (Map<String, Object> map : returnList) {
+                    PayInfo payInfo = tsmzService.uploadFees(whiteList.getOpId(), (String) map.get("patientId"), (Integer) map.get("times"), (Integer) map.get("receiptNo"));
+                    if (payInfo == null) {
+                        results.put("code", -1);
+                        results.put("message", "获取门诊统筹/特门费用失败");
+                        return results;
+                    }
+                    BigDecimal totalAmt = (BigDecimal) map.get("totalAmt");
+                    //个人医保账户支付
+                    map.put("acctPay", payInfo.getAcctPay());
+                    //医保统筹报销
+                    map.put("fundPay", payInfo.getFundPay());
+                    map.put("selfAmt", totalAmt.divide(BigDecimal.valueOf(100)).subtract(payInfo.getAcctPay()).subtract(payInfo.getFundPay()).multiply(BigDecimal.valueOf(100)));
+                }
+            }
+        }
+        return results;
+    }
+
+
     /**
      * 门诊待缴费记录明细查询
      *
@@ -674,11 +709,11 @@ public class MedicalViewApiController {
     @RequestMapping(value = "/payChargeDetailFormHaiCi", method = {RequestMethod.POST})
     public Map<String, Object> payChargeDetailFormHaiCi(@RequestBody HaiciCharge haiciCharge, HttpServletRequest httpServletRequest) {
         Map<String, Object> results = new HashMap<>();
-        String ip=HttpUtil.getIPAddress(httpServletRequest);
-        WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-        if(whiteList==null){
+        String ip = HttpUtil.getIPAddress(httpServletRequest);
+        WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+        if (whiteList == null) {
             results.put("resultCode", -1);
-            results.put("resultMessage", "当前请求来源未在白名单中【"+ip+"】");
+            results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
             return results;
         }
         if (haiciCharge == null) {
@@ -753,8 +788,35 @@ public class MedicalViewApiController {
             mzDepositFile.setPsordnum(haiciCharge.getPsOrdNum());
             mzDepositFile.setAgtordnum(haiciCharge.getAgtOrdNum());
             mzDepositFile.setAmount(haiciCharge.getPayAmt().divide(BigDecimal.valueOf(100)));
-            mzDepositFileVo.setMzDepositFiles(Arrays.asList(mzDepositFile));
-            mzChargeDetailService.chargeFee(whiteList.getOpId(), mzDepositFileVo,whiteList.getOpId());
+            List<MzDepositFile> mzDepositFiles = new ArrayList<>();
+            mzDepositFiles.add(mzDepositFile);
+            mzDepositFileVo.setMzDepositFiles(mzDepositFiles);
+
+            PayInfo payInfo = tsmzService.uploadFees(whiteList.getOpId(), mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes(), mzDepositFileVo.getReceiptNo());
+            if (payInfo == null) {
+                results.put("code", -1);
+                results.put("message", "获取门诊统筹/特门费用失败");
+                return results;
+            }
+            //如果门诊统筹支付有值,添加收费方式
+            if(payInfo.getFundPay().compareTo(BigDecimal.ZERO)==1){
+                MzDepositFile ybjzmzDepositFile =CloneUtil.clone(mzDepositFile);
+                ybjzmzDepositFile.setAmount(payInfo.getFundPay());
+                ybjzmzDepositFile.setChequeType(Constants.YBJZ);
+                ybjzmzDepositFile.setPsordnum(null);
+                ybjzmzDepositFile.setAgtordnum(null);
+                mzDepositFiles.add(ybjzmzDepositFile);
+            }
+            //如果个人账户支付有值,添加收费方式
+            if(payInfo.getAcctPay().compareTo(BigDecimal.ZERO)==1){
+                MzDepositFile grzhmzDepositFile =CloneUtil.clone(mzDepositFile);
+                grzhmzDepositFile.setAmount(payInfo.getAcctPay());
+                grzhmzDepositFile.setChequeType(Integer.valueOf(2).equals(payInfo.getCardType())?Constants.SHENYBK:Constants.SSHIYBK);
+                grzhmzDepositFile.setPsordnum(null);
+                grzhmzDepositFile.setAgtordnum(null);
+                mzDepositFiles.add(grzhmzDepositFile);
+            }
+            mzChargeDetailService.chargeFee(whiteList.getOpId(), mzDepositFileVo, whiteList.getOpId());
             results.put("resultCode", 0);
             results.put("resultMessage", "缴费成功");
             results.put("guideListInfo", "");
@@ -896,7 +958,7 @@ public class MedicalViewApiController {
             mzDepositFileVo.setReceiptNo(Integer.valueOf(arr[2]));
             mzDepositFileVo.setChargeItemCodes(chargeItemCodes);
             User tokenUser = userService.queryUserByUserIdCode(Constants.BRZZJF_CODE);
-            mzChargeDetailService.refundFee(tokenUser.getUserIdCode(), mzDepositFileVo,Constants.BRZZJF_CODE);
+            mzChargeDetailService.refundFee(tokenUser.getUserIdCode(), mzDepositFileVo, Constants.BRZZJF_CODE);
             results.put("resultCode", 0);
             results.put("resultMessage", "退费成功");
             results.put("guideListInfo", "");
@@ -920,11 +982,11 @@ public class MedicalViewApiController {
     @RequestMapping(value = "/getMzChargeDetailForPaid", method = {RequestMethod.POST})
     public Map<String, Object> getMzChargeDetailForPaid(@RequestBody MzDepositFile mzDepositFile, HttpServletRequest httpServletRequest) {
         Map<String, Object> results = new HashMap<>();
-        String ip=HttpUtil.getIPAddress(httpServletRequest);
-        WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-        if(whiteList==null){
+        String ip = HttpUtil.getIPAddress(httpServletRequest);
+        WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+        if (whiteList == null) {
             results.put("resultCode", -1);
-            results.put("resultMessage", "当前请求来源未在白名单中【"+ip+"】");
+            results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
             return results;
         }
         if (mzDepositFile == null) {
@@ -1067,11 +1129,11 @@ public class MedicalViewApiController {
     public Map<String, Object> savePrescription(@RequestBody MzPrescriptionVo mzPrescriptionVo, HttpServletRequest httpServletRequest) {
         Map<String, Object> results = new HashMap<>();
         try {
-            String ip=HttpUtil.getIPAddress(httpServletRequest);
-            WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-            if(whiteList==null){
+            String ip = HttpUtil.getIPAddress(httpServletRequest);
+            WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+            if (whiteList == null) {
                 results.put("resultCode", -1);
-                results.put("resultMessage", "当前请求来源未在白名单中【"+ip+"】");
+                results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
                 return results;
             }
             mzPrescriptionVo.setJzFlag(YesNoEnum.NO.code);
@@ -1117,11 +1179,11 @@ public class MedicalViewApiController {
     public Map<String, Object> nucleicAcidApplication(@RequestParam("patientId") String patientId, HttpServletRequest httpServletRequest) {
         Map<String, Object> results = new HashMap<>();
         try {
-            String ip=HttpUtil.getIPAddress(httpServletRequest);
-            WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-            if(whiteList==null){
+            String ip = HttpUtil.getIPAddress(httpServletRequest);
+            WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+            if (whiteList == null) {
                 results.put("resultCode", -1);
-                results.put("resultMessage", "当前请求来源未在白名单中【"+ip+"】");
+                results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
                 return results;
             }
             if (StringUtils.isBlank(patientId)) {
@@ -1129,7 +1191,7 @@ public class MedicalViewApiController {
                 results.put("resultMessage", "患者ID不能为空");
                 return results;
             }
-            Clinic clinic = mzChargeDetailService.nucleicAcidApplication(patientId,whiteList.getOpId());
+            Clinic clinic = mzChargeDetailService.nucleicAcidApplication(patientId, whiteList.getOpId());
             if (clinic != null && clinic.getId() != null) {
                 results.put("resultCode", 0);
                 results.put("resultMessage", "核酸申请(单人单管)保存成功");
@@ -1163,11 +1225,11 @@ public class MedicalViewApiController {
     public Map<String, Object> hybridTestApplication(@RequestParam("patientId") String patientId, HttpServletRequest httpServletRequest) {
         Map<String, Object> results = new HashMap<>();
         try {
-            String ip=HttpUtil.getIPAddress(httpServletRequest);
-            WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-            if(whiteList==null){
+            String ip = HttpUtil.getIPAddress(httpServletRequest);
+            WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+            if (whiteList == null) {
                 results.put("resultCode", -1);
-                results.put("resultMessage", "当前请求来源未在白名单中【"+ip+"】");
+                results.put("resultMessage", "当前请求来源未在白名单中【" + ip + "】");
                 return results;
             }
             if (StringUtils.isBlank(patientId)) {
@@ -1175,7 +1237,7 @@ public class MedicalViewApiController {
                 results.put("resultMessage", "患者ID不能为空");
                 return results;
             }
-            Clinic clinic = mzChargeDetailService.hybridTestApplication(patientId,whiteList.getOpId());
+            Clinic clinic = mzChargeDetailService.hybridTestApplication(patientId, whiteList.getOpId());
             if (clinic != null && clinic.getId() != null) {
                 results.put("resultCode", 0);
                 results.put("resultMessage", "核酸申请(混检)保存成功");
@@ -1639,10 +1701,10 @@ public class MedicalViewApiController {
                     continue;
                 }
                 map.put("doctorName", employee.getEmployeeName());
-                if(employee.getEmpTitCode()!=null && StringUtils.isNotBlank(employee.getEmpTitCode())){
-                    map.put("empTitCode",employee.getEmpTitCode());
-                }else {
-                    map.put("empTitCode","100");
+                if (employee.getEmpTitCode() != null && StringUtils.isNotBlank(employee.getEmpTitCode())) {
+                    map.put("empTitCode", employee.getEmpTitCode());
+                } else {
+                    map.put("empTitCode", "100");
                 }
                 if (StringUtils.isNotBlank(employee.getEmpTitCode())) {
                     ZdEmpTitle zdEmpTitle = zdEmpTitleService.queryByCode(employee.getEmpTitCode());
@@ -1711,7 +1773,7 @@ public class MedicalViewApiController {
                 }
             }
             Date requestDayD = DateUtil.pase(requestDay, "yyyy-MM-dd");
-            if(requestDayD==null){
+            if (requestDayD == null) {
                 results.put("resultCode", -1);
                 results.put("resultMessage", "预约挂号时间错误,无法挂号!");
                 return results;
@@ -1768,8 +1830,8 @@ public class MedicalViewApiController {
                         }
                     }
                 }
-                MzZdWorkTime mzZdWorkTime=mzZdWorkTimeService.queryMzZdWorkTimeByCode(ampm);
-                if(mzZdWorkTime==null){
+                MzZdWorkTime mzZdWorkTime = mzZdWorkTimeService.queryMzZdWorkTimeByCode(ampm);
+                if (mzZdWorkTime == null) {
                     results.put("resultCode", -1);
                     results.put("resultMessage", "号源时间段错误!");
                     return results;
@@ -1854,11 +1916,11 @@ public class MedicalViewApiController {
     public Map<String, Object> payRegistrationFormHaiCi(@RequestBody MzyReqrecPageDto mzyReqrecPageDto, HttpServletRequest httpServletRequest) {
         Map<String, Object> resultMap = new HashMap<>();
         try {
-            String ip=HttpUtil.getIPAddress(httpServletRequest);
-            WhiteList whiteList=whiteListService.queryByIpAddress(ip);
-            if(whiteList==null){
+            String ip = HttpUtil.getIPAddress(httpServletRequest);
+            WhiteList whiteList = whiteListService.queryByIpAddress(ip);
+            if (whiteList == null) {
                 resultMap.put("resultCode", -1);
-                resultMap.put("message", "当前请求来源未在白名单中【"+ip+"】");
+                resultMap.put("message", "当前请求来源未在白名单中【" + ip + "】");
                 return resultMap;
             }
             if (mzyReqrecPageDto == null || mzyReqrecPageDto.getMzyReqrec() == null) {
@@ -1921,7 +1983,7 @@ public class MedicalViewApiController {
                 return resultMap;
             }
             mzyReqrec.setOpId(whiteList.getOpId());
-            int num = mzyReqrecService.saveMzyReqrec(mzyReqrecPageDto,whiteList.getOpId());
+            int num = mzyReqrecService.saveMzyReqrec(mzyReqrecPageDto, whiteList.getOpId());
             if (num == 0) {
                 resultMap.put("resultCode", -1);
                 resultMap.put("message", "挂号失败,请稍后重试!");
@@ -2065,7 +2127,7 @@ public class MedicalViewApiController {
             if (mzChargeDetails != null && mzChargeDetails.size() > 0) {
                 Set<String> doctorCodes = mzChargeDetails.stream().filter(u -> StringUtils.isNotBlank(u.getDoctorCode())).map(u -> u.getDoctorCode()).collect(Collectors.toSet());
                 Map<String, String> employeeMap = null;
-                if(doctorCodes!=null && doctorCodes.size()>0){
+                if (doctorCodes != null && doctorCodes.size() > 0) {
                     List<Employee> employees = employeeService.queryByCodes(new ArrayList<>(doctorCodes));
                     if (employees != null) {
                         employeeMap = employees.stream().collect(Collectors.toMap(Employee::getEmployeeCode, Employee::getEmployeeName));
@@ -2225,7 +2287,7 @@ public class MedicalViewApiController {
             MzDepositFile mzDepositFile = new MzDepositFile();
             mzDepositFile.setChequeType(Constants.YBJZ);
             mzDepositFileVo.setMzDepositFiles(Arrays.asList(mzDepositFile));
-            mzChargeDetailService.chargeFee(Constants.DBZJF_CODE, mzDepositFileVo,Constants.DBZJF_CODE);
+            mzChargeDetailService.chargeFee(Constants.DBZJF_CODE, mzDepositFileVo, Constants.DBZJF_CODE);
             results.put("resultCode", 0);
             results.put("resultMessage", "单病种缴费成功");
             results.put("guideListInfo", "");
@@ -2545,7 +2607,6 @@ public class MedicalViewApiController {
     }
 
 
-
     /**
      * 根据父id查询所有的子id集合
      *
@@ -2566,18 +2627,18 @@ public class MedicalViewApiController {
                 resultMap.put("message", "没有查询到对应的实际被检人集");
                 return resultMap;
             }
-            List<MzPatientMi> mzPatientMiList= mzPatientMiService.queryByPatientIds(parentIds);
-            if (mzPatientMiList == null || mzPatientMiList.size()==0) {
+            List<MzPatientMi> mzPatientMiList = mzPatientMiService.queryByPatientIds(parentIds);
+            if (mzPatientMiList == null || mzPatientMiList.size() == 0) {
                 resultMap.put("code", -1);
                 resultMap.put("message", "没有查询到对应的实际被检人集");
                 return resultMap;
             }
-            List<Map<String,String>> resultList =new ArrayList<>();
-            for(MzPatientMi mzPatientMi:mzPatientMiList){
-                if(mzPatientMi!=null){
-                    Map<String,String> map = new HashMap<>();
-                    map.put("name",mzPatientMi.getName());
-                    map.put("socialNo",mzPatientMi.getSocialNo());
+            List<Map<String, String>> resultList = new ArrayList<>();
+            for (MzPatientMi mzPatientMi : mzPatientMiList) {
+                if (mzPatientMi != null) {
+                    Map<String, String> map = new HashMap<>();
+                    map.put("name", mzPatientMi.getName());
+                    map.put("socialNo", mzPatientMi.getSocialNo());
                     resultList.add(map);
                 }
             }
@@ -2596,6 +2657,7 @@ public class MedicalViewApiController {
 
     /**
      * 根据混检实际人员的参数查询混检主体id
+     *
      * @param patientId
      * @return
      */
@@ -2609,7 +2671,7 @@ public class MedicalViewApiController {
                 return resultMap;
             }
             List<HybirdTest> hybirdTestList = hybirdTestService.queryByPatientId(patientId);
-            if (hybirdTestList == null || hybirdTestList.size()==0) {
+            if (hybirdTestList == null || hybirdTestList.size() == 0) {
                 resultMap.put("code", -1);
                 resultMap.put("message", "没有查询到对应混检记录");
                 return resultMap;
@@ -2627,18 +2689,16 @@ public class MedicalViewApiController {
     }
 
 
-
-
     /**
      * 医技申请确认费用
      *
      * @return
      */
     @RequestMapping(value = "/confirmYjReqFlag", method = {RequestMethod.GET})
-    public Map<String, Object> confirmYjReqFlag(@RequestParam("flag") String flag,@RequestParam("opId") String opId,@RequestParam("reqNo") Integer reqNo) {
+    public Map<String, Object> confirmYjReqFlag(@RequestParam("flag") String flag, @RequestParam("opId") String opId, @RequestParam("reqNo") Integer reqNo) {
         Map<String, Object> resultMap = new HashMap<>();
         try {
-            mzChargeDetailService.modifyReceiveFlagAndConfirmFlag(flag,opId,reqNo);
+            mzChargeDetailService.modifyReceiveFlagAndConfirmFlag(flag, opId, reqNo);
             resultMap.put("code", 0);
             resultMap.put("message", "医技申请确认费用成功");
             return resultMap;
@@ -2646,7 +2706,7 @@ public class MedicalViewApiController {
             resultMap.put("code", -1);
             resultMap.put("message", me.getMessage());
             return resultMap;
-        }catch (Exception e) {
+        } catch (Exception e) {
             log.error("信息查询失败,错误信息{}", e);
             resultMap.put("code", -1);
             resultMap.put("message", "信息查询失败");

+ 12 - 12
src/main/java/cn/hnthyy/thmz/controller/mz/MzChargeDetailController.java

@@ -1283,7 +1283,7 @@ public class MzChargeDetailController {
 
 
     /**
-     * 获取病人特门与自费金额
+     * 获取病人门诊统筹/特门与自费金额
      *
      * @return
      */
@@ -1294,7 +1294,7 @@ public class MzChargeDetailController {
         try {
             if (mzChargeDetailYb == null) {
                 resultMap.put("code", -1);
-                resultMap.put("message", "获取病人特门与自费金额参数不能为空");
+                resultMap.put("message", "获取门诊统筹/特门与自费金额参数不能为空");
                 return resultMap;
             }
             if (StringUtils.isBlank(mzChargeDetailYb.getPatientId())) {
@@ -1317,32 +1317,32 @@ public class MzChargeDetailController {
                 String token = TokenUtil.getToken(httpServletRequest);
                 if (StringUtils.isBlank(token)) {
                     resultMap.put("code", -1);
-                    resultMap.put("message", "获取病人特门与自费金额失败,用户Token不存在");
+                    resultMap.put("message", "获取病人门诊统筹/特门与自费金额失败,用户Token不存在");
                     return resultMap;
                 }
                 DecodedJWT decodedJWT = TokenUtil.parseJWT(token);
                 User tokenUser = (User) JsonUtil.jsontoObject(decodedJWT.getSubject(), User.class);
-                PayInfo result = tsmzService.uploadFees(tokenUser.getUserIdCode(), mzChargeDetailYb.getPatientId(), mzChargeDetailYb.getTimes(), mzChargeDetailYb.getReceiptNo());
-                if (result == null) {
+                PayInfo payInfo = tsmzService.uploadFees(tokenUser.getUserIdCode(), mzChargeDetailYb.getPatientId(), mzChargeDetailYb.getTimes(), mzChargeDetailYb.getReceiptNo());
+                if (payInfo == null) {
                     resultMap.put("code", -1);
-                    resultMap.put("message", "获取特门费用失败");
+                    resultMap.put("message", "获取门诊统筹/特门费用失败");
                     return resultMap;
                 }
-                if (result.getCode() != 0) {
+                if (payInfo.getCode() != 0) {
                     resultMap.put("code", -1);
-                    resultMap.put("message", result.getErrorMessage());
+                    resultMap.put("message", payInfo.getErrorMessage());
                     return resultMap;
                 }
-                resultMap.put("data", result);
+                resultMap.put("data", payInfo);
             }
             resultMap.put("code", 0);
-            resultMap.put("message", "获取病人特门与自费金额成功");
+            resultMap.put("message", "获取病人门诊统筹/特门与自费金额成功");
             return resultMap;
         } catch (Exception e) {
             e.printStackTrace();
             resultMap.put("code", -1);
-            resultMap.put("message", "获取病人特门与自费金额失败,系统出错,请联系管理员");
-            log.error("获取病人特门与自费金额失败,系统异常,错误信息{}", e);
+            resultMap.put("message", "获取病人门诊统筹/特门与自费金额失败,系统出错,请联系管理员");
+            log.error("获取病人门诊统筹/特门与自费金额失败,系统异常,错误信息{}", e);
             return resultMap;
         }
     }

+ 5 - 0
src/main/java/cn/hnthyy/thmz/service/impl/thmz/TsmzServiceImpl.java

@@ -65,6 +65,11 @@ public class TsmzServiceImpl implements TsmzService {
                 payInfo.setCode(-1);
                 payInfo.setErrorMessage((String) resultJSONO.get("msg"));
                 return payInfo;
+            }else if ((int) resultJSONO.get("code") == -2) {
+                PayInfo payInfo = new PayInfo();
+                payInfo.setCode(-2);
+                payInfo.setErrorMessage((String) resultJSONO.get("msg"));
+                return payInfo;
             }
         } catch (Exception e) {
             log.error("特殊门诊病人费用试算失败,病人id={},就诊次数times={},缴费次数receiptNo={}", patientId, times, receiptNo);