3 Komitmen 5af7da7391 ... e0f7bd8fd3

Pembuat SHA1 Pesan Tanggal
  wjc e0f7bd8fd3 fix: a1-b2 样式优化 3 hari lalu
  wjc bcee653d8b Merge branch 'dev' of http://git.wisdomcity.com.cn/WisdomCity-Web/SaaS-DataScreen into feat-b2 3 hari lalu
  wjc 87e56993b4 fix: 隐藏滚动条 3 hari lalu

+ 14 - 5
src/assets/css/theme.scss

@@ -1,9 +1,8 @@
-
 // 主题1:原始主题蓝色系
 // 主题1:原始主题蓝色系
 // @import 'theme_1.scss';
 // @import 'theme_1.scss';
 // 主题2:暗蓝色系
 // 主题2:暗蓝色系
-@import '@/assets/css/function';
-@import 'theme_2.scss';
+@import "@/assets/css/function";
+@import "theme_2.scss";
 
 
 // 菜单颜色
 // 菜单颜色
 $menu-color: #072848;
 $menu-color: #072848;
@@ -20,10 +19,20 @@ $gap-padding: halfW(8);
   --title-bg: #111c31;
   --title-bg: #111c31;
   --title-primary: #b9e3f4;
   --title-primary: #b9e3f4;
   --title-secondary: #a1a1a1;
   --title-secondary: #a1a1a1;
-  --content-bg: #0C1425;
+  --content-bg: #0c1425;
   --primary: #007bd3;
   --primary: #007bd3;
-  --page-bg: #070D19;
+  --page-bg: #070d19;
+
+  scrollbar-width: none; /* firefox */
+  -ms-overflow-style: none; /* IE 10+ */
+  overflow-x: hidden;
+  overflow-y: auto;
 }
 }
+
+:root::-webkit-scrollbar {
+  display: none; /* Chrome Safari */
+}
+
 .title-icon {
 .title-icon {
   width: halfW(28);
   width: halfW(28);
   height: halfW(28);
   height: halfW(28);

+ 6 - 1
src/main.js

@@ -2,7 +2,7 @@
  * @Author: WangQiBiao
  * @Author: WangQiBiao
  * @Date: 2019-09-24 17:50:53
  * @Date: 2019-09-24 17:50:53
  * @LastEditors: wjc
  * @LastEditors: wjc
- * @LastEditTime: 2025-11-26 15:54:39
+ * @LastEditTime: 2025-12-01 17:21:02
  * @Description:
  * @Description:
  */
  */
 import Vue from 'vue'
 import Vue from 'vue'
@@ -34,6 +34,11 @@ Vue.filter('safeGet', function (obj, path, defaultValue = '无') {
   // 最终值为空时返回默认值
   // 最终值为空时返回默认值
   return result || defaultValue
   return result || defaultValue
 })
 })
+Vue.filter('formatNumber', function (num = 0) {
+  return (+num).toLocaleString('zh', {
+    maximumFractionDigits: 2
+  })
+})
 
 
 Vue.use(VueTianditu, {
 Vue.use(VueTianditu, {
   v: '4.0',
   v: '4.0',

+ 7 - 17
src/views/hui-jia/components/implementary/total.vue

@@ -7,7 +7,7 @@
     <div class="total-grid">
     <div class="total-grid">
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">城市总数</div>
         <div class="total-label">城市总数</div>
-        <div class="total-value">{{ formatNumber(data.cities) }}</div>
+        <div class="total-value">{{ data.cities | formatNumber }}</div>
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">企业总数</div>
         <div class="total-label">企业总数</div>
@@ -15,31 +15,27 @@
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">合同总数</div>
         <div class="total-label">合同总数</div>
-        <div class="total-value">{{ formatNumber(data.contracts) }}</div>
+        <div class="total-value">{{ data.contracts | formatNumber }}</div>
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">履约次数</div>
         <div class="total-label">履约次数</div>
-        <div class="total-value">{{ formatNumber(data.perform_times) }}</div>
+        <div class="total-value">{{ data.perform_times | formatNumber }}</div>
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">服务时长</div>
         <div class="total-label">服务时长</div>
-        <div class="total-value">{{ formatNumber(data.service_time) }}</div>
+        <div class="total-value">{{ data.service_time | formatNumber }}</div>
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">项目总数</div>
         <div class="total-label">项目总数</div>
-        <div class="total-value">{{ formatNumber(data.residences) }}</div>
+        <div class="total-value">{{ data.residences | formatNumber }}</div>
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">签约户数</div>
         <div class="total-label">签约户数</div>
-        <div class="total-value">
-          {{ formatNumber(data.contracted_households) }}
-        </div>
+        <div class="total-value">{{ data.contracted_households | formatNumber }}</div>
       </div>
       </div>
       <div class="total-item">
       <div class="total-item">
         <div class="total-label">实施户数</div>
         <div class="total-label">实施户数</div>
-        <div class="total-value">
-          {{ formatNumber(data.actual_households) }}
-        </div>
+        <div class="total-value">{{ data.actual_households | formatNumber }}</div>
       </div>
       </div>
     </div>
     </div>
   </div>
   </div>
@@ -63,12 +59,6 @@
       ...mapState(["entCode", "communityId"]),
       ...mapState(["entCode", "communityId"]),
     },
     },
     methods: {
     methods: {
-      // 格式化数字显示
-      formatNumber(num) {
-        return num.toLocaleString("zh", {
-          maximumFractionDigits: 2,
-        })
-      },
     },
     },
   }
   }
 </script>
 </script>

+ 4 - 4
src/views/hui-jia/components/online-water/index.vue

@@ -6,7 +6,7 @@
       </div>
       </div>
       <div class="info">
       <div class="info">
         <p class="title">线上流水总额</p>
         <p class="title">线上流水总额</p>
-        <p class="num">{{ onlineWaterInfo.allSum || 0 }}</p>
+        <p class="num">{{ onlineWaterInfo.allSum | formatNumber }}</p>
       </div>
       </div>
     </div>
     </div>
     <div class="con-center display-flex">
     <div class="con-center display-flex">
@@ -108,14 +108,14 @@ export default {
   }
   }
   .img{
   .img{
     width: halfW(50);
     width: halfW(50);
-    height: halfH(50);
+    height: halfW(50);
     padding: halfH(10) halfW(10);
     padding: halfH(10) halfW(10);
     box-sizing: border-box;
     box-sizing: border-box;
     background: #12223C;
     background: #12223C;
     border-radius: 50%;
     border-radius: 50%;
     .icon{
     .icon{
-      width: 100%;
-      height: 100%;
+      width: halfW(30);
+      height: halfW(30);
     }
     }
   }
   }
   .con-top{
   .con-top{

+ 8 - 8
src/views/hui-jia/components/resident/index.vue

@@ -7,7 +7,7 @@
         <div class="num display-flex flex-1">
         <div class="num display-flex flex-1">
           <div v-for="item in residentData" :key="item.title" class="resident-item flex-1">
           <div v-for="item in residentData" :key="item.title" class="resident-item flex-1">
             <div class="title">{{ item.title }}</div>
             <div class="title">{{ item.title }}</div>
-            <div class="value">{{ item.value }}</div>
+            <div class="value">{{ item.value | formatNumber }}</div>
           </div>
           </div>
         </div>
         </div>
       </div>
       </div>
@@ -17,7 +17,7 @@
             <img :src="item.icon" alt="" class="img">
             <img :src="item.icon" alt="" class="img">
           </div>
           </div>
           <div class="title">{{ item.title }}</div>
           <div class="title">{{ item.title }}</div>
-          <div class="value">{{ item.value }}</div>
+          <div class="value">{{ item.value | formatNumber }}</div>
         </div>
         </div>
       </div>
       </div>
     </Card>
     </Card>
@@ -88,7 +88,6 @@ export default {
     }
     }
   },
   },
   mounted () {
   mounted () {
-    
     this.getUsersStatistics()
     this.getUsersStatistics()
   },
   },
   methods: {
   methods: {
@@ -231,6 +230,7 @@ export default {
         ]
         ]
       }
       }
       myChart.setOption(option)
       myChart.setOption(option)
+      myChart.resize()
     }
     }
   }
   }
 }
 }
@@ -251,16 +251,16 @@ export default {
   .num{
   .num{
     flex-direction: column;
     flex-direction: column;
     text-align: center;
     text-align: center;
-    padding-left: halfW(10);
+    gap: halfH(20);
     .resident-item{
     .resident-item{
       align-content: center;
       align-content: center;
     }
     }
     .title{
     .title{
-      font-size: halfH(16);
+      font-size: halfW(16);
       color: #82D1F6;
       color: #82D1F6;
     }
     }
     .value{
     .value{
-      font-size: halfH(20);
+      font-size: halfW(20);
       color: #FFFFFF;
       color: #FFFFFF;
       margin-top: halfH(10);
       margin-top: halfH(10);
     }
     }
@@ -284,12 +284,12 @@ export default {
       height: halfW(40);
       height: halfW(40);
     }
     }
     .title{
     .title{
-      font-size: halfH(20);
+      font-size: halfW(20);
       color: #82D1F6;
       color: #82D1F6;
       margin: halfH(20) 0;
       margin: halfH(20) 0;
     }
     }
     .value{
     .value{
-      font-size: halfH(20);
+      font-size: halfW(20);
       color: #FFFFFF;
       color: #FFFFFF;
     }
     }
   }
   }

+ 3 - 3
src/views/hui-jia/components/user/index.vue

@@ -6,7 +6,7 @@
             <img :src="item.icon" alt="" class="img">
             <img :src="item.icon" alt="" class="img">
           </div>
           </div>
           <div class="title">{{ item.title }}</div>
           <div class="title">{{ item.title }}</div>
-          <div class="value">{{ item.value }}</div>
+          <div class="value">{{ item.value | formatNumber }}</div>
         </div>
         </div>
       </div>
       </div>
     </Card>
     </Card>
@@ -111,12 +111,12 @@ export default {
     object-fit: cover;
     object-fit: cover;
   }
   }
   .title{
   .title{
-    font-size: halfH(18);
+    font-size: halfW(16);
     color: #9BDAFF;
     color: #9BDAFF;
     margin: halfH(16) 0;
     margin: halfH(16) 0;
   }
   }
   .value{
   .value{
-    font-size: halfH(22);
+    font-size: halfW(20);
     color: #fff;
     color: #fff;
   }
   }
 }
 }