@Data
public class BaseDO {
@TableField(fill = INSERT)
@TableLogic
protected Integer isDeleted;
@TableField(fill = INSERT_UPDATE)
protected Date gmtCreate;
@TableField(fill = INSERT_UPDATE)
protected Date gmtModified;
@TableField(fill = INSERT)
protected String createId;
}
@Data
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@TableName(value = "t_xxx")
@Accessors(chain = true)
public class RuleDO extends BaseDO {
private String id;
private String ruleName;
private Integer type;
private String calculateTypeId;
}
@Configuration
public class MybatisPlusConfig {
@Component
static class XXX implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
this.strictInsertFill(metaObject, "createId", String.class,
"1");
this.strictInsertFill(metaObject, "gmtCreate", Date.class, new Date());
this.strictInsertFill(metaObject, "gmtModified", Date.class, new Date());
this.strictInsertFill(metaObject, "isDeleted", Integer.class, 0);
}
@Override
public void updateFill(MetaObject metaObject) {
setFieldValByName("gmtModified", new Date(), metaObject);
}
}
}