|
@@ -7,7 +7,7 @@
|
|
|
<el-option v-for="item in key1Data" :key="item.id" :label="item.name" :value="item.id" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
- <hc-lazy-tree :h-props="treeProps" @load="treeLoadNode" />
|
|
|
+ <hc-lazy-tree :h-props="treeProps" tree-key="id" :auto-expand-keys="TreeAutoExpandKeys" @load="treeLoadNode" @nodeTap="treeNodeTap" />
|
|
|
</hc-new-card>
|
|
|
</div>
|
|
|
<div :id="`hc_table_card_${uuid}`" class="flex-1">
|
|
@@ -56,7 +56,13 @@
|
|
|
import { nextTick, onMounted, ref } from 'vue'
|
|
|
import HcAddModal from './components/middlepay/addModal.vue'
|
|
|
import HcDetailsModal from './components/middlepay/detailsModal.vue'
|
|
|
-import { getRandom } from 'js-fast-way'
|
|
|
+import { arrToId, getArrValue, getObjValue, getRandom } from 'js-fast-way'
|
|
|
+import unitApi from '~api/project/debit/contract/unit.js'
|
|
|
+import { getStoreValue, setStoreValue } from '~src/utils/storage'
|
|
|
+import { useAppStore } from '~src/store'
|
|
|
+const useAppState = useAppStore()
|
|
|
+const projectId = ref(useAppState.getProjectId || '')
|
|
|
+const contractId = ref(useAppState.getContractId || '')
|
|
|
|
|
|
defineOptions({
|
|
|
name: 'DebitPayAdminMiddlepay',
|
|
@@ -97,27 +103,31 @@ const searchKey1Click = () => {
|
|
|
|
|
|
//数据格式
|
|
|
const treeProps = {
|
|
|
- label: 'name',
|
|
|
+ label: 'nodeName',
|
|
|
children: 'children',
|
|
|
- isLeaf: 'leaf',
|
|
|
+ isLeaf: 'notExsitChild',
|
|
|
}
|
|
|
-
|
|
|
+const TreeAutoExpandKeys = ref(getStoreValue('wbsTreeExpandKeys') || [])
|
|
|
//懒加载的数据
|
|
|
-const treeLoadNode = ({ level }, resolve) => {
|
|
|
- if (level === 0) {
|
|
|
- return resolve([{ name: 'region' }])
|
|
|
- }
|
|
|
- if (level > 3) {
|
|
|
- return resolve([])
|
|
|
+const treeLoadNode = async ({ node, item, level }, resolve) => {
|
|
|
+ let id = 0
|
|
|
+ if (level !== 0) {
|
|
|
+ const nodeData = getObjValue(item)
|
|
|
+ id = nodeData?.id || ''
|
|
|
}
|
|
|
- setTimeout(() => {
|
|
|
- resolve([
|
|
|
- { name: 'leaf', leaf: true },
|
|
|
- { name: 'zone' },
|
|
|
- ])
|
|
|
- }, 500)
|
|
|
-}
|
|
|
+ //获取数据
|
|
|
+ const { error, code, data } = await unitApi.lazyTree({
|
|
|
+ contractId: contractId.value,
|
|
|
+ id:id,
|
|
|
+ })
|
|
|
|
|
|
+ resolve(getArrValue(data))
|
|
|
+}
|
|
|
+const treeNodeTap = ({ node, data, keys }) => {
|
|
|
+ console.log('点击树')
|
|
|
+ TreeAutoExpandKeys.value = keys || []
|
|
|
+ setStoreValue('wbsTreeExpandKeys', keys)
|
|
|
+}
|
|
|
//分页
|
|
|
const pageChange = ({ current, size }) => {
|
|
|
searchForm.value.current = current
|