Browse Source

sort

master
pengjun 1 year ago
parent
commit
dcb8eb1f2b
  1. 8
      src/components/customerOrg/customerOrgTree.vue
  2. 64
      src/components/patientRegister/customerOrgTreeAll.vue
  3. 6
      src/utlis/proFunc.js

8
src/components/customerOrg/customerOrgTree.vue

@ -6,7 +6,7 @@
<div> <div>
<el-tree :data="customerOrg.customerOrgTree" :props="treeprops" node-key="id" :filter-node-method="filterNode" <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;'" :style="'overflow: scroll;width:200px;height:' + (window.pageHeight < 600 ? 465 : window.pageHeight - 135) + 'px;'"
:default-expanded-keys="customerOrg.defaultExpandedKeys" @node-contextmenu="nodeContextmenu"
:default-expanded-keys="customerOrg.defaultExpandedKeys"
@node-click="treeclick" highlight-current ref="customerOrgTree"> @node-click="treeclick" highlight-current ref="customerOrgTree">
<span class="custom-tree-node" slot-scope="{ node, data }"> <span class="custom-tree-node" slot-scope="{ node, data }">
<div> <div>
@ -116,12 +116,6 @@ export default {
}, },
//
nodeContextmenu(event, data, node, ids) {
console.log('event,data,node,ids', event, data, node, ids)
},
// //
filterNode(value, data) { filterNode(value, data) {
//console.log(value,data) //console.log(value,data)

64
src/components/patientRegister/customerOrgTreeAll.vue

@ -4,8 +4,9 @@
<el-input placeholder="输入关键字进行过滤" v-model="filterText" size="small" /> <el-input placeholder="输入关键字进行过滤" v-model="filterText" size="small" />
</div> </div>
<div> <div>
<el-tree :style="'overflow: scroll;height:' + (window.pageHeight < 600 ? 465 : window.pageHeight - 135) + 'px;width:200px;'"
:data="patientRegister.customerOrgTreeAll" :props="treeprops" node-key="id"
<el-tree
:style="'overflow: scroll;height:' + (window.pageHeight < 600 ? 465 : window.pageHeight - 135) + 'px;width:200px;'"
:data="patientRegister.customerOrgTreeAll" :props="treeprops" node-key="id" @node-contextmenu="nodeContextmenu"
:filter-node-method="filterNode" @node-click="treeclick" highlight-current ref="customerOrgTree"> :filter-node-method="filterNode" @node-click="treeclick" highlight-current ref="customerOrgTree">
<span class="custom-tree-node" slot-scope="{ node, data }"> <span class="custom-tree-node" slot-scope="{ node, data }">
<div> <div>
@ -28,7 +29,7 @@
<script> <script>
import { mapState } from "vuex"; import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api"; import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { tcdate,deepCopy,reMadeOrgTree } from "../../utlis/proFunc";
import { tcdate, deepCopy, reMadeOrgTree } from "../../utlis/proFunc";
export default { export default {
components: {}, components: {},
data() { data() {
@ -42,14 +43,14 @@ export default {
}, // }, //
LocalConfig: { LocalConfig: {
patientRegister: { patientRegister: {
dispCustomerOrgCode:'N', // -- customerOrgCode
dispCustomerOrgCode: 'N', // -- customerOrgCode
} }
} }
}; };
}, },
//<el-tree :data="$store.state.customerOrg.customerOrgTree" :props="$store.state.customerOrg.treeprops" @node-click="treeclick"></el-tree> //<el-tree :data="$store.state.customerOrg.customerOrgTree" :props="$store.state.customerOrg.treeprops" @node-click="treeclick"></el-tree>
computed: { computed: {
...mapState(["window", "dict","dataTransOpts","customerOrg", "patientRegister"]),
...mapState(["window", "dict", "dataTransOpts", "customerOrg", "patientRegister"]),
}, },
// //
created() { created() {
@ -74,8 +75,8 @@ export default {
getCustomerOrgTree() { getCustomerOrgTree() {
getapi("/api/app/customerorg/getbycodeall").then((res) => { getapi("/api/app/customerorg/getbycodeall").then((res) => {
// console.log("res.data", res.data); // console.log("res.data", res.data);
if (res.code > -1){
this.patientRegister.customerOrgTreeAll = reMadeOrgTree(deepCopy(res.data),this.LocalConfig.patientRegister.dispCustomerOrgCode);
if (res.code > -1) {
this.patientRegister.customerOrgTreeAll = reMadeOrgTree(deepCopy(res.data), this.LocalConfig.patientRegister.dispCustomerOrgCode);
// tcdate(this.patientRegister.customerOrgTreeAll) // tcdate(this.patientRegister.customerOrgTreeAll)
} }
}); });
@ -95,6 +96,52 @@ export default {
// }); // });
// }, // },
//
nodeContextmenu(event, data, node, ids) {
// console.log('event,data,node,ids', event, data, node, ids)
if (data.id == this.dict.personOrgId) return
let items = [
{
label: "置顶",
onClick: () => {
this.treeSort(data, 1);
},
},
{
label: "置底",
onClick: () => {
this.treeSort(data, 2);
},
}
] //
this.$contextmenu({
items,
event,
//x: event.clientX,
//y: event.clientY,
customClass: "custom-class",
zIndex: 3,
minWidth: 80,
});
return false;
},
//
treeSort(data, sortType) {
// if (data.parentId) {
// this.$message.warning({ showClose: true, message: "" })
// return
// }
// console.log('data,sortType',data,sortType)
putapi(`/api/app/customerorg/updatemanysort?id=${data.id}&SortType=${sortType}`).then(res => {
if (res.code > -1) {
this.getCustomerOrgTree()
}
})
},
// //
filterNode(value, data) { filterNode(value, data) {
//console.log(value,data) //console.log(value,data)
@ -130,7 +177,8 @@ export default {
font-size: 20px; font-size: 20px;
margin-right: 5px; margin-right: 5px;
} }
:deep .el-tree-node>.el-tree-node__children{
:deep .el-tree-node>.el-tree-node__children {
overflow: visible; overflow: visible;
} }
</style> </style>

6
src/utlis/proFunc.js

@ -19,10 +19,10 @@ function reMadeOrgTree(treeData,dispCustomerOrgCode){
}else{ }else{
e.label = e.displayName e.label = e.displayName
} }
if (e.treeChildren.length == 0) {
delete e.treeChildren
if (e.treeChildren && Array.isArray(e.treeChildren) && e.treeChildren.length > 0) {
e.treeChildren = reMadeOrgTree(e.treeChildren,dispCustomerOrgCode)
}else{ }else{
e.treeChildren = reMadeOrgTree(e.treeChildren)
delete e.treeChildren
} }
}) })
return treeData return treeData

Loading…
Cancel
Save