<template>
|
<div class="m-4 mr-0 overflow-hidden bg-white" style="height: 800px;">
|
<TigerTree title="仓库" toolbar search checkable :clickRowToExpand="false" :treeData="treeData" :disabled="disabledTree"
|
:renderIcon="createIcon" :fieldNames="{ key: 'id', title: 'houseName' }" @select="handleSelect"
|
ref="treeRef" />
|
<!-- <button :onClick="aa" style="
|
position: absolute;
|
left: 11px;
|
top: 15px;
|
font-size: 22px;
|
|
background-color: transparent;">+</button> -->
|
</div>
|
</template>
|
<script lang="ts">
|
import { defineComponent, onMounted, ref, unref } from 'vue';
|
import { TigerTree, TreeItem, TreeActionType } from '/@/components/TigerTree';
|
import { getTreeList } from '/@/api/tigerapi/wms/inventory';
|
import { watch } from 'vue';
|
export default defineComponent({
|
name: 'HouseTree',
|
components: { TigerTree },
|
emits: ['select', 'success', 'gettree'],
|
props: {
|
disabledTree: {
|
type: Number,
|
default: 0,
|
}
|
},
|
setup(props, { emit }) {
|
const treeData = ref<TreeItem[]>();
|
const treeRef = ref<Nullable<TreeActionType>>(null);
|
var disabledTree = ref(false);
|
|
function getTree() {
|
const tree = unref(treeRef);
|
if (!tree) {
|
throw new Error('tree is null!');
|
}
|
return tree;
|
}
|
async function GetTree() {
|
const keys = getTree().getCheckedKeys();
|
|
const node = getTree().getSelectedNode(keys[0]);
|
|
//createMessage.success(node !== null ? JSON.stringify(node) : null);
|
}
|
async function fetch() {
|
const param={
|
ID:'',
|
AUTH_ORG:'',
|
HOUSE_NAME:'',
|
HOUSE_CODE:'',
|
PARENT_HOUSE:'',
|
CREATE_TIME:'',
|
TYPE:''
|
}
|
treeData.value = (await getTreeList(param)) as unknown as TreeItem[];
|
console.log(treeData.value);
|
}
|
|
function handleSelect(keys: any[]) {
|
console.log(treeData.value)
|
// const keyss = getTree().getSelectedKeys();
|
// const node = getTree().getSelectedNode(keyss[0]);
|
// emit('checkedKeys',node)
|
//alert(keys[0])
|
emit('select', keys[0]);
|
}
|
onMounted(() => {
|
emit('gettree', getTree());
|
fetch();
|
});
|
watch(
|
() => props.disabledTree,
|
(v) => {
|
if(v!=0){
|
disabledTree.value=true
|
}
|
},
|
);
|
function handleSuccess({ isUpdate, values }) {
|
fetch();
|
};
|
|
// async function GetORG_CODE(params:string) {
|
// var org = await getWHList(params)
|
// return org[0].ORG_CODE
|
// }
|
function createIcon({ houseType }) {
|
if (houseType === 'Warehouse') {
|
return 'warehouse|svg';
|
}
|
if (houseType === 'Region') {
|
return 'Region|svg';
|
}
|
if (houseType === 'Shelf') {
|
return 'Shelf|svg';
|
}
|
return '';
|
}
|
return {
|
treeData,
|
treeRef,
|
handleSelect,
|
handleSuccess,
|
//GetORG_CODE,
|
createIcon,
|
getTree,
|
GetTree,
|
disabledTree,
|
props
|
};
|
},
|
});
|
</script>
|