jk-GitHub-coder 4 jaren geleden
bovenliggende
commit
e1bd171787

+ 4 - 4
YijiaRestful/src/main/java/com/platform/yijia/controller/ElectronicMembershipCardController.java

@@ -1156,7 +1156,7 @@ public class ElectronicMembershipCardController {
                                 BigDecimal divide = null;
                                 BigDecimal multiply = null;
                                 //判断油站配置的优惠类型
-                                if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
+                                if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
                                     divide = calculateIntegral.getAmt().divide(integralRuleDetail.getSaleAmt(), 0, BigDecimal.ROUND_HALF_DOWN);
                                     multiply = divide.multiply(integralRuleDetail.getIntegral());
                                 }else {
@@ -1196,7 +1196,7 @@ public class ElectronicMembershipCardController {
                                 BigDecimal divide = null;
                                 BigDecimal multiply = null;
                                 //判断油站配置的优惠类型
-                                if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
+                                if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
                                     divide = calculateIntegral.getReceivableAmt().divide(integralRuleDetail.getSaleAmt(), 0, BigDecimal.ROUND_HALF_DOWN);
                                     multiply = divide.multiply(integralRuleDetail.getIntegral());
                                 }else {
@@ -1236,7 +1236,7 @@ public class ElectronicMembershipCardController {
                                 BigDecimal divide = null;
                                 BigDecimal multiply = null;
                                 //判断油站配置的优惠类型
-                                if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
+                                if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
                                     divide = calculateIntegral.getOilLiters().divide(integralRuleDetail.getSaleAmt(), 0, BigDecimal.ROUND_HALF_DOWN);
                                     multiply = divide.multiply(integralRuleDetail.getIntegral());
                                 }else {
@@ -1277,7 +1277,7 @@ public class ElectronicMembershipCardController {
                             BigDecimal divide = null;
                             BigDecimal multiply = null;
                             //判断油站配置的优惠类型
-                            if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
+                            if(discountPlanType.equals("1") && integralRuleDetail.getGread() !=null && customerManage.getGrade() !=null && customerManage.getGrade().equals(integralRuleDetail.getGread())){   //等级直降
                                 divide = calculateIntegral.getReceivableAmt().divide(integralRuleDetail.getSaleAmt(), 0, BigDecimal.ROUND_HALF_DOWN);
                                 multiply = divide.multiply(integralRuleDetail.getIntegral());
                             }else {

+ 1 - 1
YijiaRestful/src/main/java/com/platform/yijia/controller/PayController.java

@@ -592,7 +592,7 @@ public class PayController {
                                 integral = calculateIntegralAndPushIntegral(calculateIntegral, customerManage);
                             }
                             //打印小票
-                            this.printReceipt(infoMap);
+                            //this.printReceipt(infoMap);
 
                             //pos机打印小票
                             payOrder.setIntegral(String.valueOf(integral));

+ 7 - 7
YijiaRestful/src/main/java/com/platform/yijia/controller/PayOrderController.java

@@ -535,7 +535,7 @@ public class PayOrderController {
             StationOilPrice oilPriceInfo = stationService.getStationOilPrice(stationOilPrice);
             String oilPrice = oilPriceInfo.getOilPrice();
             //String stationNanme = oilPriceInfo.getStationNanme();
-            BigDecimal oilLiters = new BigDecimal(0);
+            BigDecimal oilLiters = new BigDecimal("0.00");
             BigDecimal discountAmt =new BigDecimal(0);
             BigDecimal discountPrice = null;
             BigDecimal amt = null;
@@ -552,7 +552,7 @@ public class PayOrderController {
             params.put("oilPrice", oilPrice);
             params.put("mobilePhone", mobilePhone);
             params.put("minaOpenid", openId);
-            BigDecimal receivableAmt_b = new BigDecimal(receivableAmt); //传入的应收金额
+            BigDecimal receivableAmt_b = new BigDecimal(String.valueOf(receivableAmt)); //传入的应收金额
             switch (stationDiscountWay){
                 case "1":       //1.等级直降
                     //查询等级直降的优惠方式
@@ -901,11 +901,11 @@ public class PayOrderController {
     public  Map<String, Object> calcuteDengJiZhiJiang(Map params){
         Double receivableAmt = Double.valueOf(params.get("receivableAmt").toString());
         Map<String, Object> resultMap = new HashMap();
-        BigDecimal oilLiters = null;
+        BigDecimal oilLiters = new BigDecimal("0.00");
         BigDecimal discountAmt =new BigDecimal(0);
         BigDecimal discountPrice = null;
         BigDecimal amt = null;
-        BigDecimal receivableAmt_b = new BigDecimal(receivableAmt); //传入的应收金额
+        BigDecimal receivableAmt_b = new BigDecimal(String.valueOf(receivableAmt)); //传入的应收金额
         String oilPrice = params.get("oilPrice").toString();
         List<Map<String, Object>> customerGradeInfo = customerGradeServices.getCustomerGradeInfo(params);
         if(customerGradeInfo != null && customerGradeInfo.size() >0){   //已存在客户等级信息
@@ -946,7 +946,7 @@ public class PayOrderController {
             //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_UP);
             resultMap.put("discountAmt", discountAmt.doubleValue());
             resultMap.put("amt", amt.doubleValue());
-            resultMap.put("oilLiters", oilLiters.doubleValue());
+            resultMap.put("oilLiters", oilLiters.toString());
             resultMap.put("discountPrice", discountPrice.doubleValue());
         }else {
             //不存在客户等级信息时,查询油站的客户等级直降优惠(查询结果根据会员成长值条件做升序查询)
@@ -969,7 +969,7 @@ public class PayOrderController {
                 //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_UP);
                 resultMap.put("discountAmt", discountAmt.doubleValue());
                 resultMap.put("amt", amt.doubleValue());
-                resultMap.put("oilLiters", oilLiters.doubleValue());
+                resultMap.put("oilLiters", oilLiters.toString());
                 resultMap.put("discountPrice", discountPrice.doubleValue());
             }else {
                 //不存在
@@ -979,7 +979,7 @@ public class PayOrderController {
                 if(!oilLiters.toString().substring(oilLiters.toString().indexOf(".") + 1).equals("00")){
                     oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_UP);
                 }
-                resultMap.put("oilLiters", oilLiters.doubleValue());
+                resultMap.put("oilLiters", oilLiters.toString());
                 resultMap.put("discountPrice", oilPrice);
             }
         }