<template> <div style="height:100%;padding:3px 8px;overflow: auto;"> <!--通讯,1--> <div id="getOrgParentTree"> </div> <!--通讯,1--> <!--通讯,2--> <div id="getOrgChildTree"> </div> <!--通讯,2--> <!--通讯,3--> <div id="getDepartUsers"> </div> <!--通讯,3--> <!--通讯,4--> <div id="getDepartLists"> </div> <!--通讯,4--> <!--通讯,5--> <div id="addDeparts"> </div> <!--通讯,5--> <!--通讯,6--> <div id="getDepartDetail"> </div> <!--通讯,6--> <!--通讯,7--> <div id="deleteDepart"> </div> <!--通讯,7--> <!--布局,1--> <el-row ref="departmentLayout" :gutter="10" type="flex" justify="start" class="depart-wrap"> <!--col,1--> <el-col :span="6"> <!--卡片,1--> <el-card shadow="always" class="departTree-wrap"> <div slot="header"> <i class="el-icon-s-custom front-title"></i> {{ $t('statics.部门树') }} </div> <el-scrollbar wrapClass="aside-col-wrap" ref="departTreeScrollbar"> <!--树,1--> <el-tree empty-text="无数据" highlight-current lazy :load="searchChild" :expand-on-click-node="false" :props="nodeProp" @node-click="clickNode" :data="treeData" ref="treeTest"> <div class="custom-tree-node" slot-scope="{ node, data }"> <span> <span class="el-tree-node__label"> {{ node.label }} </span> <span> <el-button type="text" size="medium" icon="el-icon-plus" @click="() => getDepartListsF(node, data)"> </el-button> <el-button :class="{'btn-delete-hide': data.pid === '0'}" type="text" size="medium" icon="el-icon-delete" @click="() => removeDepartTree(node, data)"> </el-button> </span> </span> </div> </el-tree> <!--树,1--> </el-scrollbar> </el-card> <!--卡片,1--> </el-col> <!--col,1--> <!--col,2--> <el-col :span="18"> <!--标签页,1--> <el-tabs ref="departTabs" type="border-card"> <!--tabPane,1--> <el-tab-pane :label="$t('statics.部门信息')"> <!--表单,1--> <el-form ref="departInfo" tokenKey="departInfo" label-width="160px" class="departInfos-form"> <!--布局,2--> <el-row :gutter="20" > <!--col,3--> <el-col :span="12"> <!--表单行,1--> <el-form-item :label="$t('statics.第一级成本中心组:')"> <!--输入框,1--> <el-input event-render="loadText" v-model="departDetail.CCG1" type="text" :disabled="false" readonly> </el-input> <!--输入框,1--> </el-form-item> <!--表单行,1--> </el-col> <!--col,3--> <!--col,4--> <el-col :span="12"> <!--表单行,2--> <el-form-item :label="$t('statics.第一级成本中心组名称:')"> <!--输入框,2--> <el-input event-render="loadText" v-model="departDetail.CCG1DESP" type="text" :disabled="false" readonly> </el-input> <!--输入框,2--> </el-form-item> <!--表单行,2--> </el-col> <!--col,4--> </el-row> <!--布局,2--> <!--布局,9--> <el-row :gutter="20" > <!--col,16--> <el-col :span="12"> <!--表单行,9--> <el-form-item :label="$t('statics.第二级成本中心组:')"> <!--输入框,9--> <el-input event-render="loadText" v-model="departDetail.CCG2" type="text" :disabled="false" readonly> </el-input> <!--输入框,9--> </el-form-item> <!--表单行,9--> </el-col> <!--col,16--> <!--col,17--> <el-col :span="12"> <!--表单行,10--> <el-form-item :label="$t('statics.第二级成本中心组名称:')"> <!--输入框,10--> <el-input event-render="loadText" v-model="departDetail.CCG2DESP" type="text" :disabled="false" readonly> </el-input> <!--输入框,10--> </el-form-item> <!--表单行,10--> </el-col> <!--col,17--> </el-row> <!--布局,9--> <!--布局,10--> <el-row :gutter="20" > <!--col,18--> <el-col :span="12"> <!--表单行,11--> <el-form-item :label="$t('statics.第三级成本中心组:')"> <!--输入框,11--> <el-input event-render="loadText" v-model="departDetail.CCG3" type="text" :disabled="false" readonly> </el-input> <!--输入框,11--> </el-form-item> <!--表单行,11--> </el-col> <!--col,18--> <!--col,19--> <el-col :span="12"> <!--表单行,12--> <el-form-item :label="$t('statics.第三级成本中心组名称:')"> <!--输入框,12--> <el-input event-render="loadText" v-model="departDetail.CCG3DESP" type="text" :disabled="false" readonly> </el-input> <!--输入框,12--> </el-form-item> <!--表单行,12--> </el-col> <!--col,19--> </el-row> <!--布局,10--> <!--布局,11--> <el-row :gutter="20" > <!--col,20--> <el-col :span="12"> <!--表单行,13--> <el-form-item :label="$t('statics.第四级成本中心组:')"> <!--输入框,13--> <el-input event-render="loadText" v-model="departDetail.CCG4" type="text" :disabled="false" readonly> </el-input> <!--输入框,13--> </el-form-item> <!--表单行,13--> </el-col> <!--col,20--> <!--col,21--> <el-col :span="12"> <!--表单行,14--> <el-form-item :label="$t('statics.第四级成本中心组名称:')"> <!--输入框,14--> <el-input event-render="loadText" v-model="departDetail.CCG4DESP" type="text" :disabled="false" readonly> </el-input> <!--输入框,14--> </el-form-item> <!--表单行,14--> </el-col> <!--col,21--> </el-row> <!--布局,11--> <!--布局,12--> <el-row :gutter="20" > <!--col,22--> <el-col :span="12"> <!--表单行,15--> <el-form-item :label="$t('statics.成本中心组:')"> <!--输入框,15--> <el-input event-render="loadText" v-model="departDetail.KOSTL" type="text" :disabled="false" readonly> </el-input> <!--输入框,15--> </el-form-item> <!--表单行,15--> </el-col> <!--col,22--> <!--col,23--> <el-col :span="12"> <!--表单行,16--> <el-form-item :label="$t('statics.成本中心组名称:')"> <!--输入框,16--> <el-input event-render="loadText" v-model="departDetail.KOSTLTEXT" type="text" :disabled="false" readonly> </el-input> <!--输入框,16--> </el-form-item> <!--表单行,16--> </el-col> <!--col,23--> </el-row> <!--布局,12--> </el-form> <!--表单,1--> </el-tab-pane> <!--tabPane,1--> <!--tabPane,2--> <el-tab-pane :label="$t('statics.用户')"> <!--卡片,3--> <!--表单,2--> <el-form ref="departUser" label-width="80px" tokenKey="departUser" class="departUser-form"> <!--布局,4--> <el-row ref="a"> <!--col,6--> <el-col :span="12"> <!--表单行,3--> <el-form-item :label="$t('statics.登录名:')"> <!--输入框,3--> <el-input event-render="loadText" v-model="loginName" type="text" :disabled="false" @keyup.enter.native="getDepartUsersF"> </el-input> <!--输入框,3--> </el-form-item> <!--表单行,3--> </el-col> <!--col,6--> <!--col,7--> <el-col :span="12"> <!--表单行,4--> <el-form-item :label="$t('statics.姓名:')"> <!--输入框,4--> <el-input event-render="loadText" v-model="userName" type="text" :disabled="false" @keyup.enter.native="getDepartUsersF"> </el-input> <!--输入框,4--> </el-form-item> <!--表单行,4--> </el-col> <!--col,7--> </el-row> <!--布局,4--> <!--布局,5--> <el-row :gutter="50" class="departUser-searchBtn"> <!--col,8--> <el-col :span="12"> <!--按钮,3--> <el-button type="primary" :loading="false" icon="el-icon-search" class="departUser-btn" @click="getDepartUsersF"> {{ $t('statics.搜索') }} </el-button> <!--按钮,3--> </el-col> <!--col,8--> <!--col,9--> <el-col :span="12"> <!--按钮,4--> <el-button type="primary" :loading="false" icon="el-icon-refresh-right" @click="resetSearch"> {{ $t('statics.重置') }} </el-button> <!--按钮,4--> </el-col> <!--col,9--> </el-row> <!--布局,5--> </el-form> <!--表单,2--> <!--分页表格,1--> <isc-paging-table event-render="pagingTable" ref="departUserTable" :data="departUserData" :pagination="true" paging-side="server" :offset-default="0" :limit-default="10" :pager-count="7" :page-sizes="[10,20,30,40,50,100]" :background="true" border :need-loading="false"> <!--分页表格列,1--> <el-table-column label="ID" prop="personId" :filter-multiple="true"> </el-table-column> <!--分页表格列,1--> <!--分页表格列,2--> <el-table-column :label="$t('statics.登录名称')" prop="logName" :filter-multiple="true"> </el-table-column> <!--分页表格列,2--> <!--分页表格列,3--> <el-table-column :label="$t('statics.姓名')" prop="name" :filter-multiple="true"> </el-table-column> <!--分页表格列,3--> <!--分页表格列,4--> <el-table-column :label="$t('statics.性别')" prop="sex" :filter-multiple="true"> </el-table-column> <!--分页表格列,4--> <!--分页表格列,5--> <el-table-column :label="$t('statics.邮箱')" prop="email" :filter-multiple="true"> </el-table-column> <!--分页表格列,5--> <!--分页表格列,6--> <el-table-column :label="$t('statics.状态')" prop="state" :filter-multiple="true"> </el-table-column> <!--分页表格列,6--> </isc-paging-table> <!--分页表格,1--> </el-tab-pane> <!--tabPane,2--> </el-tabs> <!--标签页,1--> </el-col> <!--col,2--> </el-row> <!--布局,1--> <!--对话框,1--> <el-dialog :visible.sync="dialogVisible" :title="$t('statics.部门增加')" width="80%" :lock-scroll="true" :show-close="true" :close-on-click-modal="true" :close-on-press-escape="true" :modal-append-to-body="false" @close="closeDialog" v-dialogDrag> <!--表单,3--> <el-form ref="departInfo-dialog" label-width="100px" tokenKey="departInfo-dialog"> <!--布局,6--> <el-row> <!--col,10--> <el-col :span="12"> <!--表单行,5--> <el-form-item :label="$t('statics.部门编码:')"> <!--输入框,5--> <el-input event-render="loadText" v-model="departCode" type="text" :disabled="false" @keyup.enter.native="searchDepartment"> </el-input> <!--输入框,5--> </el-form-item> <!--表单行,5--> </el-col> <!--col,10--> <!--col,11--> <el-col :span="12"> <!--表单行,6--> <el-form-item :label="$t('statics.部门名称:')"> <!--输入框,6--> <el-input event-render="loadText" v-model="departName" type="text" :disabled="false" @keyup.enter.native="searchDepartment"> </el-input> <!--输入框,6--> </el-form-item> <!--表单行,6--> </el-col> <!--col,11--> </el-row> <!--布局,6--> <!--布局,7--> <el-row :gutter="50" ref="a"> <!--col,12--> <el-col :span="12"> <!--按钮,5--> <el-button type="primary" :loading="false" icon="el-icon-search" class="departUser-btn" @click="searchDepartment"> {{ $t('statics.搜索') }} </el-button> <!--按钮,5--> </el-col> <!--col,12--> <!--col,13--> <el-col :span="12"> <!--按钮,6--> <el-button type="primary" :loading="false" icon="el-icon-refresh-right" @click="resetDialog"> {{ $t('statics.重置') }} </el-button> <!--按钮,6--> </el-col> <!--col,13--> </el-row> <!--布局,7--> </el-form> <!--表单,3--> <!--分页表格,2--> <isc-paging-table event-render="pagingTable" :$parentPage="this" ref="departChildrenTable" :data="departChildrenData" :pagination="true" paging-side="server" :offset-default="0" :limit-default="10" :pager-count="7" :page-sizes="[10,20,30,40,50,100]" :background="true" border class="departTable-dialog" highlight-current-row @current-change="handleCurrentChange" :select-on-indeterminate="false" :btn-need-re-msg="false" :need-loading="false"> <!--分页表格列,8--> <el-table-column :label="$t('statics.第一级成本中心组名称')" :filter-multiple="true" prop="CCG1DESP"> </el-table-column> <!--分页表格列,8--> <!--分页表格列,9--> <el-table-column :label="$t('statics.第二级成本中心组名称')" :filter-multiple="true" prop="CCG2DESP"> </el-table-column> <!--分页表格列,9--> <!--分页表格列,10--> <el-table-column :label="$t('statics.第三级成本中心组名称')" :filter-multiple="true" prop="CCG3DESP"> </el-table-column> <!--分页表格列,10--> <!--分页表格列,11--> <el-table-column :label="$t('statics.第四级成本中心组名称')" :filter-multiple="true" prop="CCG4DESP"> </el-table-column> <!--分页表格列,11--> <!--分页表格列,12--> <el-table-column :label="$t('statics.部门编号')" :filter-multiple="true" prop="KOSTL" width="90px"> </el-table-column> <!--分页表格列,12--> <!--分页表格列,13--> <el-table-column :label="$t('statics.成本中心组名称(部门名称)')" :filter-multiple="true" prop="KOSTLTEXT" width="200px"> </el-table-column> <!--分页表格列,13--> </isc-paging-table> <!--分页表格,2--> <span slot="footer" class="dialog-footer"> <!--按钮,7--> <el-button type="primary" :loading="false" icon="el-icon-check" @click="submitAddDepart"> {{ $t('statics.选择') }} </el-button> <!--按钮,7--> <!--按钮,8--> <el-button type="primary" :loading="false" icon="el-icon-close" @click="closeDialog"> {{ $t('statics.关闭') }} </el-button> <!--按钮,8--> </span> </el-dialog> <!--对话框,1--> </div> </template> <script type="text/javascript"> import * as iscMessage from '@/util/isc-common/messageManage.js' import { Col,TabPane,Form,FormItem,Radio,TableColumn,Card,Input,Button,Dialog,Tree,Tabs,Row,Scrollbar} from 'element-ui' import { IscPagingTable} from '@/components/isc' export default { data () { return { node: [], resolve: [], departmentPid: null, departmentNodes: null, departDetail:{CCG1:'',CCG1DESP:'',CCG2:'',CCG2DESP:'',CCG3:'',CCG3DESP:'',CCG4:'',CCG4DESP:'',KOSTL:'',KOSTLTEXT:''}, departMap:null, departmentId:null, departCode:'', departName:'', treeData:[], nodeProp:{children:'children',label: 'text',isLeaf: 'leaf'}, loginName:'', departUserData:null, userName:'', otherClick: false, dialogVisible:false, departChildrenData:null, addDeparts:{"fileName":"department.json","basePath":"{{basePath}}","method":"post","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/save"}, getDepartDetail:{"fileName":"department.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/find/kostl/{nodeId}"}, getDepartUsers:{"fileName":"department.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/find/person/{nodeId}"}, getDepartLists:{"fileName":"department.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/find/all/{orgId}"}, getOrgParentTree:{"fileName":"department.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/find/treeParent"}, getOrgChildTree:{"fileName":"department.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/find/treeNode/{departmentNumber}"}, deleteDepart:{"fileName":"department.json","basePath":"{{basePath}}","method":"post","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/department/delete/{departmentNumber}"} } }, components: { 'isc-paging-table':IscPagingTable, 'el-form':Form, 'el-radio':Radio, 'el-col':Col, 'el-scrollbar': Scrollbar, 'el-row':Row, 'el-tabs':Tabs, 'el-input':Input, 'el-button':Button, 'el-form-item':FormItem, 'el-dialog':Dialog, 'el-table-column':TableColumn, 'el-card':Card, 'el-tree':Tree, 'el-tab-pane':TabPane }, mounted (){ let $this = this; this.$el.querySelectorAll('*[isToken]').forEach(function(el,index){ var key =el.getAttribute('tokenKey'); iscMessage.getTokenID($this,key); }); this.$el.querySelectorAll('*[data-init]').forEach(function(el,index){ var init =el.getAttribute('data-init'); var message = iscMessage.initMessageKey(init); $this.poin_initManage(message[0],message[1],message[2]); }); }, methods : { poin_initManage(messageKey,callback,execBefore){ messageKey.vue = this; iscMessage.messageManage(messageKey,callback,execBefore); }, //-----------------------------------部门树--------------------------------------// searchChild(node, resolve){ var $this = this; //渲染树方法 if(node.level == 0){ // 懒加载的动态更新 this.node = node this.resolve = resolve //加载树的根节点 this.poin_initManage({"id":"getOrgParentTree"},function aftert(response,responseData,messageObj){ var treeDatas=[]; if(response && response.ok){ treeDatas = iscMessage.arrayToTree(responseData,'0','id','pid'); } else{ $this.$message({message: responseData.errorMsg,center: true,type: 'error'}); } resolve(treeDatas); $this.$nextTick(() => { $this.$refs.departTreeScrollbar.update() }) }); }else{ var nodeid = node.data.id; //根据id加载子节点 this.poin_initManage({"id":"getOrgChildTree"},function aftert(response,responseData,messageObj){ var treeDatas=[]; if(response && response.ok){ //子节点的数据处理 treeDatas = iscMessage.arrayToTree(responseData,nodeid,'id','pid'); }else { $this.$message({message: responseData.errorMsg,center: true,type: 'error'}); } resolve(treeDatas); $this.$nextTick(() => { $this.$refs.departTreeScrollbar.update() }) },function beforeGet(messageObj){ messageObj.setUriParam({'departmentNumber':nodeid}); }); } }, clickNode(data,node,ev){ this.subsidiaryOrgTemp = data.text; this.departmentId = data.id; this.departmentPid = data.pid; this.departmentNodes = data.nodes this.getDepartUsersF() this.getDepartDetailF() }, //-----------------------------------用户表格--------------------------------------// // 获取分页表格数据 getDepartUsersF(){ if(this.departmentId){ this.poin_initManage({ 'id':'getDepartUsers', 'responseFields':{'total':'%departUserTable.total'}, 'requestFields':{'offset':'%departUserTable.offset','limit':'%departUserTable.limit','begin':'%departUserTable.offset'}}, 'afterGetDepartUsers', 'beforeGetDepartUsers') } else { this.$alert("请选择部门","提示",null); } }, // 获取分页表格数据之前 beforeGetDepartUsers(msgObj){ msgObj.setUriParam({ 'nodeId': this.departmentId, }) msgObj.addRequestParam({ 'order' : 'asc', 'nodeId' : this.departmentId, 'logname' : this.loginName, 'name' : this.userName }) }, // 获取分页表格数据之后 afterGetDepartUsers(res, data, msgObj, err){ if(res && res.ok) { var newRows = data.rows var len = newRows.length for(var i = 0; i < len; i++){ if(newRows[i].sex == 2) { newRows[i].sex = '女'; } else if(newRows[i].sex == 1) { newRows[i].sex = '男'; } else { newRows[i].sex = '-'; } newRows[i].state ? newRows[i].state = '有效':newRows[i].state = '无效' if(!newRows[i].email) { newRows[i].email = '-' } } this.departUserData = newRows } else if(data){ this.$message.error(data.errorMsg) } }, //-----------------------------------用户页面搜索功能--------------------------------------// // 重置 resetSearch(){ this.loginName = '', this.userName = '' }, //----------------------------------点击增加按钮获取部门信息---------------------------------// // 获取分页表格数据 getDepartListsF(node, data){ this.otherClick = true; this.departmentId = data.id if(this.departmentId != null) { // 必须先弹出对话框再请求服务端分页表格数据,否则,表格未及时渲染,无法拿到表格的offset、limit,分页按钮也将失效 this.dialogVisible = true this.$nextTick(() => { this.poin_initManage({ 'id':'getDepartLists', 'responseFields':{'total':'%departChildrenTable.total'}, 'requestFields':{'offset':'%departChildrenTable.offset', 'limit':'%departChildrenTable.limit'}}, 'afterGetDepartLists', 'beforeGetDepartLists'); }) } else { this.$alert('请选择要增加的位置!','提示信息') return }; setTimeout(() => { this.otherClick = false; }, 100); }, // 获取分页表格数据之前 beforeGetDepartLists(msgObj){ msgObj.setUriParam({ 'orgId': this.departmentId, }) this.$nextTick(()=> { msgObj.addRequestParam({ 'order' : 'asc', 'departId' : this.departCode, 'departName' : this.departName, }) }) }, // 获取分页表格数据之后 afterGetDepartLists(res, data, msgObj, err){ if(res && res.ok) { this.departChildrenData = data.rows } else if(data){ this.$message.error(data.errorMsg) } }, // 搜索 searchDepartment(){ this.poin_initManage({ 'id':'getDepartLists', 'responseFields':{'total':'%departChildrenTable.total'}, 'requestFields':{'offset':'%departChildrenTable.offset','limit':'%departChildrenTable.limit'}}, 'afterGetDepartLists', 'beforeSearchDepartLists') }, // 获取分页表格数据之前 beforeSearchDepartLists(msgObj){ msgObj.setUriParam({ 'orgId': this.departmentId, }) msgObj.addRequestParam({ 'order' : 'asc', 'departId' : this.departCode, 'departName' : this.departName, }) }, // 重置 resetDialog(){ this.departCode = '' this.departName = '' }, // 关闭对话框时清空搜索框中的信息 closeDialog(){ this.resetDialog() this.dialogVisible = false }, //-----------------------------------添加部门信息--------------------------------------// // 选择列表中的部门 handleCurrentChange(val){ this.departMap = val }, //增加部门提交 submitAddDepart(){ if(this.departMap == null){ this.$alert("请选择数据再提交!","提示消息"); return; } this.poin_initManage({ 'id' : 'addDeparts', 'requestFields' : {}, 'responseFields' : {} }, 'addDepartAfter', 'addDepartBefore') }, //提交增加部门请求前 addDepartBefore(messageObj){ messageObj.setData({ "posttree" : this.departmentId, "flag": this.departmentPid, "entity": 'ISC', 'CCG1': this.departMap.CCG1, 'CCG2': this.departMap.CCG2, 'CCG3': this.departMap.CCG3, 'CCG4': this.departMap.CCG4, 'CCG1DESP': this.departMap.CCG1DESP, 'CCG2DESP': this.departMap.CCG2DESP, 'CCG3DESP': this.departMap.CCG3DESP, 'CCG4DESP': this.departMap.CCG4DESP, 'KOSTL': this.departMap.KOSTL, 'KOSTLTEXT': this.departMap.KOSTLTEXT }) }, //提交增加部门请求 执行完之后 addDepartAfter(res, data, msgObj, error){ if(res && res.ok && data) { this.$alert(data.responseText,"提示消息") if (data.responseText == "添加成功!") { this.dialogVisible = false this.node.childNodes = [] this.searchChild(this.node, this.resolve) this.departmentId = null } } else if(data){ this.$message.error(data.errorMsg) } }, //-----------------------------------获取部门详细信息--------------------------------------// getDepartDetailF(){ this.poin_initManage({ 'id' : 'getDepartDetail', 'requestFields' : {}, 'responseFields' : {} }, 'getDepartDetailAfter', 'getDepartDetailBefore') }, getDepartDetailAfter(res, data, msgObj, error){ if(res && res.ok) { if(data != null) { this.departDetail.CCG1 = data.CCG1 this.departDetail.CCG1DESP = data.CCG1DESP this.departDetail.CCG2 = data.CCG2 this.departDetail.CCG2DESP = data.CCG2DESP this.departDetail.CCG3 = data.CCG3 this.departDetail.CCG3DESP = data.CCG3DESP this.departDetail.CCG4 = data.CCG4 this.departDetail.CCG4DESP = data.CCG4DESP this.departDetail.KOSTL = data.KOSTL this.departDetail.KOSTLTEXT = data.KOSTLTEXT } else { this.clearDepartInfos() } } else if(data){ this.$message.error(data.errorMsg) } }, getDepartDetailBefore(msgObj){ msgObj.setUriParam({ 'nodeId': this.departmentId, }) }, //-----------------------------------删除部门信息--------------------------------------// //删除部门 removeDepartTree(node,data){ this.otherClick = true; this.departmentId = data.id this.departmentNodes = data.nodes if(this.departmentId == null){ this.$alert('请选择要删除的节点!','提示信息',null) return } if(this.departmentPid == 0){ this.$alert('根节点请不要删除!','提示信息',null) return } if(this.departmentNodes != null ){ this.$confirm('包含以下子节点,你确定删除?', '提示', { confirmButtonText: this.$t('statics.确定'), cancelButtonText: this.$t('statics.取消'), type: 'warning' }).then(() => { this.poin_initManage({ 'id' : 'deleteDepart', 'requestFields' : {}, 'responseFields' : {} }, 'deleteDepartAfter', 'deleteDepartBefore') }).catch(() => { }); } else { this.$confirm('确认删除?', '提示', { confirmButtonText: this.$t('statics.确定'), cancelButtonText: this.$t('statics.取消'), type: 'warning' }).then(() => { this.poin_initManage({ 'id' : 'deleteDepart', 'requestFields' : {}, 'responseFields' : {} }, 'deleteDepartAfter', 'deleteDepartBefore') }).catch(() => { }); } setTimeout(() => { this.otherClick = false; }, 100); }, // 删除之前方法 deleteDepartBefore(msgObj){ msgObj.setUriParam({ "departmentNumber" : this.departmentId }); }, // 删除之后方法 deleteDepartAfter(res, data, msgObj, error){ if(res && res.ok){ if(data.responseText == "success"){ this.$message.success('删除成功') this.node.childNodes = [] this.searchChild(this.node, this.resolve) this.clearDepartInfos() this.departmentId = null } } else if(data){ this.$message.error(data.errorMsg) } }, // 清空部门信息 clearDepartInfos(){ this.departDetail.CCG1 = null this.departDetail.CCG1DESP = null this.departDetail.CCG2 = null this.departDetail.CCG2DESP = null this.departDetail.CCG3 = null this.departDetail.CCG3DESP = null this.departDetail.CCG4 = null this.departDetail.CCG4DESP = null this.departDetail.KOSTL = null this.departDetail.KOSTLTEXT = null } } }</script> <style type="text/css"> .departTree-wrap { position: relative; height: 100%; } .departUser-btn { float: right; } .departTable-dialog { margin-top: 10px; } .departTree-wrap .el-card__body { padding: 10px; } .departInfos-form .el-input__inner { background-color: #eee; } .departUser-form .el-form-item--small.el-form-item { margin-bottom: 12px; } .departUser-searchBtn { margin-bottom: 20px; } .el-tabs { height: 100%; } .btn-delete-hide { visibility: hidden; } .treeScroll-wrap { height: 200px; } </style>