| 
					
				 | 
			
			
				@@ -124,9 +124,60 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 logger.info("油站是否开启电子会员卡功能: " +stationCardEnabledFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //查询油站是否开启电子会员卡功能 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if(stationCardEnabledFlag.equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    CustomerCardSetting customerCardSetting = new CustomerCardSetting(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    customerCardSetting.setStationId(payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    List<CustomerCardSetting> cardRechargeSettingList = electronicMembershipCardService.getCardRechargeSettingList(customerCardSetting); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(cardRechargeSettingList !=null && cardRechargeSettingList.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String isMarket = cardRechargeSettingList.get(0).getIsMarket(); //是否叠加营销方案 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String isGradeSetting = cardRechargeSettingList.get(0).getIsGradeSetting(); //是否叠加等级直降 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Map<String, Object> paramsMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        paramsMap.put("stationId", payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        paramsMap.put("oilName", payOrderRequest.getOilName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        paramsMap.put("receivableAmt", payOrderRequest.getReceivableAmt()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //获取油品价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        StationOilPrice stationOilPrice = new StationOilPrice(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        stationOilPrice.setStationId(payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        stationOilPrice.setOilName(payOrderRequest.getOilName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        StationOilPrice oilPriceInfo = stationService.getStationOilPrice(stationOilPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String oilPrice = oilPriceInfo.getOilPrice(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        paramsMap.put("oilPrice", oilPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        paramsMap.put("mobilePhone", appUserInfoList.get(0).getMobilePhone()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        paramsMap.put("minaOpenid", appUserInfoList.get(0).getMinaOpenid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (StringUtils.isNotBlank(isMarket) && isMarket.equals("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(StringUtils.isNotBlank(isGradeSetting) && isGradeSetting.equals("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //如果营销和等级都设置叠加 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                resultMap.put("amt_dzk", resultMap.get("amt").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //如果营销叠加电子卡不叠加:则用总的实际所有的支付金额+等级优惠的金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                Map<String, Object> map = this.calcuteDengJiZhiJiang(paramsMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                String string = map.get("discountAmt").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                BigDecimal amt_dzk = new BigDecimal(resultMap.get("amt").toString()).add(new BigDecimal(string)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                resultMap.put("amt_dzk",amt_dzk.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            //如果不叠加营销,只叠加等级优惠 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(StringUtils.isNotBlank(isGradeSetting) && isGradeSetting.equals("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                Map<String, Object> map = this.calcuteDengJiZhiJiang(paramsMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                String string = map.get("discountAmt").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                BigDecimal amt_dzk = new BigDecimal(payOrderRequest.getReceivableAmt()).subtract(new BigDecimal(string)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                resultMap.put("amt_dzk", amt_dzk); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //如果既不叠加营销优惠也不叠加等级优惠 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                resultMap.put("amt_dzk", payOrderRequest.getReceivableAmt()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //获取用户电子卡余额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Map<String, String> map = this.selectCardBalance(payOrderRequest.getStationId(), payOrderRequest.getOilName(), appUserInfoList.get(0).getUnionId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     resultMap.put("balance", map.get("balance"));               //电子卡余额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     resultMap.put("cardOilsType", map.get("cardOilsType"));     //电子卡类型1.汽油; 2.柴油 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrder.setReceivableAmt(payOrderRequest.getReceivableAmt());                //订单应收金额 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -139,7 +190,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "95#": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setOilType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                case "97#": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                case "98#": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setOilType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "0#": 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -200,7 +251,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             case "95#": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 cardOilsType ="1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case "97#": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            case "98#": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 cardOilsType ="1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             case "0#": 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -451,7 +502,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * ===========================计算订单金额====================================== 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     * 修订时间:2021年4月20日15:31:30 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 第一次修订时间:2021年4月20日15:31:30 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 修订标题:修订优惠计算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 修订内容 : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      *    修改为目前只有三种优惠:根据立减、满减、独立直降; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -570,12 +621,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             amt = receivableAmt_b.subtract(discountAmt);   //实收金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP);   //加油升数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            //discountPrice = amt.divide(oilLiters,2,BigDecimal.ROUND_HALF_UP);        //优惠价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             switch (vipDiscountyPlus){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 case "1": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     Map<String, Object> map = this.calcuteDengJiZhiJiang(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountAmt = discountAmt.add(new BigDecimal(map.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    amt = amt.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    amt = receivableAmt_b.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("discountAmt", discountAmt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("amt", amt.doubleValue()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -594,8 +644,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 case "1": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     Map<String, Object> map = this.calcuteDengJiZhiJiang(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountAmt = discountAmt.add(new BigDecimal(map.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    amt = amt.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    amt = receivableAmt_b.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("discountAmt", discountAmt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("amt", amt.doubleValue()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -603,10 +652,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("discountPrice", discountPrice.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 case "2": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    resultMap.put("discountAmt", discountAmt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    resultMap.put("amt", amt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    resultMap.put("discountAmt", 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    resultMap.put("amt", receivableAmt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP);   //加油升数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("oilLiters", oilLiters.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    resultMap.put("discountPrice", discountPrice.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    resultMap.put("discountPrice", oilPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -639,7 +689,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 case "1": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     Map<String, Object> map = this.calcuteDengJiZhiJiang(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountAmt = discountAmt.add(new BigDecimal(map.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    amt = amt.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    amt = receivableAmt_b.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("discountAmt", discountAmt.doubleValue()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -660,7 +710,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 case "1": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     Map<String, Object> map = this.calcuteDengJiZhiJiang(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountAmt = discountAmt.add(new BigDecimal(map.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    amt = amt.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    amt = receivableAmt_b.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("discountAmt", discountAmt.doubleValue()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -669,10 +719,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("discountPrice", discountPrice.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 case "2": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    resultMap.put("discountAmt", discountAmt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    resultMap.put("amt", amt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    resultMap.put("discountAmt", 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    resultMap.put("amt", receivableAmt.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP);   //加油升数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     resultMap.put("oilLiters", oilLiters.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    resultMap.put("discountPrice", discountPrice.doubleValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    resultMap.put("discountPrice", oilPrice); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -709,7 +760,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     if(vipDiscountyPlus_3.equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         Map<String, Object> map = this.calcuteDengJiZhiJiang(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         discountAmt = discountAmt.add(new BigDecimal(map.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                        amt = amt.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        amt = receivableAmt_b.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -732,7 +783,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     if(vipDiscountyPlus_3.equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         Map<String, Object> map = this.calcuteDengJiZhiJiang(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         discountAmt = discountAmt.add(new BigDecimal(map.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                        amt = amt.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        amt = receivableAmt_b.subtract(discountAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         discountPrice = oilLiters.equals(new BigDecimal("0.00")) ? new BigDecimal(oilPrice) : amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -801,7 +852,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(customerGradeList !=null && customerGradeList.size() >0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //用户第一次购买 取等级最低初始会员的优惠条件计算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice), 2, BigDecimal.ROUND_HALF_UP);   //加油升数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(customerGradeInfo.get(0).get("gasoilDiscountLitre") !=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(customerGradeList.get(0).get("gasoilDiscountLitre") !=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     discountAmt = oilLiters.multiply(new BigDecimal(customerGradeList.get(0).get("gasoilDiscountLitre").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }else { 
			 |