Browse Source

customerorg

master
pengjun 11 months ago
parent
commit
c1d55e3029
  1. 44
      src/components/customerOrg/customerOrgTree.vue

44
src/components/customerOrg/customerOrgTree.vue

@ -10,7 +10,7 @@
<el-tree :data="customerOrg.customerOrgTree" :props="treeprops" node-key="id" :filter-node-method="filterNode"
:style="'overflow: scroll;width:200px;height:' + (window.pageHeight < 600 ? 465 : window.pageHeight - 135) + 'px;'"
:default-expanded-keys="customerOrg.defaultExpandedKeys" @node-click="treeclick" highlight-current draggable
@allow-drag="allowDrag" @allow-drop="allowDrop" ref="customerOrgTree">
:allow-drag="allowDrag" :allow-drop="allowDrop" @node-drop="nodeDrop" ref="customerOrgTree">
<span class="custom-tree-node" slot-scope="{ node, data }">
<div>
<span class="treeicons">
@ -29,7 +29,7 @@
import { mapState, mapMutations } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { tcdate, deepCopy, reMadeOrgTree } from "../../utlis/proFunc";
import { getTreePids } from "../../utlis/tree";
import { getTreePids,getTreeAllChildIdsById } from "../../utlis/tree";
export default {
components: {},
@ -90,12 +90,46 @@ export default {
});
},
//
allowDrag(node) {
console.log('node', node)
return true
},
allowDrop(draggingNode, dropNode, type) {
console.log('draggingNode, dropNode, type', draggingNode, dropNode, type)
//
allowDrop(draggingNode, dropNode, type) {
if(type == 'inner') return false
if(!(!draggingNode.data.parentId && !dropNode.data.parentId)) return false
if(draggingNode.data.parentId != dropNode.data.parentId) return false
console.log('draggingNode, type', draggingNode, type)
console.log('dropNode, type', dropNode, type)
return true
},
//
nodeDrop(draggingNode, dropNode, dropType, ev) {
//console.log('draggingNode.data.parentId', draggingNode.data.id,draggingNode.data.parentId);
let body = {itemList:[]}
let childrenIds = []
if(draggingNode.data.parentId){
childrenIds = getTreeAllChildIdsById(this.customerOrg.customerOrgTree,'treeChildren','id',draggingNode.data.parentId)
childrenIds.forEach((e,i) => {
this.customerOrg.customerOrgTree.forEach((e,i) => {
body.itemList.push({id:e,displayOrder:i})
});
});
}else{
this.customerOrg.customerOrgTree.forEach((e,i) => {
body.itemList.push({id:e.id,displayOrder:i})
});
}
// console.log('body',body)
putapi('/api/app/customerorg/updatesortmany',body)
},

Loading…
Cancel
Save