From 3824cbcaec6e6c67418d5280a53e9c2fedeef6f9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 11 七月 2019 16:34:13 +0800 Subject: [PATCH] 订单bug,分享爆款自购修改 --- fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java | 210 +++++++--------------------------------------------- 1 files changed, 28 insertions(+), 182 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 f77fe88..db43953 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java @@ -1,8 +1,5 @@ package com.yeshi.fanli.job; -import java.util.Calendar; -import java.util.Collections; -import java.util.Comparator; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -19,7 +16,6 @@ import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; -import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil; import com.yeshi.fanli.util.taobao.TaoKeOrderApiUtil; @@ -39,18 +35,6 @@ 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 = TaoKeOrderApiUtil.getTaoBaoRelationOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY, - Constant.TAOBAO_AUTH_APPSECRET); - addRelationAndSpecialOrder(orderList); - } - - /** * 鏇存柊娓犻亾璁㈠崟 * * @param fromPage @@ -58,157 +42,25 @@ * @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"); - - Comparator<TaoBaoOrder> cm = new Comparator<TaoBaoOrder>() { - @Override - public int compare(TaoBaoOrder o1, TaoBaoOrder o2) { - long span = TimeUtil.convertToTimeTemp(o2.getCreateTime(), "yyyy-MM-dd HH:mm:ss") - - TimeUtil.convertToTimeTemp(o1.getCreateTime(), "yyyy-MM-dd HH:mm:ss"); - if (span > 0) - return 1; - else if (span == 0) - return 0; - else - return -1; - } - }; - - for (int p = fromPage; p < toPage; p++) { - // 鐖彇2鏂硅鍗� - List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoRelationOrder(startTimeStr, p, - Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); - Collections.sort(orderList, cm); - List<TaoBaoOrder> commonOrderList = UpdateOrderJob.getCommonOrder( - TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(), - "yyyy-MM-dd HH:mm:ss"), - TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss")); - - List<TaoBaoOrder> list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList); - Collections.sort(list, cm); - addRelationAndSpecialOrder(list); - - orderList = TaoKeOrderApiUtil.getTaoBaoRelationThirdOrder(startTimeStr, p, Constant.TAOBAO_AUTH_APPKEY, - Constant.TAOBAO_AUTH_APPSECRET); - Collections.sort(orderList, cm); - // 鐖彇涓夋柟璁㈠崟 - commonOrderList = UpdateOrderJob.getThirdCommonOrder( - TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(), - "yyyy-MM-dd HH:mm:ss"), - TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss")); - list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList); - Collections.sort(list, cm); - addRelationAndSpecialOrder(list); - } - } - - /** - * 鎸夊ぉ鏇存柊 - * - * @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 = TaoKeOrderApiUtil.getTaoBaoSpecialOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY, - Constant.TAOBAO_AUTH_APPSECRET); - addRelationAndSpecialOrder(orderList); - - orderList = TaoKeOrderApiUtil.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) { - // 鏈�杩�90澶╃殑璁㈠崟 - String startTimeStr = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 90L, - "yyyy-MM-dd HH:mm:ss"); - - Comparator<TaoBaoOrder> cm = new Comparator<TaoBaoOrder>() { - @Override - public int compare(TaoBaoOrder o1, TaoBaoOrder o2) { - long span = TimeUtil.convertToTimeTemp(o2.getCreateTime(), "yyyy-MM-dd HH:mm:ss") - - TimeUtil.convertToTimeTemp(o1.getCreateTime(), "yyyy-MM-dd HH:mm:ss"); - if (span > 0) - return 1; - else if (span == 0) - return 0; - else - return -1; - } - }; - - for (int p = fromPage; p < toPage; p++) { - // 鐖彇2鏂硅鍗� - List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoSpecialOrder(startTimeStr, p, - Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); - Collections.sort(orderList, cm); - List<TaoBaoOrder> commonOrderList = UpdateOrderJob.getCommonOrder( - TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(), - "yyyy-MM-dd HH:mm:ss"), - TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss")); - - List<TaoBaoOrder> list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList); - Collections.sort(list, cm); - addRelationAndSpecialOrder(list); - - - // 鐖彇涓夋柟璁㈠崟 - orderList = TaoKeOrderApiUtil.getTaoBaoSpecialThirdOrder(startTimeStr, p, Constant.TAOBAO_AUTH_APPKEY, - Constant.TAOBAO_AUTH_APPSECRET); - Collections.sort(orderList, cm); - - commonOrderList = UpdateOrderJob.getThirdCommonOrder( - TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(), - "yyyy-MM-dd HH:mm:ss"), - TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss")); - list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList); - Collections.sort(list, cm); - addRelationAndSpecialOrder(list); - } - } - - /** - * 鎸夊ぉ鏇存柊 - * - * @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); - } + public void updateRelationAndSpecialOrder(long startTime, long endTime) { + List<TaoBaoOrder> list = TaoKeOrderApiUtil.getSpecialOrder(startTime, endTime); + List<TaoBaoOrder> list1 = TaoKeOrderApiUtil.getThirdSpecialOrder(startTime, endTime); + List<TaoBaoOrder> list2 = TaoKeOrderApiUtil.getRelationOrder(startTime, endTime); + List<TaoBaoOrder> list3 = TaoKeOrderApiUtil.getThirdRelationOrder(startTime, endTime); + if (list1 != null && list1.size() > 0) + list.addAll(list1); + if (list2 != null && list2.size() > 0) + list.addAll(list2); + if (list3 != null && list3.size() > 0) + list.addAll(list3); + addRelationAndSpecialOrder(list); } private void addRelationAndSpecialOrder(List<TaoBaoOrder> orderList) { try { taoBaoOrderService.addTaoBaoOrderList(orderList); } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } + LogHelper.errorDetailInfo(e); } try { @@ -240,11 +92,7 @@ } } } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } + LogHelper.errorDetailInfo(e); } } @@ -253,34 +101,32 @@ public void doJob1() { if (!Constant.IS_TASK) return; - // 鐖彇鏈�杩�3椤垫暟鎹� - updateRelationOrder(1, 3); - updateSpecialOrder(1, 3); + // 鐖彇杩�20鍒嗛挓鐨勬暟鎹� + long endTime = System.currentTimeMillis(); + updateRelationAndSpecialOrder(endTime - 1000 * 60 * 20L, endTime); } - // 姣�5鍒嗛挓鏇存柊锛�3-10椤垫暟鎹級 + // 姣�5鍒嗛挓鏇存柊锛堣繎1澶╂暟鎹級 @Scheduled(cron = "0 0/5 * * * ? ") public void doJob2() { if (!Constant.IS_TASK) return; - updateRelationOrder(3, 11); - updateSpecialOrder(3, 11); + long endTime = System.currentTimeMillis(); + updateRelationAndSpecialOrder(endTime - 1000 * 60 * 60 * 24L, endTime); } - // 姣忎釜灏忔椂鏇存柊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); + // 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; } } -- Gitblit v1.8.0