From cc51b41fa3dd6c51eef9028fbbb72ec3e7139d74 Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <279049017@qq.com>
Date: Thu, 24 Sep 2020 14:10:14 +0800
Subject: [PATCH] 添加字段

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java |   33 ++++++++++++++++++++++-----------
 1 files changed, 22 insertions(+), 11 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
index bd63eb9..1a3955b 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
@@ -115,7 +115,8 @@
                 //2.没有扣费,检查是否已经预扣费
                 if (!isBeforeDeduction(consumptionRecordList, ConsumptionConstant.BEFORE_DEDUCTION)) {
                     //3.没有预扣,查询余额
-                    if (VateUserNowProduct(consumptionRequest.getConsumptionCount(),consumptionRequest.getHospitalId(),consumptionRequest.getDepartmentId())) {
+                    Map<String,Object> vateMap=VateUserNowProduct(consumptionRequest.getConsumptionCount(),consumptionRequest.getHospitalId(),consumptionRequest.getDepartmentId());
+                    if (Boolean.parseBoolean(vateMap.get("vateRe").toString())) {
                         //4.余额充足 获取要扣的套餐 写预扣费记录
                         if (beforeConsumption(consumptionRequest)) {
                             //预扣费成功
@@ -128,9 +129,9 @@
                             bcode = ConsumptionConstant.BUSINESS_CODE_ERROR;
                         }
                     } else {
-                        //余额不足
+                        //余额不足 或获取异常
                         isSuccess = false;
-                        reMsg = "余额不足或获取失败!";
+                        reMsg = vateMap.get("vateMsg").toString();
                         bcode = ConsumptionConstant.BUSINESS_CODE_FAIL;
                     }
                 } else {
@@ -178,7 +179,8 @@
                 //2.没有扣费,检查是否已经预扣费
                 if (!isBeforeDeduction(consumptionRecordList, ConsumptionConstant.BEFORE_DEDUCTION)) {
                     //2.1.没有预扣,查询余额
-                    if (VateUserNowProduct(consumptionRequest.getConsumptionCount(),hospitalId,consumptionRequest.getDepartmentId())) {
+                    Map<String,Object> vateMap=VateUserNowProduct(consumptionRequest.getConsumptionCount(),hospitalId,consumptionRequest.getDepartmentId());
+                    if (Boolean.parseBoolean(vateMap.get("vateRe").toString())) {
                         //2.2.余额充足 获取要扣的套餐 写预扣费记录
                         if (beforeConsumption(consumptionRequest)) {
                             //预扣费成功
@@ -193,7 +195,7 @@
                     } else {
                         //余额不足
                         isSuccess = false;
-                        reMsg = "余额不足或获取失败!";
+                        reMsg = vateMap.get("vateMsg").toString();
                         bcode = ConsumptionConstant.BUSINESS_CODE_FAIL;
                         return ResultReturn(consumptionRequest, bcode,ConsumptionConstant.BEFORE_DEDUCTION, reMsg, isSuccess);
                     }
@@ -379,7 +381,8 @@
                 //2.没有扣费,检查是否已经预扣费
                 if (!isBeforeDeduction(consumptionRecordList, ConsumptionConstant.BEFORE_DEDUCTION)) {
                     //3.没有预扣,查询余额
-                    if (VateUserNowProduct(consumptionRequest.getConsumptionCount(),consumptionRequest.getHospitalId(),consumptionRequest.getDepartmentId())) {
+                    Map<String,Object> vateMap=VateUserNowProduct(consumptionRequest.getConsumptionCount(),consumptionRequest.getHospitalId(),consumptionRequest.getDepartmentId());
+                    if (Boolean.parseBoolean(vateMap.get("vateRe").toString())) {
                         //4.余额充足 获取要扣的套餐 写预扣费记录
                         if (!beforeConsumption(consumptionRequest)) {
                             //预扣费执行失败
@@ -394,7 +397,7 @@
                         }
                     } else {
                         //余额不足
-                        reMsg = "余额不足或获取失败!";
+                        reMsg = vateMap.get("vateMsg").toString();
                         bcode = ConsumptionConstant.BUSINESS_CODE_FAIL;
                         return ResultReturn(consumptionRequest, bcode,ConsumptionConstant.BEFORE_DEDUCTION, reMsg, isSuccess);
                     }
@@ -563,24 +566,32 @@
      * @param consumptionCount 要扣的数量
      * @return
      */
-    private Boolean VateUserNowProduct(int consumptionCount,Long hospitalId,Long departmentId) {
+    private Map<String,Object> VateUserNowProduct(int consumptionCount,Long hospitalId,Long departmentId) {
+        Map<String,Object> returnMap=new HashMap<>();
         ResultBody biUserPro = productOrderDetailService.biUserNowProduct(hospitalId, departmentId);
         if (biUserPro.getCode() == 0) {
             if (StringUtils.isNotBlank(biUserPro.getData().toString())) {
                 //余额
                 int userAICount = Integer.parseInt(biUserPro.getData().toString());
                 if (userAICount >= consumptionCount) {
-                    return true;
+                    returnMap.put("vateRe",true);
+                    returnMap.put("vateMsg","余额足够!");
                 } else {
+                    returnMap.put("vateRe",false);
+                    returnMap.put("vateMsg","余额不足!");
                     logger.info("医院id:【{}】余额不足!", hospitalId);
                 }
             } else {
+                returnMap.put("vateRe",false);
+                returnMap.put("vateMsg","余额获取异常,data为空!");
                 logger.error("医院id:【{}】余额获取异常!", hospitalId);
             }
-        } else {
+         }else {
+            returnMap.put("vateRe",false);
+            returnMap.put("vateMsg","余额获取异常,Code非0!");
             logger.info("医院id:【{}】余额获取异常,返回非0!", hospitalId);
         }
-        return false;
+        return returnMap;
     }
 
     /**

--
Gitblit v1.8.0