From d8f0615909cedc1446da7c06b2ab7599abe07c9d Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 05 八月 2025 18:39:09 +0800
Subject: [PATCH] 修改bug

---
 UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java |   53 ++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 40 insertions(+), 13 deletions(-)

diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index 9707d2c..cc777a1 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -25,6 +25,7 @@
 import com.stylefeng.guns.modular.system.util.qianyuntong.OrderUtil;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.ModifyTravelItineraryRequest;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTPaymentCallback;
+import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTPaymentCallbackData;
 import com.stylefeng.guns.modular.system.warpper.*;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.model.PaymentRecord;
@@ -53,6 +54,8 @@
 import java.io.Serializable;
 import java.lang.reflect.InvocationTargetException;
 import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
 import java.util.*;
 
 /**
@@ -559,8 +562,8 @@
 						return ResultUtil.error("请先配置价格规则");
 					}
 					Map<String, Object> query1 = systemPriceMapper.query(orderPrivateCar.getCompanyId(), 1, orderPrivateCar.getServerCarModelId(), systemPriceCity.getId());
-					System.out.println("参数:" + orderPrivateCar.getCompanyId() + "|" + orderPrivateCar.getServerCarModelId());
-					System.out.println("query1:" + query1);
+//					System.out.println("参数:" + orderPrivateCar.getCompanyId() + "|" + orderPrivateCar.getServerCarModelId());
+//					System.out.println("query1:" + query1);
 					//开始根据不同的方式计算金额
 					if (query1 != null) {
 						JSONObject jsonObject = JSON.parseObject(query1.get("content").toString());//等待费
@@ -1413,7 +1416,11 @@
 				case 2:
 					return orderTaxiService.payTaxiOrder1(payType, orderId, objectId, objectType, type, path, ip);
 				case 3:
-					return orderCrossCityService.payCrossCityOrder1(payType, orderId, objectId, objectType, type);
+					ResultUtil resultUtil = orderCrossCityService.payCrossCityOrder1(payType, orderId, objectId, objectType, type);
+
+					orderCrossCityService.promotion(orderId);
+
+					return resultUtil;
 				case 4:
 					return orderLogisticsService.payLogisticsOrder1(payType, orderId, objectId, objectType, type);
 				case 5:
@@ -2141,7 +2148,30 @@
 	@PostMapping("/base/order/qytPaymentCallback")
 	public String qytPaymentCallback(@RequestBody QYTPaymentCallback qytPaymentCallback) {
 		log.info("【黔云通支付回调通知】请求参数:" + JSON.toJSONString(qytPaymentCallback));
-		if (null == qytPaymentCallback) {
+		try {
+			if (null == qytPaymentCallback) {
+				return "error";
+			}
+			QYTPaymentCallbackData data = qytPaymentCallback.getData();
+			if("1".equals(data.getStatus())){
+				return "error";
+			}
+			String orderNo = data.getOrderNo();
+			String payId = data.getPayId();
+			//网约车
+			if(orderNo.contains("PR")){
+				orderNo = orderNo.substring(2);
+				orderPrivateCarService.payOrderPrivateCarCallback(Integer.valueOf(orderNo), payId, 1);
+				orderPrivateCarService.promotion(Integer.valueOf(orderNo));
+			}
+			//出租车
+			if(orderNo.contains("TA")){
+				orderNo = orderNo.substring(2);
+				orderTaxiService.payOrderTaxiCallback(Integer.valueOf(orderNo), payId, 1, 0);
+				orderTaxiService.promotion(Integer.valueOf(orderNo));
+			}
+		}catch (Exception e){
+			e.printStackTrace();
 			return "error";
 		}
 		return "success";
@@ -2156,12 +2186,6 @@
 	 */
 	private void promotion(Integer orderType, Integer orderId) {
 		switch (orderType) {
-			case 1:
-				orderPrivateCarService.promotion(orderId);
-				break;
-			case 2:
-				orderTaxiService.promotion(orderId);
-				break;
 			case 3:
 				orderCrossCityService.promotion(orderId);
 				break;
@@ -2360,12 +2384,15 @@
             List<TripOrderVo> tripOrderVos = processTripOrderVos(orderList);
             String filePath = tripSheetGenerator.generatePdf(tripOrderVos);
             File attachment = new File(filePath);
-            emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "行程单", "请查收您的行程单", attachment);
+            String displayFileName = "贵人家园行程单.pdf";
+            emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "行程单", "请查收您的行程单", attachment,displayFileName);
             attachment.delete(); // 发送成功后删除临时文件
-            return ResultUtil.success("邮件发送成功");
+            Map<String, Object> result = new HashMap<>();
+            result.put("orderNum", orderList.size());
+            return ResultUtil.success(result);
         } catch (Exception e) {
             e.printStackTrace();
-            return ResultUtil.error("邮件发送失败");
+            return ResultUtil.error("邮件发送失败"+e.getMessage());
         }
     }
     /**

--
Gitblit v1.7.1