From 1987c54a9986885fb8e1ab491783cbd6f5e9f6bc Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期日, 23 七月 2023 18:50:25 +0800
Subject: [PATCH] bug
---
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java | 62 +++++++++++++++++++++++++++---
1 files changed, 55 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..0bdc6ed 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,46 @@
throw new ServiceException("部门停用,不允许新增");
}
dept.setAncestors(info.getAncestors() + "," + dept.getParentId());
- return deptMapper.insertDept(dept);
+ //新增部门
+ int i = deptMapper.insertDept(dept);
+ if(dept.getMenuIds()!=null||dept.getStaffMenuIds()!=null){
+ return insertDeptMenu(dept);
+ }else{
+ return i;
+ }
+
+ }
+
+ /**
+ * 新增角色菜单信息
+ *
+ * @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);
+ rm.setMenuFrom(1);
+ list.add(rm);
+ }
+ for(Long menuId : dept.getStaffMenuIds()){
+ SysDeptMenu rm = new SysDeptMenu();
+ rm.setDeptId(dept.getDeptId());
+ rm.setMenuId(menuId);
+ rm.setMenuFrom(2);
+ list.add(rm);
+ }
+ if (list.size() > 0)
+ {
+ rows = deptMenuMapper.batchDeptMenu(list);
+ }
+ return rows;
}
/**
@@ -246,6 +291,9 @@
// 如果该部门是启用状态,则启用该部门的所有上级部门
updateParentDeptStatusNormal(dept);
}
+ // 删除角色与菜单关联
+ deptMenuMapper.deleteDeptMenuByDeptId(dept.getDeptId());
+ insertDeptMenu(dept);
return result;
}
--
Gitblit v1.7.1