From a32d3828653f05a6664675baacd07650fd20d056 Mon Sep 17 00:00:00 2001 From: re-JZzzz Date: Wed, 17 Sep 2025 20:02:08 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=96=B0=E5=A2=9E=E6=8A=A5=E8=AD=A6=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E9=83=A8=E5=88=86=E5=9B=BE=E8=A1=A8=202.=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=AE=AD=E5=A4=B4=E4=B8=BA=E6=9C=AC=E5=9C=B0=E5=9B=BE?= =?UTF-8?q?=E7=89=87=203.=E4=BC=98=E5=8C=96=E9=83=A8=E5=88=86=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=204.=E5=AE=8C=E6=88=90=E6=80=A7=E8=83=BD=E6=AF=94?= =?UTF-8?q?=E6=B0=B4=E6=BB=B4=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/demo/down.png | Bin 0 -> 195 bytes src/assets/demo/up.png | Bin 0 -> 193 bytes .../alarmManage/components/fenxiBar.vue | 198 ++++++++++++++++++ .../alarmManage/components/levelPie.vue | 163 ++++++++++++++ .../alarmManage/components/totalView.vue | 3 + .../integratedManage/alarmManage/index.vue | 40 ++++ .../alarmAnalysis/components/data.vue | 101 ++++++--- src/views/pvSystem/alarmAnalysis/index.vue | 10 +- .../components/box1/statusBox.vue | 44 +--- .../components/box2/duibiPie.vue | 2 +- .../components/box2/powerBar.vue | 2 +- src/views/pvSystem/operatingCurve/index.vue | 2 +- .../reportManager/components/itembox.vue | 7 +- src/views/pvSystem/reportManager/index.vue | 16 +- 14 files changed, 513 insertions(+), 75 deletions(-) create mode 100644 src/assets/demo/down.png create mode 100644 src/assets/demo/up.png create mode 100644 src/views/integratedManage/alarmManage/components/fenxiBar.vue create mode 100644 src/views/integratedManage/alarmManage/components/levelPie.vue create mode 100644 src/views/integratedManage/alarmManage/components/totalView.vue create mode 100644 src/views/integratedManage/alarmManage/index.vue diff --git a/src/assets/demo/down.png b/src/assets/demo/down.png new file mode 100644 index 0000000000000000000000000000000000000000..179ebd7d8868f94be2cd4fa3f22b155cd2540642 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CO!3HF4Hmy+sQjEnx?oJHr&dIz4a#)I;JVQ8u zpoSx*1IW+yba4!knA+Qakhj@^hvoQ}iR*nOOUnFG1K8umH&v>Xb9pHI`J7e0XPMHq zqI{b@~KLqGrk literal 0 HcmV?d00001 diff --git a/src/assets/demo/up.png b/src/assets/demo/up.png new file mode 100644 index 0000000000000000000000000000000000000000..2e6fa2d88655dc7a5af5c723091cdee67a92f9ef GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CO!3HF4Hmy+sQjEnx?oJHr&dIz4a#)I;JVQ8u zpoSx*1IW+zba4!knA+O6QIJ`Yhb25j&1gHz;WO=eoR)`rZx(&}(_MHVRsHQtl{YC@ z7yI6BSl+YTW^E2LL)fv-*LN?>PD)L<`qKCRgX6~cdG~65l6~;LlG9)Er;OmUQ2xjV oJ2x0Pl+4tfdcEKAFVdQ&MBb@03C8h^Z)<= literal 0 HcmV?d00001 diff --git a/src/views/integratedManage/alarmManage/components/fenxiBar.vue b/src/views/integratedManage/alarmManage/components/fenxiBar.vue new file mode 100644 index 0000000..b60c3d0 --- /dev/null +++ b/src/views/integratedManage/alarmManage/components/fenxiBar.vue @@ -0,0 +1,198 @@ + + + + + diff --git a/src/views/integratedManage/alarmManage/components/levelPie.vue b/src/views/integratedManage/alarmManage/components/levelPie.vue new file mode 100644 index 0000000..9ec35c2 --- /dev/null +++ b/src/views/integratedManage/alarmManage/components/levelPie.vue @@ -0,0 +1,163 @@ + + + + + diff --git a/src/views/integratedManage/alarmManage/components/totalView.vue b/src/views/integratedManage/alarmManage/components/totalView.vue new file mode 100644 index 0000000..6cbc598 --- /dev/null +++ b/src/views/integratedManage/alarmManage/components/totalView.vue @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/src/views/integratedManage/alarmManage/index.vue b/src/views/integratedManage/alarmManage/index.vue new file mode 100644 index 0000000..199ded9 --- /dev/null +++ b/src/views/integratedManage/alarmManage/index.vue @@ -0,0 +1,40 @@ + + + + + diff --git a/src/views/pvSystem/alarmAnalysis/components/data.vue b/src/views/pvSystem/alarmAnalysis/components/data.vue index 744772b..19dbe4a 100644 --- a/src/views/pvSystem/alarmAnalysis/components/data.vue +++ b/src/views/pvSystem/alarmAnalysis/components/data.vue @@ -18,8 +18,12 @@
{{ props.dashboardData.todayAlarmTotal }}
今日报警总数
较上周 - {{ props.dashboardData.updates.todayAlarmTotal.type === 'up' ? '↑' : '↓' }}{{ props.dashboardData.updates.todayAlarmTotal.value }} -
+ 上升 + 下降{{ + props.dashboardData.updates.todayAlarmTotal.value }} + + @@ -29,8 +33,11 @@
{{ props.dashboardData.unhandledAlarms }}
未处理报警
较上周 - {{ props.dashboardData.updates.unhandledAlarms.type === 'up' ? '↑' : '↓' }}{{ props.dashboardData.updates.unhandledAlarms.value }} -
+ 上升 + 下降{{ + props.dashboardData.updates.unhandledAlarms.value }} + @@ -40,8 +47,11 @@
{{ props.dashboardData.handledAlarms }}
已处理报警
较上周 - {{ props.dashboardData.updates.handledAlarms.type === 'up' ? '↑' : '↓' }}{{ props.dashboardData.updates.handledAlarms.value }} -
+ 上升 + 下降{{ + props.dashboardData.updates.handledAlarms.value }} + @@ -50,9 +60,15 @@
{{ props.dashboardData.avgProcessTime }}
平均处理时长
-
较上周 - {{ props.dashboardData.updates.avgProcessTime.type === 'up' ? '↑' : '↓' }}{{ props.dashboardData.updates.avgProcessTime.value }} -
+
+ 较上周 + + 上升 + 下降{{ + props.dashboardData.updates.avgProcessTime.value }} + +
@@ -67,7 +83,7 @@ - +
@@ -76,11 +92,17 @@
-
报警数量(次)
+
报警数量(次)
{{ props.chartData.totals.alarmCount }}
-
较昨日 - {{ props.chartData.dailyChanges.alarmCount.type === 'up' ? '↑' : '↓' }}{{ props.chartData.dailyChanges.alarmCount.value }} -
+
+ 较昨日 + 上升 + 下降 + + {{ props.chartData.dailyChanges.processEfficiency.value }} + +
@@ -93,9 +115,15 @@
报警处理效率(%)
{{ props.chartData.totals.processEfficiency }}
-
较昨日 - {{ props.chartData.dailyChanges.processEfficiency.type === 'up' ? '↑' : '↓' }}{{ props.chartData.dailyChanges.processEfficiency.value }} -
+
+ 较昨日 + 上升 + 下降 + + {{ props.chartData.dailyChanges.processEfficiency.value }} + +
@@ -141,7 +169,7 @@ const props = defineProps({ processEfficiency: '89%' }, dailyChanges: { - alarmCount: { value: '0.9%', type: 'down' }, + alarmCount: { value: '0.9%', type: 'up' }, processEfficiency: { value: '0.9%', type: 'down' } } }) @@ -172,7 +200,7 @@ const initCharts = () => { trigger: 'axis', }, grid: { - left: '-45px', + left: '-38px', right: '0%', bottom: '0%', top: '0%', @@ -248,7 +276,7 @@ const initCharts = () => { trigger: 'axis', }, grid: { - left: '-45px', + left: '-38px', right: '0%', bottom: '0%', top: '0%', @@ -352,7 +380,7 @@ onUnmounted(() => { width: 100%; height: 100%; background: #fff; - padding:0 20px; + padding: 0 20px; box-sizing: border-box; } @@ -411,11 +439,18 @@ onUnmounted(() => { } .up { - color: #ff4d4f; + color: #00B87A; } .down { - color: #52c41a; + color: #ff4d4f; +} + +.trend-icon { + // width: 12px; + // height: 12px; + margin-right: 2px; + vertical-align: middle; } .trend-container { @@ -436,7 +471,7 @@ onUnmounted(() => { } .trend-header { - + align-items: center; } @@ -483,6 +518,24 @@ onUnmounted(() => { font-size: 12px; color: #999; margin-bottom: 0; + display: flex; + align-items: center; + gap: 4px; + line-height: 1; +} + +.chart-value span { + display: inline-flex; + align-items: center; + vertical-align: middle; +} + +.chart-value .trend-icon { + display: inline-flex; + align-items: center; + justify-content: center; + vertical-align: middle; + margin: 0; } .chart-content { diff --git a/src/views/pvSystem/alarmAnalysis/index.vue b/src/views/pvSystem/alarmAnalysis/index.vue index 2fa1f57..e095dba 100644 --- a/src/views/pvSystem/alarmAnalysis/index.vue +++ b/src/views/pvSystem/alarmAnalysis/index.vue @@ -68,9 +68,9 @@ const dashboardData = ref({ handledAlarms: 16, avgProcessTime: '42分钟', updates: { - todayAlarmTotal: { value: '4.2%', type: 'down' }, - unhandledAlarms: { value: '5%', type: 'up' }, - handledAlarms: { value: '8%', type: 'down' }, + todayAlarmTotal: { value: '4.2%', type: 'up' }, + unhandledAlarms: { value: '5%', type: 'down' }, + handledAlarms: { value: '8%', type: 'up' }, avgProcessTime: { value: '10%', type: 'down' } } }); @@ -84,7 +84,7 @@ const chartData = ref({ processEfficiency: '89%' }, dailyChanges: { - alarmCount: { value: '0.9%', type: 'down' }, + alarmCount: { value: '0.9%', type: 'up' }, processEfficiency: { value: '0.9%', type: 'down' } } }); @@ -155,7 +155,7 @@ onMounted(() => { \ No newline at end of file diff --git a/src/views/pvSystem/operatingCurve/components/box1/statusBox.vue b/src/views/pvSystem/operatingCurve/components/box1/statusBox.vue index 7544df9..5b92b13 100644 --- a/src/views/pvSystem/operatingCurve/components/box1/statusBox.vue +++ b/src/views/pvSystem/operatingCurve/components/box1/statusBox.vue @@ -6,14 +6,8 @@
总发电量
{{ props.statusData.totalPower }}
- - - - - {{ props.statusData.totalPowerChange }} 较上周 + + {{ props.statusData.totalPowerChange }} 较上周
@@ -37,14 +31,8 @@
系统效率
{{ props.statusData.efficiency }}
- - - - - {{ props.statusData.efficiencyChange }} 较上周 + + {{ props.statusData.efficiencyChange }} 较上周
@@ -65,14 +53,8 @@
组件温度
{{ props.statusData.temperature }}
- - - - - {{ props.statusData.temperatureChange }} 较上周 + + {{ props.statusData.temperatureChange }} 较上周
@@ -93,14 +75,8 @@
日照强度
{{ props.statusData.sunlight }}
- - - - - {{ props.statusData.sunlightChange }} 较上周 + + {{ props.statusData.sunlightChange }} 较上周
@@ -206,7 +182,7 @@ const props = defineProps({ margin-top: 4px; &.positive { - color: #67c23a; + color: #00B87A; } &.negative { @@ -216,7 +192,7 @@ const props = defineProps({ .change-icon { font-size: 10px; - margin-right: 2px; + margin-right: 5px; } .card-icon { diff --git a/src/views/pvSystem/operatingCurve/components/box2/duibiPie.vue b/src/views/pvSystem/operatingCurve/components/box2/duibiPie.vue index d008220..6bfe648 100644 --- a/src/views/pvSystem/operatingCurve/components/box2/duibiPie.vue +++ b/src/views/pvSystem/operatingCurve/components/box2/duibiPie.vue @@ -142,7 +142,7 @@ onUnmounted(() => { .chart-content { width: 100%; height: calc(100% - 80px); - min-height: 200px; + min-height: 220px; } @media (max-width: 768px) { diff --git a/src/views/pvSystem/operatingCurve/components/box2/powerBar.vue b/src/views/pvSystem/operatingCurve/components/box2/powerBar.vue index b55f153..6cfc66d 100644 --- a/src/views/pvSystem/operatingCurve/components/box2/powerBar.vue +++ b/src/views/pvSystem/operatingCurve/components/box2/powerBar.vue @@ -185,7 +185,7 @@ onUnmounted(() => { .chart-content { width: 100%; height: calc(100% - 80px); - min-height: 200px; + min-height: 220px; } @media (max-width: 768px) { diff --git a/src/views/pvSystem/operatingCurve/index.vue b/src/views/pvSystem/operatingCurve/index.vue index 32c9023..ac12f24 100644 --- a/src/views/pvSystem/operatingCurve/index.vue +++ b/src/views/pvSystem/operatingCurve/index.vue @@ -104,7 +104,7 @@ const mockData = ref({ totalPower: '3,456.8KWh', totalPowerChange: '8.2%', efficiency: '18.7%', - efficiencyChange: '-0.3%', + efficiencyChange: '0.3%', temperature: '42.3°C', temperatureChange: '2.1°C', sunlight: '865 W/m²', diff --git a/src/views/pvSystem/reportManager/components/itembox.vue b/src/views/pvSystem/reportManager/components/itembox.vue index 77131cb..cc8caef 100644 --- a/src/views/pvSystem/reportManager/components/itembox.vue +++ b/src/views/pvSystem/reportManager/components/itembox.vue @@ -8,7 +8,8 @@
{{ value || '2,456.8' }} {{ unit || 'KWh' }}
- {{ growth || '+2.5%' }} + + {{ growth || '2.5%' }} {{ growthLabel || '较昨日' }}
@@ -37,6 +38,10 @@ const props = defineProps({ type: String, default: '平均效率' }, + type: { + type: String, + default: '' + }, value: { type: String, default: '2,456.8' diff --git a/src/views/pvSystem/reportManager/index.vue b/src/views/pvSystem/reportManager/index.vue index cb09f5e..a910ddd 100644 --- a/src/views/pvSystem/reportManager/index.vue +++ b/src/views/pvSystem/reportManager/index.vue @@ -44,23 +44,23 @@ - - - -