<template>
|
<LogicManageContainerV2
|
type="select-list"
|
:defaultSelectID="defaultSelectID"
|
:selectFolderIcon="(_, data) => data.LogicType !== LOGIC_SITE_CODE"
|
:select="{
|
label: '泵站',
|
requestApi: GetLogicTreeListByPolicyIDStd,
|
code: LOGIC_SITE_CODE,
|
treeProps,
|
}"
|
:list="{
|
label: '测点组',
|
requestApi: GetAllPointGroup,
|
isFlatTree: true,
|
}"
|
:defaultExpandAll="true"
|
:folderIcon="() => false"
|
:contentRef="contentRef"
|
:req="request"
|
:expandOnClickNode="false"
|
@listClick="listClick"
|
@selectChange="selectChange"
|
>
|
<template #main="{ listNode, selectNode }">
|
<slot name="main" :listNode="listNode" :selectNode="selectNode" :selectTreeProps="treeProps"> </slot>
|
</template>
|
</LogicManageContainerV2>
|
</template>
|
|
<script setup lang="ts">
|
import LogicManageContainerV2 from '/@/projectCom/components/manage/LogicManageContainerV2.vue';
|
import { GetLogicTreeListByPolicyIDStd } from '/@/api/phm/logicTreeStd';
|
import request from '/@/utils/request';
|
import { GetAllPointGroup } from '/@/api/point/monitor/monitor_point';
|
|
import { LOGIC_SITE_CODE } from '/@/constants';
|
import { nextTick, ref } from 'vue';
|
const props = defineProps({
|
contentRef: {
|
type: Object,
|
},
|
});
|
const emits = defineEmits<{
|
(event: 'selectChange', data): void;
|
(event: 'listClick', data): void;
|
}>();
|
const defaultSelectID = ref(window.moduleConfig.comprehensive.logicSite.defaultSelectID);
|
|
const selectChange = (data) => {
|
window.moduleConfig.comprehensive.logicSite.defaultSelectID = data[treeProps.id];
|
defaultSelectID.value = data[treeProps.id];
|
emits('selectChange', data);
|
};
|
|
const listClick = (data) => {
|
nextTick(() => {
|
props.contentRef?.getTableData?.(true);
|
});
|
emits('listClick', data);
|
};
|
const treeProps = {
|
id: 'LogicID',
|
label: 'Name',
|
children: 'Children',
|
};
|
</script>
|
<style scoped lang="scss"></style>
|