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