From ccd28a0c35e8fff74da6ef63042fb8a896d78f7f Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期三, 29 六月 2022 09:45:52 +0800
Subject: [PATCH] 单位服务统计
---
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxXCXTempSend.java | 84 +++++++++++++++++++++++++++++------------
1 files changed, 59 insertions(+), 25 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxXCXTempSend.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxXCXTempSend.java
index 78caa69..049481e 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxXCXTempSend.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxXCXTempSend.java
@@ -6,11 +6,13 @@
import java.nio.charset.StandardCharsets;
import java.util.Map;
+import com.panzhihua.common.controller.BaseController;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.http.entity.ContentType;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Component;
@@ -23,18 +25,22 @@
import lombok.extern.slf4j.Slf4j;
+import javax.annotation.PostConstruct;
+import javax.annotation.Resource;
+
@Slf4j
@Component
-public class WxXCXTempSend {
+public class WxXCXTempSend extends BaseController {
- public static final String APP_ID = "wx0cef797390444b75";
- private static final String APP_SECRET = "c7ea9aaa7e391a487e8a5b9ba61045d1";
+ public static final String APP_ID = "wx118de8a734d269f0";
+ private static final String APP_SECRET = "0264342daefde5cd70a6adada09ee5b1";
private static String ACCESS_TOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential";
private static String APP_IMAGE_URL = "https://www.psciio.com//idcard/8fa82cfba258498eab2fa818220fb592.jpg";
private static String APP_IMAGE_NAME = "5.jpg";
- @Autowired
- private StringRedisTemplate redisTemplate;
+ @Resource
+ private RedisTemplate redisTemplate;
+ private static WxXCXTempSend wxXCXTempSend;
/**
* url转变为 MultipartFile对象
*
@@ -82,29 +88,51 @@
* @return
*/
public String getAccessToken() throws Exception {
- // String accessToken = ;
- // Boolean aBoolean = redisTemplate.hasKey(SecurityConstants.APPLETS_ACCESS_TOKEN);
- // ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
- // if(aBoolean){
- // Long expireTime = Long.parseLong(valueOperations.get(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME));
- // if(expireTime <= System.currentTimeMillis()){
- // redisTemplate.delete(SecurityConstants.APPLETS_ACCESS_TOKEN);//如果过期则删除
- // redisTemplate.delete(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME);//如果过期则删除
- //
- // valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN, accessToken);
- // valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME, System.currentTimeMillis() + 1100000 + "");
- // }else{
- // accessToken = valueOperations.get(SecurityConstants.APPLETS_ACCESS_TOKEN);
- // }
- // }else{
- // accessToken = getAppAccessToken();
- // valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN, accessToken);
- // valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME, System.currentTimeMillis() + 1100000 + "");
- // }
- return getAppAccessToken();
+ String accessToken = "";
+ Boolean aBoolean = wxXCXTempSend.redisTemplate.hasKey(SecurityConstants.APPLETS_ACCESS_TOKEN);
+ ValueOperations<String, String> valueOperations = wxXCXTempSend.redisTemplate.opsForValue();
+ if(aBoolean){
+ Long expireTime = Long.parseLong(valueOperations.get(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME));
+ if(expireTime <= System.currentTimeMillis()){
+ wxXCXTempSend.redisTemplate.delete(SecurityConstants.APPLETS_ACCESS_TOKEN);//如果过期则删除
+ wxXCXTempSend.redisTemplate.delete(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME);//如果过期则删除
+
+ valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN, getAppAccessToken());
+ valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME, System.currentTimeMillis() + 1100000 + "");
+ }else{
+ accessToken = valueOperations.get(SecurityConstants.APPLETS_ACCESS_TOKEN);
+ }
+ }else{
+ accessToken = getAppAccessToken();
+ valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN, accessToken);
+ valueOperations.set(SecurityConstants.APPLETS_ACCESS_TOKEN_TIME, System.currentTimeMillis() + 1100000 + "");
+ }
+ return accessToken;
}
public String getAppAccessToken() throws Exception {
+ String accessToken = "0";
+ try {
+ log.info("获取微信token参数:appid=" + APP_ID + ",appSecret=" + APP_SECRET);
+ String accessTokenUrl = ACCESS_TOKEN_URL + "&appid=" + APP_ID + "&secret=" + APP_SECRET;
+ String result = HttpClientUtil.httpGet(accessTokenUrl, null, null);
+ Map<String, Object> resultMap = JSON.parseObject(result, Map.class);
+ if (resultMap.containsKey("access_token")) {
+ accessToken = resultMap.get("access_token").toString();
+ }
+ } catch (IOException ioe) {
+ log.error("小程序http请求异常");
+ ioe.printStackTrace();
+ }
+ return accessToken;
+ }
+
+ /**
+ * 获取西区社区通微信token
+ * @return 西区社区通微信token
+ * @throws Exception 异常
+ */
+ public String getXQAppAccessToken() throws Exception {
String accessToken = "0";
try {
// 此处APP_ID APP_SECRET 在微信小程序后端可见
@@ -239,4 +267,10 @@
return null;
}
+ @PostConstruct
+ public void init() {
+ wxXCXTempSend = this;
+ wxXCXTempSend.redisTemplate = this.redisTemplate;
+ }
+
}
--
Gitblit v1.7.1