|
@@ -15,11 +15,8 @@
|
|
|
*/
|
|
|
package com.baomidou.mybatisplus.extension.plugins.tenant;
|
|
|
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
|
|
|
import com.baomidou.mybatisplus.core.parser.AbstractJsqlParser;
|
|
|
-
|
|
|
import net.sf.jsqlparser.expression.BinaryExpression;
|
|
|
import net.sf.jsqlparser.expression.Expression;
|
|
|
import net.sf.jsqlparser.expression.operators.conditional.AndExpression;
|
|
@@ -31,19 +28,11 @@ import net.sf.jsqlparser.schema.Column;
|
|
|
import net.sf.jsqlparser.schema.Table;
|
|
|
import net.sf.jsqlparser.statement.delete.Delete;
|
|
|
import net.sf.jsqlparser.statement.insert.Insert;
|
|
|
-import net.sf.jsqlparser.statement.select.FromItem;
|
|
|
-import net.sf.jsqlparser.statement.select.Join;
|
|
|
-import net.sf.jsqlparser.statement.select.LateralSubSelect;
|
|
|
-import net.sf.jsqlparser.statement.select.PlainSelect;
|
|
|
-import net.sf.jsqlparser.statement.select.SelectBody;
|
|
|
-import net.sf.jsqlparser.statement.select.SelectExpressionItem;
|
|
|
-import net.sf.jsqlparser.statement.select.SetOperationList;
|
|
|
-import net.sf.jsqlparser.statement.select.SubJoin;
|
|
|
-import net.sf.jsqlparser.statement.select.SubSelect;
|
|
|
-import net.sf.jsqlparser.statement.select.ValuesList;
|
|
|
-import net.sf.jsqlparser.statement.select.WithItem;
|
|
|
+import net.sf.jsqlparser.statement.select.*;
|
|
|
import net.sf.jsqlparser.statement.update.Update;
|
|
|
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
/**
|
|
|
* <p>
|
|
|
* 租户 SQL 解析( TenantId 行级 )
|
|
@@ -71,10 +60,7 @@ public class TenantSqlParser extends AbstractJsqlParser {
|
|
|
} else {
|
|
|
SetOperationList operationList = (SetOperationList) selectBody;
|
|
|
if (operationList.getSelects() != null && operationList.getSelects().size() > 0) {
|
|
|
- List<SelectBody> plainSelects = operationList.getSelects();
|
|
|
- for (SelectBody plainSelect : plainSelects) {
|
|
|
- processSelectBody(plainSelect);
|
|
|
- }
|
|
|
+ operationList.getSelects().forEach(this::processSelectBody);
|
|
|
}
|
|
|
}
|
|
|
}
|