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 metaObject) {
|
// 判断字段是否存在,存在才填充
|
if (metaObject.hasSetter("createBy")) {
|
Long userId = 0L;
|
try {
|
if (SecurityUtils.getLoginUser() != null) {
|
userId = SecurityUtils.getLoginUser().getUserId();
|
this.strictInsertFill(metaObject, "createBy", Long.class, userId);
|
}
|
} catch (Exception ignored) {
|
}
|
}
|
|
if (metaObject.hasSetter("createTime")) {
|
this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now());
|
}
|
}
|
|
@Override
|
public void updateFill(MetaObject metaObject) {
|
// 判断字段是否存在,存在才填充
|
if (metaObject.hasSetter("updateBy")) {
|
Long userId = SecurityUtils.getLoginUser().getUserId();
|
this.strictUpdateFill(metaObject, "updateBy", Long.class, userId);
|
}
|
|
if (metaObject.hasSetter("updateTime")) {
|
this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now());
|
}
|
}
|
}
|