| package com.doumee.api; | 
|   | 
| import com.alibaba.fastjson.JSONObject; | 
| import com.doumee.biz.system.SystemDictDataBiz; | 
| import com.doumee.core.model.ApiResponse; | 
| import com.doumee.core.utils.Constants; | 
| import com.doumee.core.utils.HttpsUtil; | 
| import com.doumee.core.wx.WXConstant; | 
| import com.doumee.dao.system.model.SystemDictData; | 
| import com.doumee.service.business.impl.hksync.HkSyncVisitServiceImpl; | 
| import com.doumee.service.business.impl.hksync.fhk.HkSyncVisitFromHKServiceImpl; | 
| import com.doumee.service.system.SystemDictDataService; | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiOperation; | 
| import org.apache.shiro.SecurityUtils; | 
| import org.apache.shiro.mgt.DefaultSecurityManager; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.beans.factory.annotation.Value; | 
| import org.springframework.scheduling.annotation.Scheduled; | 
| import org.springframework.web.bind.annotation.GetMapping; | 
| import org.springframework.web.bind.annotation.RequestMapping; | 
| import org.springframework.web.bind.annotation.RestController; | 
|   | 
| import java.util.Date; | 
| import java.util.Objects; | 
|   | 
| /** | 
|  * @author 江蹄蹄 | 
|  * @date 2023/11/30 15:33 | 
|  */ | 
| @Api(tags = "微信token定时器接口") | 
| @RestController | 
| @RequestMapping("/timer/wxtoken") | 
| public class WxTokenTimerController extends BaseController { | 
|     @Autowired | 
|     private SystemDictDataBiz systemDictDataBiz; | 
|   | 
|     @Autowired | 
|     private SystemDictDataService systemDictDataService; | 
|     /** | 
|      * 是否开发者 | 
|      */ | 
|     @Value("${debug_model}") | 
|     private Boolean timing; | 
|   | 
|     @ApiOperation("开启定时更新微信公众号accesstoken") | 
|     @GetMapping("/updateWxAccessToken") | 
|     public ApiResponse updateWxAccessToken() { | 
|         DefaultSecurityManager securityManager = new DefaultSecurityManager(); | 
|         SecurityUtils.setSecurityManager(securityManager); | 
|   | 
|         String appId = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_APPID).getCode(); | 
|         String appSecret = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_SECRET).getCode(); | 
|         //生成微信token | 
|         String url = WXConstant.GET_ACCESS_TOKEN_URL.replace("APPID",appId).replace("APPSECRET",appSecret); | 
|         String response = HttpsUtil.get(url,false); | 
|         JSONObject json = JSONObject.parseObject(response); | 
|         SystemDictData systemDictData =  systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN); | 
|         if(!Objects.isNull(systemDictData)){ | 
|             systemDictData.setCode(json.getString("access_token")); | 
|             systemDictData.setUpdateTime(new Date()); | 
|             systemDictDataService.updateById(systemDictData); | 
|         } | 
|         return ApiResponse.success("开启定时更新微信公众号accesstoken成功"); | 
|     } | 
|   | 
|   | 
|   | 
| } |