Browse Source

insert或者update时如果设置了创建时间或更新时间,会使用设置的时间,否则默认当前时间

master
zhaoqifeng 3 years ago
parent
commit
7f8e51abcd
  1. 29
      epdc-commons-mybatis/src/main/java/com/elink/esua/epdc/commons/mybatis/handler/FieldMetaObjectHandler.java

29
epdc-commons-mybatis/src/main/java/com/elink/esua/epdc/commons/mybatis/handler/FieldMetaObjectHandler.java

@ -23,6 +23,7 @@ import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Date; import java.util.Date;
import java.util.Optional;
/** /**
* 公共字段自动填充值 * 公共字段自动填充值
@ -45,9 +46,9 @@ public class FieldMetaObjectHandler implements MetaObjectHandler {
if (metaObject.getOriginalObject() instanceof BaseEpdcEntity) { if (metaObject.getOriginalObject() instanceof BaseEpdcEntity) {
String userId = user == null ? Constant.APP_USER_FLAG : String.valueOf(user.getId()); String userId = user == null ? Constant.APP_USER_FLAG : String.valueOf(user.getId());
Long deptId = user == null ? null : user.getDeptId(); Long deptId = user == null ? null : user.getDeptId();
setFieldValByName(FieldConstant.CREATED_TIME_HUMP, date, metaObject); setFieldValByName(FieldConstant.CREATED_TIME_HUMP, getCreatedTimeByFieldValue(metaObject), metaObject);
setFieldValByName(FieldConstant.CREATED_BY_HUMP, userId, metaObject); setFieldValByName(FieldConstant.CREATED_BY_HUMP, userId, metaObject);
setFieldValByName(FieldConstant.UPDATED_TIME_HUMP, date, metaObject); setFieldValByName(FieldConstant.UPDATED_TIME_HUMP, getUpdatedTimeByFieldValue(metaObject), metaObject);
setFieldValByName(FieldConstant.UPDATED_BY_HUMP, userId, metaObject); setFieldValByName(FieldConstant.UPDATED_BY_HUMP, userId, metaObject);
setFieldValByName(FieldConstant.REVISION_HUMP, NumConstant.ZERO, metaObject); setFieldValByName(FieldConstant.REVISION_HUMP, NumConstant.ZERO, metaObject);
//删除标识 //删除标识
@ -104,7 +105,29 @@ public class FieldMetaObjectHandler implements MetaObjectHandler {
} else if (fillEsuaEntity) { } else if (fillEsuaEntity) {
String userId = null == id ? Constant.APP_USER_FLAG : String.valueOf(id); String userId = null == id ? Constant.APP_USER_FLAG : String.valueOf(id);
setFieldValByName(FieldConstant.UPDATED_BY_HUMP, userId, metaObject); setFieldValByName(FieldConstant.UPDATED_BY_HUMP, userId, metaObject);
setFieldValByName(FieldConstant.UPDATED_TIME_HUMP, new Date(), metaObject); setFieldValByName(FieldConstant.UPDATED_TIME_HUMP, getUpdatedTimeByFieldValue(metaObject), metaObject);
} }
} }
public Object getCreatedTimeByFieldValue(MetaObject metaObject) {
Object createdTime = null;
if (metaObject.hasGetter(FieldConstant.CREATED_TIME_HUMP)) {
createdTime = metaObject.getValue(FieldConstant.CREATED_TIME_HUMP);
}
if (createdTime == null) {
createdTime = new Date();
}
return createdTime;
}
public Object getUpdatedTimeByFieldValue(MetaObject metaObject) {
Object updatedTime = null;
if (metaObject.hasGetter(FieldConstant.UPDATED_TIME_HUMP)) {
updatedTime = metaObject.getValue(FieldConstant.UPDATED_TIME_HUMP);
}
if (updatedTime == null) {
updatedTime = new Date();
}
return updatedTime;
}
} }

Loading…
Cancel
Save