Kaynağa Gözat

!108 修复自动填充数据loginUser为null
Merge pull request !108 from charles/2.X

charles 2 yıl önce
ebeveyn
işleme
1b032774f5

+ 2 - 2
ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/config/MybatisPlusConfiguration.java

@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
 import org.dromara.common.core.factory.YmlPropertySourceFactory;
-import org.dromara.common.mybatis.handler.CreateAndUpdateMetaObjectHandler;
+import org.dromara.common.mybatis.handler.InjectionMetaObjectHandler;
 import org.dromara.common.mybatis.interceptor.PlusDataPermissionInterceptor;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.autoconfigure.AutoConfiguration;
@@ -71,7 +71,7 @@ public class MybatisPlusConfiguration {
      */
     @Bean
     public MetaObjectHandler metaObjectHandler() {
-        return new CreateAndUpdateMetaObjectHandler();
+        return new InjectionMetaObjectHandler();
     }
 
     /**

+ 11 - 9
ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/CreateAndUpdateMetaObjectHandler.java → ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java

@@ -18,7 +18,7 @@ import java.util.Date;
  * @author Lion Li
  */
 @Slf4j
-public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler {
+public class InjectionMetaObjectHandler implements MetaObjectHandler {
 
     @Override
     public void insertFill(MetaObject metaObject) {
@@ -30,14 +30,16 @@ public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler {
                 baseEntity.setCreateTime(current);
                 baseEntity.setUpdateTime(current);
                 LoginUser loginUser = getLoginUser();
-                Long userId = ObjectUtil.isNotNull(baseEntity.getCreateBy())
-                    ? baseEntity.getCreateBy() : loginUser.getUserId();
-                // 当前已登录 且 创建人为空 则填充
-                baseEntity.setCreateBy(userId);
-                // 当前已登录 且 更新人为空 则填充
-                baseEntity.setUpdateBy(userId);
-                baseEntity.setCreateDept(ObjectUtil.isNotNull(baseEntity.getCreateDept())
-                    ? baseEntity.getCreateDept() : loginUser.getDeptId());
+                if (ObjectUtil.isNotNull(loginUser)) {
+                    Long userId = ObjectUtil.isNotNull(baseEntity.getCreateBy())
+                        ? baseEntity.getCreateBy() : loginUser.getUserId();
+                    // 当前已登录 且 创建人为空 则填充
+                    baseEntity.setCreateBy(userId);
+                    // 当前已登录 且 更新人为空 则填充
+                    baseEntity.setUpdateBy(userId);
+                    baseEntity.setCreateDept(ObjectUtil.isNotNull(baseEntity.getCreateDept())
+                        ? baseEntity.getCreateDept() : loginUser.getDeptId());
+                }
             }
         } catch (Exception e) {
             throw new ServiceException("自动注入异常 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);