From 78839ec83b089ed91ad00585748e78f1c724e570 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期五, 16 九月 2022 08:46:28 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/system/controller/DeptController.java | 45 +++++++++++++++++++++++++++++++++++++++------ 1 files changed, 39 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zy/crm/system/controller/DeptController.java b/src/main/java/com/zy/crm/system/controller/DeptController.java index decd896..b753f51 100644 --- a/src/main/java/com/zy/crm/system/controller/DeptController.java +++ b/src/main/java/com/zy/crm/system/controller/DeptController.java @@ -12,11 +12,12 @@ import com.core.common.R; import com.zy.crm.common.utils.ListUtils; import com.zy.crm.common.utils.TreeUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; import com.zy.crm.common.web.BaseController; +import com.zy.crm.manager.utils.NodeUtils; import com.zy.crm.system.entity.Dept; import com.zy.crm.system.service.DeptService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; import java.io.IOException; import java.util.*; @@ -45,6 +46,7 @@ EntityWrapper<Dept> wrapper = new EntityWrapper<>(); excludeTrash(param); convert(param, wrapper); + hostEq(wrapper); if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} { wrapper.orderBy("sort"); } @@ -67,13 +69,27 @@ @RequestMapping(value = "/dept/add/auth") @ManagerAuth public R add(Dept dept) { + dept.setLevel(1); + if (dept.getParentId() == null || dept.getParentId() == 0) { + dept.setParentId(getOriginDept().getId()); + } + Dept parent = deptService.selectById(dept.getParentId()); + if (parent != null) { + dept.setParentName(parent.getName()); + dept.setLevel(parent.getLevel() + 1); + } + // path + NodeUtils nodeUtils = new NodeUtils(); + nodeUtils.executePath(dept); + dept.setHostId(getHostId()); + dept.setPath(nodeUtils.path.toString()); + dept.setNamePath(nodeUtils.pathName.toString()); + dept.setCreateBy(getUserId()); dept.setCreateTime(new Date()); dept.setUpdateBy(getUserId()); dept.setUpdateTime(new Date()); - if (dept.getParentId() == null) { - dept.setParentId(0L); - } + dept.setStatus(1); deptService.insert(dept); return R.ok(); } @@ -84,6 +100,23 @@ if (Cools.isEmpty(dept) || null==dept.getId()){ return R.error(); } + if (dept.getParentId() != null && dept.getParentId() > 0) { + if (dept.getParentId().equals(dept.getId())) { + return R.error("鏁版嵁閿欒"); + } + Dept parent = deptService.selectById(dept.getParentId()); + if (parent != null) { + dept.setParentName(parent.getName()); + dept.setLevel(parent.getLevel() + 1); + } + } + // path + NodeUtils nodeUtils = new NodeUtils(); + nodeUtils.executePath(dept); + dept.setPath(nodeUtils.path.toString()); + dept.setNamePath(nodeUtils.pathName.toString()); + dept.setUpdateBy(getUserId()); + dept.setUpdateTime(new Date()); deptService.updateById(dept); return R.ok(); } @@ -139,7 +172,7 @@ @PostMapping(value = "/dept/tree/auth") @ManagerAuth public R tree(@RequestParam(required = false, defaultValue = "") String condition) throws IOException, ClassNotFoundException { - ArrayList<Map> tree = treeUtils.getDeptTree(String.valueOf(getOriginDept().getId()), getHostId()); + ArrayList<Map> tree = treeUtils.getDeptTree(String.valueOf(getDeptId()), getHostId()); // 娣辨嫹璐� List<Map> result = ListUtils.deepCopy(tree); if (!Cools.isEmpty(condition)) { -- Gitblit v1.9.1