From eac9403ea4e40d3a35dbdd7fd227314d1c93a96c Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期三, 24 六月 2020 15:21:39 +0800 Subject: [PATCH] 修复布局为small者mini用户表单显示错位问题 --- ruoyi-ui/src/views/system/dept/index.vue | 44 +++++++++++++++++++++++++------------------- 1 files changed, 25 insertions(+), 19 deletions(-) diff --git a/ruoyi-ui/src/views/system/dept/index.vue b/ruoyi-ui/src/views/system/dept/index.vue index 735c3b9..4d4d978 100644 --- a/ruoyi-ui/src/views/system/dept/index.vue +++ b/ruoyi-ui/src/views/system/dept/index.vue @@ -46,7 +46,7 @@ default-expand-all :tree-props="{children: 'children', hasChildren: 'hasChildren'}" > - <el-table-column prop="deptName" label="閮ㄩ棬鍚嶇О" width="200"></el-table-column> + <el-table-column prop="deptName" label="閮ㄩ棬鍚嶇О" width="260"></el-table-column> <el-table-column prop="orderNum" label="鎺掑簭" width="200"></el-table-column> <el-table-column prop="status" label="鐘舵��" :formatter="statusFormat" width="100"></el-table-column> <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="200"> @@ -83,12 +83,12 @@ </el-table> <!-- 娣诲姞鎴栦慨鏀归儴闂ㄥ璇濇 --> - <el-dialog :title="title" :visible.sync="open" width="600px"> + <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-row> <el-col :span="24" v-if="form.parentId !== 0"> <el-form-item label="涓婄骇閮ㄩ棬" prop="parentId"> - <treeselect v-model="form.parentId" :options="deptOptions" placeholder="閫夋嫨涓婄骇閮ㄩ棬" /> + <treeselect v-model="form.parentId" :options="deptOptions" :normalizer="normalizer" placeholder="閫夋嫨涓婄骇閮ㄩ棬" /> </el-form-item> </el-col> <el-col :span="12"> @@ -138,11 +138,12 @@ </template> <script> -import { listDept, getDept, treeselect, 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"; export default { + name: "Dept", components: { Treeselect }, data() { return { @@ -150,8 +151,8 @@ loading: true, // 琛ㄦ牸鏍戞暟鎹� deptList: [], - // 閮ㄩ棬閮ㄩ棬鏍戦�夐」 - deptOptions: undefined, + // 閮ㄩ棬鏍戦�夐」 + deptOptions: [], // 寮瑰嚭灞傛爣棰� title: "", // 鏄惁鏄剧ず寮瑰嚭灞� @@ -204,15 +205,20 @@ getList() { this.loading = true; listDept(this.queryParams).then(response => { - this.deptList = response.data; + this.deptList = this.handleTree(response.data, "deptId"); this.loading = false; }); }, - /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */ - getTreeselect() { - treeselect().then(response => { - this.deptOptions = response.data; - }); + /** 杞崲閮ㄩ棬鏁版嵁缁撴瀯 */ + normalizer(node) { + if (node.children && !node.children.length) { + delete node.children; + } + return { + id: node.deptId, + label: node.deptName, + children: node.children + }; }, // 瀛楀吀鐘舵�佸瓧鍏哥炕璇� statusFormat(row, column) { @@ -227,7 +233,7 @@ reset() { this.form = { deptId: undefined, - parentId: 100, + parentId: undefined, deptName: undefined, orderNum: undefined, leader: undefined, @@ -244,21 +250,25 @@ /** 鏂板鎸夐挳鎿嶄綔 */ 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"); }); }, /** 鎻愪氦鎸夐挳 */ @@ -271,8 +281,6 @@ this.msgSuccess("淇敼鎴愬姛"); this.open = false; this.getList(); - } else { - this.msgError(response.msg); } }); } else { @@ -281,8 +289,6 @@ this.msgSuccess("鏂板鎴愬姛"); this.open = false; this.getList(); - } else { - this.msgError(response.msg); } }); } -- Gitblit v1.9.3