| 
					
				 | 
			
			
				@@ -131,34 +131,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrderRequest.setCardOilsType(oilInfo.getOilsType());                         //电子卡类型;注:用于获取客户电子卡参数查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setOilName(oilName);                                                   //油品名称 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    //该油站是否开启优惠券功能 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(stationInfos.getCouponEnabledFlag() == null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        resultMap.put("couponEnabledFlag", "0"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        resultMap.put("couponEnabledFlag", stationInfos.getCouponEnabledFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    //获取用户的优惠券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(stationInfos.getCouponEnabledFlag() !=null && stationInfos.getCouponEnabledFlag().equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        Integer stationId = payOrderRequest.getStationId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        //集团下 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if(stationInfos.getCouponFlag() !=null && stationInfos.getCouponFlag().equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            stationId=stationInfos.getGroupId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        //设置了扫码后支付成功后的领取 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        String couponIssueId = "";                              //领取方式ID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        resultMap.put("couponIssueId", couponIssueId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        couponIssueId = this.getCouponIssue(stationId).get(0).getCouponIssueId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if(StringUtils.isNotBlank(couponIssueId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            resultMap.put("couponIssueId", couponIssueId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        List<UserCoupon> userCouponsList = new ArrayList<>();       //用户的优惠券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        resultMap.put("userCouponsList", userCouponsList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        userCouponsList = this.getUserCoupon(appUserInfos.getUnionId(), stationId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if(userCouponsList !=null && userCouponsList.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            resultMap.put("userCouponsList", userCouponsList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    PayOrderResultInfo payOrderResultInfo = this.calculateAmt(payOrderRequest); //计算订单金额 价格 加油升数 等等 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if(oilsType.equals("3")){                                                       //订单类型是油品时计算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         payOrder.setOrderType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         payOrder.setAmt(Double.valueOf(payOrderRequest.getReceivableAmt()));        //非油品金额 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -175,7 +148,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         logger.info("返回前端的结果:" +resultMap.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //payOrderMapper.insertSelective(payOrder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        PayOrderResultInfo payOrderResultInfo = this.calculateAmt(payOrderRequest); //计算订单金额 价格 加油升数 等等 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //PayOrderResultInfo payOrderResultInfo = this.calculateAmt(payOrderRequest); //计算订单金额 价格 加油升数 等等 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         payOrder.setOilPirce(payOrderResultInfo.getOilPrice()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         payOrder.setOrderLiters(payOrderResultInfo.getOilLiters()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         payOrder.setDiscountAmt(Double.valueOf(payOrderResultInfo.getDiscountAmt())); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -214,6 +187,37 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //payOrderMapper.insertSelective(payOrder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //该油站是否开启优惠券功能 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(stationInfos.getCouponEnabledFlag() == null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        resultMap.put("couponEnabledFlag", "0"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        resultMap.put("couponEnabledFlag", stationInfos.getCouponEnabledFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //获取用户的优惠券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(stationInfos.getCouponEnabledFlag() !=null && stationInfos.getCouponEnabledFlag().equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Integer stationId = payOrderRequest.getStationId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //集团下 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(stationInfos.getCouponFlag() !=null && stationInfos.getCouponFlag().equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            stationId=stationInfos.getGroupId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //设置了扫码后支付成功后的领取 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String couponIssueId = "";                              //领取方式ID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        resultMap.put("couponIssueId", couponIssueId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        couponIssueId = this.getCouponIssue(stationId).get(0).getCouponIssueId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(StringUtils.isNotBlank(couponIssueId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            resultMap.put("couponIssueId", couponIssueId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        List<UserCoupon> userCouponsList = new ArrayList<>();       //用户的优惠券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        resultMap.put("userCouponsList", userCouponsList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //userCouponsList = this.getUserCoupon(appUserInfos.getUnionId(), stationId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        userCouponsList = payOrderResultInfo.getUserCouponsList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(userCouponsList !=null && userCouponsList.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            resultMap.put("userCouponsList", userCouponsList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //根据油站和油枪获取加油员 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (payOrderRequest.getPersonnelId() != null && payOrderRequest.getPersonnelId() != "" && !payOrderRequest.getPersonnelId().equals("undefined")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //表示为一人一码:一个加油员一个码 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -373,18 +377,47 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     switch (discountSetting){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         case "0":   //不执营销方案时 计算等级优惠 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             payOrderResultInfo = this.calculateGradeDiscount(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setAllDiscountType("1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         case "1":    //满减方案 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             payOrderResultInfo = this.calculateManJianDiscount(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         case "2":    //立减方案 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             payOrderResultInfo = this.calculateLiJianDiscount(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         case "3":    //独立直降 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             payOrderResultInfo = this.calculateZhiJiangDiscount(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         case "4":    //计算阶梯直降 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             payOrderResultInfo = this.calculateJieTiZhiJiangDiscount(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -792,6 +825,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setBalance(map.get("balance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setCardOilsType(map.get("cardOilsType")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return  payOrderResultInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -981,6 +1019,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setBalance(map.get("balance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setCardOilsType(map.get("cardOilsType")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return  payOrderResultInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1115,6 +1158,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setBalance(map.get("balance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setCardOilsType(map.get("cardOilsType")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return  payOrderResultInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1253,6 +1301,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setBalance(map.get("balance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setCardOilsType(map.get("cardOilsType")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setAllDiscountType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return payOrderResultInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1366,6 +1419,11 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setBalance(map.get("balance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             payOrderResultInfo.setCardOilsType(map.get("cardOilsType")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setOilName(params.get("oilName").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUnionId(params.get("unionId").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setAllDiscountType("1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setStationId(Integer.valueOf(params.get("stationId").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            payOrderResultInfo.setUserCouponsList(this.getUserCouponAscList(payOrderResultInfo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return  payOrderResultInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1374,7 +1432,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public List<UserCoupon> getUserCouponAscList(PayOrderResultInfo p){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Integer stationId = p.getStationId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String unionId = p.getUnionId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<UserCoupon> userCouponsCalAndAscList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<UserCoupon> userCouponsList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         StationInfo stationInfo = new StationInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         stationInfo.setStationId(stationId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         StationInfo stationInfos = stationService.selectStationInfo(stationInfo); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1389,12 +1447,10 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             userCoupon.setExpireFlag("0");                  // SQL 条件判断 过期标志: 1 代表使用的优惠券已过期查询参数; 0 代表未过期有效的优惠券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             userCoupon.setNoVerificationVerFlag("0");       //SQL 条件判断 查询没有异业券的参数标识: 0代表只有加油券 1代表只有异业券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             userCoupon.setCurrentTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            List<UserCoupon> userCouponsList = couponService.selectUserCoupons(userCoupon); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            userCouponsList = couponService.selectUserCoupons(userCoupon); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //循环计算优惠券金额 并排序 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(userCouponsList !=null && userCouponsList.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 for (UserCoupon uc: userCouponsList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    uc.getCouponThresholdAmt(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     String status = uc.getStatus(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if(status !=null && status.equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //返回前端使用优惠券后的计算金额计算后 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1416,37 +1472,49 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         couponReckonAmt.setOilLiters(oilLiters); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         //优惠券时间类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         String availableControl = uc.getAvailableControl(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        switch (availableControl){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            case "0": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            case "1": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                boolean activityDay_1 = this.isActivityDay("1", uc.getCycleDays()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                if(activityDay_1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    //指定每周几 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            case "2": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                boolean activityDay_2 = this.isActivityDay("2", uc.getCycleDays()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                if(activityDay_2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    //指定每月的几号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            case "3": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                boolean activityDay_3 = this.isActivityDay("3", uc.getAppointedDays()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                if (activityDay_3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    //指定日 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        BigDecimal couponThresholdAmt = uc.getCouponThresholdAmt(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String oilName = p.getOilName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String oilNames = uc.getOilName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //判断该油品是否能用该张张优惠券 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        boolean contains = oilNames.contains(oilName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(contains){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            BigDecimal receivableAmt = new BigDecimal(p.getReceivableAmt()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            //应收金额大于优惠券门槛金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(!(receivableAmt.compareTo(couponThresholdAmt) == -1)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                switch (availableControl){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    case "0": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    case "1": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        boolean activityDay_1 = this.isActivityDay("1", uc.getCycleDays()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if(activityDay_1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            //指定每周几 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    case "2": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        boolean activityDay_2 = this.isActivityDay("2", uc.getCycleDays()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if(activityDay_2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            //指定每月的几号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    case "3": 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        boolean activityDay_3 = this.isActivityDay("3", uc.getAppointedDays()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if (activityDay_3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            //指定日 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            couponReckonAmt = this.calCouponDiscount(couponReckonAmt, uc, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         uc.setCouponReckonAmt(couponReckonAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //根据支付金额大小进行优惠券排序 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                userCouponsList.sort((((o1, o2) -> o1.getCouponReckonAmt().getAmt().compareTo(o2.getCouponReckonAmt().getAmt())))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return userCouponsCalAndAscList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return userCouponsList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /*** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1485,7 +1553,6 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         discountAmtNew = discountAmtNew.add(couponAmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         couponReckonAmt.setDiscountAmt(discountAmtNew.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         couponReckonAmt.setAmt(amtNew.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if(p.getAllDiscountType().equals("2")){ 
			 |