| | |
| | | })
|
| | | }
|
| | |
|
| | | // 查询部门列表(排除节点)
|
| | | export function listDeptExcludeChild(deptId) {
|
| | | return request({
|
| | | url: '/system/dept/list/exclude/' + deptId,
|
| | | method: 'get'
|
| | | })
|
| | | }
|
| | |
|
| | | // 查询部门详细
|
| | | export function getDept(deptId) {
|
| | | return request({
|
| | |
| | | </template>
|
| | |
|
| | | <script>
|
| | | import { listDept, getDept, delDept, addDept, updateDept } from "@/api/system/dept";
|
| | | import { listDept, getDept, delDept, addDept, updateDept, listDeptExcludeChild } from "@/api/system/dept";
|
| | | import Treeselect from "@riophae/vue-treeselect";
|
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
| | |
|
| | |
| | | children: node.children
|
| | | };
|
| | | },
|
| | | /** 查询部门下拉树结构 */
|
| | | getTreeselect() {
|
| | | listDept().then(response => {
|
| | | this.deptOptions = this.handleTree(response.data, "deptId");
|
| | | });
|
| | | },
|
| | | // 字典状态字典翻译
|
| | | statusFormat(row, column) {
|
| | | return this.selectDictLabel(this.statusOptions, row.status);
|
| | |
| | | /** 新增按钮操作 */
|
| | | handleAdd(row) {
|
| | | this.reset();
|
| | | this.getTreeselect();
|
| | | if (row != undefined) {
|
| | | this.form.parentId = row.deptId;
|
| | | }
|
| | | this.open = true;
|
| | | this.title = "添加部门";
|
| | | listDept().then(response => {
|
| | | this.deptOptions = this.handleTree(response.data, "deptId");
|
| | | });
|
| | | },
|
| | | /** 修改按钮操作 */
|
| | | handleUpdate(row) {
|
| | | this.reset();
|
| | | this.getTreeselect();
|
| | | getDept(row.deptId).then(response => {
|
| | | this.form = response.data;
|
| | | this.open = true;
|
| | | this.title = "修改部门";
|
| | | });
|
| | | listDeptExcludeChild(row.deptId).then(response => {
|
| | | this.deptOptions = this.handleTree(response.data, "deptId");
|
| | | });
|
| | | },
|
| | | /** 提交按钮 */
|
| | | submitForm: function() {
|
| | |
| | | package com.ruoyi.project.system.controller;
|
| | |
|
| | | import java.util.Iterator;
|
| | | import java.util.List;
|
| | | import org.apache.commons.lang3.ArrayUtils;
|
| | | import org.springframework.beans.factory.annotation.Autowired;
|
| | | import org.springframework.security.access.prepost.PreAuthorize;
|
| | | import org.springframework.validation.annotation.Validated;
|
| | |
| | | }
|
| | |
|
| | | /**
|
| | | * 查询部门列表(排除节点)
|
| | | */
|
| | | @PreAuthorize("@ss.hasPermi('system:dept:list')")
|
| | | @GetMapping("/list/exclude/{deptId}")
|
| | | public AjaxResult excludeChild(@PathVariable(value = "deptId", required = false) Long deptId)
|
| | | {
|
| | | List<SysDept> depts = deptService.selectDeptList(new SysDept());
|
| | | Iterator<SysDept> it = depts.iterator();
|
| | | while (it.hasNext())
|
| | | {
|
| | | SysDept d = (SysDept) it.next();
|
| | | if (d.getDeptId().intValue() == deptId
|
| | | || ArrayUtils.contains(StringUtils.split(d.getAncestors(), ","), deptId + ""))
|
| | | {
|
| | | it.remove();
|
| | | }
|
| | | }
|
| | | return AjaxResult.success(depts);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 根据部门编号获取详细信息
|
| | | */
|
| | | @PreAuthorize("@ss.hasPermi('system:dept:query')")
|