From 6ac83fa430e1b300b6768787d1eb41b80c15ebd5 Mon Sep 17 00:00:00 2001 From: qyx <565485304@qq.com> Date: Wed, 16 Sep 2020 18:20:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E4=BA=86=E4=B8=80=E4=B8=AAbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhengjie/task/ProduceLocalFileTask.java | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/eladmin-system/src/main/java/me/zhengjie/task/ProduceLocalFileTask.java b/eladmin-system/src/main/java/me/zhengjie/task/ProduceLocalFileTask.java index 4756f30..3b4bbc7 100644 --- a/eladmin-system/src/main/java/me/zhengjie/task/ProduceLocalFileTask.java +++ b/eladmin-system/src/main/java/me/zhengjie/task/ProduceLocalFileTask.java @@ -17,7 +17,6 @@ import me.zhengjie.modules.taskrecord.service.dto.TaskRecordDto; import me.zhengjie.modules.taskrecord.service.dto.TaskRecordQueryCriteria; import me.zhengjie.utils.FileUtil; import me.zhengjie.utils.StringUtils; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.PageRequest; @@ -116,9 +115,9 @@ public class ProduceLocalFileTask { buildFileWritePath(task); if (StringUtils.equalsIgnoreCase(TAG_AB, tag)){ // Json参数解析 - AbMessage abMessage = new AbMessage(); + AbMessageQueryCriteria abMessage = new AbMessageQueryCriteria(); if (StringUtils.isNotBlank(params)){ - abMessage = JSON.parseObject(params, AbMessage.class); + abMessage = JSON.parseObject(params, AbMessageQueryCriteria.class); } // 构建分页查询,并写入到文件中 buildABQueryToFile(task, pageable, abMessage); @@ -126,28 +125,26 @@ public class ProduceLocalFileTask { if (StringUtils.equalsIgnoreCase(TAG_FORM, tag)){ // Json参数解析 - FormMessage formMessage = new FormMessage(); + FormMessageQueryCriteria formMessage = new FormMessageQueryCriteria(); if (StringUtils.isNotBlank(params)){ - formMessage = JSON.parseObject(params, FormMessage.class); + formMessage = JSON.parseObject(params, FormMessageQueryCriteria.class); } // 构建分页查询,并写入到文件中 buildFromQueryToFile(task, pageable, formMessage); } } - private void buildFromQueryToFile(TaskRecord taskRecord, Pageable pageable, FormMessage formMessage) { + private void buildFromQueryToFile(TaskRecord taskRecord, Pageable pageable, FormMessageQueryCriteria formMessage) { if (formMessage == null){ log.error("============[Parse formMessage fail, please check formMessage info ]============"); return; } - FormMessageQueryCriteria formMessageQueryCriteria = new FormMessageQueryCriteria(); - BeanUtils.copyProperties(formMessage, formMessageQueryCriteria); int count = 0; // 记录总的生成记录数 while(true){ // AB表查询 - Slice slice = formMessageService.queryAllSlice(formMessageQueryCriteria, pageable); + Slice slice = formMessageService.queryAllSlice(formMessage, pageable); if (slice == null){ - log.error("============[Query FormMessage fail, please check example info : {} ]============", formMessageQueryCriteria.toString()); + log.error("============[Query FormMessage fail, please check example info : {} ]============", formMessage.toString()); return; } List formMessageList = slice.getContent(); @@ -155,6 +152,7 @@ public class ProduceLocalFileTask { // 只获取需要的字段 List collect = formMessageList.stream() .map(FormMessage::getUid) + .distinct() .collect(Collectors.toList()); // 设置总数 count += formMessageList.size(); @@ -168,25 +166,25 @@ public class ProduceLocalFileTask { writeToFile(taskRecord, collect); } if (!slice.hasNext()){ + // 更新发送记录 + updateRecord(taskRecord); break; } pageable = slice.nextPageable(); } } - private void buildABQueryToFile(TaskRecord taskRecord, Pageable pageable, AbMessage abMessage) { + private void buildABQueryToFile(TaskRecord taskRecord, Pageable pageable, AbMessageQueryCriteria abMessage) { if (abMessage == null){ log.error("============[Parse abMessage fail, please check abMessage info ]============"); return; } - AbMessageQueryCriteria abMessageQueryCriteria = new AbMessageQueryCriteria(); - BeanUtils.copyProperties(abMessage, abMessageQueryCriteria); int count = 0; // 记录总的生成记录数 while(true){ // AB表查询 - Slice slice = abMessageService.queryAllSlice(abMessageQueryCriteria, pageable); + Slice slice = abMessageService.queryAllSlice(abMessage, pageable); if (slice == null){ - log.error("============[Query abMessage fail, please check example info : {} ]============", abMessageQueryCriteria.toString()); + log.error("============[Query abMessage fail, please check example info : {} ]============", abMessage.toString()); return; } List abMessageList = slice.getContent(); @@ -194,6 +192,7 @@ public class ProduceLocalFileTask { // 只获取需要的字段 List collect = abMessageList.stream() .map(AbMessage::getUid) + .distinct() .collect(Collectors.toList()); // 设置总数 count += abMessageList.size();