<template> <div style="height:100%;padding:3px 8px;overflow: auto;" class="orgPage"> <!--通讯,1--> <div id="getFlagT"> </div> <!--通讯,1--> <!--通讯,2--> <div id="getOrgDetils"> </div> <!--通讯,2--> <!--通讯,3--> <div id="deleteOrgs"> </div> <!--通讯,3--> <!--布局,1--> <el-row ref="a" :gutter="10" style="height: 100%;"> <!--col,1--> <el-col :span="6" style="height: 100%;"> <!--卡片,1--> <el-card shadow="always" style="height: 98%;"> <div slot="header"> <i class="el-icon-menu front-title"></i> {{ $t('statics.机构管理') }} </div> <!--通讯,4--> <div id="getTreeRoot"> </div> <!--通讯,4--> <!--通讯,5--> <div id="getTreeNodes"> </div> <!--通讯,5--> <div class="tree-wrap"> <!--树,1--> <el-tree :data="orgTree" :empty-text="$t('statics.机构无数据')" lazy :load="loadOrgTree" :expand-on-click-node="false" :props="nodeProp" @node-click="clickNodes" highlight-current ref="orgTreeRef" node-key="id" class="aside-col-wrap"> <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.stop="() => addOrg(node, data)"> </el-button> <el-button :class="{'btn-delete-hide': data.pid === '0'}" type="text" size="medium" icon="el-icon-delete" @click.stop="() => deleteOrg(node, data)"> </el-button> </span> </span> </div> </el-tree> <!--树,1--> </div> </el-card> <!--卡片,1--> </el-col> <!--col,1--> <!--col,2--> <el-col :span="16"> <!--标签页,1--> <el-tabs ref="b" type="border-card"> <!--tabPane,1--> <el-tab-pane :label="$t('statics.机构信息')"> <!--表单,1--> <el-form ref="orgForm" :model="orgFormData" tokenKey="orgForm" label-width="200px" label-position="right" label-suffix=":" > <!--输入框,1--> <el-input event-render="loadText" v-model="orgFormData.id" type="text" :disabled="false" v-if="false"> </el-input> <!--输入框,1--> <!--输入框,2--> <el-input event-render="loadText" v-model="orgFormData.parentDepartmentId" type="text" :disabled="false" v-if="false"> </el-input> <!--输入框,2--> <!--表单行,1--> <el-form-item :label="$t('statics.机构名称')" prop="name"> <el-col :span="12"> <!--输入框,3--> <el-input event-render="loadText" v-model="orgFormData.name" type="text" :disabled="formDisable"> </el-input> <!--输入框,3--> </el-col> <!--按钮,1--> <el-button type="text" :loading="false" v-if="checkBtn" @click="checkOrgs()"> {{ $t('statics.选择') }} </el-button> <!--按钮,1--> </el-form-item> <!--表单行,1--> <!--表单行,2--> <el-form-item :label="$t('statics.机构管理级别')" prop="levels"> <el-col :span="12"> <!--输入框,4--> <el-input event-render="loadText" v-model="orgFormData.levels" type="text" :disabled="formDisable"> </el-input> <!--输入框,4--> </el-col> </el-form-item> <!--表单行,2--> <!--表单行,3--> <el-form-item :label="$t('statics.机构号')" prop="departmentNumber"> <el-col :span="12"> <!--输入框,5--> <el-input event-render="loadText" v-model="orgFormData.departmentNumber" type="text" :disabled="formDisable"> </el-input> <!--输入框,5--> </el-col> </el-form-item> <!--表单行,3--> <!--表单行,4--> <el-form-item :label="$t('statics.行政区划')" prop="youzbm"> <el-col :span="12"> <!--输入框,6--> <el-input event-render="loadText" v-model="orgFormData.youzbm" type="text" :disabled="formDisable"> </el-input> <!--输入框,6--> </el-col> </el-form-item> <!--表单行,4--> <!--表单行,5--> <el-form-item :label="$t('statics.机构类型')" prop="jigolx"> <el-col :span="12"> <!--输入框,7--> <el-input event-render="loadText" v-model="orgFormData.jigolx" type="text" :disabled="formDisable"> </el-input> <!--输入框,7--> </el-col> </el-form-item> <!--表单行,5--> <!--表单行,6--> <el-form-item :label="$t('statics.机构营业级别')" prop="jgyyjb"> <el-col :span="12"> <!--输入框,8--> <el-input event-render="loadText" v-model="orgFormData.jgyyjb" type="text" :disabled="formDisable"> </el-input> <!--输入框,8--> </el-col> </el-form-item> <!--表单行,6--> <!--表单行,7--> <el-form-item :label="$t('statics.机构账户上级')" prop="zngwsj"> <el-col :span="12"> <!--输入框,9--> <el-input event-render="loadText" v-model="orgFormData.zngwsj" type="text" :disabled="formDisable"> </el-input> <!--输入框,9--> </el-col> </el-form-item> <!--表单行,7--> <!--表单行,8--> <el-form-item :label="$t('statics.SWIFT BIC码')" prop="ynhbic"> <el-col :span="12"> <!--输入框,10--> <el-input event-render="loadText" v-model="orgFormData.ynhbic" type="text" :disabled="formDisable"> </el-input> <!--输入框,10--> </el-col> </el-form-item> <!--表单行,8--> <!--表单行,9--> <el-form-item :label="$t('statics.银行代码')" prop="yinhdm"> <el-col :span="12"> <!--输入框,11--> <el-input event-render="loadText" v-model="orgFormData.yinhdm" type="text" :disabled="formDisable"> </el-input> <!--输入框,11--> </el-col> </el-form-item> <!--表单行,9--> <!--表单行,10--> <el-form-item> <el-col :span="15" class="text-center"> <!--通讯,6--> <div id="saveOrgs"> </div> <!--通讯,6--> <!--按钮,2--> <el-tooltip effect="light" :content="$t('statics.新增[机构信息]后,请务必同步新增对应的[国结机构信息]')" placement="left"> <span> <el-button type="primary" :loading="false" icon="el-icon-circle-check" style="margin-right:50px" v-if="subBtn" @click="submitOrgs()"> {{$t('statics.提交')}} </el-button> </span> </el-tooltip> <!--按钮,2--> <!--按钮,3--> <el-button type="primary" :loading="false" icon="el-icon-refresh" v-if="subBtn" @click="resetOrgs"> {{$t('statics.重置')}} </el-button> <!--按钮,3--> </el-col> </el-form-item> <!--表单行,10--> </el-form> <!--表单,1--> </el-tab-pane> <!--tabPane,1--> <!--tabPane,2--> <el-tab-pane :label="$t('statics.用户列表')"> <!--表单,2--> <el-form ref="userForm" tokenKey="userForm" label-width="150px" label-suffix=":" label-position="right" :model="user"> <!--布局,2--> <el-row ref="b"> <!--col,3--> <el-col :span="11"> <!--表单行,11--> <el-form-item :label="$t('statics.登录名')" prop="logname"> <!--输入框,12--> <el-input event-render="loadText" v-model.trim="user.logname" type="text" :disabled="false"> </el-input> <!--输入框,12--> </el-form-item> <!--表单行,11--> </el-col> <!--col,3--> <!--col,4--> <el-col :span="11"> <!--表单行,12--> <el-form-item :label="$t('statics.姓名')" prop="name"> <!--输入框,13--> <el-input event-render="loadText" v-model.trim="user.name" type="text" :disabled="false"> </el-input> <!--输入框,13--> </el-form-item> <!--表单行,12--> </el-col> <!--col,4--> </el-row> <!--布局,2--> <div class="text-center"> <!--按钮,4--> <el-button type="primary" icon="el-icon-search" :loading="false" style="margin-right:50px;margin-bottom:25px" @click="searchUser()"> {{$t('statics.搜索')}} </el-button> <!--按钮,4--> <!--按钮,5--> <el-button type="primary" :loading="false" icon="el-icon-refresh" native-type="reset" @click="resetUser('userForm')"> {{$t('statics.重置')}} </el-button> <!--按钮,5--> </div> </el-form> <!--表单,2--> <!--通讯,7--> <div id="getUserByOrg"> </div> <!--通讯,7--> <!--分页表格,1--> <isc-paging-table event-render="pagingTable" :$parentPage="this" ref="userT" :data="userTables" stripe border :pagination="true" paging-side="server" :offset-default="0" :limit-default="10" :pager-count="7" :page-sizes="[10,20,30,40,50,100]" :background="true" :need-loading="false" data-init="poin_initManage({'id':'getUserByOrg','responseFields':{'total':'%userT.total','rows':'#userTables'},'requestFields':{'offset':'%userT.offset','limit':'%userT.limit','name':'#User.name','logname':'#User.logname'}},null,'beforGetUser')" height="450"> <!--分页表格列,1--> <el-table-column label="ID" prop="id" :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"> <template slot-scope="scope"> {{scope.row.sex==1?'男':this.$t('statics.女')}} </template> </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"> <template slot-scope="scope"> {{scope.row.state==1?'有效':this.$t('statics.无效')}} </template> </el-table-column> <!--分页表格列,6--> </isc-paging-table> <!--分页表格,1--> </el-tab-pane> <!--tabPane,2--> <el-tab-pane :label="$t('statics.国结机构信息')"> <el-dept-info-child ref="deptInfoChild"></el-dept-info-child> </el-tab-pane> <el-tab-pane :label="$t('statics.电子签章')"> <el-elec-seal-child ref="elecSealChild" :orgBranch="orgFormData.departmentNumber"></el-elec-seal-child> </el-tab-pane> <el-tab-pane :label="$t('statics.交易权限')" v-if="showTrlCard"> <el-trn-authority-child ref="trnAuthorityChild" :orgBranch="orgFormData.departmentNumber"></el-trn-authority-child> </el-tab-pane> <el-tab-pane :label="$t('statics.机构权限')" v-if="showAthCard"> <el-dept-authority-child ref="deptAuthorityChild" :orgBranch="orgFormData.departmentNumber"></el-dept-authority-child> </el-tab-pane> <el-tab-pane :label="$t('statics.收单配置')" > <el-atpbch-child ref="atpbchChild" :orgBranch="orgFormData.departmentNumber"></el-atpbch-child> </el-tab-pane> </el-tabs> <!--标签页,1--> </el-col> <!--col,2--> </el-row> <!--布局,1--> <!--对话框,1--> <el-dialog :visible.sync="openOrgDialog" :title="$t('statics.机构数据')" :modal-append-to-body="false" :lock-scroll="false" :show-close="true" :close-on-click-modal="false" :close-on-press-escape="false" width="30%" v-dialogDrag @close="closeAndResetTree"> <!--通讯,8--> <div id="getsubOrgTree"> </div> <!--通讯,8--> <!--树,2--> <el-tree ref="orgTree" empty-text="无数据" highlight-current :expand-on-click-node="false" :props="nodeProp" :data="addOrgTree" node-key="id" class="dialog-tree" @node-click="clickOrgNode"> </el-tree> <!--树,2--> <div slot="footer" class="dialog-footer"> <!--通讯,9--> <div id="getOrgSubTreeDetail"> </div> <!--通讯,9--> <!--按钮,6--> <el-button type="primary" icon="el-icon-check" :loading="false" @click="addOrgBtn()"> {{$t('statics.提交')}} </el-button> <!--按钮,6--> <!--按钮,7--> <el-button @click="closeAndResetTree" icon="el-icon-refresh"> {{$t('statics.取消')}} </el-button> <!--按钮,7--> </div> </el-dialog> <!--对话框,1--> </div> </template> <script type="text/javascript"> import * as iscMessage from '@/util/isc-common/messageManage.js' import { Col,TabPane,Form,FormItem,TableColumn,Card,Input,Button,Dialog,Tree,Tabs,Row,Scrollbar} from 'element-ui' import { IscPagingTable} from '@/components/isc' import DeptAuthorityChild from '@/page/Statics/Dept/DeptAuthority.vue'; import ElecSealChild from '@/page/Statics/Dept/ElecSeal.vue'; import DeptInfoChild from '@/page/Statics/Dept/DeptInfo.vue'; import TrnAuthorityChild from '@/page/Statics/Dept/TrnAuthority.vue'; import AtpbchChild from '@/page/Statics/Dept/Atpbch.vue'; export default { data () { return { openOrgDialog:false, editOrgflag:false, formDisable:true, subBtn:false, checkBtn:false, dataType:1, orgModel:1, nodeData:null, nodeP:null, resolve:null, newOrgD:null, orgTree:[{label: this.$t('statics.一级 1'),children: [{label: this.$t('statics.二级 1-1'),children: [{label: this.$t('statics.三级 1-1-1') }]}]}], addOrgTree:[{label: this.$t('statics.一级 1'),children: [{label: this.$t('statics.二级 1-1'),children: [{label: this.$t('statics.三级 1-1-1') }]}]}], userTables:null, // nodeProp:{children:'children',label: 'label'}, deleteOrgs:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"post","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/{num}"}, getsubOrgTree:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/subtree/{num}"}, saveOrgs:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"post","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org"}, getOrgDetils:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/orgnum/{num}"}, getTreeRoot:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/getDepartParent"}, getTreeNodes:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/parentorg/{parentid}"}, getFlagT:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/model"}, getOrgSubTreeDetail:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/orgs/org/mechanismd/yngyjg/{num}"}, getUserByOrg:{"fileName":"orgs.json","basePath":"{{basePath}}","method":"get","scheme":"{{schemes}}","host":"{{host}}","consume":"0","produce":"0","uri":"/users/User/paging/orgid/{orgid}"}, user:{ logname:'', name:'' }, nodeProp:{ children:'children', label: 'text', isLeaf: 'leaf' }, orgFormData:{ id:'0', name:'', parentDepartmentId:'', departmentNumber:'', youzbm:'', jgyyjb:'', jigolx:'', levels:'', zngwsj:'', ynhbic:'', yinhdm:'' }, showTrlCard: true, showAthCard: true } }, components: { 'isc-paging-table':IscPagingTable, 'el-form':Form, 'el-scrollbar':Scrollbar, 'el-col':Col, 'el-row':Row, 'el-input':Input, 'el-tabs':Tabs, 'el-button':Button, 'el-form-item':FormItem, 'el-dialog':Dialog, 'el-table-column':TableColumn, 'el-card':Card, 'el-tree':Tree, 'el-tab-pane':TabPane, 'el-dept-authority-child':DeptAuthorityChild, 'el-elec-seal-child':ElecSealChild, 'el-dept-info-child':DeptInfoChild, 'el-trn-authority-child':TrnAuthorityChild, 'el-atpbch-child':AtpbchChild }, 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]); }); //查询树类型(1:管理机构树 2:账务机构树 3:自定义机构树) this.poin_initManage({"id":"getFlagT"},function after(response,responseData){ if(response.ok){ //自定义树显示修改 if (responseData.orgModel == 3) { $this.editOrgflag=true; }else{ $this.editOrgflag=false; } $this.orgModel = responseData.orgModel; $this.dataType = responseData.dataType; } }); this.getHiddenButtonVue(); }, methods : { getHiddenButtonVue(){ this.$buttonControlService.hiddenBtnList() .then((res)=>{ console.log("hiddenBtnList----",res) for(let i = 0;i<res.length;i++){ if(res[i].ITEMID === 'deptTrlCardBtn'){ this.showTrlCard = false; } if(res[i].ITEMID === 'deptAthCardBtn'){ this.showAthCard = false; } } }).catch(() => { loading.close(); }) }, poin_initManage(messageKey,callback,execBefore){ messageKey.vue = this; iscMessage.messageManage(messageKey,callback,execBefore); }, loadOrgTree(node, resolve){ //渲染机构树方法 var $this= this; if(node.level == 0){ this.firstNode = node; this.resolve = resolve; //加载树的根节点 this.poin_initManage({"id":"getTreeRoot"},function aftert(response,responseData,messageObj){ var treeDatas=[]; if(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.orgTreeW.update()}); }); }else{ var nodeid = node.data.id; //根据id加载子节点 this.poin_initManage({"id":"getTreeNodes"},function aftert(response,responseData,messageObj){ var treeDatas=[]; if(response.ok){ //子节点的数据处理 treeDatas = iscMessage.arrayToTree(responseData,nodeid,'id','pid'); }else{ $this.$message({message: responseData.errorMsg,center: true,type: 'error'}); } resolve(treeDatas); },function beforeGet(messageObj){ messageObj.setUriParam({'parentid':nodeid}); }); } }, // 左侧节点 查看详情 clickNodes(data,node){ //记录当前点击的节点对象 this.nodeData = data; this.nodeP = node; this.subBtn=false; this.checkBtn=false; var $this = this; //查询详情 this.poin_initManage({"id":"getOrgDetils"},function afterD(response,responseData){ if(response.ok){ $this.orgFormData.id = responseData.id; $this.orgFormData.name= responseData.name; $this.orgFormData.parentDepartmentId= responseData.parentDepartmentId; $this.orgFormData.departmentNumber= responseData.departmentNumber; $this.orgFormData.youzbm= responseData.youzbm; $this.orgFormData.jgyyjb= responseData.jgyyjb; $this.orgFormData.jigolx= responseData.jigolx; $this.orgFormData.levels= responseData.levels; $this.orgFormData.zngwsj= responseData.zngwsj; $this.orgFormData.ynhbic= responseData.ynhbic; $this.orgFormData.yinhdm= responseData.yinhdm; // 查询【用户】 $this.$refs.userT.refresh(); // 查询【国结机构信息】 $this.$refs.deptInfoChild.getDeptDetailInfo(responseData.departmentNumber); // 查询【电子签章】信息 $this.$refs.elecSealChild.searchTable(); // 查询【交易权限管理】信息 $this.$refs.trnAuthorityChild.searchTable(); // 查询【机构权限管理】信息 $this.$refs.deptAuthorityChild.searchTable(); //查询收单模式交易配置 $this.$refs.atpbchChild.searchTable(); } },function beforD(messageObj){ messageObj.setUriParam({'num': data.id}); }) //如果自定义树,表单可修改提交 if(this.editOrgflag){ this.subBtn=true; this.formDisable = false; } }, clickOrgNode(data,node){ this.newOrgD = data; }, addOrg(node, data){ //增加树节点 if(!node.isCurrent){ this.$message({message: this.$t('statics.请选中当前节点再操作!'),center: true,type: 'warning'}); return; } this.subBtn=true; this.checkBtn=true; this.$refs.orgForm.resetFields(); this.orgFormData.id=""; this.orgFormData.parentDepartmentId=data.id; if(this.editOrgflag){ //表单可修改 this.formDisable = false; } }, deleteOrg(node, data){ if(!node.isCurrent){ this.$message({message: this.$t('statics.请选中当前节点再操作!'),center: true,type: 'warning'}); return; } //删除树节点 if (data.nodes != null) { this.deleteMsg(this.$t('statics.包含以下子节点,确定一起删除?'),data); }else{ this.deleteMsg(this.$t('statics.确定删除?'),data); } }, deleteMsg(msg,data){ //删除通讯 var $this= this; this.$confirm(msg, this.$t('statics.提示'), { distinguishCancelAndClose: true, confirmButtonText: this.$t('statics.确定'), cancelButtonText: this.$t('statics.取消'), type: 'warning' }).then(() => { $this.poin_initManage({"id":"deleteOrgs"},function afterD(response,data){ if(response.ok){ $this.$message({message: this.$t('statics.删除成功!'),center: true,type: 'success'}); $this.$refs.orgTreeRef.remove($this.nodeData); $this.$refs.orgForm.resetFields(); }else{ $this.$message({message: data.errorMsg,center: true,type: 'error'}); } },function beforD(messageObj){ messageObj.setUriParam({"num":data.id}); }) }).catch(() => { this.$message({ type: 'info',message: this.$t('statics.已取消删除')}); }); }, checkOrgs(){ //选择机构 -弹出框 var $this = this; this.poin_initManage({"id":"getsubOrgTree"},function afterD(response,data){ $this.addOrgTree = iscMessage.arrayToTree(data,'0'); $this.openOrgDialog=true; },function before(messageObj){ var pid = $this.nodeData.id; if(pid == null){ messageObj.setUriParam({'num':1000}); }else{ messageObj.setUriParam({'num':pid}); } }) }, addOrgBtn(){ //弹框提交机构信息 var $this = this; if($this.newOrgD == null){ this.$message({message: this.$t('statics.请选择完再提交!'),center: true,type: 'warning'}); }else{ this.poin_initManage({"id":"getOrgSubTreeDetail"},function afterD(response,data){ //回显表单 $this.orgFormData.departmentNumber = data.yngyjg; if ($this.orgModel == 1) { $this.orgFormData.parentDepartmentId = data.gnlisj; } else if ($this.orgModel == 2) { $this.orgFormData.parentDepartmentId = data.zngwsj; } else if ($this.orgModel == 3) { if ($this.dataType == 1 || $this.dataType == 3) { $this.orgFormData.parentDepartmentId = data.gnlisj; } else if ($this.dataType == 2) { $this.orgFormData.parentDepartmentId = data.zngwsj; } } $this.orgFormData.name= data.jigomc; $this.orgFormData.youzbm= data.youzbm; $this.orgFormData.jgyyjb= data.jgyyjb; $this.orgFormData.jigolx= data.jigolx; $this.orgFormData.levels= data.jggljb; $this.orgFormData.zngwsj= data.zngwsj; $this.orgFormData.ynhbic= data.ynhbic; $this.orgFormData.yinhdm= data.yinhdm; //关闭弹框 $this.openOrgDialog = false; //add by lujing@date2019-10-17 重置树选中 $this.$refs.orgTree.store.setCurrentNodeKey(null); $this.newOrgD = null; // 查询国结机构信息 $this.$refs.deptInfoChild.getDeptDetailInfo(data.yngyjg); },function before(messageObj){ messageObj.setUriParam({'num':$this.newOrgD.id}); }) } }, submitOrgs(){ //表单提交增加或修改 if(this.nodeP == null){ this.$message({message:this.$t('statics.请选择节点再操作!'),center: true,type: 'error'}); return; } if(this.orgFormData.name == ""){ this.$message({message:this.$t('statics.请选择一个机构再操作!'),center: true,type: 'error'}); return; } var $this = this; this.poin_initManage({"id":"saveOrgs"},function afterD(response,data){ if(response.ok){ $this.$message({message:this.$t('statics.提交成功!'),center: true,type: 'success'}); $this.$notify({ title: this.$t('statics.提示'), dangerouslyUseHTMLString: true, message: `<p>${this.$t('statics.新增')}[<strong>${this.$t('statics.机构信息')}</strong>]${this.$t('statics.后,请务必同步新增对应的')}[<strong>${this.$t('statics.国结机构信息')}</strong>]。</p>` }) if($this.orgFormData.id){ //修改操作 更新此节点 $this.nodeData.id = $this.orgFormData.departmentNumber; $this.nodeData.pid = $this.orgFormData.parentDepartmentId; $this.nodeData.text = $this.orgFormData.name; }else{ //添加树节点 (由于树懒加载,已经展开的节点直接追加子) if($this.nodeP!=null && $this.nodeP.childNodes.length>0){ $this.$refs.orgTreeRef.append({"id":$this.orgFormData.departmentNumber,"pid":$this.orgFormData.parentDepartmentId,"text":$this.orgFormData.name,"leaf":true},$this.nodeP); }else{ //未展开的节点,要重新渲染节点 $this.orgTree= []; $this.loadOrgTree($this.firstNode, $this.resolve); } } }else{ $this.$message({message: data.errorMsg,center: true,type: 'warning'}); } },function before(messageObj){ messageObj.setData($this.orgFormData); }) }, beforGetUser(messageObj){ if(this.nodeData){ messageObj.closeFlag = false; messageObj.setUriParam({"orgid": this.orgFormData.id}); }else{ messageObj.closeFlag = true; } }, resetOrgs(){ //重置提交表单 this.orgFormData.id = "", this.orgFormData.departmentNumber=""; this.orgFormData.parentDepartmentId=""; this.orgFormData.name= ""; this.orgFormData.youzbm= ""; this.orgFormData.jgyyjb= ""; this.orgFormData.jigolx= ""; this.orgFormData.levels= ""; this.orgFormData.zngwsj= ""; this.orgFormData.ynhbic= ""; this.orgFormData.yinhdm= ""; }, searchUser(){ this.$refs.userT.refresh(); }, resetUser(formName){ this.$refs[formName].resetFields(); }, //add by lujing@date20191106 关闭弹出框和取消按钮,重置树选中节点 closeAndResetTree(){ //关闭弹框 this.newOrgD == null; //add by lujing@date2019-10-17 重置树选中 this.openOrgDialog = false; var node = this.$refs.orgTree.getCurrentNode(); if(node){ this.$refs.orgTree.store.setCurrentNodeKey(null); } } } } </script> <style scoped lang="less"> .orgPage{ .btn-delete-hide { visibility: hidden; } .dialog-tree{ height:400px; overflow: auto; } } ::v-deep .el-card__body { height: calc(100% - 40px) } .tree-wrap { width: 100%; height: 100%; overflow-x: hidden; overflow-y: auto; } </style>