package com.changhu.common.annotation;

import cn.hutool.core.util.DesensitizedUtil;

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

/**
 * author: luozhun
 * desc: 脱敏注解
 * createTime: 2023/9/13 16:45
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Desensitized {
    /**
     * 脱敏类型
     *
     * @return 脱敏类型
     */
    DesensitizedUtil.DesensitizedType value();

    /**
     * 是否保留原字段
     *
     * @return 原字段+加密字段 的map
     */
    boolean keepOriginalField() default false;
}