From 86b28f0071dae7c0b565806d35aaadff1a1809b8 Mon Sep 17 00:00:00 2001 From: sh Date: Mon, 13 Oct 2025 17:16:28 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E7=94=A8=E6=88=B7=E7=BB=8F?= =?UTF-8?q?=E5=8E=86=E4=BF=9D=E5=AD=98=E6=8E=A5=E5=8F=A3=202.SecurityUtils?= =?UTF-8?q?=E4=B8=8ESiteSecurityUtils=20=E4=BF=9D=E5=AD=98=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=97=B6=E5=8C=BA=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/AppUserWorkExperiencesController.java | 2 + .../config/FieldMetaObjectConfig.java | 75 ++++++++++++------- 2 files changed, 51 insertions(+), 26 deletions(-) diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppUserWorkExperiencesController.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppUserWorkExperiencesController.java index 16fa842..8bda4de 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppUserWorkExperiencesController.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppUserWorkExperiencesController.java @@ -5,6 +5,7 @@ import com.ruoyi.cms.service.UserWorkExperiencesService; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.utils.SiteSecurityUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -56,6 +57,7 @@ public class AppUserWorkExperiencesController extends BaseController { @ApiOperation("新增工作经历") @PostMapping("/add") public AjaxResult add(@RequestBody UserWorkExperiences userWorkExperiences){ + userWorkExperiences.setUserId(SiteSecurityUtils.getUserId()); return toAjax(userWorkExperiencesService.insertWorkExperiences(userWorkExperiences)); } diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FieldMetaObjectConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FieldMetaObjectConfig.java index ee53b26..d1da8dd 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FieldMetaObjectConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FieldMetaObjectConfig.java @@ -2,14 +2,13 @@ package com.ruoyi.framework.config; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.ruoyi.common.core.domain.model.LoginSiteUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.common.utils.SiteSecurityUtils; import org.apache.ibatis.reflection.MetaObject; import org.springframework.stereotype.Component; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.Objects; @@ -21,7 +20,7 @@ import java.util.Objects; @Component public class FieldMetaObjectConfig implements MetaObjectHandler { private final static String CREATE_TIME = "createTime"; -// private final static String DEPT_ID = "deptId"; + // private final static String DEPT_ID = "deptId"; private final static String CREATE_BY = "createBy"; private final static String CREATE_BY_ID = "createById"; private final static String UPDATE_TIME = "updateTime"; @@ -32,20 +31,31 @@ public class FieldMetaObjectConfig implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { - LocalDateTime now = LocalDateTime.now(); - String formattedDate = now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); + Date date = new Date(); if(SecurityUtils.isLogin()) { - LoginUser loginUser = SecurityUtils.getLoginUser(); + LoginUser loginUser = null; + LoginSiteUser siteUser = null; + String name = ""; + Long userId = null; + try { + loginUser = SecurityUtils.getLoginUser(); + name =loginUser.getUsername(); + userId = loginUser.getUserId(); + }catch (Exception ignored){ + siteUser = SiteSecurityUtils.getLoginSiteUser(); + name = siteUser.getUsername(); + userId = siteUser.getUserId(); + } // 创建者 - strictInsertFill(metaObject, CREATE_BY, String.class, loginUser.getUsername()); - strictInsertFill(metaObject, CREATE_BY_ID, Long.class, loginUser.getUserId()); + strictInsertFill(metaObject, CREATE_BY, String.class, name); + strictInsertFill(metaObject, CREATE_BY_ID, Long.class, userId); // 创建时间 - strictInsertFill(metaObject, CREATE_TIME, String.class, formattedDate); + strictInsertFill(metaObject, CREATE_TIME, Date.class, date); // 更新者 - strictInsertFill(metaObject, UPDATE_BY, String.class, loginUser.getUsername()); - strictInsertFill(metaObject, UPDATE_BY_ID, Long.class, loginUser.getUserId()); + strictInsertFill(metaObject, UPDATE_BY, String.class, name); + strictInsertFill(metaObject, UPDATE_BY_ID, Long.class, userId); // 更新时间 - strictInsertFill(metaObject, UPDATE_TIME, String.class, formattedDate); + strictInsertFill(metaObject, UPDATE_TIME, Date.class, date); // 删除标识 strictInsertFill(metaObject, DEL_FLAG, String.class, "0"); }else { @@ -53,12 +63,12 @@ public class FieldMetaObjectConfig implements MetaObjectHandler { strictInsertFill(metaObject, CREATE_BY, String.class, "匿名登录"); strictInsertFill(metaObject, CREATE_BY_ID, Long.class, 0l); // 创建时间 - strictInsertFill(metaObject, CREATE_TIME, String.class, formattedDate); + strictInsertFill(metaObject, CREATE_TIME, Date.class, date); // 更新者 strictInsertFill(metaObject, UPDATE_BY, String.class, "匿名登录"); strictInsertFill(metaObject, UPDATE_BY_ID, Long.class, 0l); // 更新时间 - strictInsertFill(metaObject, UPDATE_TIME, String.class, formattedDate); + strictInsertFill(metaObject, UPDATE_TIME, Date.class, date); // 删除标识 strictInsertFill(metaObject, DEL_FLAG, String.class, "0"); } @@ -67,20 +77,33 @@ public class FieldMetaObjectConfig implements MetaObjectHandler { @Override public void updateFill(MetaObject metaObject) { - LocalDateTime now = LocalDateTime.now(); - String formattedDate = now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); - if(!SecurityUtils.isLogin()){ - strictUpdateFill(metaObject, UPDATE_TIME, String.class, formattedDate); - return; + LoginUser loginUser = null; + LoginSiteUser siteUser = null; + String name = ""; + Long userId = null; + try { + loginUser = SecurityUtils.getLoginUser(); + if(Objects.nonNull(loginUser)){ + name = loginUser.getUsername(); + userId = loginUser.getUserId(); + } + siteUser = SiteSecurityUtils.getLoginSiteUser(); + if(Objects.nonNull(siteUser)){ + name = siteUser.getUsername(); + userId = siteUser.getUserId(); + } + }catch (Exception ignored){ + } - LoginUser loginUser = SecurityUtils.getLoginUser(); if(Objects.isNull(loginUser)){ - loginUser = new LoginUser(); + strictUpdateFill(metaObject, UPDATE_BY, String.class, "nobody"); + strictUpdateFill(metaObject, UPDATE_BY_ID, Long.class, -1l); + }else { + // 更新者 + strictUpdateFill(metaObject, UPDATE_BY, String.class, loginUser.getUsername()); + strictUpdateFill(metaObject, UPDATE_BY_ID, Long.class, loginUser.getUserId()); } - // 更新者 - strictUpdateFill(metaObject, UPDATE_BY, String.class, loginUser.getUsername()); - strictUpdateFill(metaObject, UPDATE_BY_ID, Long.class, loginUser.getUserId()); // 更新时间 - strictUpdateFill(metaObject, UPDATE_TIME, String.class, formattedDate); + strictUpdateFill(metaObject, UPDATE_TIME, Date.class, new Date()); } }