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