From 29588c9524037dc4b7bdeda9dc3f3bea53cb79d7 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Thu, 27 Mar 2025 17:25:24 +0800
Subject: [PATCH] feat: 完成右侧事件概况
---
src/assets/images/home/homeRight/overviewBg.png | 0
src/assets/images/home/homeRight/data1.png | 0
src/assets/images/home/homeRight/overview4.png | 0
src/assets/images/home/homeRight/overview2.png | 0
src/assets/images/home/homeRight/data4.png | 0
src/assets/images/home/homeRight/data3.png | 0
src/assets/images/home/homeRight/overview6.png | 0
src/views/Home/components/HomeRight/EventOverview.vue | 101 ++++++++++++++++++++
src/views/Home/components/HomeRight/Synergy.vue | 13 +-
src/assets/images/home/homeRight/rawDataBg.png | 0
src/views/Home/components/HomeRight/TaskAchievements.vue | 150 +++++++++++++++++++++++++++++
src/assets/images/home/homeRight/overview3.png | 0
src/assets/images/home/homeRight/data2.png | 0
src/assets/images/home/homeRight/overview1.png | 0
src/assets/images/home/homeRight/rowData.png | 0
src/assets/images/home/homeRight/synergyBg.png | 0
src/assets/images/home/homeRight/overview5.png | 0
17 files changed, 256 insertions(+), 8 deletions(-)
diff --git a/src/assets/images/home/homeRight/data1.png b/src/assets/images/home/homeRight/data1.png
new file mode 100644
index 0000000..5231a40
--- /dev/null
+++ b/src/assets/images/home/homeRight/data1.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/data2.png b/src/assets/images/home/homeRight/data2.png
new file mode 100644
index 0000000..8678baf
--- /dev/null
+++ b/src/assets/images/home/homeRight/data2.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/data3.png b/src/assets/images/home/homeRight/data3.png
new file mode 100644
index 0000000..709e16a
--- /dev/null
+++ b/src/assets/images/home/homeRight/data3.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/data4.png b/src/assets/images/home/homeRight/data4.png
new file mode 100644
index 0000000..21e9dea
--- /dev/null
+++ b/src/assets/images/home/homeRight/data4.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overview1.png b/src/assets/images/home/homeRight/overview1.png
new file mode 100644
index 0000000..eaecac8
--- /dev/null
+++ b/src/assets/images/home/homeRight/overview1.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overview2.png b/src/assets/images/home/homeRight/overview2.png
new file mode 100644
index 0000000..3061fe8
--- /dev/null
+++ b/src/assets/images/home/homeRight/overview2.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overview3.png b/src/assets/images/home/homeRight/overview3.png
new file mode 100644
index 0000000..4ee23e1
--- /dev/null
+++ b/src/assets/images/home/homeRight/overview3.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overview4.png b/src/assets/images/home/homeRight/overview4.png
new file mode 100644
index 0000000..e35f5bd
--- /dev/null
+++ b/src/assets/images/home/homeRight/overview4.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overview5.png b/src/assets/images/home/homeRight/overview5.png
new file mode 100644
index 0000000..cbafc39
--- /dev/null
+++ b/src/assets/images/home/homeRight/overview5.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overview6.png b/src/assets/images/home/homeRight/overview6.png
new file mode 100644
index 0000000..38747a6
--- /dev/null
+++ b/src/assets/images/home/homeRight/overview6.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/overviewBg.png b/src/assets/images/home/homeRight/overviewBg.png
new file mode 100644
index 0000000..7adf551
--- /dev/null
+++ b/src/assets/images/home/homeRight/overviewBg.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/rawDataBg.png b/src/assets/images/home/homeRight/rawDataBg.png
new file mode 100644
index 0000000..c2c931f
--- /dev/null
+++ b/src/assets/images/home/homeRight/rawDataBg.png
Binary files differ
diff --git a/src/assets/images/home/homeRight/rowData.png b/src/assets/images/home/homeRight/rowData.png
new file mode 100644
index 0000000..e791454
--- /dev/null
+++ b/src/assets/images/home/homeRight/rowData.png
Binary files differ
diff --git a/src/assets/images/home/synergyBg.png b/src/assets/images/home/homeRight/synergyBg.png
similarity index 100%
rename from src/assets/images/home/synergyBg.png
rename to src/assets/images/home/homeRight/synergyBg.png
Binary files differ
diff --git a/src/views/Home/components/HomeRight/EventOverview.vue b/src/views/Home/components/HomeRight/EventOverview.vue
index 7cdc345..6f9b5ca 100644
--- a/src/views/Home/components/HomeRight/EventOverview.vue
+++ b/src/views/Home/components/HomeRight/EventOverview.vue
@@ -1,10 +1,41 @@
<script setup>
import CommonTitle from '@/components/CommonTitle.vue';
+import { wToR } from '@/utils/pxConver';
+import overviewImg1 from '@/assets/images/home/homeRight/overview1.png';
+import overviewImg2 from '@/assets/images/home/homeRight/overview2.png';
+import overviewImg3 from '@/assets/images/home/homeRight/overview3.png';
+import overviewImg4 from '@/assets/images/home/homeRight/overview4.png';
+import overviewImg5 from '@/assets/images/home/homeRight/overview5.png';
+import overviewImg6 from '@/assets/images/home/homeRight/overview6.png';
+
+const list = ref([
+ { name: '待审核', value: 265, img: overviewImg1, color: '#FF8E8E' },
+ { name: '待分拨', value: 266, img: overviewImg2, color: '#6FCAFF' },
+ { name: '待处理', value: 262, img: overviewImg3, color: '#6FCAFF' },
+ { name: '处理中', value: 262, img: overviewImg4, color: '#FFD509' },
+ { name: '已完成', value: 246, img: overviewImg5, color: '#FF8E8E' },
+ { name: '已完结', value: 262, img: overviewImg6, color: '#8EFFAC' },
+]);
</script>
<template>
<CommonTitle title="事件概况" />
- <div class="eventOverview"></div>
+ <div :style="{ marginLeft: wToR(14) }">
+ <div class="eventOverview">
+ <div class="overviewData">
+ <div class="totalBox">
+ <div class="totalNumber">8096</div>
+ <div class="totalLabel">总事件数</div>
+ </div>
+ <div class="contentBox">
+ <div class="overviewItem" v-for="item in list" :key="item.name">
+ <div class="itemName"><img :src="item.img" alt="" />{{ item.name }}</div>
+ <div class="itemValue" :style="{ color: item.color }">{{ item.value }}</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<style scoped lang="scss">
@@ -20,5 +51,73 @@
border-radius: 0px 0px 0px 0px;
opacity: 0.85;
margin: hToV(3) 0 0 0;
+ padding-top: hToV(15);
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+
+ .overviewData {
+ width: 360px;
+ height: hToV(122);
+ background: url('@/assets/images/home/homeRight/overviewBg.png') no-repeat center / 100% 100%;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding-left: 11px;
+
+ .totalBox {
+ .totalNumber {
+ font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
+ font-weight: 400;
+ font-size: 26px;
+ color: #ffffff;
+ line-height: hToV(30);
+ text-align: center;
+ }
+
+ .totalLabel {
+ font-family: Source Han Sans CN, Source Han Sans CN;
+ font-weight: 400;
+ font-size: 14px;
+ color: #ffffff;
+ line-height: hToV(20);
+ text-align: center;
+ }
+ }
+
+ .contentBox {
+ width: 246px;
+ display: flex;
+ flex-wrap: wrap;
+ gap: hToV(13) 0;
+ font-family: Source Han Sans CN, Source Han Sans CN, serif;
+ font-weight: 400;
+ font-size: 14px;
+ color: #ffffff;
+ line-height: hToV(14);
+
+ .overviewItem {
+ width: calc(100% / 3);
+
+ .itemName {
+ display: flex;
+ align-items: center;
+ margin-bottom: hToV(6);
+
+ img {
+ width: 16px;
+ height: hToV(16);
+ }
+ }
+
+ .itemValue {
+ font-family: YouSheBiaoTiHei, YouSheBiaoTiHei, serif;
+ font-weight: 400;
+ font-size: 24px;
+ line-height: hToV(18);
+ }
+ }
+ }
+ }
}
</style>
diff --git a/src/views/Home/components/HomeRight/Synergy.vue b/src/views/Home/components/HomeRight/Synergy.vue
index 50f4622..c0c397e 100644
--- a/src/views/Home/components/HomeRight/Synergy.vue
+++ b/src/views/Home/components/HomeRight/Synergy.vue
@@ -1,5 +1,6 @@
<script setup>
import CommonTitle from '@/components/CommonTitle.vue';
+import { wToR } from '@/utils/pxConver';
const list = ref([
{ name: '替代人工(人次)', value: 1174, color: '#FFFFFF' },
@@ -9,10 +10,12 @@
</script>
<template>
<CommonTitle title="降本增效" />
- <div class="synergy">
- <div class="synergy-item" v-for="item in list">
- <div class="title">{{ item.name }}</div>
- <div class="value" :style="{ color: item.color }">{{ item.value }}</div>
+ <div :style="{ marginLeft: wToR(14) }">
+ <div class="synergy">
+ <div class="synergy-item" v-for="item in list">
+ <div class="title">{{ item.name }}</div>
+ <div class="value" :style="{ color: item.color }">{{ item.value }}</div>
+ </div>
</div>
</div>
</template>
@@ -37,7 +40,7 @@
width: 95px;
height: hToV(77);
padding-top: hToV(7);
- background: url('@/assets/images/home/synergyBg.png') no-repeat center center / 100% 100%;
+ background: url('@/assets/images/home/homeRight/synergyBg.png') no-repeat center center / 100% 100%;
.title {
font-family: Source Han Sans CN, Source Han Sans CN, serif;
diff --git a/src/views/Home/components/HomeRight/TaskAchievements.vue b/src/views/Home/components/HomeRight/TaskAchievements.vue
index 753af84..d9b1e22 100644
--- a/src/views/Home/components/HomeRight/TaskAchievements.vue
+++ b/src/views/Home/components/HomeRight/TaskAchievements.vue
@@ -1,13 +1,56 @@
<script setup>
import CommonTitle from '@/components/CommonTitle.vue';
+import { wToR } from '@/utils/pxConver';
+import data1 from '@/assets/images/home/homeRight/data1.png';
+import data2 from '@/assets/images/home/homeRight/data2.png';
+import data3 from '@/assets/images/home/homeRight/data3.png';
+import data4 from '@/assets/images/home/homeRight/data4.png';
const detailsFun = () => {
console.log('details');
};
+
+const list = ref([
+ { name: 'AI识别', value: '14656', color: '#6DD7FF', img: data1 },
+ { name: '全景', value: '174', color: '#FFAD64', img: data2 },
+ { name: '三维', value: '897', color: '#8EFFAC', img: data3 },
+ { name: '正射', value: '1185', color: '#61FFFC', img: data4 },
+]);
</script>
<template>
<CommonTitle title="任务成果" @details="detailsFun" />
- <div class="taskAchievements"></div>
+ <div :style="{ marginLeft: wToR(14) }">
+ <div class="taskAchievements">
+ <div class="rawData">
+ <div class="bigTitle">原始<br />数据</div>
+ <div class="rawDataRight">
+ <img src="../../../../assets/images/home/homeRight/rowData.png" alt="" />
+ <div class="rawDataContent">
+ <div>
+ <div class="title">照片总数(张)</div>
+ <div class="value">6582</div>
+ </div>
+ <div>
+ <div class="title">视频总数(个)</div>
+ <div class="value">4785</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="processingData">
+ <div class="bigTitle">处理<br />数据</div>
+ <div class="data-right">
+ <div v-for="item in list">
+ <img :src="item.img" alt="" />
+ <div class="content">
+ <div class="title">{{ item.name }}</div>
+ <div class="value" :style="{ color: item.color }">{{ item.value }}</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<style scoped lang="scss">
@@ -20,8 +63,111 @@
rgba(31, 62, 122, 0.35) 79%,
rgba(31, 62, 122, 0) 100%
);
- border-radius: 0px 0px 0px 0px;
opacity: 0.85;
margin: hToV(2) 0 hToV(21) 0;
+ padding-left: 17px;
+ padding-top: hToV(15);
+
+ .rawData {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ width: 353px;
+
+ .rawDataRight {
+ width: 295px;
+ background: url('@/assets/images/home/homeRight/rawDataBg.png') no-repeat left 32px center/ 100% 100%;
+ display: flex;
+
+ > img {
+ height: hToV(63);
+ width: 63px;
+ }
+
+ .rawDataContent {
+ display: flex;
+ justify-content: space-evenly;
+ color: #ffffff;
+ width: 0;
+ flex-grow: 1;
+ padding-top: hToV(12);
+
+ .title {
+ font-family: Source Han Sans CN, Source Han Sans CN, serif;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: hToV(13);
+ text-align: left;
+ margin-bottom: hToV(6);
+ }
+
+ .value {
+ font-family: YouSheBiaoTiHei, YouSheBiaoTiHei, serif;
+ font-weight: 400;
+ font-size: 26px;
+ line-height: hToV(22);
+ text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
+ text-align: left;
+ }
+ }
+ }
+ }
+
+ .processingData {
+ margin-top: hToV(19);
+ display: flex;
+ align-items: center;
+
+ .data-right {
+ width: 289px;
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ gap: hToV(8) 0;
+
+ > div {
+ width: 135px;
+ height: hToV(42);
+ display: flex;
+
+ > img {
+ width: 32px;
+ height: hToV(32);
+ margin-right: 10px;
+ }
+
+ .content {
+ width: 0;
+ flex: 1;
+
+ .title {
+ font-family: Source Han Sans CN, Source Han Sans CN;
+ font-weight: 400;
+ font-size: 14px;
+ color: #ffffff;
+ line-height: hToV(17);
+ text-align: left;
+ }
+
+ .value {
+ font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
+ font-weight: 400;
+ font-size: 24px;
+ line-height: hToV(23);
+ text-align: left;
+ }
+ }
+ }
+ }
+ }
+}
+
+.bigTitle {
+ margin-right: 22px;
+ font-family: Source Han Sans CN, Source Han Sans CN, serif;
+ font-weight: bold;
+ font-size: 18px;
+ color: #e1f5ff;
+ line-height: hToV(22);
}
</style>
--
Gitblit v1.9.3