package com.jilongda.common.config; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.jilongda.common.security.JwtTokenUtils; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.reflection.MetaObject; import org.springframework.context.annotation.Configuration; /** * @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 = JwtTokenUtils.getUsername(); if (StringUtils.isNotBlank(userName)) { if (userName.equals("admin")){ userName = "超级管理员"; } this.setFieldValByName("createBy", userName, metaObject); this.setFieldValByName("updateBy", userName, metaObject); } else { this.setFieldValByName("createBy", "", metaObject); this.setFieldValByName("updateBy", "", metaObject); } } /** * 修改数据执行 * * @param metaObject */ @Override public void updateFill(MetaObject metaObject) { // 获取登录信息 String userName = JwtTokenUtils.getUsername(); if (StringUtils.isNotBlank(userName)) { if (userName.equals("admin")){ userName = "超级管理员"; } this.setFieldValByName("updateBy", userName, metaObject); } else { this.setFieldValByName("updateBy", "", metaObject); } } }