【修复】新增数据时,若手动设置了创建人和创建时间,则不去设置创建人和创建时间

pull/22/head
xuyuxiang 2021-03-16 16:51:32 +08:00
parent 62fa6f4ba3
commit dcdd0d1c63
1 changed files with 11 additions and 4 deletions

View File

@ -24,6 +24,7 @@ XiaoNuo采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注
*/
package com.cn.xiaonuo.sys.core.mybatis.fieldfill;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.log.Log;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.cn.xiaonuo.core.context.login.LoginContextHolder;
@ -53,11 +54,17 @@ public class CustomMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
try {
//设置createUserBaseEntity)
setFieldValByName(CREATE_USER, this.getUserUniqueId(), metaObject);
//为空则设置createUserBaseEntity)
Object createUser = metaObject.getValue(CREATE_USER);
if(ObjectUtil.isNull(createUser)) {
setFieldValByName(CREATE_USER, this.getUserUniqueId(), metaObject);
}
//设置createTimeBaseEntity)
setFieldValByName(CREATE_TIME, new Date(), metaObject);
//为空则设置createTimeBaseEntity)
Object createTime = metaObject.getValue(CREATE_TIME);
if(ObjectUtil.isNull(createTime)) {
setFieldValByName(CREATE_TIME, new Date(), metaObject);
}
} catch (ReflectionException e) {
log.warn(">>> CustomMetaObjectHandler处理过程中无相关字段不做处理");
}