|
@@ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
|
|
|
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
|
|
import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
|
|
|
import cn.iocoder.yudao.framework.datapermission.core.rule.DataPermissionRule;
|
|
|
+import cn.iocoder.yudao.framework.expression.OrExpressionX;
|
|
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
|
|
import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils;
|
|
|
import cn.iocoder.yudao.framework.security.core.LoginUser;
|
|
@@ -20,7 +21,6 @@ import net.sf.jsqlparser.expression.Alias;
|
|
|
import net.sf.jsqlparser.expression.Expression;
|
|
|
import net.sf.jsqlparser.expression.LongValue;
|
|
|
import net.sf.jsqlparser.expression.NullValue;
|
|
|
-import net.sf.jsqlparser.expression.operators.conditional.OrExpression;
|
|
|
import net.sf.jsqlparser.expression.operators.relational.EqualsTo;
|
|
|
import net.sf.jsqlparser.expression.operators.relational.ExpressionList;
|
|
|
import net.sf.jsqlparser.expression.operators.relational.InExpression;
|
|
@@ -143,8 +143,8 @@ public class DeptDataPermissionRule implements DataPermissionRule {
|
|
|
if (userExpression == null) {
|
|
|
return deptExpression;
|
|
|
}
|
|
|
- // 目前,如果有指定部门 + 可查看自己,采用 OR 条件。即,WHERE dept_id IN ? OR user_id = ?
|
|
|
- return new OrExpression(deptExpression, userExpression);
|
|
|
+ // 目前,如果有指定部门 + 可查看自己,采用 OR 条件。即,WHERE (dept_id IN ? OR user_id = ?)
|
|
|
+ return new OrExpressionX(deptExpression, userExpression);
|
|
|
}
|
|
|
|
|
|
private Expression buildDeptExpression(String tableName, Alias tableAlias, Set<Long> deptIds) {
|