package com.fdkankan.common.annotation;

import com.fdkankan.common.constant.CommonStatus;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * <p>
        此注解用于对方法返回对象做字典转换
        使用方法：
        1、在你需要做字段转换的service函数或者dao函数上添加此注解
        2、在你的返回的数据模型类中需要做字典转换的字段上添加此注解，并且enumClazz值为你对应的字典枚举类
            注意你的字段必须要有一个相应的字段作为接收字段，比如你的字段名为type，那你必须有个typeStr作为接收字段
 * </p>
 * @author dengsixing
 * @date 2022/6/2
 * @param null
 * @return null
 **/
@Target({ElementType.FIELD, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Dict {
    Class<?> enumClazz() default CommonStatus.class;
}