| 
														
															@@ -193,7 +193,7 @@ public class PayOrderController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     //查询用户电子会员卡余额 
														 | 
														
														 | 
														
															     //查询用户电子会员卡余额 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     public Map<String, String>  selectCardBalance(Integer stationId, String oilName, String unionId) { 
														 | 
														
														 | 
														
															     public Map<String, String>  selectCardBalance(Integer stationId, String oilName, String unionId) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         String cardOilsType =""; 
														 | 
														
														 | 
														
															         String cardOilsType =""; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        switch (oilName){                               //根据油品名称存储电子卡油品类型 1.柴油 2 汽油 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        switch (oilName){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             case "92#": 
														 | 
														
														 | 
														
															             case "92#": 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 cardOilsType ="1"; 
														 | 
														
														 | 
														
															                 cardOilsType ="1"; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 break; 
														 | 
														
														 | 
														
															                 break; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -504,8 +504,12 @@ public class PayOrderController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                     if(customerGradeInfo != null && customerGradeInfo.size() >0){   //已存在客户等级信息 
														 | 
														
														 | 
														
															                     if(customerGradeInfo != null && customerGradeInfo.size() >0){   //已存在客户等级信息 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                         //使用客户已存在的等级计算优惠 
														 | 
														
														 | 
														
															                         //使用客户已存在的等级计算优惠 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                         oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP); 
														 | 
														
														 | 
														
															                         oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        discountAmt = oilLiters.multiply(new BigDecimal(customerGradeInfo.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                        discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        if(customerGradeInfo.get(0).get("gasoilDiscountLitre") !=null){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                            discountAmt = oilLiters.multiply(new BigDecimal(customerGradeInfo.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                            discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        }else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                            discountAmt =new BigDecimal("0.00"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                         amt = receivableAmt_b.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 = 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); 
														 | 
														
														 | 
														
															                         //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -520,8 +524,15 @@ public class PayOrderController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                         if(customerGradeList !=null && customerGradeList.size() >0){ 
														 | 
														
														 | 
														
															                         if(customerGradeList !=null && customerGradeList.size() >0){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                             //用户第一次购买 取等级最低初始会员的优惠条件计算 
														 | 
														
														 | 
														
															                             //用户第一次购买 取等级最低初始会员的优惠条件计算 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                             oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice), 2, BigDecimal.ROUND_HALF_UP);   //加油升数 
														 | 
														
														 | 
														
															                             oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice), 2, BigDecimal.ROUND_HALF_UP);   //加油升数 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                            discountAmt = oilLiters.multiply(new BigDecimal(customerGradeList.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                            discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                            if(customerGradeInfo.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 { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                                discountAmt =new BigDecimal("0.00"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                            } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+//                            discountAmt = oilLiters.multiply(new BigDecimal(customerGradeList.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+//                            discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                             amt = receivableAmt_b.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 = 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); 
														 | 
														
														 | 
														
															                             //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -767,8 +778,12 @@ public class PayOrderController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         if(customerGradeInfo != null && customerGradeInfo.size() >0){   //已存在客户等级信息 
														 | 
														
														 | 
														
															         if(customerGradeInfo != null && customerGradeInfo.size() >0){   //已存在客户等级信息 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             //使用客户已存在的等级计算优惠 
														 | 
														
														 | 
														
															             //使用客户已存在的等级计算优惠 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP); 
														 | 
														
														 | 
														
															             oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice),2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            discountAmt = oilLiters.multiply(new BigDecimal(customerGradeInfo.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            if(customerGradeInfo.get(0).get("gasoilDiscountLitre") !=null){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                discountAmt = oilLiters.multiply(new BigDecimal(customerGradeInfo.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            }else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                discountAmt =new BigDecimal("0.00"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             amt = receivableAmt_b.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 = 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); 
														 | 
														
														 | 
														
															             //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -783,8 +798,12 @@ public class PayOrderController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             if(customerGradeList !=null && customerGradeList.size() >0){ 
														 | 
														
														 | 
														
															             if(customerGradeList !=null && customerGradeList.size() >0){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 //用户第一次购买 取等级最低初始会员的优惠条件计算 
														 | 
														
														 | 
														
															                 //用户第一次购买 取等级最低初始会员的优惠条件计算 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice), 2, BigDecimal.ROUND_HALF_UP);   //加油升数 
														 | 
														
														 | 
														
															                 oilLiters = receivableAmt_b.divide(new BigDecimal(oilPrice), 2, BigDecimal.ROUND_HALF_UP);   //加油升数 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                discountAmt = oilLiters.multiply(new BigDecimal(customerGradeList.get(0).get("gasoilDiscountLitre").toString())); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                discountAmt = discountAmt.setScale(2, BigDecimal.ROUND_HALF_UP); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                if(customerGradeInfo.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 { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    discountAmt =new BigDecimal("0.00"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 amt = receivableAmt_b.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 = 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); 
														 | 
														
														 | 
														
															                 //discountPrice = amt.divide(oilLiters, 2, BigDecimal.ROUND_HALF_UP); 
														 |