package cn.zjy.security.handle;
import cn.zjy.security.domain.LoginUser;
import cn.zjy.security.utils.SecurityUtil;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
/**
* @author ZhangJiaYi
* @time 2023/03/24 22:07:12
* @description 公共字段,自动填充值
*/
@Component
public class FieldMetaObjectHandler implements MetaObjectHandler {
private final static String CREATE_TIME = "create_time";
private final static String CREATE_BY = "create_by";
private final static String UPDATE_TIME = "update_time";
private final static String UPDATE_BY = "update_by";
@Override
public void insertFill(MetaObject metaObject) {
LoginUser user = SecurityUtil.getLoginUser();
LocalDateTime now = LocalDateTime.now();
//创建者
strictInsertFill(metaObject, CREATE_BY, Long.class, user.getUserId());
//创建时间
strictInsertFill(metaObject, CREATE_TIME, LocalDateTime.class, now);
//更新者
strictInsertFill(metaObject, UPDATE_BY, Long.class, user.getUserId());
//更新时间
strictInsertFill(metaObject, UPDATE_TIME, LocalDateTime.class, now);
}
@Override
public void updateFill(MetaObject metaObject) {
//更新者
strictUpdateFill(metaObject, UPDATE_BY, Long.class, SecurityUtil.getUserId());
//更新时间
strictUpdateFill(metaObject, UPDATE_TIME, LocalDateTime.class, LocalDateTime.now());
}
}
公共字段自动填充
最新推荐文章于 2024-08-10 16:13:20 发布