From c6db32eecd5bf9ae0539f14c59e04a9ea96717ad Mon Sep 17 00:00:00 2001 From: Free-sss <630042479@qq.com> Date: Wed, 3 Sep 2025 12:05:17 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat=E3=80=90=E8=83=BD=E6=BA=90=E5=A4=A7?= =?UTF-8?q?=E5=B1=8F=E3=80=91=EF=BC=9A=E6=96=B0=E5=A2=9E=EF=BC=88=E4=BE=9B?= =?UTF-8?q?=E6=B0=B4=E7=B3=BB=E7=BB=9F=E3=80=81=E4=BE=9B=E9=A3=8E=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=EF=BC=89=E6=9C=AA=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AirSupplySystem/config.ts | 18 ++ .../AirSupplySystem/config.vue | 16 ++ .../AirSupplySystem/data.json | 57 ++++ .../IntegratedEnergy/AirSupplySystem/index.ts | 14 + .../AirSupplySystem/index.vue | 250 ++++++++++++++++++ .../WaterSupplySystem/config.ts | 183 +++++++++++++ .../WaterSupplySystem/config.vue | 16 ++ .../WaterSupplySystem/data.json | 57 ++++ .../WaterSupplySystem/index.ts | 14 + .../WaterSupplySystem/index.vue | 247 +++++++++++++++++ .../Charts/IntegratedEnergy/index.ts | 4 +- 11 files changed, 875 insertions(+), 1 deletion(-) create mode 100644 src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.ts create mode 100644 src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.vue create mode 100644 src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/data.json create mode 100644 src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.ts create mode 100644 src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.vue create mode 100644 src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.ts create mode 100644 src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.vue create mode 100644 src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/data.json create mode 100644 src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.ts create mode 100644 src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.vue diff --git a/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.ts b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.ts new file mode 100644 index 0000000..a73730e --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.ts @@ -0,0 +1,18 @@ +import { echartOptionProfixHandle, PublicConfigClass } from '@/packages/public' +import { AirSupplySystemConfig } from './index' +import { CreateComponentType } from '@/packages/index.d' +import cloneDeep from 'lodash/cloneDeep' +import dataJson from './data.json' +import * as echarts from 'echarts' + +export const includes = [] + +const option = { +}; + +export default class Config extends PublicConfigClass implements CreateComponentType { + public key: string = AirSupplySystemConfig.key + public chartConfig = cloneDeep(AirSupplySystemConfig) + // 图表配置项 + public option = echartOptionProfixHandle(option, includes) +} diff --git a/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.vue b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.vue new file mode 100644 index 0000000..9bcaaeb --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/config.vue @@ -0,0 +1,16 @@ + + diff --git a/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/data.json b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/data.json new file mode 100644 index 0000000..d85cca9 --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/data.json @@ -0,0 +1,57 @@ +{ + "dimensions": [ + "month", + "value" + ], + "source": [ + { + "month": "1月", + "value": 88 + }, + { + "month": "2月", + "value": 54 + }, + { + "month": "3月", + "value": 66 + }, + { + "month": "4月", + "value": 54 + }, + { + "month": "5月", + "value": 89 + }, + { + "month": "6月", + "value": 67 + }, + { + "month": "7月", + "value": 54 + }, + { + "month": "8月", + "value": 89 + }, + { + "month": "9月", + "value": 54 + }, + { + "month": "10月", + "value": 89 + }, + { + "month": "11月", + "value": 54 + }, + { + "month": "12月", + "value": 67 + } + ], + "unit": "万kwh" +} \ No newline at end of file diff --git a/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.ts b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.ts new file mode 100644 index 0000000..548e3d8 --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.ts @@ -0,0 +1,14 @@ +import { ConfigType, PackagesCategoryEnum, ChartFrameEnum } from '@/packages/index.d' +import { ChatCategoryEnum, ChatCategoryEnumName } from '../../index.d' + +export const AirSupplySystemConfig: ConfigType = { + key: 'AirSupplySystem', + chartKey: 'VAirSupplySystem', + conKey: 'VCAirSupplySystem', + title: '供风系统', + category: ChatCategoryEnum.IntegratedEnergy, + categoryName: ChatCategoryEnumName.IntegratedEnergy, + package: PackagesCategoryEnum.CHARTS, + chartFrame: ChartFrameEnum.ECHARTS, + image: 'AirSupplySystem.png' +} \ No newline at end of file diff --git a/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.vue b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.vue new file mode 100644 index 0000000..4bd9c15 --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/AirSupplySystem/index.vue @@ -0,0 +1,250 @@ + + + + + \ No newline at end of file diff --git a/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.ts b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.ts new file mode 100644 index 0000000..0fce35b --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.ts @@ -0,0 +1,183 @@ +import { echartOptionProfixHandle, PublicConfigClass } from '@/packages/public' +import { WaterSupplySystemConfig } from './index' +import { CreateComponentType } from '@/packages/index.d' +import cloneDeep from 'lodash/cloneDeep' +import dataJson from './data.json' +import * as echarts from 'echarts' + +export const includes = ['title'] +// 基于准备好的dom,初始化echarts实例 +// var myChart = echarts.init(document.getElementById('main')); + + +const option = { + // 提示框配置 + tooltip: { + trigger: 'axis', + axisPointer: { + type: 'shadow' + }, + backgroundColor: 'rgba(0, 0, 0, 0.8)', + borderColor: '#00ffff', + textStyle: { + color: '#ffffff' + } + }, + dataset: dataJson, + // 网格配置 + grid: { + left: '3%', + right: '4%', + bottom: '3%', + top: '15%', + containLabel: true + }, + + // X轴配置 + xAxis: { + type: 'category', + axisLine: { + lineStyle: { + color: '#eee' + } + }, + axisTick: { + show: false + }, + // + axisLabel: { + color: '#80b0c4', + interval: 0, + fontSize: 9, + margin: 20 + } + + }, + + // Y轴配置 + yAxis: { + type: 'value', + min: 0, + interval: 25, + axisLine: { + show: false, + + }, + axisTick: { + show: false + }, + axisLabel: { + color: 'rgba(255, 255, 255, 0.8)', + formatter: '{value}' + }, + splitLine: { + lineStyle: { + color: 'rgba(255, 255, 255, 0.1)', + type: 'solid' + } + } + }, + + // 数据系列配置 + series: [{ + + name: '能源消耗', + type: 'bar', + itemStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 1, 0, [ + { offset: 0, color: '#1d7b7b' }, // 更暗的左侧颜色,增强阴影效果 + { offset: 0.2, color: '#196b6b' }, // 左侧过渡色 + { offset: 0.7, color: '#00cccc' }, // 中间主色 + { offset: 0.8, color: '#33dddd' }, // 右侧过渡色 + { offset: 1, color: '#66ffff' } // 右侧亮色,增强高光效果 + ]), + // 添加更强的3D效果 + shadowBlur: 20, + shadowColor: 'rgba(0, 0, 0, 0.7)', + shadowOffsetX: -5, + shadowOffsetY: 5, + borderRadius: [0, 0, 6, 6], + borderWidth: 0, + + }, + emphasis: { + itemStyle: { + shadowColor: 'rgba(0, 255, 255, 0.9)', + shadowBlur: 25, + shadowOffsetX: -8, + shadowOffsetY: 8 + } + }, + // })), + + barWidth: '40%', + + // 3D圆柱体效果 + roundCap: true + }, { + name: '顶部圆', + type: 'pictorialBar', + z: 3, + symbolSize: ['57%', '10'], + symbolOffset: [0.1, -5], + symbolPosition: "end", + itemStyle: { + color: "#40ECEC", + }, + emphasis: { + itemStyle: { + shadowColor: 'rgba(0, 255, 255, 0.8)', + shadowBlur: 12 + } + } + }, + ], + + // 图形元素配置 + graphic: [{ + // 单位标注 + type: 'text', + left: '3%', + top: '3%', + style: { + text: '单位:' + dataJson.unit, + fontSize: 12, + fill: 'rgba(255, 255, 255, 0.7)', + } + }, { + // 左侧阴影效果 + type: 'rect', + left: 0, + top: '15%', + width: '25%', + bottom: '3%', + style: { + fill: new echarts.graphic.LinearGradient(0, 0, 1, 0, [ + { offset: 0, color: 'rgba(0, 0, 0, 0.8)' }, // 更强的左侧阴影 + { offset: 1, color: 'rgba(0, 0, 0, 0)' } + ]) + }, + z: -1 + }, { + // 底部阴影效果 + type: 'rect', + left: '3%', + right: '4%', + bottom: '0', + height: '10%', + style: { + fill: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { offset: 0, color: 'rgba(0, 0, 0, 0)' }, + { offset: 1, color: 'rgba(0, 0, 0, 0.6)' } // 底部阴影 + ]) + }, + z: -1 + }] +}; + +export default class Config extends PublicConfigClass implements CreateComponentType { + public key: string = WaterSupplySystemConfig.key + public chartConfig = cloneDeep(WaterSupplySystemConfig) + // 图表配置项 + public option = echartOptionProfixHandle(option, includes) +} diff --git a/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.vue b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.vue new file mode 100644 index 0000000..9bcaaeb --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/config.vue @@ -0,0 +1,16 @@ + + diff --git a/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/data.json b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/data.json new file mode 100644 index 0000000..d85cca9 --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/data.json @@ -0,0 +1,57 @@ +{ + "dimensions": [ + "month", + "value" + ], + "source": [ + { + "month": "1月", + "value": 88 + }, + { + "month": "2月", + "value": 54 + }, + { + "month": "3月", + "value": 66 + }, + { + "month": "4月", + "value": 54 + }, + { + "month": "5月", + "value": 89 + }, + { + "month": "6月", + "value": 67 + }, + { + "month": "7月", + "value": 54 + }, + { + "month": "8月", + "value": 89 + }, + { + "month": "9月", + "value": 54 + }, + { + "month": "10月", + "value": 89 + }, + { + "month": "11月", + "value": 54 + }, + { + "month": "12月", + "value": 67 + } + ], + "unit": "万kwh" +} \ No newline at end of file diff --git a/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.ts b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.ts new file mode 100644 index 0000000..b457cb1 --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.ts @@ -0,0 +1,14 @@ +import { ConfigType, PackagesCategoryEnum, ChartFrameEnum } from '@/packages/index.d' +import { ChatCategoryEnum, ChatCategoryEnumName } from '../../index.d' + +export const WaterSupplySystemConfig: ConfigType = { + key: 'WaterSupplySystem', + chartKey: 'VWaterSupplySystem', + conKey: 'VCWaterSupplySystem', + title: '供水系统', + category: ChatCategoryEnum.IntegratedEnergy, + categoryName: ChatCategoryEnumName.IntegratedEnergy, + package: PackagesCategoryEnum.CHARTS, + chartFrame: ChartFrameEnum.ECHARTS, + image: 'WaterSupplySystem.png' +} \ No newline at end of file diff --git a/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.vue b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.vue new file mode 100644 index 0000000..25df5c6 --- /dev/null +++ b/src/packages/components/Charts/IntegratedEnergy/WaterSupplySystem/index.vue @@ -0,0 +1,247 @@ + + + + + \ No newline at end of file diff --git a/src/packages/components/Charts/IntegratedEnergy/index.ts b/src/packages/components/Charts/IntegratedEnergy/index.ts index 62bb595..4072d5b 100644 --- a/src/packages/components/Charts/IntegratedEnergy/index.ts +++ b/src/packages/components/Charts/IntegratedEnergy/index.ts @@ -1,5 +1,7 @@ import { EnergyOverviewConfig } from "./EnergyOverview" import { EnergyConsumptionTrendConfig } from "./EnergyConsumptionTrend" +import { WaterSupplySystemConfig } from "./WaterSupplySystem" +import { AirSupplySystemConfig } from './AirSupplySystem' export default [ - EnergyOverviewConfig, EnergyConsumptionTrendConfig + EnergyOverviewConfig, EnergyConsumptionTrendConfig, WaterSupplySystemConfig, AirSupplySystemConfig ] \ No newline at end of file From 40a1a836d7ff6227a08fc16b48900bd172fa1cac Mon Sep 17 00:00:00 2001 From: Free-sss <630042479@qq.com> Date: Wed, 3 Sep 2025 14:50:26 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat=EF=BC=9A=E6=96=B0=E5=A2=9E=E5=9C=BA?= =?UTF-8?q?=E6=99=AFID=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConfinedSpace/AlarmNowList/config.ts | 1 + .../ConfinedSpace/AlarmNowList/config.vue | 40 +++++++++---------- .../ConfinedSpace/AlarmNowList/data.json | 12 +++--- .../ConfinedSpace/AlarmNowList/index.vue | 3 +- .../FiniteSpatialDistribution/config.ts | 4 +- .../FiniteSpatialDistribution/config.vue | 7 ++++ .../Charts/ConfinedSpace/Map/config.ts | 3 +- .../Charts/ConfinedSpace/Map/config.vue | 20 +++++++++- .../Charts/ConfinedSpace/Map/index.vue | 36 ++++++++--------- .../ConfinedSpace/PieCircleCommen/config.ts | 1 + .../ConfinedSpace/PieCircleCommen/config.vue | 7 ++++ .../ConfinedSpace/PieCircleCommen/data.json | 16 +------- .../ConfinedSpace/PieCircleCommen/index.vue | 2 +- .../Charts/ConfinedSpace/videoCheck/config.ts | 1 + .../ConfinedSpace/videoCheck/config.vue | 7 ++++ .../Charts/ConfinedSpace/videoCheck/index.vue | 4 +- .../AlarmListHazC/config.ts | 1 + .../AlarmListHazC/config.vue | 5 +++ .../AlarmListHazC/index.vue | 6 +-- .../PieCenterHaz/config.ts | 3 +- .../PieCenterHaz/config.vue | 7 ++++ .../PieCenterHaz/index.vue | 2 +- .../yushiVideoHaz/config.ts | 1 + .../yushiVideoHaz/config.vue | 7 ++++ .../MyComponents/DeviceStatus/config.ts | 1 + .../MyComponents/DeviceStatus/config.vue | 7 ++++ .../MyComponents/ParkingScene/config.ts | 1 + .../MyComponents/ParkingScene/config.vue | 15 +++++-- 28 files changed, 143 insertions(+), 77 deletions(-) diff --git a/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.ts b/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.ts index bf3a7e4..3c67dcb 100644 --- a/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.ts +++ b/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.ts @@ -16,6 +16,7 @@ export const styleConfig = { } } export const option = { + secneID: '01', dataset: dataJson, rowNum: 4, waitTime: 0.5, diff --git a/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.vue b/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.vue index c7a6e41..332bb90 100644 --- a/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.vue +++ b/src/packages/components/Charts/ConfinedSpace/AlarmNowList/config.vue @@ -1,28 +1,24 @@