feat(REQ-1507): 老的待办数据迁移
背景: https://jira.axzo.cn/browse/REQ-1507?goToView=1 影响: 无
This commit is contained in:
parent
38cb34c4f5
commit
f9451ddac2
@ -31,9 +31,6 @@ import java.util.Comparator;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.UUID;
|
|
||||||
import java.util.function.Consumer;
|
|
||||||
import java.util.function.Function;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -68,39 +65,35 @@ public class PendingMessageDataInitServiceImpl implements PendingMessageDataInit
|
|||||||
.ge(MessageRecord::getCreateAt, DateFormatUtil.toDate(queryFrom))
|
.ge(MessageRecord::getCreateAt, DateFormatUtil.toDate(queryFrom))
|
||||||
.between(MessageRecord::getId, minRecordId, scrollId)
|
.between(MessageRecord::getId, minRecordId, scrollId)
|
||||||
.orderByDesc(MessageRecord::getId)
|
.orderByDesc(MessageRecord::getId)
|
||||||
|
.last("LIMIT 1000")
|
||||||
.list();
|
.list();
|
||||||
// while (!records.isEmpty()) {
|
while (!records.isEmpty()) {
|
||||||
String profile = environment.getProperty("spring.profiles.active");
|
String profile = environment.getProperty("spring.profiles.active");
|
||||||
if ("test".equals(profile) || "master".equals(profile)) {
|
if ("test".equals(profile) || "master".equals(profile)) {
|
||||||
batchSavePendingMessage(records);
|
batchSavePendingMessage(records);
|
||||||
} else {
|
} else {
|
||||||
log.warn("目前只有测试test环境和生产master环境支持该操作!");
|
log.warn("目前只有测试test环境和生产master环境支持该操作!");
|
||||||
|
}
|
||||||
|
scrollId = records.stream().min(Comparator.comparing(MessageRecord::getId))
|
||||||
|
.map(MessageRecord::getId).orElse(0L);
|
||||||
|
records = messageRecordDao.lambdaQuery()
|
||||||
|
.eq(MessageRecord::getType, MsgTypeEnum.PENDING_MESSAGE)
|
||||||
|
.eq(MessageRecord::getIsDelete, YesNoEnum.NO.getCode())
|
||||||
|
.ge(MessageRecord::getCreateAt, DateFormatUtil.toDate(queryFrom))
|
||||||
|
.between(MessageRecord::getId, minRecordId, scrollId)
|
||||||
|
.orderByDesc(MessageRecord::getId)
|
||||||
|
.last("LIMIT 1000")
|
||||||
|
.list();
|
||||||
}
|
}
|
||||||
// scrollId = records.stream().min(Comparator.comparing(MessageRecord::getId))
|
|
||||||
// .map(MessageRecord::getId).orElse(0L);
|
|
||||||
// records = messageRecordDao.lambdaQuery()
|
|
||||||
// .eq(MessageRecord::getType, MsgTypeEnum.PENDING_MESSAGE)
|
|
||||||
// .eq(MessageRecord::getIsDelete, YesNoEnum.NO.getCode())
|
|
||||||
// .ge(MessageRecord::getCreateAt, DateFormatUtil.toDate(queryFrom))
|
|
||||||
// //.between(MessageRecord::getId, minRecordId, scrollId)
|
|
||||||
// //modify by zuoqinbo
|
|
||||||
// .between(MessageRecord::getId, scrollId, Long.MAX_VALUE)
|
|
||||||
// .orderByDesc(MessageRecord::getId)
|
|
||||||
// .list();
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void batchSavePendingMessage(List<MessageRecord> records) {
|
private void batchSavePendingMessage(List<MessageRecord> records) {
|
||||||
// TODO: [zuoqinbo]
|
|
||||||
if (CollectionUtils.isEmpty(records)) {
|
if (CollectionUtils.isEmpty(records)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
List<PendingMessageRecord> pendingMessageRecords = records.stream().map(new Function<MessageRecord, PendingMessageRecord>() {
|
List<PendingMessageRecord> pendingMessageRecords = records.stream()
|
||||||
@Override
|
.map(this::convert)
|
||||||
public PendingMessageRecord apply(MessageRecord messageRecord) {
|
.collect(Collectors.toList());
|
||||||
return convert(messageRecord);
|
|
||||||
}
|
|
||||||
}).collect(Collectors.toList());
|
|
||||||
//批量插入数据库
|
//批量插入数据库
|
||||||
pendingMessageRecordDao.saveOrUpdateBatch(pendingMessageRecords);
|
pendingMessageRecordDao.saveOrUpdateBatch(pendingMessageRecords);
|
||||||
}
|
}
|
||||||
@ -129,7 +122,6 @@ public class PendingMessageDataInitServiceImpl implements PendingMessageDataInit
|
|||||||
pendingMsgRecord.setOuId(record.getTenantId());
|
pendingMsgRecord.setOuId(record.getTenantId());
|
||||||
pendingMsgRecord.setBizCategory(BizCategoryEnum.OTHER);
|
pendingMsgRecord.setBizCategory(BizCategoryEnum.OTHER);
|
||||||
pendingMsgRecord.setFailCause(String.valueOf(record.getId()));
|
pendingMsgRecord.setFailCause(String.valueOf(record.getId()));
|
||||||
//
|
|
||||||
pendingMsgRecord.setIdentityCode(UUIDUtil.uuidString());
|
pendingMsgRecord.setIdentityCode(UUIDUtil.uuidString());
|
||||||
pendingMsgRecord.setCreateAt(record.getCreateAt());
|
pendingMsgRecord.setCreateAt(record.getCreateAt());
|
||||||
pendingMsgRecord.setUpdateAt(record.getUpdateAt());
|
pendingMsgRecord.setUpdateAt(record.getUpdateAt());
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user