package cn.com.qmth.stmms.common.auth.annotation;

import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import cn.com.qmth.stmms.common.enums.Auth;

/**
 * 通用方法权限验证定义
 * 
 * @author LS
 * 
 */
@Target({ METHOD })
@Retention(RUNTIME)
public @interface AuthRequire {

    /**
     * 指定需要的权限列表
     */
    Auth[] value() default {};

    /**
     * 多个权限之间是否只需满足任意一个即可，默认为false
     * 
     * @return
     */
    boolean isAny() default false;

    /**
     * 验证失败后的跳转URI
     * 
     * @return
     */
    String redirect() default "";
}
