diff --git a/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.ts b/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.ts index e534ad7..def22ce 100644 --- a/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.ts +++ b/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.ts @@ -4,6 +4,7 @@ import { TopAlarmsConfig } from './index' import dataJson from './data.json' export const option = { sceneCode: 'T04', + componentIndexKey: "a", dateTime: { selectValue: 'day', dataset: [ @@ -31,7 +32,7 @@ export const option = { }, dataset: dataJson.source, - title: '未处置报警数TOP5', + titleText: '未处置报警数TOP5', titleColor: '#eee', titleSize: 16, rankColor: '#5AA1AD', diff --git a/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.vue b/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.vue index 40b2a89..4957b77 100644 --- a/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.vue +++ b/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/config.vue @@ -5,6 +5,11 @@ + + + + + diff --git a/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/index.vue b/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/index.vue index f66fe10..4c93f3e 100644 --- a/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/index.vue +++ b/src/packages/components/Charts/HazardousChemicalsSpace/TopAlarmsHaz/index.vue @@ -12,7 +12,7 @@ marginTop: option.paddingY + 'px', marginLeft: option.paddingX + 'px', letterSpacing: option.letterSpacing + 'px' - }">{{ option.title }} + }">{{ option.titleText }} @@ -56,7 +56,8 @@ import { option as configOption } from './config' import SmallBorder from '../SmallBorder/index.vue' import CustomSelect from './select.vue' import axiosInstance from '@/api/axios' - +import { TopAlarmsConfig } from './index' +import axios from 'axios' const props = defineProps({ chartConfig: { type: Object as PropType<{ option: typeof configOption }>, @@ -85,17 +86,42 @@ const calculateWidth = (value: number) => { const firstRowValue = displayData.value[0].alarmCount return `${(value / firstRowValue) * 100}%` // 当前行的alarmCount/第一行的alarmCount值 } +const key = TopAlarmsConfig.key; +const getStaticData = async (key: string, componentIndexKey: string, sceneCode: string) => { + let dataTemp = option.value.dataset + try { + const response = await axios.get('/staticData/static.json'); + if (response.data) { + console.log('静态数据:', response.data); + dataTemp = response.data[sceneCode]?.[key]?.[componentIndexKey]; + if (!dataTemp) { + console.warn(`Data not found for sceneCode: ${sceneCode}, key: ${key}, componentIndexKey: ${componentIndexKey}`); + } + } + console.log("datatemp:", dataTemp) + + } catch (err) { + console.error('获取static.json失败:', err); + } + return dataTemp +} // 新增:API调用函数 const fetchCorpsData = async (option: string) => { try { - const response: any = await axiosInstance.get(`/awjt/screen/corpsFive/${option}/${props.chartConfig.option.sceneCode}`, { baseURL: '' }) - if (response.state === true) { - displayData.value = response.value || [] - } else { - console.error('API调用失败:', response) - displayData.value = [] - } + const response: any = + // await axiosInstance.get(`/awjt/screen/corpsFive/${option}/${props.chartConfig.option.sceneCode}`, { baseURL: '' }) + + // if (response.state === true) { + // displayData.value = response.value || [] + // } else { + // console.error('API调用失败:', response) + // displayData.value = [] + // } + // 使用静态数据 + await getStaticData(key, props.chartConfig.option.componentIndexKey, props.chartConfig.option.sceneCode); + displayData.value = response['source'] + props.chartConfig.option.titleText = response['titleText'] } catch (error) { console.error('获取企业数据失败:', error) displayData.value = [] @@ -112,6 +138,9 @@ const handleSelectChange = async (value: any) => { await fetchCorpsData(value) } + + + // 新增:组件挂载时初始化数据 onMounted(async () => { const initialValue = props.chartConfig.option.dateTime.selectValue || 'day' diff --git a/src/packages/components/Charts/MyComponents/ParkingScene/config.ts b/src/packages/components/Charts/MyComponents/ParkingScene/config.ts index 8f40802..5431c17 100644 --- a/src/packages/components/Charts/MyComponents/ParkingScene/config.ts +++ b/src/packages/components/Charts/MyComponents/ParkingScene/config.ts @@ -5,8 +5,9 @@ import dataJson from './data.json' export const option = { sceneCode: "", + componentIndexKey: "", dataset: dataJson.source, - title: '场景分布概况', + titleText: '场景分布概况', titleColor: '#eee', titleSize: 16, linkColor: '#00E5FF', diff --git a/src/packages/components/Charts/MyComponents/ParkingScene/config.vue b/src/packages/components/Charts/MyComponents/ParkingScene/config.vue index ac0a8a3..4957b77 100644 --- a/src/packages/components/Charts/MyComponents/ParkingScene/config.vue +++ b/src/packages/components/Charts/MyComponents/ParkingScene/config.vue @@ -1,32 +1,25 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + +