| 
					
				 | 
			
			
				@@ -217,7 +217,7 @@ public class YqPayController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         for (int i = 0; i < courses.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             MecCourse course = courses.get(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (mecCourse4json.getCourseId().equals(course.getCourseId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                BigDecimal price = course.getClassType() == 1 ? course.getPrice().multiply(BigDecimal.valueOf(buyCount)) : mecCourse4json.getPrice(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                BigDecimal price = course.getClassType() == 1 ? course.getPrice().multiply(BigDecimal.valueOf(buyCount)) : course.getPrice().multiply(BigDecimal.valueOf(course.getBuyCount())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 amount = amount.add(price); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 remark += course.getClassName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -290,7 +290,7 @@ public class YqPayController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //@PostMapping("/query") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //@Scheduled(cron = "0/3 40 11 * * ?") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public String query(String merOrderNoList) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Object query(String merOrderNoList) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String notifyUrl = ""; //回调地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Map<String, Object> resultMap = new LinkedHashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         resultMap.put("merOrderNoList", merOrderNoList); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -444,4 +444,67 @@ public class YqPayController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //@Scheduled(cron = "0/3 40 11 * * ?") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @RequestMapping("/getOrderStatus") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void getOrderStatus() throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Order> payingOrders = orderService.findPayingOrders(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String merOrderNos = ""; // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (int i = 0; i < payingOrders.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            merOrderNos += payingOrders.get(i).getOrderNo() + ","; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (merOrderNos.isEmpty()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        merOrderNos = merOrderNos.substring(0, merOrderNos.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String notifyUrl = ""; //回调地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Object> resultMap = new LinkedHashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        resultMap.put("merOrderNoList", merOrderNos); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Object> requestMap = new YqPayUtil(notifyUrl, resultMap).getRequestMap(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Msg queryRs = yqQueryService.orderQuery(requestMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (queryRs.getCode().equals("88")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //更新订单状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String[] statusArr = {"0", "1", "7"}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String responseParameters = queryRs.getResponseParameters(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<Map<String, String>> responseList = JSON.parseObject(responseParameters, List.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (int i = 0; i < responseList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Map<String, String> rpMap = responseList.get(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (Arrays.asList(statusArr).contains(rpMap.get("tradeState"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.updateOrder(rpMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Transactional 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void updateOrder(Map<String, String> rpMap) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int status = rpMap.get("tradeState").equals("1") ? 2 : 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Order order = orderService.getOrderByOrderNo(rpMap.get("merOrderNo")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        order.setStatus(status); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        order.setBank(rpMap.get("channelType")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (order.getPayId() == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            order.setPayId(rpMap.get("orderNo")); //更新易乾付订单号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (status == 2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            order.setPay(order.getAmount()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            order.setPayTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //推送mec 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(order.getTuiFee() != null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ApplyInfo applyInfo = applyInfoService.get(order.getUserId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                applyInfoService.userRegister(applyInfo.getPatriarchPhone()); //推送mec 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //失败减去已收款金额,减去报名人数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (status == 0 && order.getTuiFee() != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            CourseGroupInfoService.get() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            courseGroupInfo.setRegNum(courseGroupInfo.getRegNum() + 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        orderService.update(order); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |