From 1ae369855ba448bc2562ebbbe59a89e42b8c53b0 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期二, 19 十月 2021 17:23:14 +0800 Subject: [PATCH] update 优化 多账号体系用户行为监听逻辑 --- ruoyi-framework/src/main/java/com/ruoyi/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java | 39 ++++++++++++++++++--------------------- 1 files changed, 18 insertions(+), 21 deletions(-) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java index 561ed41..6d9d56a 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java @@ -1,11 +1,11 @@ package com.ruoyi.framework.mybatisplus; -import cn.hutool.core.lang.Validator; import cn.hutool.http.HttpStatus; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; -import com.ruoyi.common.core.domain.model.LoginUser; -import com.ruoyi.common.exception.CustomException; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.SecurityUtils; +import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.reflection.MetaObject; import java.util.Date; @@ -16,6 +16,7 @@ * @author Lion Li * @date 2021/4/25 */ +@Slf4j public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler { @Override @@ -23,35 +24,28 @@ try { //鏍规嵁灞炴�у悕瀛楄缃濉厖鐨勫�� if (metaObject.hasGetter("createTime")) { - if (Validator.isEmpty(metaObject.getValue("createTime"))) { - this.setFieldValByName("createTime", new Date(), metaObject); - } + this.setFieldValByName("createTime", new Date(), metaObject); } if (metaObject.hasGetter("createBy")) { - if (Validator.isEmpty(metaObject.getValue("createBy"))) { - this.setFieldValByName("createBy", getLoginUsername(), metaObject); - } + this.setFieldValByName("createBy", getLoginUsername(), metaObject); } } catch (Exception e) { - throw new CustomException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); + throw new ServiceException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); } + updateFill(metaObject); } @Override public void updateFill(MetaObject metaObject) { try { if (metaObject.hasGetter("updateBy")) { - if (Validator.isEmpty(metaObject.getValue("updateBy"))) { - this.setFieldValByName("updateBy", getLoginUsername(), metaObject); - } + this.setFieldValByName("updateBy", getLoginUsername(), metaObject); } if (metaObject.hasGetter("updateTime")) { - if (Validator.isEmpty(metaObject.getValue("updateTime"))) { - this.setFieldValByName("updateTime", new Date(), metaObject); - } + this.setFieldValByName("updateTime", new Date(), metaObject); } } catch (Exception e) { - throw new CustomException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); + throw new ServiceException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED); } } @@ -59,11 +53,14 @@ * 鑾峰彇鐧诲綍鐢ㄦ埛鍚� */ private String getLoginUsername() { - LoginUser loginUser = SecurityUtils.getLoginUser(); - if (Validator.isEmpty(loginUser)) { - throw new CustomException("鐢ㄦ埛鏈櫥褰� => 鏃犳硶鑾峰彇鐢ㄦ埛淇℃伅"); + SysUser loginUser; + try { + loginUser = SecurityUtils.getUser(); + } catch (Exception e) { + log.warn("鑷姩娉ㄥ叆璀﹀憡 => 鐢ㄦ埛鏈櫥褰�"); + return null; } - return loginUser.getUsername(); + return loginUser.getUserName(); } } -- Gitblit v1.9.3