diff --git a/kernel-d-db/db-sdk-mp/src/main/java/cn/stylefeng/roses/kernel/db/mp/datascope/ProjectDataScopeHandler.java b/kernel-d-db/db-sdk-mp/src/main/java/cn/stylefeng/roses/kernel/db/mp/datascope/ProjectDataScopeHandler.java index 61d5abd51..c1c9f6811 100644 --- a/kernel-d-db/db-sdk-mp/src/main/java/cn/stylefeng/roses/kernel/db/mp/datascope/ProjectDataScopeHandler.java +++ b/kernel-d-db/db-sdk-mp/src/main/java/cn/stylefeng/roses/kernel/db/mp/datascope/ProjectDataScopeHandler.java @@ -8,6 +8,7 @@ import cn.stylefeng.roses.kernel.rule.enums.permission.DataScopeTypeEnum; import com.baomidou.mybatisplus.extension.plugins.handler.MultiDataPermissionHandler; import net.sf.jsqlparser.expression.Expression; import net.sf.jsqlparser.expression.LongValue; +import net.sf.jsqlparser.expression.Parenthesis; import net.sf.jsqlparser.expression.StringValue; import net.sf.jsqlparser.expression.operators.conditional.OrExpression; import net.sf.jsqlparser.expression.operators.relational.EqualsTo; @@ -202,7 +203,7 @@ public class ProjectDataScopeHandler implements MultiDataPermissionHandler { // 创建 IN 表达式 InExpression inExpression = new InExpression(); inExpression.setLeftExpression(orgIdColumn); - inExpression.setRightExpression(expressionList); + inExpression.setRightExpression(new Parenthesis(expressionList)); return inExpression; } @@ -221,6 +222,8 @@ public class ProjectDataScopeHandler implements MultiDataPermissionHandler { // 创建子查询 select 部分 LateralSubSelect subSelect = new LateralSubSelect(); + subSelect.setPrefix(""); + PlainSelect selectBody = new PlainSelect(); selectBody.setSelectItems(ListUtil.of(new SelectItem<>(orgIdColumn))); selectBody.setFromItem(new Table("sys_hr_organization"));