From e3e9fe5106390b841eef291cdcb147a0614f792a Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期三, 27 七月 2022 18:40:35 +0800
Subject: [PATCH] update 同步 ruoyi
---
ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java | 101 +++++++++++++++++++++++++++-----------------------
1 files changed, 55 insertions(+), 46 deletions(-)
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java
index 2f502d7..6d7c977 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java
@@ -1,10 +1,13 @@
package com.ruoyi.framework.handler;
+import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpStatus;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.helper.LoginHelper;
+import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
@@ -19,52 +22,58 @@
@Slf4j
public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler {
- @Override
- public void insertFill(MetaObject metaObject) {
- try {
- //鏍规嵁灞炴�у悕瀛楄缃濉厖鐨勫��
- if (metaObject.hasGetter("createTime")) {
- this.setFieldValByName("createTime", new Date(), metaObject);
- }
- if (metaObject.hasGetter("createBy")) {
- if (metaObject.getValue("createBy") == null) {
- this.setFieldValByName("createBy", getLoginUsername(), metaObject);
- }
- }
- } catch (Exception e) {
- throw new ServiceException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);
- }
- updateFill(metaObject);
- }
+ @Override
+ public void insertFill(MetaObject metaObject) {
+ try {
+ if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity) {
+ BaseEntity baseEntity = (BaseEntity) metaObject.getOriginalObject();
+ Date current = ObjectUtil.isNotNull(baseEntity.getCreateTime())
+ ? baseEntity.getCreateTime() : new Date();
+ baseEntity.setCreateTime(current);
+ baseEntity.setUpdateTime(current);
+ String username = StringUtils.isNotBlank(baseEntity.getCreateBy())
+ ? baseEntity.getCreateBy() : getLoginUsername();
+ // 褰撳墠宸茬櫥褰� 涓� 鍒涘缓浜轰负绌� 鍒欏~鍏�
+ baseEntity.setCreateBy(username);
+ // 褰撳墠宸茬櫥褰� 涓� 鏇存柊浜轰负绌� 鍒欏~鍏�
+ baseEntity.setUpdateBy(username);
+ }
+ } catch (Exception e) {
+ throw new ServiceException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);
+ }
+ }
- @Override
- public void updateFill(MetaObject metaObject) {
- try {
- if (metaObject.hasGetter("updateBy")) {
- if (metaObject.getValue("updateBy") == null) {
- this.setFieldValByName("updateBy", getLoginUsername(), metaObject);
- }
- }
- if (metaObject.hasGetter("updateTime")) {
- this.setFieldValByName("updateTime", new Date(), metaObject);
- }
- } catch (Exception e) {
- throw new ServiceException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);
- }
- }
+ @Override
+ public void updateFill(MetaObject metaObject) {
+ try {
+ if (ObjectUtil.isNotNull(metaObject) && metaObject.getOriginalObject() instanceof BaseEntity) {
+ BaseEntity baseEntity = (BaseEntity) metaObject.getOriginalObject();
+ Date current = new Date();
+ // 鏇存柊鏃堕棿濉厖(涓嶇涓轰笉涓虹┖)
+ baseEntity.setUpdateTime(current);
+ String username = getLoginUsername();
+ // 褰撳墠宸茬櫥褰� 鏇存柊浜哄~鍏�(涓嶇涓轰笉涓虹┖)
+ if (StringUtils.isNotBlank(username)) {
+ baseEntity.setUpdateBy(username);
+ }
+ }
+ } catch (Exception e) {
+ throw new ServiceException("鑷姩娉ㄥ叆寮傚父 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);
+ }
+ }
- /**
- * 鑾峰彇鐧诲綍鐢ㄦ埛鍚�
- */
- private String getLoginUsername() {
- LoginUser loginUser;
- try {
- loginUser = SecurityUtils.getLoginUser();
- } catch (Exception e) {
- log.warn("鑷姩娉ㄥ叆璀﹀憡 => 鐢ㄦ埛鏈櫥褰�");
- return null;
- }
- return loginUser.getUsername();
- }
+ /**
+ * 鑾峰彇鐧诲綍鐢ㄦ埛鍚�
+ */
+ private String getLoginUsername() {
+ LoginUser loginUser;
+ try {
+ loginUser = LoginHelper.getLoginUser();
+ } catch (Exception e) {
+ log.warn("鑷姩娉ㄥ叆璀﹀憡 => 鐢ㄦ埛鏈櫥褰�");
+ return null;
+ }
+ return loginUser.getUsername();
+ }
}
--
Gitblit v1.9.3