From aa6ffcaae173e0ba6372c90261b8a7d4b1fd6052 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期五, 26 一月 2024 11:07:17 +0800
Subject: [PATCH] Merge branch '1.1' of http://120.76.84.145:10101/gitblit/r/java/HongRuiTang into 1.1
---
ruoyi-auth/src/main/java/com/ruoyi/auth/controller/QwH5Controller.java | 50 ++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 42 insertions(+), 8 deletions(-)
diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/QwH5Controller.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/QwH5Controller.java
index 3ebe162..dcd1562 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/QwH5Controller.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/QwH5Controller.java
@@ -4,6 +4,8 @@
import com.ruoyi.auth.service.QywxInnerService;
import com.ruoyi.auth.service.SysLoginService;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.system.api.model.*;
import io.swagger.annotations.Api;
@@ -35,8 +37,11 @@
@Autowired
private TokenService tokenService;
- @Value("${h5.redirectUriBase}")
- private String redirectUriBase;
+ @Value("${h5.redirectMerchantUriBase}")
+ private String redirectMerchantUriBase;
+
+ @Value("${h5.redirectEmployeeUriBase}")
+ private String redirectEmployeeUriBase;
/**
@@ -49,26 +54,55 @@
@ApiOperation("构造网页授权链接")
public R<OauthUrlVo> oauthUrl(@ApiParam(value = "授权重定向地址", required = true) @RequestParam("redirectUri") String redirectUri) throws UnsupportedEncodingException {
// 普通应用
- redirectUri = redirectUriBase + redirectUri;
+ redirectUri = redirectMerchantUriBase + redirectUri;
+ String oauthRedirectUrl = URLEncoder.encode(redirectUri,"utf-8");
+ String oauthUrl = qywxInnerService.getOauthUrl(oauthRedirectUrl);
+ return R.ok(new OauthUrlVo(oauthUrl));
+ }
+
+ @GetMapping({"/h5/oauthStaffUrl"})
+ @ApiOperation("构造网页授权链接")
+ public R<OauthUrlVo> oauthStaffUrl(@ApiParam(value = "授权重定向地址", required = true) @RequestParam("redirectUri") String redirectUri) throws UnsupportedEncodingException {
+ // 普通应用
+ redirectUri = redirectEmployeeUriBase + redirectUri;
String oauthRedirectUrl = URLEncoder.encode(redirectUri,"utf-8");
String oauthUrl = qywxInnerService.getOauthUrl(oauthRedirectUrl);
return R.ok(new OauthUrlVo(oauthUrl));
}
- @GetMapping("/h5/oauthUser")
- @ApiOperation("通过code获取访问用户登录")
- public R<OauthUserVo> oauthUser(@ApiParam(value = "成员授权获取到的code", required = true) @RequestParam("code") String code) throws IOException {
+ @GetMapping("/h5/oauthStaff")
+ @ApiOperation("通过code获取员工端用户登录")
+ public R<OauthUserVo> oauthStaff(@ApiParam(value = "成员授权获取到的code", required = true) @RequestParam("code") String code) throws IOException {
// 通过code获取访问用户敏感信息
JSONObject result = qywxInnerService.getOauthUser(code);
QwUserDetailDto qwUserDetail = JSONObject.parseObject(result.toJSONString(), QwUserDetailDto.class);
//QwUserDetailDto qwUserDetail = new QwUserDetailDto();
+ //qwUserDetail.setMobile("17780704874");
+ if(StringUtils.isBlank(qwUserDetail.getMobile())){
+ throw new ServiceException("企业微信未授权手机号,无法登录");
+ }
+ // 1、查数据库获取人员
+ QwH5LoginVo qwH5LoginVo = sysLoginService.qwH5StaffLogin(qwUserDetail);
+ // 2、生成Token
+ return R.ok(tokenService.createQwH5Token(qwH5LoginVo));
+ }
+
+ @GetMapping("/h5/oauthUser")
+ @ApiOperation("通过code获取商户端用户登录")
+ public R<OauthUserVo> oauthUser(@ApiParam(value = "成员授权获取到的code", required = true) @RequestParam("code") String code) throws IOException {
+ // 通过code获取访问用户敏感信息
+ JSONObject result = qywxInnerService.getOauthUser(code);
+ QwUserDetailDto qwUserDetail = JSONObject.parseObject(result.toJSONString(), QwUserDetailDto.class);
+ if(StringUtils.isBlank(qwUserDetail.getMobile())){
+ throw new ServiceException("企业微信未授权手机号,无法登录");
+ }
+ //QwUserDetailDto qwUserDetail = new QwUserDetailDto();
//qwUserDetail.setMobile("13882237106");
- //qwUserDetail.setUserid("146");
// 1、查数据库获取人员
QwH5LoginVo qwH5LoginVo = sysLoginService.qwH5Login(qwUserDetail);
// 2、生成Token
- return R.ok(tokenService.createQwH5Token(qwH5LoginVo));
+ return R.ok(tokenService.createQwH5Token(qwH5LoginVo));
}
@GetMapping("/h5/getAgentConfig")
--
Gitblit v1.7.1