diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java index 29399ae..1e61bca 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java @@ -354,7 +354,7 @@ public abstract class SyncAccountsJobAbstract { //实际返回数据 rows = response.getRows(); if (!CollectionUtils.isEmpty(rows)) { - Map existKeyMap = getExistKeyMap(cjtRequest, response.getColumns(), rows, context.getCjt()); + Map existKeyMap = getExistKeyMap(cjtRequest, response.getColumns(), rows, context.getCjt(),addRecordRequest); //批量同步飞书 List errorCodeList = syncLarkBatch(response.getColumns(), rows, existKeyMap, addRecordRequest, context.getCjt(),context.getAsynchronous()); if (!CollectionUtils.isEmpty(errorCodeList)) { @@ -374,7 +374,7 @@ public abstract class SyncAccountsJobAbstract { } } - private List getUniqueKey(List keyList, List> rows, String cjt) { + private List getUniqueKey(List keyList, List> rows, String cjt, LarkTableRequest addRecordRequest ) { //组成唯一键的集合 List uniqueFields = getUniqueFields(cjt); List result = new ArrayList<>(); @@ -386,7 +386,7 @@ public abstract class SyncAccountsJobAbstract { midList.add(row.get(i)); } } - String uniqueKey = String.join("_", midList).toUpperCase(); + String uniqueKey = String.join("_", midList).toUpperCase() + addRecordRequest.getAppTable(); result.add(uniqueKey); } } @@ -396,11 +396,11 @@ public abstract class SyncAccountsJobAbstract { /** * 使用唯一key区分创建或更新 */ - protected Map getExistKeyMap(CJTRequest req, List keyList, List> rows, String cjt) { + protected Map getExistKeyMap(CJTRequest req, List keyList, List> rows, String cjt, LarkTableRequest addRecordRequest) { if (CollectionUtils.isEmpty(rows)) { return new HashMap<>(); } - List uniqueKeyList = getUniqueKey(keyList, rows, cjt); + List uniqueKeyList = getUniqueKey(keyList, rows, cjt,addRecordRequest); if (CollectionUtils.isEmpty(uniqueKeyList)) { return new HashMap<>(); } @@ -456,7 +456,7 @@ public abstract class SyncAccountsJobAbstract { } body.put(larkLabel, this.changeValueType(value, cjtSyncTypeRelation)); } - uniqueKey = String.join("_", uniqueKeyList).toUpperCase(); + uniqueKey = String.join("_", uniqueKeyList).toUpperCase()+addRecordRequest.getAppTable(); if (repeatMap.containsKey(uniqueKey)) { continue; }