lyhzzz 2 ay önce
ebeveyn
işleme
5502beb763

+ 5 - 1
src/main/java/com/fdkankan/manage_jp/controller/ManageFolderController.java

@@ -8,6 +8,7 @@ import com.fdkankan.manage_jp.entity.User;
 import com.fdkankan.manage_jp.exception.BusinessException;
 import com.fdkankan.manage_jp.service.IManageFolderService;
 import com.fdkankan.manage_jp.vo.request.ManageFolderSceneVo;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -28,12 +29,15 @@ public class ManageFolderController extends BaseController{
 
     @PostMapping("/addOrUpdate")
     public Result addOrUpdate(@RequestBody ManageFolder manageFolder){
+        if(manageFolder.getType() == null || StringUtils.isBlank(manageFolder.getName())){
+            throw new BusinessException(ResultCode.PARAM_ERROR);
+        }
         if(manageFolder.getId() == null){
             User user = getUser();
             manageFolder.setCreateId(user.getId());
             manageFolder.setCompanyId(user.getCompanyId());
         }
-        manageFolderService.checkFolderName(manageFolder.getId(),manageFolder.getName(),manageFolder.getParentId());
+        manageFolderService.checkFolderName(manageFolder.getId(),manageFolder.getName(),manageFolder.getParentId(),manageFolder.getType());
         manageFolderService.saveOrUpdate(manageFolder);
         return Result.success();
     }

+ 1 - 1
src/main/java/com/fdkankan/manage_jp/service/IManageFolderService.java

@@ -25,5 +25,5 @@ public interface IManageFolderService extends IService<ManageFolder> {
 
     void moveScene(ManageFolderSceneVo param);
 
-    void checkFolderName(Integer id,String name, Integer parentId);
+    void checkFolderName(Integer id,String name, Integer parentId,Integer type);
 }

+ 3 - 0
src/main/java/com/fdkankan/manage_jp/service/IUserRoleService.java

@@ -24,4 +24,7 @@ public interface IUserRoleService extends IService<UserRole> {
     Set<Long> getByUser(Long userId);
 
     HashMap<Long, Long> getByUserList(List<Long> userIds);
+
+    Boolean isPlatfromAdmin(User user);
+    Boolean isCompanyAdmin(User user);
 }

+ 13 - 8
src/main/java/com/fdkankan/manage_jp/service/impl/ManageFolderServiceImpl.java

@@ -7,10 +7,8 @@ import com.fdkankan.manage_jp.entity.ManageFolderScene;
 import com.fdkankan.manage_jp.entity.User;
 import com.fdkankan.manage_jp.exception.BusinessException;
 import com.fdkankan.manage_jp.mapper.IManageFolderMapper;
-import com.fdkankan.manage_jp.service.IManageFolderSceneService;
-import com.fdkankan.manage_jp.service.IManageFolderService;
+import com.fdkankan.manage_jp.service.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fdkankan.manage_jp.service.ISceneProService;
 import com.fdkankan.manage_jp.vo.request.ManageFolderSceneVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -19,6 +17,7 @@ import java.time.YearMonth;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
+import java.util.Set;
 import java.util.stream.Collectors;
 
 /**
@@ -36,6 +35,8 @@ public class ManageFolderServiceImpl extends ServiceImpl<IManageFolderMapper, Ma
     IManageFolderSceneService manageFolderSceneService;
     @Autowired
     ISceneProService sceneProService;
+    @Autowired
+    IUserRoleService userRoleService;
 
     @Override
     public void del(Integer folderId) {
@@ -82,10 +83,13 @@ public class ManageFolderServiceImpl extends ServiceImpl<IManageFolderMapper, Ma
     public List<ManageFolder> tree(User user,Integer type) {
         LambdaQueryWrapper<ManageFolder> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(ManageFolder::getType, type);
-        if(user.getCompanyId() != null){
-            wrapper.eq(ManageFolder::getCompanyId,user.getCompanyId());
-        }else {
-            wrapper.eq(ManageFolder::getCreateId,user.getId());
+       Boolean platfromAdmin = userRoleService.isPlatfromAdmin(user);
+        if(!platfromAdmin){ //超级管理员
+            if(user.getCompanyId() != null){
+                wrapper.eq(ManageFolder::getCompanyId,user.getCompanyId());
+            }else {
+                wrapper.eq(ManageFolder::getCreateId,user.getId());
+            }
         }
         List<ManageFolder> list = this.list(wrapper);
         if(list.isEmpty()){
@@ -134,13 +138,14 @@ public class ManageFolderServiceImpl extends ServiceImpl<IManageFolderMapper, Ma
 
 
     @Override
-    public void checkFolderName(Integer id,String name, Integer parentId) {
+    public void checkFolderName(Integer id,String name, Integer parentId,Integer type) {
         LambdaQueryWrapper<ManageFolder> wrapper = new LambdaQueryWrapper<>();
         if(parentId == null){
             wrapper.isNull(ManageFolder::getParentId);
         }else {
             wrapper.eq(ManageFolder::getParentId,parentId);
         }
+        wrapper.eq(ManageFolder::getType,type);
         wrapper.eq(ManageFolder::getName,name);
         List<ManageFolder> list = this.list(wrapper);
         if(id == null && !list.isEmpty()){

+ 17 - 0
src/main/java/com/fdkankan/manage_jp/service/impl/UserRoleServiceImpl.java

@@ -61,4 +61,21 @@ public class UserRoleServiceImpl extends ServiceImpl<IUserRoleMapper, UserRole>
         list.forEach(e->map.put(e.getUserId(),e.getRoleId()));
         return map;
     }
+
+    @Override
+    public Boolean isPlatfromAdmin(User user) {
+        Set<Long> roleIds = this.getByUser(user);
+        if(roleIds.contains(5L)){ //超级管理员
+            return true;
+        }
+        return false;
+    }
+    @Override
+    public Boolean isCompanyAdmin(User user) {
+        Set<Long> roleIds = this.getByUser(user);
+        if(roleIds.contains(6L)){ //公司管理员
+            return true;
+        }
+        return false;
+    }
 }