|
|
@@ -2,11 +2,15 @@ package com.qingjian.module.person.service;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.google.common.collect.Iterables;
|
|
|
+import com.google.common.collect.Lists;
|
|
|
import com.qingjian.common.model.person.entity.PersonLibNo;
|
|
|
import com.qingjian.module.dm.clean.CleanCache;
|
|
|
import com.qingjian.module.person.mapper.PersonLibNoMapper;
|
|
|
import org.noear.solon.annotation.Managed;
|
|
|
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
@Managed
|
|
|
public class PersonLibNoService extends ServiceImpl<PersonLibNoMapper, PersonLibNo> {
|
|
|
|
|
|
@@ -15,7 +19,15 @@ public class PersonLibNoService extends ServiceImpl<PersonLibNoMapper, PersonLib
|
|
|
return;
|
|
|
}
|
|
|
try {
|
|
|
- this.saveOrUpdateBatch(CleanCache.PERSON_LIB_NOS);
|
|
|
+ //判断进行超过1000 进行拆分批量执行
|
|
|
+ if (CleanCache.PERSON_LIB_NOS.size() > 1000) {
|
|
|
+ Iterable<List<PersonLibNo>> partition = Iterables.partition(CleanCache.PERSON_LIB_NOS, 1000);
|
|
|
+ for (List<PersonLibNo> personLibNos : partition) {
|
|
|
+ this.baseMapper.insertOrUpdateBatch(personLibNos);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.baseMapper.insertOrUpdateBatch(Lists.newArrayList(CleanCache.PERSON_LIB_NOS));
|
|
|
+ }
|
|
|
} finally {
|
|
|
CleanCache.PERSON_LIB_NOS.clear();
|
|
|
}
|