From 4c8992891ac92ace938ad81f38d7b9fb6e5cd78c Mon Sep 17 00:00:00 2001 From: rentaiming <806181062@qq.com> Date: 星期六, 20 七月 2024 21:52:13 +0800 Subject: [PATCH] 森林防火 供应商管理 --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java | 151 ++++++++------------------------------------------ 1 files changed, 24 insertions(+), 127 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java index 53c564d..7064256 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java @@ -62,32 +62,23 @@ return buildDeptTreeSelect(depts); } + @Override + public List<SysDept> buildDeptTree(List<SysDept> depts) { + return null; + } + + @Override + public List<TreeSelect> buildDeptTreeSelect(List<SysDept> depts) { + return null; + } + /** * 构建前端所需要树结构 * * @param depts 部门列表 * @return 树结构列表 */ - @Override - public List<SysDept> buildDeptTree(List<SysDept> depts) - { - List<SysDept> returnList = new ArrayList<SysDept>(); - List<Long> tempList = depts.stream().map(SysDept::getDeptId).collect(Collectors.toList()); - for (SysDept dept : depts) - { - // 如果是顶级节点, 遍历该父节点的所有子节点 - if (!tempList.contains(dept.getParentId())) - { - recursionFn(depts, dept); - returnList.add(dept); - } - } - if (returnList.isEmpty()) - { - returnList = depts; - } - return returnList; - } + /** * 构建前端所需要下拉树结构 @@ -95,12 +86,6 @@ * @param depts 部门列表 * @return 下拉树结构列表 */ - @Override - public List<TreeSelect> buildDeptTreeSelect(List<SysDept> depts) - { - List<SysDept> deptTrees = buildDeptTree(depts); - return deptTrees.stream().map(TreeSelect::new).collect(Collectors.toList()); - } /** * 根据角色ID查询部门树信息 @@ -175,7 +160,7 @@ public boolean checkDeptNameUnique(SysDept dept) { Long deptId = StringUtils.isNull(dept.getDeptId()) ? -1L : dept.getDeptId(); - SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName(), dept.getParentId()); + SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName()); if (StringUtils.isNotNull(info) && info.getDeptId().longValue() != deptId.longValue()) { return UserConstants.NOT_UNIQUE; @@ -203,24 +188,19 @@ } } + @Override + public int insertDept(SysDept dept) { + int i = deptMapper.insertDept(dept); + return i; + } + /** * 新增保存部门信息 * * @param dept 部门信息 * @return 结果 */ - @Override - public int insertDept(SysDept dept) - { - SysDept info = deptMapper.selectDeptById(dept.getParentId()); - // 如果父节点不为正常状态,则不允许新增子节点 - if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) - { - throw new ServiceException("部门停用,不允许新增"); - } - dept.setAncestors(info.getAncestors() + "," + dept.getParentId()); - return deptMapper.insertDept(dept); - } + /** * 修改保存部门信息 @@ -231,56 +211,14 @@ @Override public int updateDept(SysDept dept) { - SysDept newParentDept = deptMapper.selectDeptById(dept.getParentId()); - SysDept oldDept = deptMapper.selectDeptById(dept.getDeptId()); - if (StringUtils.isNotNull(newParentDept) && StringUtils.isNotNull(oldDept)) - { - String newAncestors = newParentDept.getAncestors() + "," + newParentDept.getDeptId(); - String oldAncestors = oldDept.getAncestors(); - dept.setAncestors(newAncestors); - updateDeptChildren(dept.getDeptId(), newAncestors, oldAncestors); - } - int result = deptMapper.updateDept(dept); - if (UserConstants.DEPT_NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) - && !StringUtils.equals("0", dept.getAncestors())) - { - // 如果该部门是启用状态,则启用该部门的所有上级部门 - updateParentDeptStatusNormal(dept); - } - return result; + + // 果该部门是启用状态,则启用该部门的所有上级部门 + int i = deptMapper.updateDept(dept); + + return i; } - /** - * 修改该部门的父级部门状态 - * - * @param dept 当前部门 - */ - private void updateParentDeptStatusNormal(SysDept dept) - { - String ancestors = dept.getAncestors(); - Long[] deptIds = Convert.toLongArray(ancestors); - deptMapper.updateDeptStatusNormal(deptIds); - } - /** - * 修改子元素关系 - * - * @param deptId 被修改的部门ID - * @param newAncestors 新的父ID集合 - * @param oldAncestors 旧的父ID集合 - */ - public void updateDeptChildren(Long deptId, String newAncestors, String oldAncestors) - { - List<SysDept> children = deptMapper.selectChildrenDeptById(deptId); - for (SysDept child : children) - { - child.setAncestors(child.getAncestors().replaceFirst(oldAncestors, newAncestors)); - } - if (children.size() > 0) - { - deptMapper.updateDeptChildren(children); - } - } /** * 删除部门管理信息 @@ -294,46 +232,5 @@ return deptMapper.deleteDeptById(deptId); } - /** - * 递归列表 - */ - private void recursionFn(List<SysDept> list, SysDept t) - { - // 得到子节点列表 - List<SysDept> childList = getChildList(list, t); - t.setChildren(childList); - for (SysDept tChild : childList) - { - if (hasChild(list, tChild)) - { - recursionFn(list, tChild); - } - } - } - /** - * 得到子节点列表 - */ - private List<SysDept> getChildList(List<SysDept> list, SysDept t) - { - List<SysDept> tlist = new ArrayList<SysDept>(); - Iterator<SysDept> it = list.iterator(); - while (it.hasNext()) - { - SysDept n = (SysDept) it.next(); - if (StringUtils.isNotNull(n.getParentId()) && n.getParentId().longValue() == t.getDeptId().longValue()) - { - tlist.add(n); - } - } - return tlist; - } - - /** - * 判断是否有子节点 - */ - private boolean hasChild(List<SysDept> list, SysDept t) - { - return getChildList(list, t).size() > 0 ? true : false; - } } -- Gitblit v1.7.1