From aeb379749ad10eabd54086e93231228a48c69843 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 12 八月 2024 18:35:02 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/alipay/util/PayDemoActivity.java |   73 ++++++++++++++++++++++++++++++++++--
 1 files changed, 68 insertions(+), 5 deletions(-)

diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/alipay/util/PayDemoActivity.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/alipay/util/PayDemoActivity.java
index 0037651..d47e323 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/alipay/util/PayDemoActivity.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/alipay/util/PayDemoActivity.java
@@ -5,14 +5,14 @@
 import com.alipay.api.AlipayClient;
 import com.alipay.api.DefaultAlipayClient;
 import com.alipay.api.domain.AlipayTradeAppPayModel;
+import com.alipay.api.domain.AlipayTradeCreateModel;
 import com.alipay.api.request.AlipayTradeAppPayRequest;
-import com.alipay.api.response.AlipayTradeAppPayResponse;
+import com.alipay.api.request.AlipayTradeCreateRequest;
+import com.alipay.api.response.AlipayTradeCreateResponse;
 import com.jpay.alipay.AliPayApi;
 import com.jpay.alipay.AliPayApiConfig;
 import com.jpay.alipay.AliPayApiConfigKit;
 import com.ruoyi.order.util.alipay.config.AlipayConfig;
-
-
 import java.io.UnsupportedEncodingException;
 import java.util.HashMap;
 import java.util.Map;
@@ -104,7 +104,7 @@
 			String orderInfo = "";
 			orderInfo = AliPayApi.startAppPay(model, NOTIFY_URL);
 
-			
+
 			map.put("orderInfo", orderInfo);
 			map.put("Type",2);
 			
@@ -113,6 +113,69 @@
 		}
 		 return map;
 	}
-	
+
+	public static Map<String, Object> jsApiPay(String subject, String body, Double price,
+			String out_trade_no, String openId) throws AlipayApiException {
+		// 构造请求参数以调用接口
+		AlipayTradeCreateRequest request = new AlipayTradeCreateRequest();
+		AlipayTradeCreateModel model = new AlipayTradeCreateModel();
+
+		// 设置商户订单号
+		model.setOutTradeNo(out_trade_no);
+
+		// 设置产品码
+		model.setProductCode("JSAPI_PAY");
+
+		// 设置小程序支付中
+		model.setOpAppId(APP_ID);
+
+		// 设置订单总金额
+		model.setTotalAmount(price.toString());
+
+		// 设置业务扩展参数
+		// ExtendParams extendParams = new ExtendParams();
+		// extendParams.setTradeComponentOrderId("2023060801502300000008810000005657");
+		// model.setExtendParams(extendParams);
+
+		// 设置可打折金额
+		// model.setDiscountableAmount("80.00");
+
+		// 设置订单标题
+		model.setSubject(subject);
+
+		// 设置订单附加信息
+		model.setBody(body);
+
+		// uid参数未来计划废弃,存量商户可继续使用,新商户请使用openid。请根据应用-开发配置-openid配置选择支持的字段。
+		// model.setBuyerId("2088102146225135");
+
+		// 设置买家支付宝用户唯一标识
+		model.setBuyerOpenId(openId);
+
+		// 设置商户门店编号
+		// model.setStoreId("NJ_001");
+
+		request.setBizModel(model);
+		request.setNotifyUrl(NOTIFY_URL);
+		// 第三方代调用模式下请设置app_auth_token
+		// request.putOtherTextParam("app_auth_token", "<-- 请填写应用授权令牌 -->");
+
+		AlipayTradeCreateResponse response = alipayClient.execute(request);
+		System.out.println(response.getBody());
+		Map<String, Object> map = new HashMap<>();
+		if (response.isSuccess()) {
+			System.out.println("调用成功");
+
+			map.put("outTradeNo", response.getOutTradeNo());
+			map.put("tradeNo", response.getTradeNo());
+			map.put("Type", 2);
+		} else {
+			System.out.println("调用失败");
+			// sdk版本是"4.38.0.ALL"及以上,可以参考下面的示例获取诊断链接
+			// String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
+			// System.out.println(diagnosisUrl);
+		}
+		return map;
+	}
 
 }

--
Gitblit v1.7.1