|
@@ -1,5 +1,6 @@
|
|
|
package com.zcxk.xxljob.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.collection.ListUtil;
|
|
|
import cn.hutool.core.comparator.CompareUtil;
|
|
|
import cn.hutool.core.date.LocalDateTimeUtil;
|
|
|
import cn.hutool.core.map.MapUtil;
|
|
@@ -14,6 +15,7 @@ import com.zcxk.rmcp.api.dto.readmeter.WaterMeterDto;
|
|
|
import com.zcxk.rmcp.api.enums.ReadStatusEnum;
|
|
|
import com.zcxk.rmcp.core.dao.DeviceMapper;
|
|
|
import com.zcxk.rmcp.core.dao.MeterReadRecordMapper;
|
|
|
+import com.zcxk.rmcp.core.entity.Device;
|
|
|
import com.zcxk.rmcp.core.mongo.MeterReadRecord;
|
|
|
import com.zcxk.xxljob.common.Constants;
|
|
|
import com.zcxk.xxljob.service.MeterReadRecordService;
|
|
@@ -205,6 +207,7 @@ public class MeterReadRecordServiceImpl implements MeterReadRecordService {
|
|
|
log.info("begin executeSyncMeterReadRecord map = {}",JSON.toJSONString(map));
|
|
|
int readDay = MapUtil.getInt(map, "readDay");
|
|
|
List<MeterReadRecordDetailDto> list = findMeterReadRecord(readDay);
|
|
|
+ log.info("begin executeSyncMeterReadRecord list size = {}",list.size());
|
|
|
List<com.zcxk.rmcp.core.entity.MeterReadRecord> readRecordList = new ArrayList<>();
|
|
|
if(!list.isEmpty()){
|
|
|
for (MeterReadRecordDetailDto detail : list) {
|
|
@@ -232,7 +235,14 @@ public class MeterReadRecordServiceImpl implements MeterReadRecordService {
|
|
|
readRecord.setUpdateBy(Constants.SYS_FLAG);
|
|
|
readRecordList.add(readRecord);
|
|
|
}
|
|
|
- meterReadRecordMapper.batchInsert(readRecordList);
|
|
|
+
|
|
|
+ if(!readRecordList.isEmpty()){
|
|
|
+ //分批添加
|
|
|
+ List<List<com.zcxk.rmcp.core.entity.MeterReadRecord>> tempList = ListUtil.split(readRecordList, 5000);
|
|
|
+ for (List<com.zcxk.rmcp.core.entity.MeterReadRecord> meterReadRecords : tempList) {
|
|
|
+ meterReadRecordMapper.batchInsert(meterReadRecords);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
log.info("end executeSyncMeterReadRecord");
|
|
|
}
|