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