From 6e82cd5d5875b38fb30be5ee4c1c5d3dbe33fe98 Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期二, 28 五月 2024 17:31:46 +0800
Subject: [PATCH] 写用户端接口

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/AlipayAppController.java |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/AlipayAppController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/AlipayAppController.java
index dab1d5c..30a0c2e 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/AlipayAppController.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/AlipayAppController.java
@@ -6,7 +6,8 @@
 import com.alipay.api.request.AlipaySystemOauthTokenRequest;
 import com.alipay.api.response.AlipaySystemOauthTokenResponse;
 import com.ruoyi.common.core.domain.R;
-import com.ruoyi.member.VO.AlipayUser;
+import com.ruoyi.system.api.domain.AppMiniLoginVO;
+import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -44,12 +45,13 @@
 
 
     @RequestMapping("/getalipayInfo")
-    @ApiOperation(value = "获取支付寶授权码")
-    public R<AlipayUser> getInfo(String auth_code) throws AlipayApiException {
+    @ApiOperation(value = "获取支付宝授权码")
+    public R<AppMiniLoginVO> getInfo(AppMiniLoginDTO appMiniLoginDto)  {
         //使用支付宝小程序的固定方法获取auth_code
-        if (auth_code == null || auth_code.length() == 0) {
+        if (appMiniLoginDto.getAuth_code()== null || appMiniLoginDto.getAuth_code().length() == 0) {
             return R.fail("请求参数auth_code不能为空");
         } else {
+            AppMiniLoginVO user=new AppMiniLoginVO();
             //String serverUrl, String appId, String privateKey, String format,String charset, String alipayPublicKey, String signType
             //实例化客户端 参数:正式环境URL,Appid,商户私钥 PKCS8格式,字符编码格式,字符格式,支付宝公钥,签名方式
             AlipayClient alipayClient = new DefaultAlipayClient(ALIPAY_BORDER_PROD,APP_ID_PROD, APP_PRIVATE_KEY, "json", "GBK", ALIPAY_PUBLIC_KEY, "RSA2");
@@ -57,17 +59,22 @@
             // 值为authorization_code时,代表用code换取
             request.setGrantType("authorization_code");
             //授权码,用户对应用授权后得到的
-            request.setCode(auth_code);
+            request.setCode(appMiniLoginDto.getAuth_code());
             //这里使用execute方法
-            AlipaySystemOauthTokenResponse response = alipayClient.execute(request);
+            AlipaySystemOauthTokenResponse response = null;
+            try {
+                response = alipayClient.execute(request);
+            } catch (AlipayApiException e) {
+                throw new RuntimeException(e);
+            }
             //刷新令牌,上次换取访问令牌时得到。见出参的refresh_token字段
             request.setRefreshToken(response.getAccessToken());
             //返回成功时 就将唯一标识返回
             if (response.isSuccess()) {
                 System.out.println("调用成功");
                 //我这里只返回了一个字段给前端用
-                AlipayUser user=new AlipayUser();
-                user.setUserid(response.getUserId());
+               String user1= response.getUserId();
+                user.setZfbuserid(user1);
                 return R.ok(user);
             } else {
                 return R.fail("调用失败");

--
Gitblit v1.7.1