From b3fce41f7960a21c707788aa87448c3e4de82da9 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期三, 27 二月 2019 11:47:51 +0800 Subject: [PATCH] 福利券 邀请队员成功之后激活 --- fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 108 insertions(+), 6 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java index b905ca9..a514b01 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java @@ -1,5 +1,6 @@ package com.yeshi.fanli.job; +import java.util.Calendar; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -35,18 +36,95 @@ @Resource private RedisManager redisManager; + /** + * 鏇存柊娓犻亾璁㈠崟(鏈�澶�20鍒嗛挓) + * + * @param startTime + */ private void updateRelationOrder(long startTime) { String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss"); - List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoRelationOrder(startTimeStr, Constant.TAOBAO_AUTH_APPKEY, + List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoRelationOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); addRelationAndSpecialOrder(orderList); } + /** + * 鏇存柊娓犻亾璁㈠崟 + * + * @param fromPage + * 寮�濮嬮〉鐮� + * @param toPage + * 缁撴潫椤电爜锛堟瘡椤�100鏉℃暟鎹級 + */ + private void updateRelationOrder(int fromPage, int toPage) { + // 鏈�杩�90澶╃殑璁㈠崟 + String startTimeStr = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 90L, + "yyyy-MM-dd HH:mm:ss"); + for (int p = fromPage; p < toPage; p++) { + List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoRelationOrder(startTimeStr, p, + Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); + addRelationAndSpecialOrder(orderList); + + orderList = TaoKeApiUtil.getTaoBaoRelationThirdOrder(startTimeStr, p, Constant.TAOBAO_AUTH_APPKEY, + Constant.TAOBAO_AUTH_APPSECRET); + addRelationAndSpecialOrder(orderList); + } + } + + /** + * 鎸夊ぉ鏇存柊 + * + * @param day + */ + private void updateRelationOrderByDay(String day) { + long timestamp = TimeUtil.convertToTimeTemp(day, "yyyy-MM-dd"); + for (int i = 0; i < 72; i++) { + updateRelationOrder(timestamp + 1000 * 60 * 20L * i); + } + } + + /** + * 鏇存柊浼氬憳璁㈠崟(鏈�澶�20鍒嗛挓) + * + * @param startTime + */ private void updateSpecialOrder(long startTime) { String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss"); - List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoSpecialOrder(startTimeStr, Constant.TAOBAO_AUTH_APPKEY, + List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoSpecialOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); addRelationAndSpecialOrder(orderList); + + orderList = TaoKeApiUtil.getTaoBaoSpecialThirdOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY, + Constant.TAOBAO_AUTH_APPSECRET); + addRelationAndSpecialOrder(orderList); + } + + /** + * 鏇存柊浼氬憳璁㈠崟锛堬級 + * + * @param fromPage-寮�濮嬮〉鐮� + * @param toPage-缁撴潫椤电爜锛堟瘡椤�20鏉℃暟鎹級 + */ + private void updateSpecialOrder(int fromPage, int toPage) { + String startTimeStr = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 90L, + "yyyy-MM-dd HH:mm:ss"); + for (int p = fromPage; p < toPage; p++) { + List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoSpecialOrder(startTimeStr, p, + Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); + addRelationAndSpecialOrder(orderList); + } + } + + /** + * 鎸夊ぉ鏇存柊 + * + * @param day + */ + private void updateSpecialOrderByDay(String day) { + long timestamp = TimeUtil.convertToTimeTemp(day, "yyyy-MM-dd"); + for (int i = 0; i < 72; i++) { + updateSpecialOrder(timestamp + 1000 * 60 * 20L * i); + } } private void addRelationAndSpecialOrder(List<TaoBaoOrder> orderList) { @@ -102,10 +180,34 @@ public void doJob1() { if (!Constant.IS_TASK) return; - long currentTime = System.currentTimeMillis(); - // 鐖彇21鍒嗛挓涔嬪墠鍒扮幇鍦ㄧ殑 - updateRelationOrder(currentTime - 1000 * 60 * 20L); - updateSpecialOrder(currentTime - 1000 * 60 * 20L); + // 鐖彇鏈�杩�3椤垫暟鎹� + updateRelationOrder(1, 3); + updateSpecialOrder(1, 3); + } + + // 姣�5鍒嗛挓鏇存柊锛�3-10椤垫暟鎹級 + @Scheduled(cron = "0 0/5 * * * ? ") + public void doJob2() { + if (!Constant.IS_TASK) + return; + updateRelationOrder(3, 11); + updateSpecialOrder(3, 11); + } + + // 姣忎釜灏忔椂鏇存柊10-1000椤垫暟鎹� + @Scheduled(cron = "0 0 0/1 * * ? ") + public void doJob3() { + if (!Constant.IS_TASK) + return; + Calendar calendar = Calendar.getInstance(); + int h = calendar.get(Calendar.HOUR_OF_DAY); + // 姣忎釜灏忔椂鏇存柊100椤垫暟鎹� + int fromPage = h * 100; + if (fromPage <= 0) + fromPage = 11; + int toPage = h * 100 + 100; + updateRelationOrder(fromPage, toPage); + updateSpecialOrder(fromPage, toPage); } } -- Gitblit v1.8.0