|
|
|
@ -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<FormMessage> slice = formMessageService.queryAllSlice(formMessageQueryCriteria, pageable);
|
|
|
|
|
Slice<FormMessage> 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<FormMessage> formMessageList = slice.getContent();
|
|
|
|
@ -155,6 +152,7 @@ public class ProduceLocalFileTask {
|
|
|
|
|
// 只获取需要的字段
|
|
|
|
|
List<String> 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<AbMessage> slice = abMessageService.queryAllSlice(abMessageQueryCriteria, pageable);
|
|
|
|
|
Slice<AbMessage> 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<AbMessage> abMessageList = slice.getContent();
|
|
|
|
@ -194,6 +192,7 @@ public class ProduceLocalFileTask {
|
|
|
|
|
// 只获取需要的字段
|
|
|
|
|
List<String> collect = abMessageList.stream()
|
|
|
|
|
.map(AbMessage::getUid)
|
|
|
|
|
.distinct()
|
|
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
// 设置总数
|
|
|
|
|
count += abMessageList.size();
|
|
|
|
|