| | |
| | | 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;
|
| | |
| | | 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.TaoKeApiUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoKeOrderApiUtil;
|
| | |
|
| | | /**
|
| | | * 淘宝渠道订单更新
|
| | |
| | | @Resource
|
| | | private RedisManager redisManager;
|
| | |
|
| | | 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,
|
| | | Constant.TAOBAO_AUTH_APPSECRET);
|
| | | addRelationAndSpecialOrder(orderList);
|
| | | }
|
| | |
|
| | | 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,
|
| | | Constant.TAOBAO_AUTH_APPSECRET);
|
| | | addRelationAndSpecialOrder(orderList);
|
| | | /**
|
| | | * 更新渠道订单
|
| | | * |
| | | * @param fromPage
|
| | | * 开始页码
|
| | | * @param toPage
|
| | | * 结束页码(每页100条数据)
|
| | | */
|
| | | private 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) {
|
| | |
| | | public void doJob1() {
|
| | | if (!Constant.IS_TASK)
|
| | | return;
|
| | | long currentTime = System.currentTimeMillis();
|
| | | updateRelationOrder(currentTime);
|
| | | updateSpecialOrder(currentTime);
|
| | | // 爬取近20分钟的数据
|
| | | long endTime = System.currentTimeMillis();
|
| | | updateRelationAndSpecialOrder(endTime - 1000 * 60 * 20L, endTime);
|
| | | }
|
| | |
|
| | | // 每5分钟更新(近1天数据)
|
| | | @Scheduled(cron = "0 0/5 * * * ? ")
|
| | | public void doJob2() {
|
| | | if (!Constant.IS_TASK)
|
| | | return;
|
| | | long endTime = System.currentTimeMillis();
|
| | | updateRelationAndSpecialOrder(endTime - 1000 * 60 * 60 * 24L, endTime);
|
| | | }
|
| | |
|
| | | // 每个小时更新
|
| | | @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;
|
| | | }
|
| | |
|
| | | }
|