修改自定义权限实现

pull/20/MERGE
RuoYi 4 years ago
parent d42a6751e3
commit f9d537b567

@ -17,6 +17,11 @@ import com.ruoyi.common.security.annotation.PreAuthorize;
import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.system.api.model.LoginUser; import com.ruoyi.system.api.model.LoginUser;
/**
*
*
* @author ruoyi
*/
@Aspect @Aspect
@Component @Component
public class PreAuthorizeAspect public class PreAuthorizeAspect
@ -42,34 +47,56 @@ public class PreAuthorizeAspect
return point.proceed(); return point.proceed();
} }
if (StringUtils.isEmpty(annotation.hasPermi()) && hasPermi(annotation.hasPermi())) if (!StringUtils.isEmpty(annotation.hasPermi()))
{ {
return point.proceed(); if (hasPermi(annotation.hasPermi()))
} {
else if (StringUtils.isEmpty(annotation.lacksPermi()) && hasPermi(annotation.lacksPermi())) return point.proceed();
{ }
return point.proceed(); throw new PreAuthorizeException();
} }
else if (StringUtils.isEmpty(annotation.hasAnyPermi()) && hasAnyPermi(annotation.hasAnyPermi())) else if (!StringUtils.isEmpty(annotation.lacksPermi()))
{ {
return point.proceed(); if (lacksPermi(annotation.lacksPermi()))
{
return point.proceed();
}
throw new PreAuthorizeException();
} }
else if (StringUtils.isEmpty(annotation.hasRole()) && hasRole(annotation.hasRole())) else if (!StringUtils.isEmpty(annotation.hasAnyPermi()))
{ {
return point.proceed(); if (hasAnyPermi(annotation.hasAnyPermi()))
{
return point.proceed();
}
throw new PreAuthorizeException();
} }
else if (StringUtils.isEmpty(annotation.lacksRole()) && lacksRole(annotation.lacksRole())) else if (!StringUtils.isEmpty(annotation.hasRole()))
{ {
return point.proceed(); if (hasRole(annotation.hasRole()))
{
return point.proceed();
}
throw new PreAuthorizeException();
} }
else if (StringUtils.isEmpty(annotation.hasAnyRoles()) && hasAnyRoles(annotation.hasAnyRoles())) else if (StringUtils.isEmpty(annotation.lacksRole()))
{ {
return point.proceed(); if (lacksRole(annotation.lacksRole()))
{
return point.proceed();
}
throw new PreAuthorizeException();
} }
else else if (StringUtils.isEmpty(annotation.hasAnyRoles()))
{ {
if (hasAnyRoles(annotation.hasAnyRoles()))
{
return point.proceed();
}
throw new PreAuthorizeException(); throw new PreAuthorizeException();
} }
return point.proceed();
} }
/** /**

Loading…
Cancel
Save