package com.xiaopeng.map.config; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.xiaopeng.common.core.utils.StringUtils; import com.xiaopeng.common.security.utils.SecurityUtils; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.reflection.MetaObject; import org.springframework.context.annotation.Configuration; import java.time.LocalDateTime; /** * @author xiaochen * @ClassName DataUpdateInterceptor * @Description 数据更新操作处理 * @date 2021-12-15 *

* 注意,之前在此处注入了 JwtTokenUtils *

* 造成spring循环依赖,项目支棱不起来 */ @Slf4j @Configuration public class DataUpdateHandlerConfig implements MetaObjectHandler { /** * 新增数据执行 * * @param metaObject */ @Override public void insertFill(MetaObject metaObject) { String userName = ""; try{ // 获取登录信息 userName = SecurityUtils.getLoginUser().getSysUser().getNickName(); log.info("DataUpdateInterceptor insertFill"); } catch (Exception e) { log.error("DataUpdateInterceptor insertFill error:{}", e.getMessage()); } if (StringUtils.isNotBlank(userName)) { this.setFieldValByName("createBy", userName, metaObject); this.setFieldValByName("updateBy", userName, metaObject); } else { this.setFieldValByName("createBy", userName, metaObject); this.setFieldValByName("updateBy", userName, metaObject); } this.setFieldValByName("createTime", LocalDateTime.now(), metaObject); this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject); } /** * 修改数据执行 * * @param metaObject */ @Override public void updateFill(MetaObject metaObject) { String userName = ""; try{ // 获取登录信息 userName = SecurityUtils.getLoginUser().getSysUser().getNickName(); log.info("DataUpdateInterceptor insertFill"); } catch (Exception e) { log.error("DataUpdateInterceptor insertFill error:{}", e.getMessage()); } this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject); this.setFieldValByName("updateBy", userName, metaObject); } }