From 7f0f418c272bdaafd8c067a3559f9c38b99a6778 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期一, 13 四月 2026 15:24:08 +0800
Subject: [PATCH] feat:原微信支付切换为第三方

---
 UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java |   31 +++++++++++++++++++++++--------
 1 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
index aab6b87..3fd00f3 100644
--- a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
+++ b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -170,6 +170,9 @@
 	private PayMoneyUtil payMoneyUtil;
 
 	@Autowired
+	private CbyzxOrderPayHelper cbyzxOrderPayHelper;
+
+	@Autowired
 	private ICompanyService companyService;
 	
 	@Autowired
@@ -803,9 +806,14 @@
 		}
 		
 		if (payType == 1) {//微信支付
-			String app = type == 1 ? "APP" : "JSAPI";
-			resultUtil = payMoneyUtil.weixinpay("完成订单", "", orderId + "_3_" + UUIDUtil.getRandomCode(5), orderMoney.toString(), "/base/wxPayOrderTaxi", app, userInfo.getAppletsOpenId());
-			paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, "", 1);//添加预支付数据
+			String outTradeNo = orderId + "_3_" + UUIDUtil.getRandomCode(5);
+			JSONObject response = cbyzxOrderPayHelper.createOrder(orderCrossCity.getUserId(), userInfo.getAppletsOpenId(), outTradeNo, orderMoney);
+			if (!cbyzxOrderPayHelper.isCreateSuccess(response)) {
+				return ResultUtil.error(cbyzxOrderPayHelper.extractMessage(response), response);
+			}
+			String paymentCode = ToolUtil.isNotEmpty(cbyzxOrderPayHelper.extractRecordCode(response)) ? cbyzxOrderPayHelper.extractRecordCode(response) : outTradeNo;
+			resultUtil = ResultUtil.success(response);
+			paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, paymentCode, 1);//添加预支付数据
 		}
 		if (payType == 2) {//支付宝支付
 			resultUtil = payMoneyUtil.alipay("完成订单", "完成订单", "", orderId + "_3_" + UUIDUtil.getRandomCode(5), orderMoney.toString(), "/base/aliPayOrderTaxi");
@@ -1045,11 +1053,15 @@
 			if (orderMoney == 0) {
 				return ResultUtil.error("请使用余额支付");
 			}
-			String app = type == 1 ? "APP" : "JSAPI";
-			resultUtil = payMoneyUtil.weixinpay("完成订单", "", orderId + "_3_" + UUIDUtil.getRandomCode(5), orderMoney.toString(), "/base/wxPayOrderTaxi", app, userInfo.getAppletsOpenId());
-
+			String outTradeNo = orderId + "_3_" + UUIDUtil.getRandomCode(5);
+			JSONObject response = cbyzxOrderPayHelper.createOrder(orderCrossCity.getUserId(), userInfo.getAppletsOpenId(), outTradeNo, orderMoney);
+			if (!cbyzxOrderPayHelper.isCreateSuccess(response)) {
+				return ResultUtil.error(cbyzxOrderPayHelper.extractMessage(response), response);
+			}
+			String paymentCode = ToolUtil.isNotEmpty(cbyzxOrderPayHelper.extractRecordCode(response)) ? cbyzxOrderPayHelper.extractRecordCode(response) : outTradeNo;
+			resultUtil = ResultUtil.success(response);
 			this.updateById(orderCrossCity);
-			paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, "", 1);//添加预支付数据
+			paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, paymentCode, 1);//添加预支付数据
 		}
 		if (payType == 2) {//支付宝支付
 			if (orderMoney == 0) {
@@ -1139,7 +1151,10 @@
 	@Override
 	public void payOrderCrossCityCallback(Integer id, String order_id, Integer type, String no) throws Exception {
 		OrderCrossCity orderCrossCity = this.selectById(id);
-		PaymentRecord query = paymentRecordService.query(1, orderCrossCity.getUserId(), 1, Integer.valueOf(id), 3, type, 1);
+		PaymentRecord query = ToolUtil.isNotEmpty(no) ? paymentRecordService.queryByCode(no, 1) : null;
+		if (query == null) {
+			query = paymentRecordService.query(1, orderCrossCity.getUserId(), 1, Integer.valueOf(id), 3, type, 1);
+		}
 		if (null != query && query.getState() == 1) {
 			//添加交易明细
 			transactionDetailsService.saveData(orderCrossCity.getUserId(), "跨城出行订单", query.getAmount(), 2, 1, 1, 3, query.getOrderId());

--
Gitblit v1.7.1