From 3e838b3685d24cf4fa7293b7df92dab963c73de4 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Thu, 24 Aug 2023 16:29:01 +0800
Subject: [PATCH] fix
---
src/test/java/cc/mrbird/febs/PayTest.java | 51 ++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 40 insertions(+), 11 deletions(-)
diff --git a/src/test/java/cc/mrbird/febs/PayTest.java b/src/test/java/cc/mrbird/febs/PayTest.java
index ede5efa..7dd1ad9 100644
--- a/src/test/java/cc/mrbird/febs/PayTest.java
+++ b/src/test/java/cc/mrbird/febs/PayTest.java
@@ -1,13 +1,23 @@
package cc.mrbird.febs;
+import cc.mrbird.febs.common.properties.XcxProperties;
+import cc.mrbird.febs.common.utils.RedisUtils;
+import cc.mrbird.febs.common.utils.SpringContextHolder;
+import cc.mrbird.febs.pay.util.WechatConfigure;
+import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.alipay.api.AlipayApiException;
import com.alipay.api.domain.AlipayTradeAppPayModel;
import com.alipay.api.response.AlipayTradeAppPayResponse;
+import com.baomidou.mybatisplus.extension.exceptions.ApiException;
import com.ijpay.alipay.AliPayApi;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.web.client.RestTemplate;
+
+import javax.annotation.Resource;
/**
* @author wzy
@@ -17,17 +27,36 @@
@SpringBootTest
public class PayTest {
+
+ @Autowired
+ private RedisUtils redisUtils;
+ @Resource
+ RestTemplate restTemplate;
@Test
- public void aliPay() throws AlipayApiException {
- AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
- model.setBody("这是测试用");
- model.setSubject("支付测试用的");
- model.setOutTradeNo("2021092712215802974");
- model.setTimeoutExpress("15m");
- model.setTotalAmount("0.01");
- model.setPassbackParams("callback params");
- model.setProductCode("QUICK_MSECURITY_PAY");
- AlipayTradeAppPayResponse resp = AliPayApi.appPayToResponse(model, "");
- log.info("=====>>>{}", JSONObject.toJSONString(resp));
+ public void aliPay(){
+
+ String appId = "wx16d0b75302b360d4";
+ String appSecret = "a2887cd622ed981d2e04d724d29d7454";
+ String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appId + "&secret=" + appSecret;
+ String jsonStr = restTemplate.getForObject(url, String.class);
+
+ /**
+ * 返回结果
+ * {"access_token":"ACCESS_TOKEN","expires_in":7200}
+ */
+ if (!jsonStr.contains("access_token")) {
+ System.out.println("获取微信access_token失败");
+ }
+
+ String accessTokenKey = WechatConfigure.WX_ACCESS_TOKEN_REDIS_KEY;
+ JSONObject jsonObject = JSONObject.parseObject(jsonStr);
+ String accessToken = jsonObject.getString(accessTokenKey);
+ if (StrUtil.isEmpty(accessToken)) {
+ log.error("获取access token失败: {}" , jsonObject.getString("errmsg"));
+ throw new ApiException("获取access token失败");
+ } else {
+ log.info("wx access_token : {}",accessToken);
+ redisUtils.set(accessTokenKey,accessToken);
+ }
}
}
--
Gitblit v1.9.1