| | |
| | | package com.doumee.task; |
| | | |
| | | |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import org.apache.http.client.methods.CloseableHttpResponse; |
| | | import org.apache.http.client.methods.HttpGet; |
| | | import org.apache.http.client.utils.URIBuilder; |
| | | import org.apache.http.impl.client.CloseableHttpClient; |
| | | import org.apache.http.impl.client.HttpClients; |
| | | import org.apache.http.util.EntityUtils; |
| | | import com.doumee.service.business.MemberService; |
| | | import com.doumee.service.business.impl.hksync.HkSyncEmpowerServiceImpl; |
| | | import com.doumee.service.business.impl.hksync.HkSyncImgServiceImpl; |
| | | import com.doumee.service.business.impl.hksync.HkSyncOrgUserServiceImpl; |
| | | import com.doumee.service.business.impl.hksync.HkSyncVisitServiceImpl; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.scheduling.annotation.EnableScheduling; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.io.IOException; |
| | | import java.net.URI; |
| | | import java.util.Date; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 定时任务 |
| | |
| | | @EnableScheduling |
| | | public class ScheduleTool { |
| | | |
| | | |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | private HkSyncImgServiceImpl hkSyncImgService; |
| | | @Autowired |
| | | private HkSyncEmpowerServiceImpl hkSyncEmpowerService; |
| | | @Autowired |
| | | private HkSyncOrgUserServiceImpl hkSyncOrgUserService; |
| | | @Autowired |
| | | private HkSyncVisitServiceImpl hkSyncVisitService; |
| | | @Autowired |
| | | private MemberService memberService; |
| | | /** |
| | | * 是否开发者 |
| | | */ |
| | |
| | | * 缓存省市区 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay=24*60*60*1000) |
| | | public void cacheCampus() throws Exception { |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void downloadHkImg() throws Exception { |
| | | hkSyncImgService.downHKImgs(0); |
| | | } |
| | | /** |
| | | * 每天凌晨重置所有订单code类初始值 |
| | | /** |
| | | * 定时同步组织信息到海康系统 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(cron="0 0 0 * * ?") |
| | | public void resetOrderCodes() throws Exception { |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncOrgData() { |
| | | hkSyncOrgUserService.syncOrgData(); |
| | | } |
| | | |
| | | /** |
| | | * 定时同步用户信息到海康系统 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncUserData() { |
| | | hkSyncOrgUserService.syncUserData(); |
| | | } |
| | | /** |
| | | * 定时同步申请通过的访客数据到海康系统 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncVisitData() { |
| | | hkSyncVisitService.syncVisitData(); |
| | | } |
| | | /** |
| | | * 定时同步内部人员授权到海康系统 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncEmpowerData() { |
| | | hkSyncEmpowerService.syncEmpowerData(); |
| | | } |
| | | /** |
| | | * 定时查询人员下发海康结果(任务是否已下载结束) |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncEmpowerResultData() { |
| | | hkSyncEmpowerService.syncEmpowerResultData(); |
| | | } |
| | | /** |
| | | * 定时查询人员实际下发权限结果,是否已经下载成功 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncEmpowerDetailData() { |
| | | hkSyncEmpowerService.syncEmpowerDetailData(); |
| | | } |
| | | /** |
| | | * 定时同步车辆包期到海康系统 |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void syncParkBookData() { |
| | | hkSyncImgService.syncParkBookData(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 发送get请求 |
| | | * @param url 请求URL |
| | | * @param param 请求参数 key:value url携带参数 或者无参可不填 |
| | | * @return |
| | | * 定时冻结内部人员 |
| | | */ |
| | | public String doGet(String url, Map<String, String> param) { |
| | | // 创建Httpclient对象 |
| | | CloseableHttpClient httpclient = HttpClients.createDefault(); |
| | | String resultString = ""; |
| | | CloseableHttpResponse response = null; |
| | | try { |
| | | // 创建uri |
| | | URIBuilder builder = new URIBuilder(url); |
| | | if (param != null) { |
| | | for (String key : param.keySet()) { |
| | | builder.addParameter(key, param.get(key)); |
| | | } |
| | | } |
| | | URI uri = builder.build(); |
| | | // 创建http GET请求 |
| | | HttpGet httpGet = new HttpGet(uri); |
| | | // 执行请求 |
| | | response = httpclient.execute(httpGet); |
| | | // 判断返回状态是否为200 |
| | | if (response.getStatusLine().getStatusCode() == 200) { |
| | | resultString = EntityUtils.toString(response.getEntity(), "UTF-8"); |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } finally { |
| | | try { |
| | | if (response != null) { |
| | | response.close(); |
| | | } |
| | | httpclient.close(); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | return resultString; |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void memberFreeze() { |
| | | memberService.memberFreeze(); |
| | | } |
| | | |
| | | } |