From e4104ab432bb2a028ee6a3f2e03e462279c2ccae Mon Sep 17 00:00:00 2001
From: zhanglin8526 <852614290@qq.com>
Date: 星期二, 09 五月 2023 18:37:44 +0800
Subject: [PATCH] 企业微信授权网页功能
---
ruoyi-auth/src/main/java/com/ruoyi/auth/controller/QwH5Controller.java | 4 ++--
ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java | 19 ++++++++++++++-----
2 files changed, 16 insertions(+), 7 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 823ee4c..50dc478 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
@@ -66,8 +66,8 @@
@GetMapping("/h5/getAgentConfig")
@ApiOperation("通过code获取访问用户登录")
- public R<AgentConfigVo> getAgentConfig(@ApiParam(value = "url", required = true) String url) throws IOException {
- AgentConfigVo agentConfigVo = qywxInnerService.getAgentConfig(url);
+ public R<AgentConfigVo> getAgentConfig(@ApiParam(value = "url", required = true) String url, @ApiParam(value = "type", required = false) String type) throws IOException {
+ AgentConfigVo agentConfigVo = qywxInnerService.getAgentConfig(url, type);
return R.ok(agentConfigVo);
}
diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java
index b425ba0..d41b903 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java
@@ -127,14 +127,14 @@
- public AgentConfigVo getAgentConfig(String url) {
+ public AgentConfigVo getAgentConfig(String url, String type) {
AgentConfigVo agentConfigVo = new AgentConfigVo();
agentConfigVo.setAgentid(qywxInnerConfig.getAgentId());
agentConfigVo.setCorpid(qywxInnerConfig.getCorpId());
//临时票据
- String ticket = getJsApiTicket();
+ String ticket = getJsApiTicket(type);
if (StringUtils.isEmpty(ticket)) {
throw new ServiceException("获取票据异常");
}
@@ -178,13 +178,22 @@
* @paran type
* @return
*/
- public String getJsApiTicket() {
+ public String getJsApiTicket(String type) {
String accessToken = getAccessToken();
- String ticket = redisTemplate.opsForValue().get(Constants.QY_WX_TICKET_KEY);
+ String ticketKey = Constants.QY_WX_TICKET_KEY;
+
+ String jsapiTicketUrl = qywxInnerConfig.getJsapiTicketUrl();
+ if(!StringUtils.isEmpty(type)){
+ ticketKey = ticketKey + type;
+ jsapiTicketUrl = qywxInnerConfig.getJsapiTicketAgentUrl();
+ }
+
+ String ticket = redisTemplate.opsForValue().get(ticketKey);
if(!StringUtils.isEmpty(ticket)){
return ticket;
}
- String url = String.format(qywxInnerConfig.getJsapiTicketAgentUrl(), accessToken);
+
+ String url = String.format(jsapiTicketUrl, accessToken);
JSONObject response = RestUtils.get(url);
if(response.containsKey(Constants.QY_WX_ERR_CODE) && response.getInteger(Constants.QY_WX_ERR_CODE) != 0){
--
Gitblit v1.7.1