فهرست منبع

刷新状态更新明细列表

1018653686@qq.com 1 سال پیش
والد
کامیت
992952d6c9
1فایلهای تغییر یافته به همراه15 افزوده شده و 14 حذف شده
  1. 15 14
      hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/impl/JdApiServiceImpl.java

+ 15 - 14
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/impl/JdApiServiceImpl.java

@@ -335,15 +335,24 @@ public class JdApiServiceImpl implements JdApiService {
         SecurityUtils.setTenantId(RunParamConstant.tenantId);
         try {
             //1.查询列表订单状态不为审核不通过/供应商驳回/已完成
+            List<JdOrder> jdOrderPage = jdOrderService.lambdaQuery().notIn(JdOrder::getState, notIn).orderByDesc(JdOrder::getCreatedDate).list();
+            if (CollectionUtil.isEmpty(jdOrderPage)) {
+                return;
+            }
             int pageIndex = 1;
-            long totalPage = 1;
             int pageSize = 30;
-            Page<JdOrder> page = new Page<>(pageIndex, pageSize);
+            List<List<JdOrder>> pages = new ArrayList<>();
+            for (int i = 0; i < jdOrderPage.size(); i += pageSize) {
+                int endIndex = Math.min(i + pageSize, jdOrderPage.size());
+                List<JdOrder> page = jdOrderPage.subList(i, endIndex);
+                pages.add(page);
+            }
+            int totalPage = pages.size();
+
             do {
-                Page<JdOrder> jdOrderPage = jdOrderService.lambdaQuery().notIn(JdOrder::getState, notIn).orderByDesc(JdOrder::getCreatedDate).page(page);
                 //2.按每30个订单查询京东订单状态
-                List<JdOrder> records = jdOrderPage.getRecords();
-                totalPage = (jdOrderPage.getTotal() / pageSize) + (jdOrderPage.getTotal() % pageSize > 0 ? 1 : 0);
+                List<JdOrder> records = pages.get(pageIndex - 1);
+
                 List<Long> orderIds = records.stream().map(JdOrder::getOrderId).collect(Collectors.toList());
                 JOSOrderResultDto josOrderResultDto = getJdOrderInfo(1, pageSize + 20, records.get(0).getCreatedDate(), DateUtil.offsetDay(records.get(0).getCreatedDate(), 90), jdClient, orderIds);
                 List<PurchaseOrderDto> purchaseOrderList = josOrderResultDto.getPurchaseOrderList();
@@ -391,7 +400,6 @@ public class JdApiServiceImpl implements JdApiService {
                     jdOrderService.saveOrUpdate(jdOrder);
                 }
                 pageIndex++;
-                page.setCurrent(pageIndex);
             } while (pageIndex <= totalPage);
         }catch (Exception e){
             log.error("刷新京东状态失败", e);
@@ -972,14 +980,7 @@ public class JdApiServiceImpl implements JdApiService {
         return jdInfoVo;
     }
 
-    public static void main(String[] args) throws Exception {
-//        JdClient client = new DefaultJdClient("http://api.jd.com/routerjson", "a1f79f4670fd43a28fa2de02abd86f03ytfm", JdParamConstant.appKey, JdParamConstant.appSecret);
-        List<Integer> list = new ArrayList<>();
-        list.add(1);
-        list.add(2);
-        list.add(3);
-        String str = StrUtil.toString(list);
-        System.out.println(str);
+    public static void main(String[] args) {
     }
 
 }