luofl
2025-03-17 daea1642642f20998bfbf1d0c72695a6bae260d7
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java
@@ -1,6 +1,10 @@
package com.panzhihua.sangeshenbian.api;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.panzhihua.common.controller.BaseController;
@@ -18,15 +22,14 @@
import com.panzhihua.sangeshenbian.service.ISystemMenuService;
import com.panzhihua.sangeshenbian.service.ISystemRoleMenuService;
import com.panzhihua.sangeshenbian.service.ISystemUserService;
import com.panzhihua.sangeshenbian.warpper.LoginVo;
import com.panzhihua.sangeshenbian.warpper.SystemUserList;
import com.panzhihua.sangeshenbian.warpper.SystemUserListVo;
import com.panzhihua.sangeshenbian.warpper.TokenVo;
import com.panzhihua.sangeshenbian.utils.SignatureUtil;
import com.panzhihua.sangeshenbian.warpper.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.digest.DigestUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
@@ -36,6 +39,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.security.MessageDigest;
import java.text.MessageFormat;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
@@ -350,38 +354,30 @@
   }
   public static void main(String[] args) {
   @GetMapping("/getSignature")
   @ApiOperation(value = "获取签名",tags = {"三个身边小程序"})
    public R<?> getSignature() throws Exception {
        String APP_ID = "wx118de8a734d269f0";
        String APP_SECRET = "0264342daefde5cd70a6adada09ee5b1";
        String accessToken = SignatureUtil.getAccessToken(APP_ID, APP_SECRET);
        String jsapiTicket = SignatureUtil.getJsApiTicket(accessToken);
        String nonceStr = UUID.randomUUID().toString().replace("-", "");
        String timestamp = String.valueOf(System.currentTimeMillis() / 1000);
        String url = "https://huacheng.psciio.com/web/sangeshenbian/"; // 当前页面的URL,不包含#及其后面部分
        String signature = SignatureUtil.getSignature(jsapiTicket, nonceStr, timestamp, url);
        System.out.println("appId: " + APP_ID);
        System.out.println("timestamp: " + timestamp);
        System.out.println("nonceStr: " + nonceStr);
        System.out.println("signature: " + signature);
        SignatureVO signatureVO = new SignatureVO();
        signatureVO.setTimestamp(timestamp);
        signatureVO.setNonceStr(nonceStr);
        signatureVO.setSignature(signature);
        return R.ok(signatureVO);
   }
//   private String ACCESS_TOKEN_URL = "GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential";
//
//   public String getAppAccessToken(String appId, String appSecret) throws Exception {
//      String accessToken = "0";
//      try {
//         log.info("获取微信token参数:appid=" + appId + ",appSecret=" + appSecret);
//         String accessTokenUrl = ACCESS_TOKEN_URL + "&appid=" + appId + "&secret=" + appSecret;
//         String result = HttpClientUtil.httpGet(accessTokenUrl, null, null);
//         Map<String, Object> resultMap = JSON.parseObject(result, Map.class);
//         StringRedisTemplate redisTemplate = wxXCXTempSend.stringRedisTemplate;
//         if (resultMap.containsKey("access_token")) {
//            accessToken = resultMap.get("access_token").toString();
//            redisTemplate.opsForValue().set("access_token:access_token:" + appId, accessToken);
//         }
//         HttpServletRequest request = ServletUtils.getRequest();
//         String requestURI = request.getRequestURI();
//         //加上时间戳
//         String datetime = new SimpleDateFormat("yyyyMMdd").format(new Date());
//         //这里是 Redis key的前缀,如: sys:tabieId:表名  如果不需要去掉表名也可以
//         String key = MessageFormat.format("{0}:{1}:{2}",  "access_token_request_incr",datetime,requestURI);
//         //查询 key 是否存在, 不存在返回 1 ,存在的话则自增加1
//         redisTemplate.opsForValue().increment(key, 1);
//
//      } catch (IOException ioe) {
//         log.error("小程序http请求异常");
//         ioe.printStackTrace();
//      }
//      return accessToken;
//   }
}