package com.ruoyi.common.handler;
|
|
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
import com.ruoyi.common.utils.SecurityUtils;
|
import org.apache.ibatis.reflection.MetaObject;
|
import org.springframework.stereotype.Component;
|
|
import java.time.LocalDateTime;
|
|
@Component
|
public class MyMetaObjectHandler implements MetaObjectHandler {
|
|
@Override
|
public void insertFill(MetaObject meta) {
|
LocalDateTime now = LocalDateTime.now();
|
Long uid = SecurityUtils.getLoginUser().getUserId();
|
if (uid != null) {
|
strictInsertFill(meta, "createBy", String.class, uid.toString());
|
strictInsertFill(meta, "updateBy", String.class, uid.toString());
|
}
|
strictInsertFill(meta, "createTime", LocalDateTime.class, now);
|
strictInsertFill(meta, "updateTime", LocalDateTime.class, now);
|
}
|
|
@Override
|
public void updateFill(MetaObject meta) {
|
LocalDateTime now = LocalDateTime.now();
|
Long uid = SecurityUtils.getLoginUser().getUserId();
|
if (uid != null) {
|
strictUpdateFill(meta, "updateBy", String.class, uid.toString());
|
}
|
// 强制覆盖 updateTime
|
setFieldValByName("updateTime", now, meta);
|
}
|
|
}
|