package cn.qinys.platform.base.security.annotation;

import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.*;

/**
 * Description:
 *
 * @author tanlie
 * Date: 2024/1/9 10:59
 */
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface HasPermission {
    /**
     * 权限码数组
     *
     * @return 权限码
     */
    @AliasFor("codes")
    String[] value() default "";

    /**
     * 权限码数组
     *
     * @return 权限码
     */
    @AliasFor("value")
    String[] codes() default "";

    /**
     * 是否开启, 默认true
     *
     * @return 是否开启
     */
    boolean open() default true;
}
