赞
踩
1.继承MetaObjectHandler
- @Component
- @Slf4j
- public class CustomMetaObjectHandler implements MetaObjectHandler {
- @Override
- public void insertFill(MetaObject metaObject) {
- this.strictInsertFill(metaObject, "createTime", DateUtils::getTime, String.class);
- this.strictInsertFill(metaObject, "updateTime", DateUtils::getTime, String.class);
- this.strictInsertFill(metaObject, "createUser",
- () -> Optional.ofNullable(CurrentUser.currentUser()).map(CasUser::getUserId).orElse(""), String.class);
- this.strictInsertFill(metaObject, "updateUser",
- () -> Optional.ofNullable(CurrentUser.currentUser()).map(CasUser::getUserId).orElse(""), String.class);
- }
-
- @Override
- public void updateFill(MetaObject metaObject) {
- // mp 默认有值不覆盖
- metaObject.setValue("updateTime", null);
- metaObject.setValue("updateUser", null);
- this.strictUpdateFill(metaObject, "updateTime", DateUtils::getTime, String.class);
- this.strictUpdateFill(metaObject, "updateUser",
- () -> Optional.ofNullable(CurrentUser.currentUser()).map(CasUser::getUserId).orElse(""), String.class);
- }
- }

2.字段上需要设置
- @Data
- @Accessors(chain = true)
- public class BaseLogicDelDO implements Serializable {
- private static final long serialVersionUID = -206906616465913477L;
- public static final String CREATE_USER = "CREATE_USER";
- public static final String UPDATE_TIME = "UPDATE_TIME";
- public static final String UPDATE_USER = "UPDATE_USER";
- @TableField("STATUS")
- private Status status;
-
- @TableLogic
- private Status delFlag;
-
-
- @TableField(value = CREATE_USER, fill = FieldFill.INSERT)
- private String createUser;
-
- @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
- private String createTime;
-
- @TableField(value = UPDATE_USER, fill = FieldFill.INSERT_UPDATE)
- private String updateUser;
-
- @TableField(value = UPDATE_TIME, fill = FieldFill.INSERT_UPDATE)
- private String updateTime;
- }

实体表字段需要设置fill填充方式,这里updateTime和updateUser都会根据操作人新增或修改都会更新,注意Mybatis-Plus字段填充是针对空字段填充,更新时需要覆盖updateTime和updateUser需要先置空,再填充。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。