From 65f4880a8ddc2c9c081c045323966fd07022f652 Mon Sep 17 00:00:00 2001
From: jiangqs <343695869@qq.com>
Date: 星期日, 18 六月 2023 22:05:10 +0800
Subject: [PATCH] 部门员工

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java |   49 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 42 insertions(+), 7 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java
index bd80525..63c79a6 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java
@@ -1,11 +1,5 @@
 package com.ruoyi.system.service.impl.sys;
 
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.stream.Collectors;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
 import com.ruoyi.common.core.constant.UserConstants;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.text.Convert;
@@ -16,10 +10,19 @@
 import com.ruoyi.system.api.domain.poji.sys.SysDept;
 import com.ruoyi.system.api.domain.poji.sys.SysRole;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.domain.pojo.sys.SysDeptMenu;
 import com.ruoyi.system.domain.vo.TreeSelect;
 import com.ruoyi.system.mapper.sys.SysDeptMapper;
+import com.ruoyi.system.mapper.sys.SysDeptMenuMapper;
 import com.ruoyi.system.mapper.sys.SysRoleMapper;
 import com.ruoyi.system.service.sys.ISysDeptService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 部门管理 服务实现
@@ -34,6 +37,9 @@
 
     @Autowired
     private SysRoleMapper roleMapper;
+
+    @Autowired
+    private SysDeptMenuMapper deptMenuMapper;
 
     /**
      * 查询部门管理数据
@@ -218,7 +224,33 @@
             throw new ServiceException("部门停用,不允许新增");
         }
         dept.setAncestors(info.getAncestors() + "," + dept.getParentId());
-        return deptMapper.insertDept(dept);
+        //新增部门
+        deptMapper.insertDept(dept);
+        return insertDeptMenu(dept);
+    }
+
+    /**
+     * 新增角色菜单信息
+     *
+     * @param dept 部门对象
+     */
+    public int insertDeptMenu(SysDept dept)
+    {
+        int rows = 1;
+        // 新增用户与角色管理
+        List<SysDeptMenu> list = new ArrayList<SysDeptMenu>();
+        for (Long menuId : dept.getMenuIds())
+        {
+            SysDeptMenu rm = new SysDeptMenu();
+            rm.setDeptId(dept.getDeptId());
+            rm.setMenuId(menuId);
+            list.add(rm);
+        }
+        if (list.size() > 0)
+        {
+            rows = deptMenuMapper.batchDeptMenu(list);
+        }
+        return rows;
     }
 
     /**
@@ -246,6 +278,9 @@
             // 如果该部门是启用状态,则启用该部门的所有上级部门
             updateParentDeptStatusNormal(dept);
         }
+        // 删除角色与菜单关联
+        deptMenuMapper.deleteDeptMenuByDeptId(dept.getDeptId());
+        insertDeptMenu(dept);
         return result;
     }
 

--
Gitblit v1.7.1