From ff659e3d596e340132ea2f67c360dd8283f07a74 Mon Sep 17 00:00:00 2001 From: hupeng Date: Fri, 9 Nov 2018 11:58:20 +0800 Subject: [PATCH] =?UTF-8?q?[=E7=B3=BB=E7=BB=9F][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E5=BE=AE=E4=BF=A1PVUV=E8=8E=B7=E5=8F=96=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E6=97=A99=E7=82=B9=E8=8E=B7=E5=8F=96=E5=89=8D=E4=B8=80?= =?UTF-8?q?=E5=A4=A9=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/schedule/WxAppVisitSchedule.java | 29 ++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/WxAppVisitSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/WxAppVisitSchedule.java index d70c831b1..ce7950591 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/WxAppVisitSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/WxAppVisitSchedule.java @@ -44,9 +44,30 @@ public class WxAppVisitSchedule { private WxAppinfoService WxAppinfoService; - //@Scheduled(cron = "*/10 * * * * ?") // 测试10秒中一次 - @Scheduled(cron = "0 0 2,3,4 * * ? ") //2,3,4点做一次 + @Scheduled(cron = "0 0 9 * * ? ") //早晨9点做一次,获取前一日,微信时间为GMT public void daliyVisitRetrive() { + try { + + WxAppinfo appInfo = new WxAppinfo(); + appInfo.setType(EnumAppType.C.getCode()); + PageInfo page = WxAppinfoService.listAsPage(appInfo, 1, 10000); + for(WxAppinfo w :page.getList()) { + if(StringUtils.isBlank(w.getAppId())||StringUtils.isBlank(w.getSecret())) { + continue; + } + Calendar c = Calendar.getInstance(); + c.add(Calendar.DAY_OF_YEAR, -1); + String date = new SimpleDateFormat("yyyyMMdd").format(c.getTime()); + getData(date,w); + } + }catch(Exception e) { + logger.error("获取微信访问数据失败",e); + } + } + + + @Scheduled(cron = "0 0 2 * * ? ") //2点做一次补录 + public void completeVisitRetrive() { try { WxAppinfo appInfo = new WxAppinfo(); @@ -59,7 +80,7 @@ public class WxAppVisitSchedule { Calendar c = Calendar.getInstance(); String date; for(int i = 0; i < 7; i++) { //查找最近7天有没有漏掉的数据 - c.add(Calendar.DAY_OF_YEAR, -1); + c.add(Calendar.DAY_OF_YEAR, -2); date = new SimpleDateFormat("yyyyMMdd").format(c.getTime()); if (!checkData(date,w)) getData(date,w); @@ -87,7 +108,7 @@ public class WxAppVisitSchedule { headers.setContentType(MediaType.APPLICATION_JSON); Map map = new HashMap(); map.put("begin_date", date); - map.put("end_date",date); + map.put("end_date", date); RestTemplate restTemplate = new RestTemplate(); HttpEntity> entity = new HttpEntity>(map, headers); String reqUrl =visit+accessToken;