From 367dfb4ba7f1f181314ea4bfe3cb7cf9ae036b02 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 09 十月 2021 18:47:21 +0800 Subject: [PATCH] 京东订单备份,长期处于付款状态的订单处理 --- fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 43 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java index 7eacee7..4a5bdf9 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java @@ -1,11 +1,15 @@ package com.yeshi.fanli.job.order.jd; import java.util.ArrayList; +import java.util.Calendar; import java.util.Date; import java.util.List; import javax.annotation.Resource; +import com.yeshi.fanli.dao.jd.JDOrderBackUpDao; +import com.yeshi.fanli.dto.jd.JDOrderForBackUpResult; +import com.yeshi.fanli.entity.jd.JDBackUpOrder; import com.yeshi.fanli.util.Constant; import org.springframework.stereotype.Component; @@ -32,6 +36,10 @@ @Resource private RedisManager redisManager; + + @Resource + private JDOrderBackUpDao jdOrderBackUpDao; + /** * 淇濆瓨璁㈠崟 @@ -195,4 +203,39 @@ } } + + @XxlJob("order-jd-backup") + public ReturnT<String> backUpOrder(String param) throws Exception { + //鏇存柊90澶╀互鍓嶇殑杩�3澶╃殑鏁版嵁 + long startTime = System.currentTimeMillis() - 1000 * 60 * 60 * 24L * 90; + + for (int i = 0; i < 24 * 3; i++) { + List<JDBackUpOrder> orderList = getBackUpOrders(new Date(startTime + i * 1000 * 60 * 60L)); + if (orderList != null && orderList.size() > 0) { + for (JDBackUpOrder order : orderList) { + order.setUpdateTime(new Date()); + jdOrderBackUpDao.save(order); + } + } + } + return ReturnT.SUCCESS; + } + + private List<JDBackUpOrder> getBackUpOrders(Date hourDate) { + List<JDBackUpOrder> jdOrderList = new ArrayList<>(); + int pageSize = 200; + int page = 1; + JDOrderForBackUpResult result = JDApiUtil.getOrderListForBackUp(page++, pageSize, hourDate, JDApiUtil.ORDER_TYPE_UPDATETIME); + if (result != null) { + jdOrderList.addAll(result.getOrderList()); + while (result != null && result.isHasMore()) { + result = JDApiUtil.getOrderListForBackUp(page++, pageSize, hourDate, JDApiUtil.ORDER_TYPE_UPDATETIME); + if (result != null) + jdOrderList.addAll(result.getOrderList()); + } + } + return jdOrderList; + } + + } -- Gitblit v1.8.0