package com.gxzc.zen.orm import com.baomidou.mybatisplus.mapper.MetaObjectHandler import com.gxzc.zen.umps.util.SSOUtil import org.apache.ibatis.reflection.MetaObject import org.slf4j.LoggerFactory import org.springframework.stereotype.Component import java.util.* /** * 公共字段自动填充 * @author NorthLan * @date 2018/1/31 * @url https://noahlan.com */ @Component class CustomMetaObjectHandler : MetaObjectHandler() { companion object { val logger = LoggerFactory.getLogger(CustomMetaObjectHandler::class.java)!! } override fun insertFill(metaObject: MetaObject?) { logger.debug("公共字段自动填充: insertFill") if (getFieldValByName("createBy", metaObject) == null) { setFieldValByName("createBy", SSOUtil.getCurUser()?.account, metaObject) } if (getFieldValByName("createTime", metaObject) == null) { setFieldValByName("createTime", Date(), metaObject) } } override fun updateFill(metaObject: MetaObject?) { logger.debug("公共字段自动填充: updateFill") if (getFieldValByName("updateBy", metaObject) == null) { setFieldValByName("updateBy", SSOUtil.getCurUser()?.account, metaObject) } setFieldValByName("updateTime", Date(), metaObject) } }