Ver Fonte

导出任务

qin há 1 ano atrás
pai
commit
71dfe1b8db

+ 1 - 1
src/main/java/com/poteviohealth/cgp/statistics/service/impl/OrderServiceImpl.java

@@ -196,7 +196,7 @@ public class OrderServiceImpl extends BaseServiceImpl<OrderMapper, Order> implem
         List<OrderExcelDTO> list = Lists.newArrayList();
         ForkJoinPool pool = new ForkJoinPool();
         try {
-            OrderExcelTask task = new OrderExcelTask(1,maxPage, queryWrapper, operatorId, dbName,baseMapper);
+            OrderExcelTask task = new OrderExcelTask(1,maxPage, JSONObject.toJSONString(queryWrapper), operatorId, dbName,baseMapper);
             Future<List<OrderExcelDTO>> future = pool.submit(task);
                 do {
                    pool.awaitTermination(1, TimeUnit.SECONDS);

+ 8 - 4
src/main/java/com/poteviohealth/cgp/statistics/utils/OrderExcelTask.java

@@ -1,5 +1,6 @@
 package com.poteviohealth.cgp.statistics.utils;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.google.common.collect.Lists;
 import com.poteviohealth.cgp.common.integrated.order.model.PayAccount;
@@ -7,6 +8,7 @@ import com.poteviohealth.cgp.statistics.constant.enums.OrderConstantEnum;
 import com.poteviohealth.cgp.statistics.mapper.OrderMapper;
 import com.poteviohealth.cgp.statistics.model.outdto.OrderExcelDTO;
 import lombok.Data;
+import lombok.extern.log4j.Log4j2;
 import org.apache.commons.lang3.EnumUtils;
 import org.apache.commons.lang3.StringUtils;
 
@@ -18,16 +20,17 @@ import java.util.concurrent.RecursiveTask;
  * @author Qin
  */
 @Data
+@Log4j2
 public class OrderExcelTask extends RecursiveTask<List<OrderExcelDTO>> {
 
     private static final int MAX = 10000;
     private int start;
     private int end;
-    private QueryWrapper queryWrapper;
+    private String queryWrapper;
     private Integer operatorId;
     private String dbName;
     private OrderMapper orderMapper;
-    public OrderExcelTask(int start, int end, QueryWrapper queryWrapper,Integer operatorId,String dbName,OrderMapper orderMapper){
+    public OrderExcelTask(int start, int end, String queryWrapper,Integer operatorId,String dbName,OrderMapper orderMapper){
         super();
         this.end = end;
         this.start =start;
@@ -45,9 +48,10 @@ public class OrderExcelTask extends RecursiveTask<List<OrderExcelDTO>> {
          int page = (end - start);
         if (page < 2) {
             // 小于最大值 直接执行
-                list.addAll(orderMapper.orderExcel(queryWrapper,dbName,operatorId,(start-1)*MAX,MAX));
+            log.info("queryWrapper==="+ queryWrapper.length());
+                list.addAll(orderMapper.orderExcel(JSONObject.parseObject(queryWrapper, QueryWrapper.class),dbName,operatorId,(start-1)*MAX,MAX));
                 if(page == 1){
-                    list.addAll(orderMapper.orderExcel(queryWrapper,dbName,operatorId,(end-1)*MAX,MAX));
+                    list.addAll(orderMapper.orderExcel(JSONObject.parseObject(queryWrapper, QueryWrapper.class),dbName,operatorId,(end-1)*MAX,MAX));
                 }
 
             for (OrderExcelDTO orderExcelDTO : list) {