package com.oying.base;
|
|
import com.baomidou.mybatisplus.annotation.FieldFill;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Getter;
|
import lombok.Setter;
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
import org.springframework.data.annotation.CreatedBy;
|
import org.springframework.data.annotation.LastModifiedBy;
|
import java.io.Serializable;
|
import java.lang.reflect.Field;
|
import java.sql.Timestamp;
|
|
/**
|
* 通用字段, is_del 根据需求自行添加
|
* @author Z
|
* @date 2019年10月24日20:46:32
|
*/
|
@Getter
|
@Setter
|
public class BaseEntity implements Serializable {
|
|
@CreatedBy
|
@TableField(fill = FieldFill.INSERT)
|
@ApiModelProperty(value = "创建人", hidden = true)
|
private String createBy;
|
|
@LastModifiedBy
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
@ApiModelProperty(value = "更新人", hidden = true)
|
private String updateBy;
|
|
@TableField(fill = FieldFill.INSERT)
|
@ApiModelProperty(value = "创建时间: yyyy-MM-dd HH:mm:ss", hidden = true)
|
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
|
private Timestamp createTime;
|
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
@ApiModelProperty(value = "更新时间: yyyy-MM-dd HH:mm:ss", hidden = true)
|
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
|
private Timestamp updateTime;
|
|
/* 分组校验 */
|
public @interface Create {}
|
|
/* 分组校验 */
|
public @interface Update {}
|
|
@Override
|
public String toString() {
|
ToStringBuilder builder = new ToStringBuilder(this);
|
Field[] fields = this.getClass().getDeclaredFields();
|
try {
|
for (Field f : fields) {
|
f.setAccessible(true);
|
builder.append(f.getName(), f.get(this)).append("\n");
|
}
|
} catch (Exception e) {
|
builder.append("toString builder encounter an error");
|
}
|
return builder.toString();
|
}
|
}
|