Browse Source

用户信息不存在情况优化调整

hubin 1 year ago
parent
commit
42b200849c

+ 2 - 7
aizuda-service-parent/src/main/java/com/aizuda/service/web/AizudaMetaObjectHandler.java

@@ -5,7 +5,6 @@
  */
 package com.aizuda.service.web;
 
-import com.aizuda.service.spring.SpringHelper;
 import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
 import org.apache.ibatis.reflection.MetaObject;
 import org.springframework.stereotype.Component;
@@ -17,7 +16,7 @@ public class AizudaMetaObjectHandler implements MetaObjectHandler {
 
     @Override
     public void insertFill(MetaObject metaObject) {
-        UserSession userSession = this.getLoginInfoOrNull();
+        UserSession userSession = UserSession.getLoginInfo(true);
         if (null != userSession) {
             this.fillHasGetter(metaObject, "createId", userSession.getId());
             this.fillHasGetter(metaObject, "createBy", userSession.getUsername());
@@ -27,17 +26,13 @@ public class AizudaMetaObjectHandler implements MetaObjectHandler {
 
     @Override
     public void updateFill(MetaObject metaObject) {
-        UserSession userSession = this.getLoginInfoOrNull();
+        UserSession userSession = UserSession.getLoginInfo(true);
         if (null != userSession) {
             this.fillHasGetter(metaObject, "updateBy", userSession.getUsername());
         }
         this.fillHasGetter(metaObject, "updateTime", new Date());
     }
 
-    public static UserSession getLoginInfoOrNull() {
-        return UserSession.getLoginInfo(SpringHelper.getCurrentRequest(), true);
-    }
-
     protected void fillHasGetter(MetaObject metaObject, String fieldName, Object fieldVal) {
         if (metaObject.hasGetter(fieldName)) {
             this.fillStrategy(metaObject, fieldName, fieldVal);

+ 10 - 9
aizuda-service-parent/src/main/java/com/aizuda/service/web/UserSession.java

@@ -9,12 +9,11 @@ import com.aizuda.core.api.ApiAssert;
 import com.aizuda.service.spring.SpringHelper;
 import com.baomidou.kisso.SSOHelper;
 import com.baomidou.kisso.security.token.SSOToken;
-import lombok.AllArgsConstructor;
+import jakarta.servlet.http.HttpServletRequest;
 import lombok.Builder;
 import lombok.Getter;
 import lombok.Setter;
 
-import jakarta.servlet.http.HttpServletRequest;
 import java.util.Objects;
 
 /**
@@ -33,18 +32,20 @@ public class UserSession {
     private String username;
 
     public static UserSession getLoginInfo() {
-        return getLoginInfo(SpringHelper.getCurrentRequest(), false);
+        return getLoginInfo(false);
     }
 
-    public static UserSession getLoginInfo(HttpServletRequest request, boolean allowNull) {
-        SSOToken ssoToken = getSSOToken(request, allowNull);
-        return new UserSession(Long.valueOf(ssoToken.getId()), ssoToken.getIssuer());
+    public static UserSession getLoginInfo(boolean allowNull) {
+        return getLoginInfo(SpringHelper.getCurrentRequest(), allowNull);
     }
 
-    public static SSOToken getSSOToken(HttpServletRequest request, boolean allowNull) {
+    public static UserSession getLoginInfo(HttpServletRequest request, boolean allowNull) {
         SSOToken ssoToken = getSSOToken(request);
-        ApiAssert.fail(null == ssoToken && allowNull, "未登录");
-        return ssoToken;
+        if (null == ssoToken && allowNull) {
+            return null;
+        }
+        ApiAssert.fail("未登录");
+        return new UserSession(Long.valueOf(ssoToken.getId()), ssoToken.getIssuer());
     }
 
     /**