|
|
@@ -68,6 +68,7 @@ public class DataScopeAspect
|
|
68
|
68
|
@Before("dataScopePointCut()")
|
|
69
|
69
|
public void doBefore(JoinPoint point) throws Throwable
|
|
70
|
70
|
{
|
|
|
71
|
+ clearDataScope(point);
|
|
71
|
72
|
handleDataScope(point);
|
|
72
|
73
|
}
|
|
73
|
74
|
|
|
|
@@ -169,4 +170,17 @@ public class DataScopeAspect
|
|
169
|
170
|
}
|
|
170
|
171
|
return null;
|
|
171
|
172
|
}
|
|
|
173
|
+
|
|
|
174
|
+ /**
|
|
|
175
|
+ * 拼接权限sql前先清空params.dataScope参数防止注入
|
|
|
176
|
+ */
|
|
|
177
|
+ private void clearDataScope(final JoinPoint joinPoint)
|
|
|
178
|
+ {
|
|
|
179
|
+ Object params = joinPoint.getArgs()[0];
|
|
|
180
|
+ if (StringUtils.isNotNull(params) && params instanceof BaseEntity)
|
|
|
181
|
+ {
|
|
|
182
|
+ BaseEntity baseEntity = (BaseEntity) params;
|
|
|
183
|
+ baseEntity.getParams().put(DATA_SCOPE, "");
|
|
|
184
|
+ }
|
|
|
185
|
+ }
|
|
172
|
186
|
}
|