| | |
| | | :disabled="disabled" |
| | | ></component> |
| | | </template> |
| | | |
| | | <ColFilter v-if="!isTotalTable" class="ml-auto" :columnList="colList" @change="colFilterChange" /> |
| | | <DisplayMode v-if="isTotalTable" class="ml-auto" :order="modeChangeOrder" v-model="showMode" @change="displayModeChange" /> |
| | | <DisplayMode v-if="isTotalTable" class="ml-auto" :order="modeChangeOrder" v-model="showMode" :displayModeTypeMap="displayModeTypeMap" @change="displayModeChange" /> |
| | | |
| | | <DisplayMode v-if="isMap" class="ml-auto" :order="modeChangeOrder2" :displayModeTypeMap="displayModeTypeMap2" v-model="showMode2" @change="displayModeChange2" /> |
| | | </div> |
| | | <div class="flex-auto flex-col" style="display: flex" v-show="showMode === DisplayModeType.List"> |
| | | <div class="flex-auto flex-col" style="display: flex" v-show="showMode === DisplayModeType.List && showMode2===DisplayModeType2.List"> |
| | | <div class="flex-auto" ref="containerRef" v-resize="resizeHandler" v-loading="queryLoading"> |
| | | <el-table |
| | | ref="tableRef" |
| | |
| | | /> |
| | | </div> |
| | | |
| | | <div class="flex-auto" v-if="showMode2 === DisplayModeType2.Map"> |
| | | <MapView :data="data"/> |
| | | </div> |
| | | |
| | | <div class="flex-auto" v-resize="debounceResizeChart" v-show="showMode === DisplayModeType.Chart"> |
| | | <div ref="chartRef" style="height: 25rem"></div> |
| | | </div> |
| | |
| | | import { ChartTypeEnum } from '../../../types'; |
| | | import { BORDER_COLOR, COL_HEADER_CELL_BG_COLOR, THICK_BORDER_WIDTH } from '../deviceLastValue/constants'; |
| | | import DisplayMode from '../recordSet/components/DisplayMode.vue'; |
| | | import { DisplayModeType } from '../recordSet/components/types'; |
| | | import { DisplayModeType, DisplayModeType2,displayModeTypeMap2,displayModeTypeMap } from '../recordSet/components/types'; |
| | | import { RecordSetParamsType, recordSetMapCom } from '../recordSet/types'; |
| | | import MapView from './map/Map.vue' |
| | | import InfoDetail from './infoDetail/InfoDetail.vue'; |
| | | import { curveQuery } from '/@/api/ai/chat'; |
| | | import ColFilter from '/@/components/table/colFilter/ColFilter.vue'; |
| | |
| | | const checkIsTotalTable = (propsData) => { |
| | | return propsData?.hasOwnProperty('agg_count_col') ?? false; |
| | | }; |
| | | |
| | | const isMap = computed(() => { |
| | | return props.data?.hasOwnProperty('map') ?? false; |
| | | |
| | | }); |
| | | |
| | | const isTotalTable = computed(() => checkIsTotalTable(props.data)); |
| | | |
| | |
| | | }); |
| | | }; |
| | | |
| | | // 地图模式展示 |
| | | const showMode2 = ref(DisplayModeType2.List); |
| | | const modeChangeOrder2 = [DisplayModeType2.List, DisplayModeType2.Map]; |
| | | |
| | | const displayModeChange2 = (val: DisplayModeType2) => { |
| | | if (val === DisplayModeType2.Map) { |
| | | //if (!chartInstance.value || needUpdateChart) { |
| | | //updateChart(); |
| | | //needUpdateChart = false; |
| | | //} |
| | | } |
| | | }; |
| | | defineExpose({ |
| | | updateAll, |
| | | updateCurrent, |