From a795eb3c2c6f538538fad75a625bfd76d0e37406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 7 Mar 2025 13:48:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8Fcode=E6=8D=A2?= =?UTF-8?q?=E5=8F=96openId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/user/UserAuthorizationController.java | 11 +++++++++++ .../account/service/UserAuthorizationService.java | 1 + .../service/impl/UserAuthorizationServiceImpl.java | 12 ++++++++++++ 3 files changed, 24 insertions(+) diff --git a/cash-api/account-server/src/main/java/com/czg/controller/user/UserAuthorizationController.java b/cash-api/account-server/src/main/java/com/czg/controller/user/UserAuthorizationController.java index 4547a2c7..248a9596 100644 --- a/cash-api/account-server/src/main/java/com/czg/controller/user/UserAuthorizationController.java +++ b/cash-api/account-server/src/main/java/com/czg/controller/user/UserAuthorizationController.java @@ -32,6 +32,17 @@ public class UserAuthorizationController { return CzgResult.success(userAuthorizationService.login(userAuthorizationLoginDTO)); } + /** + * 通过code获取openId + * @param code code + * @param source 平台 wechat微信 支付宝alipay + * @return 返回openId + */ + @GetMapping("/openId") + public CzgResult getOpenId(@RequestParam String code, @RequestParam String source) { + return CzgResult.success(userAuthorizationService.getOpenId(code, source)); + } + /** * 小程序登录 * @return 登录信息 diff --git a/cash-common/cash-common-service/src/main/java/com/czg/account/service/UserAuthorizationService.java b/cash-common/cash-common-service/src/main/java/com/czg/account/service/UserAuthorizationService.java index 9acffa2b..f2bf819d 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/account/service/UserAuthorizationService.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/account/service/UserAuthorizationService.java @@ -9,4 +9,5 @@ import com.czg.account.dto.auth.UserAuthorizationLoginDTO; public interface UserAuthorizationService { LoginTokenDTO login(UserAuthorizationLoginDTO userAuthorizationLoginDTO); + String getOpenId(String code, String source); } diff --git a/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/UserAuthorizationServiceImpl.java b/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/UserAuthorizationServiceImpl.java index 87c5e620..753f4b3b 100644 --- a/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/UserAuthorizationServiceImpl.java +++ b/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/UserAuthorizationServiceImpl.java @@ -16,6 +16,7 @@ import com.czg.sa.MyStpLogic; import com.czg.sa.StpKit; import com.czg.service.account.util.AlipayUtil; import com.czg.service.account.util.WechatAuthUtil; +import org.checkerframework.checker.units.qual.C; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -32,6 +33,17 @@ public class UserAuthorizationServiceImpl implements UserAuthorizationService { @Resource private UserInfoService userInfoService; + @Override + public String getOpenId(String code, String source) { + String openId; + if (UserAuthSourceEnum.WECHAT.getValue().equals(code)) { + openId = wechatAuthUtil.getSessionKeyOrOpenId(code); + }else { + openId = alipayUtil.getOpenId(code); + } + return openId; + } + @Override public LoginTokenDTO login(UserAuthorizationLoginDTO userAuthorizationLoginDTO) {