AE86 5 سال پیش
والد
کامیت
ea84ea7b65

+ 6 - 3
dbsyncer-manager/src/main/java/org/dbsyncer/manager/config/FieldPicker.java

@@ -24,7 +24,7 @@ public class FieldPicker {
     private List<Filter> add;
     private List<Filter> or;
 
-    public FieldPicker(TableGroup tableGroup, List<Filter> filter) {
+    public FieldPicker(TableGroup tableGroup) {
         this.tableGroup = tableGroup;
     }
 
@@ -76,6 +76,8 @@ public class FieldPicker {
                 return true;
             }
         }
+
+        boolean pass = false;
         // 并 关系(成立所有条件)
         for (Filter f: add) {
             value = row.get(f.getName());
@@ -86,14 +88,15 @@ public class FieldPicker {
             if(!filter.compare(String.valueOf(value), f.getValue())){
                 return false;
             }
+            pass = true;
         }
 
-        return true;
+        return pass;
     }
 
     private void init(List<Filter> filter, List<Field> column, List<FieldMapping> fieldMapping) {
         // 解析过滤条件
-        if ((filterSwitch == !CollectionUtils.isEmpty(filter))) {
+        if ((filterSwitch = !CollectionUtils.isEmpty(filter))) {
             add = filter.stream().filter(f -> StringUtils.equals(f.getOperation(), OperationEnum.AND.getName())).collect(Collectors.toList());
             or = filter.stream().filter(f -> StringUtils.equals(f.getOperation(), OperationEnum.OR.getName())).collect(Collectors.toList());
         }

+ 2 - 5
dbsyncer-manager/src/main/java/org/dbsyncer/manager/puller/impl/IncrementPuller.java

@@ -204,7 +204,6 @@ public class IncrementPuller extends AbstractPuller implements ScheduledTaskJob,
     /**
      * </p>定时模式
      * <ol>
-     * <li>获取映射关系增量数据</li>
      * <li>根据过滤条件筛选</li>
      * </ol>
      * </p>同步关系:
@@ -227,7 +226,7 @@ public class IncrementPuller extends AbstractPuller implements ScheduledTaskJob,
             this.mapping = mapping;
             this.metaId = mapping.getMetaId();
             this.tablePicker = new LinkedList<>();
-            list.forEach(t -> tablePicker.add(new FieldPicker(t, t.getFilter())));
+            list.forEach(t -> tablePicker.add(new FieldPicker(t)));
         }
 
         @Override
@@ -237,9 +236,7 @@ public class IncrementPuller extends AbstractPuller implements ScheduledTaskJob,
 
             // 处理过程有异常向上抛
             DataEvent data = new DataEvent(event, before, after);
-            if (picker.filter(data)) {
-                parser.execute(mapping, picker.getTableGroup(), data);
-            }
+            parser.execute(mapping, picker.getTableGroup(), data);
 
             // 标记有变更记录
             changed.compareAndSet(false, true);