package com.huatek.busi.common.annotation;

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

/**
 * 操作日志记录配置，作用于对象的属性上，被注解的属性值会记录到日志详情当中
 * 
 * @author anker_cheng
 * @date 2019/07/11
 */
@Documented
@Target({ElementType.FIELD, ElementType.METHOD})
@Inherited
@Retention(RetentionPolicy.RUNTIME)
public @interface OpChangeLogColumn {

    /**
     * 记录信息时字段的显示名称
     * 
     * @return 显示名称
     */
    String recordName();

    /**
     * 排序，默认为0
     * 
     * @return
     */
    int order() default 0;

    /**
     * 如果属性需要格式化时配置格式化字符串
     * 
     * @return 格式化字符串
     */
    String format() default "";
}
