| 
					
				 | 
			
			
				@@ -110,6 +110,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             appUserInfo.setMinaOpenid(payOrderRequest.getOpenId());   //2是小程序 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<AppUserInfo> appUserInfoList =appUserInfoService.Authentication(appUserInfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //logger.info("用户信息:" + appUserInfoList.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Map<String ,Object> resultMap = new HashMap<>();            //返回结果集 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //判断登录人员是否验证成功 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(appUserInfoList!=null && appUserInfoList.size()>0){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -155,6 +156,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             String oilPersonnel = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //使用list原因:一个枪号对应多个加油员场景 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             List<Map> mapResultList = payOrderMapper.selectPersonelName(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            logger.info("加油员信息:"+ mapResultList.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(mapResultList != null && mapResultList.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 for (Map per : mapResultList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if(per.containsKey("personelName") && per.get("personelName").toString() !=null && per.get("personelName").toString() !=""){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -164,17 +166,23 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if(oilPersonnel !=""){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setOilPersonnel(oilPersonnel.substring(0, oilPersonnel.length()-1));   //加油员 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(mapResultList.get(0).containsKey("stationName") && mapResultList.get(0).get("stationName").toString() !="" && mapResultList.get(0).get("stationName").toString() !=null ){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    payOrder.setStationName(mapResultList.get(0).get("stationName").toString());        //油站名称 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             String orderType = payOrderRequest.getOrderType();                          //获取订单类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            logger.info("订单类型:" + orderType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(orderType.equals("1")){                                                  //订单类型是油品时计算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 resultMap = this.calculateAmt(payOrderRequest);                         //计算油价 加油升数 优惠金额 实收金额 优惠价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 payOrder.setOilPirce(resultMap.get("oilPrice").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 payOrder.setOrderLiters(resultMap.get("oilLiters").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 payOrder.setDiscountAmt(Double.valueOf(resultMap.get("discountAmt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 payOrder.setAmt(Double.valueOf(resultMap.get("amt").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                String stationCardEnabledFlag = electronicMembershipCardService.getStationCardEnabledFlag(payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                logger.info("油站是否开启电子会员卡功能: " +stationCardEnabledFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //查询油站是否开启电子会员卡功能 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(stationCardEnabledFlag.equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    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());                //订单应收金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             String oilName =payOrderRequest.getOilName(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -199,17 +207,12 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setOilType("2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            payOrder.setOilType(orderType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            String stationCardEnabledFlag = electronicMembershipCardService.getStationCardEnabledFlag(payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            //查询油站是否开启电子会员卡功能 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(stationCardEnabledFlag.equals("1")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                String balance = this.selectCardBalance(payOrderRequest.getStationId(), oilName, appUserInfoList.get(0).getUnionId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                resultMap.put("balance", balance); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            payOrder.setOrderType(orderType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             StationInfo stationInfo = new StationInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             stationInfo.setStationId(payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             StationInfo stationInfos = stationService.selectStationInfo(stationInfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(stationInfos !=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                payOrder.setStationName(stationInfos.getStationName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //获取油站图片和名称 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 resultMap.put("stationPic", stationInfos.getStationPic()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 resultMap.put("stationName", stationInfos.getStationName()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -221,10 +224,6 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     resultMap.put("ordNo", ordNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 case "2":       //非油品 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Map<String, String> m = stationService.getStationAppIdAndAppSecret(payOrderRequest.getStationId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(m.containsKey("stationName") && m.get("stationName") !=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        payOrder.setStationName(m.get("stationName")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setAmt(Double.valueOf(payOrderRequest.getReceivableAmt()));        //非油品金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setDiscountAmt(Double.valueOf(0));                                 //优惠金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     payOrder.setOilPirce(payOrderRequest.getReceivableAmt().toString());        //非油品价格 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -247,7 +246,7 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //查询用户电子会员卡余额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public String  selectCardBalance(Integer stationId, String oilName, String unionId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Map<String, String>  selectCardBalance(Integer stationId, String oilName, String unionId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String cardOilsType =""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         switch (oilName){                               //根据油品名称存储电子卡油品类型 1.柴油 2 汽油 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             case "92#": 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -275,10 +274,15 @@ public class PayOrderController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         customerElectronicCard.setUnionId(unionId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CustomerElectronicCard electronicCardInfo = electronicMembershipCardService.getElectronicCardInfoByUnionId(customerElectronicCard); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         BigDecimal balance = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String cardOilsType1 =""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(electronicCardInfo !=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             balance = electronicCardInfo.getAmt(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            cardOilsType1 = electronicCardInfo.getCardOilsType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return balance.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, String> result = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        result.put("balance",balance.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        result.put("cardOilsType",cardOilsType1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /*** 
			 |