diff --git a/src/test/java/org/redkale/test/source/LoginRecord.java b/src/test/java/org/redkale/test/source/LoginRecord.java index 762d8cb2d..a98e6177d 100644 --- a/src/test/java/org/redkale/test/source/LoginRecord.java +++ b/src/test/java/org/redkale/test/source/LoginRecord.java @@ -6,10 +6,7 @@ package org.redkale.test.source; import java.io.Serializable; - -import org.redkale.persistence.Column; -import org.redkale.source.DistributeTable; -import org.redkale.persistence.Id; +import org.redkale.persistence.*; import org.redkale.source.*; import org.redkale.util.Utility; @@ -131,11 +128,15 @@ public class LoginRecord extends BaseEntity { //过滤查询时调用本方法 @Override - public String getTable(String table, FilterNode node) { + public String[] getTables(String table, FilterNode node) { Serializable day = node.findValue("#day"); //LoginRecord没有day字段,所以前面要加#,表示虚拟字段, 值为yyyyMMdd格式 if (day != null) getTable(table, (Integer) day, 0L); //存在#day参数则直接使用day值 Serializable time = node.findValue("createtime"); //存在createtime则使用最小时间,且createtime的范围必须在一天内,因为本表以天为单位建表 - return getTable(table, 0, (time == null ? 0L : (time instanceof Range ? ((Range.LongRange) time).getMin() : (Long) time))); + if (time instanceof Long) { + return new String[]{getTable(table, 0, (Long) time)}; + } + Range.LongRange createTime = (Range.LongRange) time; + return new String[]{getTable(table, 0, createTime.getMin())}; } //创建或单个查询时调用本方法 diff --git a/src/test/java/org/redkale/test/source/LoginUserRecord.java b/src/test/java/org/redkale/test/source/LoginUserRecord.java index eb5f4541f..160ea6ef5 100644 --- a/src/test/java/org/redkale/test/source/LoginUserRecord.java +++ b/src/test/java/org/redkale/test/source/LoginUserRecord.java @@ -6,10 +6,7 @@ package org.redkale.test.source; import java.io.Serializable; - -import org.redkale.persistence.Column; -import org.redkale.source.DistributeTable; -import org.redkale.persistence.Id; +import org.redkale.persistence.*; import org.redkale.source.*; /** @@ -74,10 +71,10 @@ public class LoginUserRecord extends BaseEntity { } @Override - public String getTable(String table, FilterNode node) { + public String[] getTables(String table, FilterNode node) { Serializable id = node.findValue("userid"); - if (id != null) return getTable(table, id); - return getHashTable(table, (Integer) node.findValue("#hash")); + if (id != null) return new String[]{getTable(table, id)}; + return new String[]{getHashTable(table, (Integer) node.findValue("#hash"))}; } @Override diff --git a/src/test/java/org/redkale/test/source/UserDetail.java b/src/test/java/org/redkale/test/source/UserDetail.java index 972ad39c6..7042e789d 100644 --- a/src/test/java/org/redkale/test/source/UserDetail.java +++ b/src/test/java/org/redkale/test/source/UserDetail.java @@ -6,11 +6,8 @@ package org.redkale.test.source; import java.io.Serializable; - import org.redkale.convert.*; -import org.redkale.persistence.Column; -import org.redkale.source.DistributeTable; -import org.redkale.persistence.Id; +import org.redkale.persistence.*; import org.redkale.source.*; /** @@ -28,10 +25,10 @@ public class UserDetail extends BaseEntity { } @Override - public String getTable(String table, FilterNode node) { + public String[] getTables(String table, FilterNode node) { Serializable id = node.findValue("userid"); - if (id != null) return getTable(table, id); - return getHashTable(table, (Integer) node.findValue("#hash")); + if (id != null) return new String[]{getTable(table, id)}; + return new String[]{getHashTable(table, (Integer) node.findValue("#hash"))}; } @Override