diff --git a/apps/web-antd/src/api/property/energyManagement/meterInfo/index.ts b/apps/web-antd/src/api/property/energyManagement/meterInfo/index.ts index 108a36a7..b3c505df 100644 --- a/apps/web-antd/src/api/property/energyManagement/meterInfo/index.ts +++ b/apps/web-antd/src/api/property/energyManagement/meterInfo/index.ts @@ -1,10 +1,9 @@ -import type { MeterInfoVO, MeterInfoForm, MeterInfoQuery } from './model'; +import type { MeterInfoVO, MeterInfoForm, MeterInfoQuery } from './model' -import type { ID, IDS } from '#/api/common'; -import type { PageResult } from '#/api/common'; +import type { ID, IDS, PageResult, TreeNode } from '#/api/common'; -import { commonExport } from '#/api/helper'; -import { requestClient } from '#/api/request'; +import { commonExport } from '#/api/helper' +import { requestClient } from '#/api/request' /** * 查询水电气列表 @@ -12,7 +11,7 @@ import { requestClient } from '#/api/request'; * @returns 水电气列表 */ export function meterInfoList(params?: MeterInfoQuery) { - return requestClient.get>('/property/meterInfo/list', { params }); + return requestClient.get>('/property/meterInfo/list', { params }) } /** @@ -21,7 +20,7 @@ export function meterInfoList(params?: MeterInfoQuery) { * @returns 水电气列表 */ export function meterInfoExport(params?: MeterInfoQuery) { - return commonExport('/property/meterInfo/export', params ?? {}); + return commonExport('/property/meterInfo/export', params ?? {}) } /** @@ -30,7 +29,7 @@ export function meterInfoExport(params?: MeterInfoQuery) { * @returns 水电气详情 */ export function meterInfoInfo(id: ID) { - return requestClient.get(`/property/meterInfo/${id}`); + return requestClient.get(`/property/meterInfo/${id}`) } /** @@ -39,7 +38,7 @@ export function meterInfoInfo(id: ID) { * @returns void */ export function meterInfoAdd(data: MeterInfoForm) { - return requestClient.postWithMsg('/property/meterInfo', data); + return requestClient.postWithMsg('/property/meterInfo', data) } /** @@ -48,7 +47,7 @@ export function meterInfoAdd(data: MeterInfoForm) { * @returns void */ export function meterInfoUpdate(data: MeterInfoForm) { - return requestClient.putWithMsg('/property/meterInfo', data); + return requestClient.putWithMsg('/property/meterInfo', data) } /** @@ -57,5 +56,14 @@ export function meterInfoUpdate(data: MeterInfoForm) { * @returns void */ export function meterInfoRemove(id: ID | IDS) { - return requestClient.deleteWithMsg(`/property/meterInfo/${id}`); + return requestClient.deleteWithMsg(`/property/meterInfo/${id}`) } + +/** + * 查询水电气树 + * @param level + * @returns 水电气树 + */ +export function queryTree(meterType: number | string) { + return requestClient.get[]>(`/property/meterInfo/tree/${meterType}`) +} \ No newline at end of file diff --git a/apps/web-antd/src/views/property/energyManagement/electricEnergy/components/floor-tree.vue b/apps/web-antd/src/views/property/energyManagement/electricEnergy/components/floor-tree.vue index a09da13c..0be24cfd 100644 --- a/apps/web-antd/src/views/property/energyManagement/electricEnergy/components/floor-tree.vue +++ b/apps/web-antd/src/views/property/energyManagement/electricEnergy/components/floor-tree.vue @@ -4,8 +4,8 @@ import type { PropType } from 'vue' import { onMounted, ref } from 'vue' import { handleNode } from '@vben/utils' import { Empty, Skeleton, Tree } from 'ant-design-vue' -import { communityTree } from "#/api/property/community" -import type { CommunityVO } from "#/api/property/community/model" +import { queryTree } from "#/api/property/energyManagement/meterInfo" +import type { TreeNode } from '#/api/common' defineOptions({ inheritAttrs: false }) @@ -31,26 +31,31 @@ const searchValue = defineModel('searchValue', { default: '', }) -type TreeArray = CommunityVO[] -const treeArray = ref([]) +const treeArray = ref([]) /** 骨架屏加载 */ const showTreeSkeleton = ref(true) async function loadTree() { showTreeSkeleton.value = true searchValue.value = '' - selectFloorId.value = [] - const ret = await communityTree(3) - const splitStr = '/' - handleNode(ret, 'label', splitStr, function (node: any) { - if (node.level != 3) { - node.disabled = true - } - }) + const ret = await queryTree(1) + handleNode(ret, 3) treeArray.value = ret showTreeSkeleton.value = false } +function handleNode(nodes: any[], level: number) { + nodes.forEach((node) => { + node.key = node.id + if (node.level < level) { + node.disabled = true + } + if (node.children) { + handleNode(node.children, level) + } + }) +} + onMounted(loadTree); @@ -59,8 +64,7 @@ onMounted(loadTree);
-