update
This commit is contained in:
@@ -211,6 +211,7 @@ public class SyncSlaveToMasterThread implements Runnable{
|
||||
}else{
|
||||
Object lastInsertId = data.get(data.size() - 1).get("id");
|
||||
Set<Long> set = SyncData.getThreadlocalLoopInsertMissionIds();
|
||||
Set<Long> loopUpdateSet = SyncData.getThreadlocalLoopUpdateMissionIds();
|
||||
final List<Record> insertDatas2=new ArrayList<Record>();
|
||||
final List<Record> updateDatas=new ArrayList<Record>();
|
||||
for(Record entity:insertDatas) {
|
||||
@@ -218,11 +219,13 @@ public class SyncSlaveToMasterThread implements Runnable{
|
||||
Record findFirst = Db.use("masterDataSource").findFirst("select * from " + record.getStr("table_name")+" where "+record.getStr("id_name")+"= ? ",entity.get(record.getStr("id_name")));
|
||||
if(null!=findFirst) {
|
||||
updateDatas.add(entity);
|
||||
loopUpdateSet.add(entity.getLong(record.getStr("id_name")));
|
||||
}else {
|
||||
set.add(entity.getLong(record.getStr("id_name")));
|
||||
insertDatas2.add(entity);
|
||||
}
|
||||
}
|
||||
SyncData.setThreadlocalLoopUpdateMissionIds(loopUpdateSet);
|
||||
SyncData.setThreadlocalLoopInsertMissionIds(set);
|
||||
if(insertDatas2.size()>0) {
|
||||
Db.use("masterDataSource").batchSave(record.getStr("table_name"), insertDatas, record.getInt("batch_size"));
|
||||
|
||||
Reference in New Issue
Block a user