From 06b2f5be922e87d086d1d4e6cdcc2119e7d3a1a4 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 09 七月 2025 14:36:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 screen/src/views/FireFighting.vue | 1889 ++++++++++++++++++++++++++++++----------------------------
 1 files changed, 986 insertions(+), 903 deletions(-)

diff --git a/screen/src/views/FireFighting.vue b/screen/src/views/FireFighting.vue
index 79cd732..04190af 100644
--- a/screen/src/views/FireFighting.vue
+++ b/screen/src/views/FireFighting.vue
@@ -5,7 +5,7 @@
       <img src="@/assets/images/SecurityControl/bg@2x_2.png" class="main_bg" alt="" />
       <div class="main_header">
         <img src="@/assets/images/maintitle.gif" class="main_header_bg" alt="" />
-        <div class="title">瀹夋嘲鏅烘収鐗╂祦鍥尯-娑堥槻鎬佸娍鐩戞帶</div>
+        <div class="title">瀹夋嘲鏅烘収鐗╂祦鍥尯-鏅烘収娑堥槻绠℃帶</div>
         <div class="time_wrap">
           <span class="date">{{ date }}</span>
           <span class="week">{{ week }}</span>
@@ -14,190 +14,228 @@
       </div>
       <div class="main_content">
         <div class="left_box">
-          <div class="left_box_one">
-            <div class="com_header">
-              <div class="title">
-                <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
-                <div>浠婃棩鍚勭郴缁熻澶囩姸鎬佸強鍛婅鏁�</div>
-              </div>
-              <img src="@/assets/images/title@2x.png" class="bg" alt="" />
+          <div class="left_box_top">
+
+            <div class="left_box_top_znz">
+              <img src="@/assets/images/ic_compass@2x.png" alt="" />
             </div>
-            <div class="list_wrap">
-              <div class="list">
-                <div class="header line">
-                  <span class="item name">璁惧鍚嶇О</span>
-                  <span class="item">鎬绘暟</span>
-                  <span class="item">鎶ヨ</span>
-                  <span class="item">灞忚斀</span>
-                  <span class="item">鏁呴殰</span>
-                  <span class="item">姝e父</span>
+
+            <div class="left_box_top_left">
+              <div class="left_box_one">
+                <div class="com_header">
+                  <div class="title">
+                    <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
+                    <div>娑堥槻璁惧/璁炬柦绠$悊</div>
+                  </div>
+                  <img src="@/assets/images/title@2x.png" class="bg" alt="" />
                 </div>
-                <div class="one-swiper list_content">
-                  <div class="swiper-wrapper">
-                    <div class="line_wrap one-swiper-slide swiper-slide" v-for="(item, i) in dataList1">
-                      <div class="line">
-                        <span class="item name">{{ item.typeName }}</span>
-                        <span class="item">{{ item.totalDeviceNum || 0 }}</span>
-                        <span class="item" style="color: #FEAF01;">{{ item.alarmDeviceNum || 0 }}</span>
-                        <span class="item">{{ item.shieldDeviceNum || 0 }}</span>
-                        <span class="item">{{ item.errDeviceNum || 0 }}</span>
-                        <span class="item">{{ item.onlineDeviceNum || 0 }}</span>
+                <div class="left_content">
+                  <div class="tips">
+                    <div class="tips_title">
+                      <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                      <span>鏈勾娑堥槻璁惧/璁炬柦缁翠繚鎯呭喌</span>
+                    </div>
+                  </div>
+
+                  <div class="content_wrap">
+                    <div class="list">
+                      <div class="item">
+                        <div>宸茬淮淇�</div>
+                        <div class="num active">{{ dataList5.protectNum || 0 }}</div>
                       </div>
+                      <div class="separate"></div>
+                      <div class="item">
+                        <div>璁″垝缁翠繚</div>
+                        <div class="num acc">{{ dataList5.planProtectTotal || 0 }}</div>
+                      </div>
+                      <div class="separate"></div>
+                      <div class="item">
+                        <div>缁翠繚鐜�</div>
+                        <div v-if="dataList5.protectNum && dataList5.planProtectTotal" class="acc num">{{
+                          ((dataList5.protectNum / dataList5.planProtectTotal) * 100).toFixed(0) }}%</div>
+                        <div v-else class="acc num">0%</div>
+                      </div>
+                    </div>
+                    <div class="footer">
+                      <img src="@/assets/images/FireFighting/ic_weixiu@2x.png" class="icon" alt="">
+                      <div class="content">
+                        <div>鏈湀鏂板缁翠繚</div>
+                        <div class="num">{{ dataList5.monthAddNum }} <span>涓�</span></div>
+                      </div>
+                    </div>
+                  </div>
+
+                  <div class="tips">
+                    <div class="tips_title">
+                      <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                      <span>绯荤粺璁惧鐘舵��</span>
+                    </div>
+                  </div>
+
+                  <div class="list_wrap">
+                    <div class="list">
+                      <div class="header line">
+                        <span class="item name" style="color: #FFFFFF;">璁惧鍚嶇О</span>
+                        <span class="item">鎬绘暟</span>
+                        <span class="item">鎶ヨ</span>
+                        <span class="item">灞忚斀</span>
+                        <span class="item">鏁呴殰</span>
+                        <span class="item">姝e父</span>
+                      </div>
+                      <div class="one-swiper list_content">
+                        <div class="swiper-wrapper">
+                          <div class="line_wrap one-swiper-slide swiper-slide" v-for="(item, i) in dataList1">
+                            <div class="line">
+                              <span class="item name">{{ item.typeName }}</span>
+                              <span class="item">{{ item.totalDeviceNum || 0 }}</span>
+                              <span class="item" style="color: #FEAF01;">{{ item.alarmDeviceNum || 0 }}</span>
+                              <span class="item">{{ item.shieldDeviceNum || 0 }}</span>
+                              <span class="item">{{ item.errDeviceNum || 0 }}</span>
+                              <span class="item">{{ item.onlineDeviceNum || 0 }}</span>
+                            </div>
+                            <div class="separate"></div>
+                          </div>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="list_wrap_footer" v-if="dataList1.length > 0">
+                      <div class="wrap_footer_item name" style="color: #fff;">鎬昏</div>
+                      <div class="wrap_footer_item">{{sum(dataList1, 'totalDeviceNum')}}</div>
+                      <div class="wrap_footer_item">{{sum(dataList1, 'alarmDeviceNum')}}</div>
+                      <div class="wrap_footer_item">{{sum(dataList1, 'shieldDeviceNum')}}</div>
+                      <div class="wrap_footer_item">{{sum(dataList1, 'errDeviceNum')}}</div>
+                      <div class="wrap_footer_item">{{sum(dataList1, 'onlineDeviceNum')}}</div>
                       <div class="separate"></div>
                     </div>
                   </div>
                 </div>
-
               </div>
             </div>
-          </div>
-          <div class="left_box_two">
-            <div class="com_header">
-              <div class="title">
-                <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
-                <div>鎶ヨ淇℃伅</div>
-              </div>
-              <img src="@/assets/images/title@2x.png" class="bg" alt="" />
-            </div>
-            <div class="police_wrap">
-              <div class="item" v-for="(item, i) in dataList2">
-                <div class="head">
-                  <div class="name">{{ item.name }}</div>
-                  <div class="name">{{ item.num }}娆�</div>
-                </div>
-                <FirePercent :color="policeColors[i]" :rate="item.rate" />
-              </div>
-
-            </div>
-          </div>
-          <div class="left_box_three">
-            <div class="com_header">
-              <div class="title">
-                <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
-                <div>鍛婅澶勭悊鍒嗘瀽</div>
-              </div>
-              <img src="@/assets/images/title@2x.png" class="bg" alt="" />
-            </div>
-            <div class="dispose_wrap">
-              <div class="echart2" id="echart2"></div>
-            </div>
-          </div>
-        </div>
-        <div class="center_box">
-          <div class="center_box_one">
-            <div class="static_wrap">
-              <div class="item">
-                <img src="@/assets/images/FireFighting/xiaofang_ic_zaixian@2x.png" alt="">
-                <div class="content">
-                  <div class="name">鎬绘暟</div>
-                  <div class="num">{{ dataList4.onlineDeviceNum || 0 }}</div>
-                </div>
-              </div>
-              <div class="item">
-                <img src="@/assets/images/FireFighting/xiaofang_ic_baojing@2x.png" alt="">
-                <div class="content">
-                  <div class="name">鎶ヨ</div>
-                  <div class="num num2">{{ dataList4.alarmDeviceNum || 0}}</div>
-                </div>
-              </div>
-              <div class="item">
-                <img src="@/assets/images/FireFighting/xiaofang_ic_pingbi@2x.png" alt="">
-                <div class="content">
-                  <div class="name">灞忚斀</div>
-                  <div class="num num5">{{ dataList4.shieldDeviceNum || 0 }}</div>
-                </div>
-              </div>
-              <div class="item">
-                <img src="@/assets/images/FireFighting/xiaofang_ic_guzhang@2x.png" alt="">
-                <div class="content">
-                  <div class="name">鏁呴殰</div>
-                  <div class="num num3">{{ dataList4.errDeviceNum || 0 }}</div>
-                </div>
-              </div>
-              <div class="item">
-                <img src="@/assets/images/FireFighting/xiaofang_ic_zhengchang@2x.png" alt="">
-                <div class="content">
-                  <div class="name">姝e父</div>
-                  <div class="num num4">{{ dataList4.onlineDeviceNum || 0 }}</div>
+            <div class="left_box_top_right">
+              <div class="center_box_one">
+                <div class="static_wrap">
+                  <div class="item">
+                    <img src="@/assets/images/FireFighting/xiaofang_ic_baojing@2x.png" alt="">
+                    <div class="content">
+                      <div class="name">鎶ヨ鎬绘暟</div>
+                      <div class="num">{{ dayData.totalNum || 0 }}</div>
+                    </div>
+                  </div>
+                  <div class="item">
+                    <img src="@/assets/images/FireFighting/xiaofang_ic_guzhang@2x.png" alt="">
+                    <div class="content">
+                      <div class="name">鏈鐞�</div>
+                      <div class="num num2">{{ dayData.processingNum || 0 }}</div>
+                    </div>
+                  </div>
+                  <div class="item">
+                    <img src="@/assets/images/FireFighting/xiaofang_ic_zhengchang@2x.png" alt="">
+                    <div class="content">
+                      <div class="name">宸插鐞�</div>
+                      <div class="num num5">{{ dayData.liftNum || 0 }}</div>
+                    </div>
+                  </div>
                 </div>
               </div>
             </div>
           </div>
-          <div class="center_box_two">
-            <div class="content_wrap">
-              <div class="header">
-                <div class="left">
-                  <img class="icon" src="@/assets/images/FireFighting/468@2x.png" alt="">
-                  <span>娓╁害/婀垮害浼犳劅鍣�</span>
-                </div>
-                <div class="right">
-                  <img @click="changeData8(-1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_left@2x.png"
-                    alt="">
-                  <div class="num">{{ dataIndex8 + 1 }}/{{ dataList8.length }}</div>
-                  <img @click="changeData8(1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_right@2x.png"
-                    alt="">
-                </div>
-              </div>
-              <div class="list_wrap">
+          <div class="left_box_bottom">
+            <div class="left_box_three">
+              <div class="com_header">
                 <div class="title">
-                  <img class="icon" src="@/assets/images/FireFighting/ic_location@2x.png" alt="">
-                  <span v-if="dataList8 && dataList8.length > 0">{{ dataList8[dataIndex8].humidityData.name }}</span>
+                  <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
+                  <div>娑堥槻鎬佸娍鎰熺煡</div>
                 </div>
-                <div class="list" v-if="dataList8 && dataList8.length > 0">
-                  <div class="item">
-                    <img class="icon" src="@/assets/images/FireFighting/ic_wendu@2x.png" alt="">
-                    <div class="content">
-                      <div class="num"
-                        v-if="dataList8[dataIndex8].temperatureData && dataList8[dataIndex8].temperatureData.latestValue">
-                        {{ Number(dataList8[dataIndex8].temperatureData.latestValue).toFixed(1) }}<span>掳C</span></div>
-                      <div class="la">闃堝�� {{ dataList8[dataIndex8].temperatureData?.alarmLow }}锝瀧{
-                        dataList8[dataIndex8].temperatureData?.alarmHigh }}掳C</div>
-                    </div>
-                  </div>
-                  <div class="item">
-                    <img class="icon" src="@/assets/images/FireFighting/ic_shidu@2x.png" alt="">
-                    <div class="content">
-                      <div class="num"
-                        v-if="dataList8[dataIndex8].humidityData && dataList8[dataIndex8].humidityData.latestValue">{{
-                          Number(dataList8[dataIndex8].humidityData.latestValue).toFixed(1) }}<span>%</span></div>
-                      <div class="la">闃堝�� {{ dataList8[dataIndex8].humidityData?.alarmLow }}锝瀧{
-                        dataList8[dataIndex8].humidityData?.alarmHigh }}%</div>
-                    </div>
-                  </div>
-                </div>
+                <img src="@/assets/images/title@2x.png" class="bg" alt="" />
               </div>
-            </div>
-            <div class="content_wrap">
-              <div class="header">
-                <div class="left">
-                  <img class="icon" src="@/assets/images/FireFighting/468@2x.png" alt="">
-                  <span>瀹炴椂浼犳劅鍣ㄦ娴�</span>
-                </div>
-                <div class="right">
-                  <img @click="changeData9(-1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_left@2x.png"
-                    alt="">
-                  <div class="num">{{ dataIndex9 + 1 }}/{{ dataTotal9 }}</div>
-                  <img @click="changeData9(1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_right@2x.png"
-                    alt="">
-                </div>
-              </div>
-              <div class="list_wrap2">
-                <div class="item" v-for="item, i in dataListTemp9">
-                  <div class="title">
-                    <img class="icon" src="@/assets/images/FireFighting/ic_location@2x.png" alt="">
-                    <span>{{ item.name }}</span>
-                  </div>
-                  <div class="watergage_wrap" v-if="item.obj.typeCode == 253958">
-                    <div class="watergage" :id="'watergage' + i"></div>
-                    <div class="unit">{{ item.obj.value }}</div>
-                    <div class="place">闃堝�� {{ item.level }}</div>
-                  </div>
-                  <div v-if="item.obj.typeCode == 254001" class="liquidlevel_wrap">
-                    <div class="liquidlevel" :id="'liquidlevel' + i"></div>
-                    <div class="liquidle_te">
-                      <div class="unit">{{ item.obj.value }}</div>
-                      <div class="placeT">闃堝�納{ item.level }}</div>
+
+              <div class="bottom_content">
+
+                <div class="bottom_content_left" v-if="dataList8 && dataList8.length > 0">
+
+                  <div class="tips">
+                    <div class="tips_title">
+                      <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                      <span>閲嶇偣鍖哄煙娓╁害鐩戞祴</span>
                     </div>
+                    <div class="right">
+                      <img @click="changeData8(-1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_left@2x.png"
+                           alt="">
+                      <div class="num">{{ dataList8[dataIndex8].humidityData.name }}</div>
+                      <img @click="changeData8(1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_right@2x.png"
+                           alt="">
+                    </div>
+                  </div>
+
+                  <div class="list_wrap">
+<!--                    <div class="title">-->
+<!--                      <img class="icon" src="@/assets/images/FireFighting/ic_location@2x.png" alt="">-->
+<!--                      <span v-if="dataList8 && dataList8.length > 0">{{ dataList8[dataIndex8].humidityData.name }}</span>-->
+<!--                    </div>-->
+                    <div class="list" v-if="dataList8 && dataList8.length > 0">
+                      <div class="item">
+                        <img class="icon" src="@/assets/images/FireFighting/ic_wendu@2x.png" alt="">
+                        <div class="content">
+                          <div class="num"
+                               v-if="dataList8[dataIndex8].temperatureData && dataList8[dataIndex8].temperatureData.latestValue">
+                            {{ Number(dataList8[dataIndex8].temperatureData.latestValue).toFixed(1) }}<span>掳C</span></div>
+                          <div class="la">闃堝�� {{ dataList8[dataIndex8].temperatureData?.alarmLow }}锝瀧{
+                            dataList8[dataIndex8].temperatureData?.alarmHigh }}掳C</div>
+                        </div>
+                      </div>
+                      <div class="item">
+                        <img class="icon" src="@/assets/images/FireFighting/ic_shidu@2x.png" alt="">
+                        <div class="content">
+                          <div class="num"
+                               v-if="dataList8[dataIndex8].humidityData && dataList8[dataIndex8].humidityData.latestValue">{{
+                            Number(dataList8[dataIndex8].humidityData.latestValue).toFixed(1) }}<span>%</span></div>
+                          <div class="la">闃堝�� {{ dataList8[dataIndex8].humidityData?.alarmLow }}锝瀧{
+                            dataList8[dataIndex8].humidityData?.alarmHigh }}%</div>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+
+                </div>
+                <div class="bottom_content_right">
+
+                  <div class="tips">
+                    <div class="tips_title">
+                      <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                      <span>姘村帇姘翠綅鐩戞祴</span>
+                    </div>
+                    <div class="right">
+                      <img @click="changeData9(-1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_left@2x.png"
+                           alt="">
+                      <div class="num">{{ dataIndex9 + 1 }}/{{ dataTotal9 }}</div>
+                      <img @click="changeData9(1)" class="icon" src="@/assets/images/FireFighting/xiaofang_ar_right@2x.png"
+                           alt="">
+                    </div>
+                  </div>
+
+                  <div class="list_wrap2">
+                    <div class="item" v-for="(item, i) in dataListTemp9" :key="i">
+                      <div class="watergage_wrap" v-if="item.obj.typeCode == 253958">
+                        <div class="watergage" :id="'watergage' + i"></div>
+                      </div>
+                      <div v-if="item.obj.typeCode == 254001" class="liquidlevel_wrap">
+                        <img src="@/assets/images/size.png" alt="" class="size" />
+                        <div class="liquidlevel" :id="'liquidlevel' + i"></div>
+                      </div>
+                      <div class="list_wrap2_info">
+                        <div class="title">
+                          <img class="icon" src="@/assets/images/FireFighting/ic_location@2x.png" alt="">
+                          <span>{{ item.name }}</span>
+                        </div>
+                        <div class="unit">
+                          <span>{{ item.obj.value.substring(0, item.obj.value.indexOf('M')) }}</span>
+                          <span>{{ item.obj.value.substring(item.obj.value.indexOf('M'), item.obj.value.length) }}</span>
+                        </div>
+                        <div class="place">闃堝�� {{ item.level }}</div>
+                      </div>
+                    </div>
+                    <div class="item1"></div>
+                    <div class="item1"></div>
                   </div>
                 </div>
               </div>
@@ -209,103 +247,92 @@
             <div class="com_header">
               <div class="title">
                 <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
-                <div>鏈勾娑堥槻璁惧/璁炬柦缁翠繚鎯呭喌</div>
+                <div>娑堥槻鎶ヨ闂幆绠$悊</div>
               </div>
               <img src="@/assets/images/title@2x.png" class="bg" alt="" />
             </div>
-            <div class="content_wrap">
-              <div class="list">
-                <div class="item">
-                  <div>宸茬淮淇�</div>
-                  <div class="num active">{{ dataList5.protectNum }}</div>
+            <div class="right_content">
+              <div class="tips">
+                <div class="tips_title">
+                  <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                  <span>
+                    <template v-if="dateType === '1'">鏈湀</template>
+                    <template v-else-if="dateType === '2'">鏈勾</template>
+                    <template v-else>浠婃棩</template>鎶ヨ
+                  </span>
                 </div>
-                <div class="separate"></div>
-                <div class="item">
-                  <div>璁″垝缁翠繚</div>
-                  <div class="num acc">{{ dataList5.planProtectTotal }}</div>
-                </div>
-                <div class="separate"></div>
-                <div class="item">
-                  <div>缁翠繚鐜�</div>
-                  <div v-if="dataList5.protectNum && dataList5.planProtectTotal" class="acc num">{{
-                    ((dataList5.protectNum / dataList5.planProtectTotal) * 100).toFixed(0) }}%</div>
+                <div class="tips_cates">
+                  <div :class="!dateType ? 'tips_cates_row active' : 'tips_cates_row'" @click="getData2('')">浠婃棩</div>
+                  <div class="tips_cates_x">|</div>
+                  <div :class="dateType === '1' ? 'tips_cates_row active' : 'tips_cates_row'" @click="getData2('1')">鏈湀</div>
+                  <div class="tips_cates_x">|</div>
+                  <div :class="dateType === '2' ? 'tips_cates_row active' : 'tips_cates_row'" @click="getData2('2')">鏈勾</div>
                 </div>
               </div>
-              <div class="footer">
-                <img src="@/assets/images/FireFighting/ic_weixiu@2x.png" class="icon" alt="">
-                <div class="content">
-                  <div>鏈湀鏂板缁翠繚</div>
-                  <div class="num">{{ dataList5.monthAddNum }} <span>涓�</span></div>
-                </div>
-              </div>
-            </div>
-          </div>
-          <div class="right_box_two">
-            <div class="com_header">
-              <div class="title">
-                <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" />
-                <div>浠婃棩闅愭偅/鍛婅</div>
-              </div>
-              <img src="@/assets/images/title@2x.png" class="bg" alt="" />
-            </div>
-            <div class="su_title">
-              <img class="icon" src="@/assets/images/FireFighting/ic_title_green@2x.png" alt="">
-              <div class="name">闅愭偅闅忔墜鎷�</div>
-            </div>
-            <div class="static_wrap">
-              <div class="item">
-                <img src="@/assets/images/FireFighting/ic_tibao@2x.png" alt="">
-                <div class="content">
-                  <div class="name">鎻愭姤闅愭偅鏁�</div>
-                  <div class="num"><span>{{ dataList4.dangerTotalNum }}</span>涓�</div>
-                </div>
-              </div>
-              <div class="item">
-                <img src="@/assets/images/FireFighting/ic_chuli@2x.png" alt="">
-                <div class="content">
-                  <div class="name">澶勭悊闅愭偅鏁�</div>
-                  <div class="num"><span class="today">{{ dataList4.dangerDealedNum }}</span>涓�</div>
-                </div>
-              </div>
-            </div>
-            <div class="su_title">
-              <img class="icon" src="@/assets/images/FireFighting/ic_title_green@2x.png" alt="">
-              <div class="name">鍛婅淇℃伅</div>
-            </div>
-            <div class="list two-swiper">
-              <div class="swiper-wrapper">
-                <div class="item two-swiper-slide swiper-slide" v-for="item, i in dataList7" :key="i">
-                  <div class="icon">
-                    <div class="circle"></div>
-                    <div class="line"></div>
+
+              <div class="police_wrap">
+                <div class="item" v-for="(item, i) in dataList2">
+                  <div class="head">
+                    <div class="name">{{ item.name }}</div>
+                    <div class="name">{{ item.num }}娆�</div>
                   </div>
-                  <div class="content">
-                    <div class="header">
-                      <div class="time">
-                        <span>{{ item.alarmTime }}</span>
-                        <span class="status" v-if="item.handleStatus == 1">宸叉牳瀹�</span>
-                        <span class="status" v-else-if="item.handleStatus == 2">鏈牳瀹�</span>
-                        <span class="status" v-else-if="item.handleStatus == 3">鏍稿疄涓�</span>
-                        <span v-else class="status">鏈牳瀹�</span>
-                      </div>
-                      <div class="have_time">宸插彂鐢焮{ item.haveTime }}</div>
+                  <FirePercent :color="policeColors[i]" :rate="item.rate" />
+                </div>
+              </div>
+
+              <div class="dispose_wrap">
+                <div class="tips">
+                  <div class="tips_title">
+                    <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                    <span>鎶ヨ瓒嬪娍</span>
+                  </div>
+                </div>
+                <div class="echart2" id="echart2"></div>
+              </div>
+
+              <div class="tips">
+                <div class="tips_title">
+                  <img src="@/assets/images/SecurityControl/ic_title_green@2x.png" alt="">
+                  <span>鎶ヨ鏄庣粏</span>
+                </div>
+              </div>
+
+              <div class="list two-swiper">
+                <div class="swiper-wrapper">
+                  <div class="item two-swiper-slide swiper-slide" v-for="(item, i) in dataList7" :key="i">
+                    <div class="icon">
+                      <div class="circle"></div>
+                      <div class="line"></div>
                     </div>
-                    <div class="wrap">
-                      <div class="title">
-                        <img class="xf" src="@/assets/images/FireFighting/ic_gaojing_red@2x.png" alt="">
-                        <span>{{ item.alarmTypeName }}</span>
+                    <div class="content">
+                      <div class="header">
+                        <div class="time">
+                          <span>{{ item.alarmTime }}</span>
+                          <span class="status" v-if="item.handleStatus == 1">宸叉牳瀹�</span>
+                          <span class="status" v-else-if="item.handleStatus == 2">鏈牳瀹�</span>
+                          <span class="status" v-else-if="item.handleStatus == 3">鏍稿疄涓�</span>
+                          <span v-else class="status">鏈牳瀹�</span>
+                        </div>
+                        <div class="have_time">宸插彂鐢焮{ item.haveTime }}</div>
                       </div>
-                      <div class="title">
-                        <img class="addr" src="@/assets/images/FireFighting/xiaofang_ic_weizhi@2x.png" alt="">
-                        <span>{{ item.regionName }}</span>
+                      <div class="wrap">
+                        <div class="title">
+                          <img class="xf" src="@/assets/images/FireFighting/ic_gaojing_red@2x.png" alt="">
+                          <span>{{ item.alarmTypeName }}</span>
+                        </div>
+                        <div class="title">
+                          <img class="addr" src="@/assets/images/FireFighting/xiaofang_ic_weizhi@2x.png" alt="">
+                          <span>{{ item.regionName }}</span>
+                        </div>
                       </div>
                     </div>
                   </div>
-                </div>
-                <div v-if="dataList7.length == 0" style="margin-top: 100px;" class="empty_wrap">
-                  <img src="@/assets/images/default_empty.png" alt="">
+                  <div v-if="dataList7.length == 0" style="margin-top: 50px;" class="empty_wrap">
+                    <img src="@/assets/images/default_empty.png" alt="">
+                  </div>
                 </div>
               </div>
+
             </div>
           </div>
         </div>
@@ -340,6 +367,7 @@
 const date = ref(dayjs().format('YYYY.MM.DD'))
 const week = ref(weekMap[new Date().getDay()])
 const time = ref(dayjs().format('HH:mm:ss'))
+var dateType = ref('')
 setInterval(() => {
   date.value = dayjs().format('YYYY-MM-DD')
   week.value = weekMap[new Date().getDay()]
@@ -360,6 +388,12 @@
   // let maxNum =
   const option = {
     barMaxWidth: 3,
+    mapLocation: {
+      x: '0',
+      y: '0',
+      width: '100%',
+      height: '100%'
+    },
     polar: {
       radius: '80%'
     },
@@ -731,23 +765,25 @@
 }
 
 const dataList1 = ref([])
-const policeColors = ['#01D9FE', '#FE5501', '#0193FE', '#28F0C4']
+const policeColors = ['#FE5501', '#01D9FE', '#01FE9D', '#FFF306']
 const dataList2 = ref([])
-const getData2 = () => {
-  // let temp = []
-  // temp.push({ name: '鐪熷疄鎶ヨ鏁�', num: 10, rate: 20 })
-  // temp.push({ name: '璇姤璀︽暟', num: 30, rate: 60 })
-  // temp.push({ name: '宸茶В闄�', num: 20, rate: 40 })
-  // temp.push({ name: '澶勭悊涓�', num: 8, rate: 16 })
-  // dataList2.value = temp
-  // return
+let dayData = ref([])
+
+const getDayData = () => {
   getFightingalarmData().then(res => {
+    dayData.value = res.data || {}
+  })
+}
+
+const getData2 = (type) => {
+  dateType.value = type
+  getFightingalarmData({ type: dateType.value }).then(res => {
     const result = res.data || {}
     let temp = []
-    temp.push({ name: '鐪熷疄鎶ヨ鏁�', num: result.realNum, rate: (result.realNum / result.totalNum) * 100 })
+    temp.push({ name: '宸插鐞�', num: result.liftNum, rate: (result.liftNum / result.totalNum) * 100 })
+    temp.push({ name: '鏈鐞�', num: result.processingNum, rate: (result.processingNum / result.totalNum) * 100 })
+    temp.push({ name: '姝f姤璀︽暟', num: result.liftNum - result.errNum, rate: ((result.liftNum - result.errNum) / result.totalNum) * 100 })
     temp.push({ name: '璇姤璀︽暟', num: result.errNum, rate: (result.errNum / result.totalNum) * 100 })
-    temp.push({ name: '宸茶В闄�', num: result.liftNum, rate: (result.liftNum / result.totalNum) * 100 })
-    temp.push({ name: '澶勭悊涓�', num: result.processingNum, rate: (result.processingNum / result.totalNum) * 100 })
     dataList2.value = temp
   })
 }
@@ -761,12 +797,10 @@
 }
 const initEchart2 = () => {
   var myChart = echarts.init(document.querySelector('.echart2'))
-  // 鐢熸垚鏁版嵁鍜屾棩鏈�
   // 绀轰緥鏁版嵁
   const data1 = dataList3.value.map(i => i.realNum)
   const data2 = dataList3.value.map(i => i.processingNum)
   const data3 = dataList3.value.map(i => i.liftNum)
-  const data4 = dataList3.value.map(i => i.errNum)
   const months = dataList3.value.map(i => {
     return i.startDate.substring(5, 7) + '鏈�'
   })
@@ -774,17 +808,17 @@
 
   const option = {
     legend: {
-      x: "center",
+      x: "right",
       textStyle: {
-        color: "#FFFFFF", // 鍥句緥鏂囧瓧璁句负鐧借壊
+        color: "#FFFFFF",
         fontSize: 12
       },
       icon: 'circle',
-      top: '6%',
-      itemWidth: 8,
-      itemHeight: 8,
+      top: '0',
+      itemWidth: 10,
+      itemHeight: 10,
       itemGap: 20,
-      data: ['鍛婅鏁�', '杩涜涓�', '宸插鐞�', '璇姤鏁�'] // 鏇存柊鍥句緥鍚嶇О
+      data: ['鎶ヨ鏁�', '鏈鐞�', '宸插鐞�']
     },
     grid: {
       left: '2%',
@@ -812,7 +846,7 @@
       },
       axisLine: {
         lineStyle: {
-          color: '#1E294C'
+          color: '#D2E0FF'
         }
       },
       axisTick: {
@@ -827,7 +861,7 @@
       },
       axisLine: {
         lineStyle: {
-          color: '#A9AEB2'
+          color: '#D2E0FF'
         }
       },
       axisTick: {
@@ -845,7 +879,7 @@
     },
     series: [
       {
-        name: "鍛婅鏁�",
+        name: "鎶ヨ鏁�",
         type: "bar",
         stack: "attendance",
         data: data1,
@@ -862,12 +896,12 @@
         barWidth: 6,
       },
       {
-        name: "杩涜涓�", // 杩熷埌鏁版嵁
+        name: "鏈鐞�", // 杩熷埌鏁版嵁
         type: "bar",
         stack: "attendance",
         data: data2,
         itemStyle: {
-          color: '#28F0C4', // 杩熷埌鐨勯鑹�
+          color: '#FE5501', // 杩熷埌鐨勯鑹�
         },
         label: {
           show: false,
@@ -883,7 +917,7 @@
         stack: "attendance",
         data: data3,
         itemStyle: {
-          color: '#0193FE', // 璇峰亣鐨勯鑹�
+          color: '#01D9FE', // 璇峰亣鐨勯鑹�
         },
         label: {
           show: false,
@@ -892,19 +926,7 @@
         emphasis: {
           focus: "series",
         },
-      },
-      {
-        name: "璇姤鏁�", // 鍗曠嫭鐨勫姞鐝煴瀛�
-        type: "bar",
-        data: data4,
-        barWidth: 6,
-        itemStyle: {
-          color: '#FEED01', // 楂樹寒鐨勭传鑹�
-        },
-        emphasis: {
-          focus: "series",
-        },
-      },
+      }
     ],
   }
   myChart.setOption(option)
@@ -970,9 +992,10 @@
       }
     })
     if (dataList9.value.length > 0) {
-      dataTotal9.value = Math.ceil(dataList9.value.length / 2)
-      dataListTemp9.value = dataList9.value.slice(0, 2)
+      dataTotal9.value = Math.ceil(dataList9.value.length / 4)
+      dataListTemp9.value = dataList9.value.slice(0, 4)
     }
+    console.log(dataListTemp9.value)
     initEcharts9()
   })
 }
@@ -989,13 +1012,13 @@
   // return
   if (dataIndex9.value == dataTotal9.value - 1 && num > 0) {
     dataIndex9.value = 0
-    dataListTemp9.value = dataList9.value.slice(0, 2)
+    dataListTemp9.value = dataList9.value.slice(0, 4)
   } else if (dataIndex9.value == 0 && num < 0) {
     dataIndex9.value = dataTotal9.value - 1
-    dataListTemp9.value = dataList9.value.slice(dataList9.value.length - 2, dataList9.value.length)
+    dataListTemp9.value = dataList9.value.slice(dataList9.value.length - 4, dataList9.value.length)
   } else {
     dataIndex9.value = dataIndex9.value + num
-    dataListTemp9.value = dataList9.value.slice(dataIndex9.value * 2, (dataIndex9.value + 1) * 2)
+    dataListTemp9.value = dataList9.value.slice(dataIndex9.value * 4, (dataIndex9.value + 1) * 4)
   }
   initEcharts9()
 }
@@ -1023,6 +1046,13 @@
     return false
   }
 }
+
+const sum = (array, field) => {
+  return array.reduce((accumulator, currentValue) => {
+    return accumulator + currentValue[field];
+  }, 0);
+}
+
 const loopFn1 = () => {
   var newSwiper1 = new Swiper('.one-swiper', {
     initialSlide: 0,
@@ -1036,52 +1066,99 @@
   var newSwiper1 = new Swiper('.two-swiper', {
     initialSlide: 0,
     direction: 'vertical', //绔栫洿鏂瑰悜
-    slidesPerView: 4,
-    autoplay: autoplayFlag(dataList7.value, 4, 4000),
+    slidesPerView: 3,
+    autoplay: autoplayFlag(dataList7.value, 3, 4000),
     observer: true, //淇敼swiper鑷繁鎴栧瓙鍏冪礌鏃讹紝鑷姩鍒濆鍖杝wiper
   })
 }
 
 onMounted(() => {
-  // getData1()
+  getDayData()
   getData2()
   getData3()
   getData4()
   getData5()
-  // getData6()
   getData7()
   getData8()
   setInterval(() => {
     getData2()
     getData3()
     getData4()
-    // getData6()
     getData7()
   }, 60 * 1000)
   setInterval(() => {
     getData5()
     getData8()
   }, 60 * 60 * 1000)
-
   setInterval(() => {
     changeData8(1)
     changeData9(1)
   }, 1000 * 5)
-
   setTimeout(() => {
     loopFn1()
     loopFn2()
   }, 12000)
-
-
 })
-
-
 </script>
 
 <style lang="scss" scoped>
 div {
   box-sizing: border-box;
+}
+.tips {
+  width: 100%;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  .tips_title {
+    flex-shrink: 0;
+    display: flex;
+    align-items: center;
+    margin-right: 30px;
+    img {
+      width: 17px;
+      height: 17px;
+      margin-right: 7px;
+    }
+    span {
+      font-weight: 500;
+      font-size: 16px;
+      color: #FFFFFF;
+    }
+  }
+  .tips_cates {
+    display: flex;
+    align-items: center;
+    .tips_cates_row {
+      font-weight: 600;
+      font-size: 14px;
+      color: #D2E0FF;
+      cursor: pointer;
+    }
+    .tips_cates_x {
+      margin: 0 8px;
+      font-weight: 600;
+      font-size: 14px;
+      color: #D2E0FF;
+    }
+    .active {
+      color: #0094EB !important;
+    }
+  }
+  .right {
+    display: flex;
+    align-items: center;
+
+    .num {
+      margin: 0 5px;
+    }
+
+    .icon {
+      width: 30px;
+      cursor: pointer;
+      /* height: 16px; */
+    }
+  }
 }
 
 .main_content {
@@ -1089,109 +1166,482 @@
   padding: 20px 25px 0;
 
   .left_box {
-    width: 450px;
+    /*width: 450px;*/
+    flex: 1;
+    margin-right: 20px;
 
-    .left_box_one {
+    .left_box_top {
       width: 100%;
-      margin-bottom: 20px;
+      display: flex;
+      align-items: start;
+      position: relative;
 
-      .list_wrap {
-        padding: 10px 0;
+      .left_box_top_znz {
+        width: 68px;
+        height: 68px;
+        position: absolute;
+        right: 0;
+        top: 120px;
+        img {
+          width: 100%;
+          height: 100%;
+        }
+      }
 
-        .list_content {
-          height: 170px;
-          overflow: hidden;
+      .left_box_top_left {
+        width: 450px;
+        flex-shrink: 0;
 
-          .line_wrap {
-            height: 34px !important;
+        .left_box_one {
+          width: 100%;
+          margin-bottom: 20px;
+
+          .left_content {
+            width: 100%;
+            height: 549px;
+            padding: 20px;
+            box-sizing: border-box;
+            background: rgba(255,255,255,0.03);
+
+            .list_wrap {
+              padding: 10px 0;
+
+              .list_wrap_footer {
+                width: 100%;
+                height: 40px;
+                display: flex;
+                align-items: center;
+                position: relative;
+                .separate {
+                  position: absolute;
+                  bottom: 0;
+                  left: 0;
+                  width: 100%;
+                  height: 2px;
+                  background-color: rgba(255, 255, 255, 0.2);
+                  /* background-color: red; */
+                  border-right: 4px solid #00F2F3;
+                  border-left: 4px solid #00F2F3;
+                }
+                .wrap_footer_item {
+                  display: flex;
+                  align-items: center;
+                  justify-content: center;
+                  flex: 2;
+                  white-space: nowrap;
+                  overflow: hidden;
+                  text-overflow: ellipsis;
+                }
+                .name {
+                  flex: 5;
+                  color: #00F2F3;
+                }
+              }
+
+              .list_content {
+                height: 204px;
+                overflow: hidden;
+
+                .line_wrap {
+                  height: 40px !important;
+                }
+              }
+
+              .list {
+                .line {
+                  display: flex;
+                  height: 40px;
+                  align-items: center;
+                  font-size: 14px;
+
+                  .item {
+                    flex: 2;
+                    display: flex;
+                    justify-content: center;
+                    /* margin: 0 6px; */
+                    align-items: center;
+                    white-space: nowrap;
+                    overflow: hidden;
+                    text-overflow: ellipsis;
+
+                  }
+
+                  .name {
+                    flex: 5;
+                    color: #00F2F3;
+                  }
+
+                  .warnning {
+                    color: #FEAF01;
+                  }
+                }
+
+                .header {
+                  background: rgba(134, 156, 201, 0.1);
+                  font-weight: 500;
+
+                  .item {
+                    border-right: 1px solid rgba(255, 255, 255, 0.2);
+
+                    &:nth-last-child(1) {
+                      border: none;
+                    }
+                  }
+                }
+
+                .separate {
+                  width: 100%;
+                  height: 2px;
+                  background-color: rgba(255, 255, 255, 0.2);
+                  /* background-color: red; */
+                  border-right: 4px solid #00F2F3;
+                  border-left: 4px solid #00F2F3;
+                }
+              }
+            }
+
+            .content_wrap {
+              height: 176px;
+
+              .list {
+                display: flex;
+                align-items: center;
+
+                .item {
+                  height: 116px;
+                  flex: 1;
+                  display: flex;
+                  flex-direction: column;
+                  justify-content: center;
+                  align-items: center;
+
+                  .num {
+                    margin-top: 12px;
+                    font-weight: bold;
+                    font-size: 32px;
+
+                  }
+
+                  .acc {
+                    background-image: -webkit-linear-gradient(top,
+                            #ffffff 0%,
+                            #c8ddff 66%,
+                            #95eefc 72%,
+                            #95eefc 100%);
+                    -webkit-background-clip: text;
+                    -webkit-text-fill-color: transparent;
+                  }
+
+                  .active {
+                    color: #00F2F3;
+                  }
+                }
+
+                .separate {
+                  width: 1px;
+                  height: 50px;
+                  background-color: rgba(255, 255, 255, 0.21);
+                }
+              }
+
+              .footer {
+                display: flex;
+
+                .icon {
+                  width: 40px;
+                  height: 41px;
+                  margin-right: 2px;
+                }
+
+                .content {
+                  flex: 1;
+                  font-size: 16px;
+                  height: 40px;
+                  display: flex;
+                  justify-content: space-between;
+                  align-items: center;
+                  padding: 0 20px;
+                  background: linear-gradient(270deg, rgba(1, 217, 254, 0) 0%, rgba(1, 217, 254, 0.19) 100%);
+                  border: 1px solid;
+                  border-image: linear-gradient(270deg, rgba(1, 217, 254, 0), rgba(1, 217, 254, 0.6)) 1 1;
+
+                  .num {
+                    font-size: 20px;
+                    font-weight: bold;
+
+                    span {
+                      font-size: 13px;
+                      color: #869CC9;
+                    }
+                  }
+                }
+              }
+            }
+
+          }
+
+        }
+      }
+      .left_box_top_right {
+        flex: 1;
+
+        .center_box_one {
+          width: 100%;
+          padding: 0 120px;
+          box-sizing: border-box;
+          .static_wrap {
+            display: flex;
+            justify-content: space-between;
+            align-items: center;
+            margin: 30px 0 54px;
+
+            .item {
+              display: flex;
+
+              img {
+                width: 61px;
+                height: 63px;
+                margin-right: 15px;
+              }
+
+              .content {
+                font-size: 15px;
+                .num {
+                  font-weight: bold;
+                  font-size: 30px;
+                  margin-right: 5px;
+                  background-image: -webkit-linear-gradient(top,
+                    rgba(254, 113, 1, 1) 0%,
+                    rgba(239, 202, 16, 1) 100%);
+                  -webkit-background-clip: text;
+                  -webkit-text-fill-color: transparent;
+                }
+                .num2 {
+                  background-image: -webkit-linear-gradient(top,
+                          #fff 0%,
+                          #dd4c26 50%,
+                          #e43724 100%);
+                }
+                .num5 {
+                  background-image: -webkit-linear-gradient(top,
+                          rgba(1, 217, 254, 1) 0%,
+                          rgba(1, 254, 242, 1) 100%);
+                }
+              }
+            }
           }
         }
+      }
+    }
 
-        .list {
-          .line {
-            display: flex;
-            height: 32px;
-            align-items: center;
-            font-size: 14px;
+    .left_box_bottom {
+      width: 100%;
+      display: flex;
+      flex-direction: column;
 
-            .item {
-              flex: 2;
+      .bottom_content {
+        width: 100%;
+        height: 168px;
+        display: flex;
+        align-items: center;
+        justify-content: space-between;
+        background: rgba(255,255,255,0.03);
+
+        .bottom_content_left {
+          width: 435px;
+          height: 100%;
+          padding: 20px;
+          box-sizing: border-box;
+
+          .list_wrap {
+            width: 100%;
+            height: 64px;
+            margin-top: 20px;
+
+            .list {
+              height: 100%;
               display: flex;
-              justify-content: center;
-              /* margin: 0 6px; */
-              align-items: center;
-              white-space: nowrap;
-              overflow: hidden;
-              text-overflow: ellipsis;
+              justify-content: space-evenly;
 
-            }
+              .item {
+                display: flex;
+                align-items: center;
+                position: relative;
 
-            .name {
-              flex: 5;
-              justify-content: flex-start;
-            }
+                .place {
+                  position: absolute;
+                  top: 120px;
+                  right: 70px;
+                  z-index: 999;
+                  font-size: 13px;
+                  color: #869CC9;
+                  width: 120px;
+                  text-align: center;
+                }
 
-            .warnning {
-              color: #FEAF01;
-            }
-          }
+                .icon {
+                  width: 70px;
+                  height: 70px;
+                  margin-right: 10px;
+                }
 
-          .header {
-            background: rgba(134, 156, 201, 0.1);
-            font-weight: 500;
+                .content {
+                  .num {
+                    font-size: 28px;
+                    font-weight: 500;
 
-            .item {
-              border-right: 1px solid rgba(255, 255, 255, 0.2);
+                    span {
+                      font-size: 14px;
+                      font-weight: 400;
+                    }
+                  }
 
-              &:nth-last-child(1) {
-                border: none;
+                  .la {
+                    font-size: 13px;
+                    color: #869CC9;
+                  }
+                }
               }
             }
           }
 
-          .separate {
-            width: 100%;
-            height: 2px;
-            background-color: rgba(255, 255, 255, 0.2);
-            /* background-color: red; */
-            border-right: 4px solid #00F2F3;
-            border-left: 4px solid #00F2F3;
-          }
         }
-      }
-    }
 
-    .left_box_two {
-      margin-bottom: 20px;
-
-      .police_wrap {
-        padding: 15px 20px 0;
-        height: 225px;
-
-        .item {
-          margin-bottom: 5px;
-
-          .head {
-            display: flex;
-            justify-content: space-between;
-            align-items: center;
-            font-size: 16px;
-            color: #FFFFFF;
-            margin-bottom: 8px;
-          }
-        }
-      }
-    }
-
-    .left_box_three {
-      .dispose_wrap {
-        height: 210px;
-        width: 100%;
-
-        .echart2 {
-          width: 100%;
+        .bottom_content_right {
+          flex: 1;
           height: 100%;
+          padding: 20px;
+          box-sizing: border-box;
+
+          .list_wrap2 {
+            display: flex;
+            align-items: center;
+            height: 85px;
+
+            .item1 {
+              width: 50%;
+              height: 0;
+            }
+            .item {
+              width: 50%;
+              height: 100%;
+              display: flex;
+              align-items: center;
+              position: relative;
+
+              .list_wrap2_info {
+                flex: 1;
+                height: 100%;
+                display: flex;
+                flex-direction: column;
+                justify-content: space-between;
+                .title {
+                  display: flex;
+                  align-items: start;
+                  color: #D2E0FF;
+
+                  .icon {
+                    width: 16px;
+                    margin-right: 8px;
+                  }
+
+                  span {
+                    font-weight: 400;
+                    font-size: 14px;
+                    color: #D2E0FF;
+                  }
+                }
+
+                .unit {
+                  bottom: 16px;
+                  left: 4px;
+                  width: 130px;
+                  margin-bottom: 6px;
+                  margin-top: 2px;
+
+                  span {
+                    font-weight: 500;
+                    color: #FFFFFF;
+
+                    &:nth-child(1) {
+                      font-size: 20px;
+                    }
+                    &:nth-child(2) {
+                      font-size: 13px;
+                    }
+                    /*font-size: 12px;*/
+                    /*font-weight: 400;*/
+                  }
+                }
+
+                .place {
+                  bottom: 16px;
+                  left: 4px;
+                  width: 130px;
+                  font-size: 13px;
+                  color: #869CC9;
+                }
+              }
+              .watergage_wrap {
+                flex-shrink: 0;
+                width: 100px;
+                height: 85px;
+                text-align: center;
+                position: relative;
+
+                .watergage {
+                  width: 100px;
+                  height: 85px;
+                }
+
+
+              }
+              .liquidlevel_wrap {
+                width: 100px;
+                height: 85px;
+                position: relative;
+
+                .size {
+                  width: 13px;
+                  height: 84px;
+                  position: absolute;
+                  top: 3px;
+                  right: 20px;
+                }
+
+                .liquidle_te {
+                  font-weight: 500;
+                  font-size: 18px;
+                  position: absolute;
+                  top: 99px;
+                  left: 0;
+                  width: 206px;
+                  display: flex;
+                  flex-direction: column;
+                  align-items: center;
+
+                  .placeT {
+                    font-size: 12px;
+                    color: #869CC9;
+                    margin-top: 6px;
+                  }
+                }
+
+                .liquidlevel {
+                  width: 220px;
+                  height: 400px;
+                  color: #fff;
+                  transform: scale(0.24);
+                  text-align: center;
+                  left: -70px;
+                  top: -154px;
+                }
+              }
+            }
+          }
+
         }
+
       }
     }
   }
@@ -1203,301 +1653,12 @@
     flex-direction: column;
     justify-content: space-between;
 
-    .center_box_one {
-      .static_wrap {
-        display: flex;
-        justify-content: space-between;
-        align-items: center;
-        margin: 30px 0 54px;
 
-        .item {
-          display: flex;
-
-          img {
-            width: 61px;
-            height: 63px;
-            margin-right: 15px;
-          }
-
-          .content {
-            font-size: 15px;
-
-            .num {
-              font-size: 12px;
-              color: #D2E0FF;
-
-              font-weight: bold;
-              font-size: 30px;
-              margin-right: 5px;
-              font-weight: 600;
-              background-image: -webkit-linear-gradient(top,
-                  #01D9FE 0%,
-                  #01D9FE 60%,
-                  #fff 100%);
-              -webkit-background-clip: text;
-              -webkit-text-fill-color: transparent;
-            }
-
-            .num2 {
-              background-image: -webkit-linear-gradient(top,
-                  #fff 0%,
-                  #dd4c26 50%,
-                  #e43724 100%);
-            }
-
-            .num3 {
-              background-image: -webkit-linear-gradient(top,
-                  #eb8131 0%,
-                  #d0a72c 50%,
-                  #e9bf43 100%);
-            }
-
-            .num4 {
-              background-image: -webkit-linear-gradient(top,
-                  #fff 0%,
-                  #78db91 50%,
-                  #6de8b0 100%);
-            }
-
-            .num5 {
-              background-image: -webkit-linear-gradient(top,
-                  #fff 0%,
-                  #3a83f5 50%,
-                  #3a83f5 100%);
-            }
-          }
-        }
-      }
-    }
 
     .center_box_two {
       width: 108%;
       display: flex;
       margin: 0 -4%;
-
-      .content_wrap {
-        flex: 1;
-        flex-shrink: 0;
-        margin-right: 20px;
-
-        .title_wrap {
-          display: flex;
-
-          .title {
-            flex: 1;
-          }
-        }
-
-        &:nth-last-child(1) {
-          margin-right: 0;
-        }
-
-        .header {
-          display: flex;
-          justify-content: space-between;
-          align-items: center;
-          font-weight: bold;
-          font-size: 16px;
-          text-shadow: 0px 2px 8px #01ABFE;
-          margin-bottom: 20px;
-
-          .left {
-            display: flex;
-            align-items: center;
-
-            .icon {
-              width: 14px;
-              height: 28px;
-              margin-right: 10px;
-            }
-          }
-
-          .right {
-            display: flex;
-            align-items: center;
-
-            .num {
-              margin: 0 40px;
-            }
-
-            .icon {
-              width: 30px;
-              cursor: pointer;
-              /* height: 16px; */
-            }
-          }
-        }
-
-        .list_wrap {
-          height: 206px;
-          background-image: url('@/assets/images/FireFighting/bg_wendu@2x.png');
-          background-size: cover;
-
-          .title {
-            height: 46px;
-            display: flex;
-            align-items: center;
-            color: #D2E0FF;
-            padding-left: 20px;
-
-            .icon {
-              width: 16px;
-              margin-right: 8px;
-            }
-          }
-
-          .list {
-            height: 160px;
-            display: flex;
-            justify-content: space-evenly;
-
-            .item {
-              display: flex;
-              align-items: center;
-              position: relative;
-
-              .place {
-                position: absolute;
-                top: 120px;
-                right: 70px;
-                z-index: 999;
-                font-size: 13px;
-                color: #869CC9;
-                width: 120px;
-                text-align: center;
-              }
-
-              .icon {
-                width: 70px;
-                height: 70px;
-                margin-right: 10px;
-              }
-
-              .content {
-                .num {
-                  font-size: 28px;
-                  font-weight: 500;
-
-                  span {
-                    font-size: 14px;
-                    font-weight: 400;
-                  }
-                }
-
-                .la {
-                  font-size: 13px;
-                  color: #869CC9;
-                }
-              }
-            }
-          }
-        }
-
-        .list_wrap2 {
-          display: flex;
-          align-items: center;
-          height: 206px;
-          background-image: url('@/assets/images/FireFighting/bg_wendu@2x.png');
-          background-size: cover;
-
-          .item {
-            width: 50%;
-            height: 100%;
-
-            .title {
-              height: 46px;
-              display: flex;
-              align-items: center;
-              color: #D2E0FF;
-              padding-left: 20px;
-
-              .icon {
-                width: 16px;
-                margin-right: 8px;
-              }
-            }
-
-            .watergage_wrap {
-              text-align: center;
-              position: relative;
-              left: 30px;
-
-              .watergage {
-                width: 130px;
-                height: 112px;
-              }
-
-              .unit {
-                font-weight: 500;
-                font-size: 18px;
-                position: relative;
-                bottom: 16px;
-                left: 4px;
-                width: 130px;
-                margin-bottom: 6px;
-                margin-top: 2px;
-
-                span {
-                  font-size: 12px;
-                  font-weight: 400;
-                }
-              }
-
-              .place {
-                position: relative;
-                bottom: 16px;
-                left: 4px;
-                width: 130px;
-                font-size: 13px;
-                color: #869CC9;
-              }
-            }
-
-            .liquidlevel_wrap {
-              position: relative;
-
-              /* border: 6px solid red; */
-              .liquidle_te {
-                font-weight: 500;
-                font-size: 18px;
-                position: absolute;
-                top: 99px;
-                left: 0;
-                width: 206px;
-                display: flex;
-                flex-direction: column;
-                align-items: center;
-
-                .placeT {
-                  font-size: 12px;
-                  color: #869CC9;
-                  margin-top: 6px;
-                }
-              }
-
-              /* .placeT {
-                position: relative;
-                bottom: 10px;
-                left: 4px;
-                font-size: 74px;
-                color: #869CC9;
-                opacity: 0;
-              } */
-
-              .liquidlevel {
-                width: 220px;
-                height: 400px;
-                transform: scale(0.27);
-                color: #fff;
-                text-align: center;
-                position: relative;
-                left: -8px;
-                top: -143px;
-              }
-            }
-          }
-        }
-      }
 
     }
   }
@@ -1506,258 +1667,180 @@
     width: 450px;
 
     .right_box_one {
-      .content_wrap {
-        height: 176px;
+      width: 100%;
+
+      .right_content {
+        width: 100%;
+        height: 775px;
+        padding: 20px;
+        box-sizing: border-box;
+        background: rgba(255,255,255,0.03);
 
         .list {
-          display: flex;
-          align-items: center;
+          height: 240px;
+          overflow: hidden;
+          margin-top: 15px;
+          scrollbar-width: none;
 
           .item {
-            height: 116px;
-            flex: 1;
             display: flex;
-            flex-direction: column;
-            justify-content: center;
-            align-items: center;
+            font-size: 13px;
+            color: #D2E0FF;
+            height: 68px !important;
 
-            .num {
-              margin-top: 12px;
-              font-weight: bold;
-              font-size: 32px;
+            .icon {
+              width: 40px;
+              display: flex;
+              flex-direction: column;
+              align-items: center;
+              padding-top: 10px;
 
-            }
-
-            .acc {
-              background-image: -webkit-linear-gradient(top,
-                  #ffffff 0%,
-                  #c8ddff 66%,
-                  #95eefc 72%,
-                  #95eefc 100%);
-              -webkit-background-clip: text;
-              -webkit-text-fill-color: transparent;
-            }
-
-            .active {
-              color: #00F2F3;
-            }
-          }
-
-          .separate {
-            width: 1px;
-            height: 50px;
-            background-color: rgba(255, 255, 255, 0.21);
-          }
-        }
-
-        .footer {
-          display: flex;
-
-          .icon {
-            width: 40px;
-            height: 41px;
-            margin-right: 2px;
-          }
-
-          .content {
-            flex: 1;
-            font-size: 16px;
-            height: 40px;
-            display: flex;
-            justify-content: space-between;
-            align-items: center;
-            padding: 0 20px;
-            background: linear-gradient(270deg, rgba(1, 217, 254, 0) 0%, rgba(1, 217, 254, 0.19) 100%);
-            border: 1px solid;
-            border-image: linear-gradient(270deg, rgba(1, 217, 254, 0), rgba(1, 217, 254, 0.6)) 1 1;
-
-            .num {
-              font-size: 20px;
-              font-weight: bold;
-
-              span {
-                font-size: 13px;
-                color: #869CC9;
-              }
-            }
-          }
-        }
-      }
-    }
-
-    .right_box_two {
-      .su_title {
-        display: flex;
-        align-items: center;
-        font-weight: 500;
-        font-size: 16px;
-        margin: 20px;
-
-        .icon {
-          width: 17px;
-          height: 17px;
-          margin-right: 7px;
-        }
-      }
-
-      .static_wrap {
-        display: flex;
-        justify-content: space-evenly;
-        align-items: center;
-        height: 110px;
-
-        .item {
-          display: flex;
-          align-items: center;
-
-          img {
-            width: 80px;
-            height: 80px;
-            margin-right: 8px;
-          }
-
-          .content {
-            font-size: 14px;
-
-            .num {
-              font-size: 12px;
-              color: #D2E0FF;
-              margin-top: 8px;
-
-              span {
-                font-weight: bold;
-                font-size: 24px;
-                margin-right: 4px;
-                font-weight: 600;
-                background-image: -webkit-linear-gradient(top,
-                    #01D9FE 0%,
-                    #01D9FE 60%,
-                    #fff 100%);
-                -webkit-background-clip: text;
-                -webkit-text-fill-color: transparent;
+              .circle {
+                width: 7px;
+                height: 7px;
+                border-radius: 50%;
+                background: #01D9FE;
+                box-shadow: 0px 0px 1px 4px #34788f;
+                /* opacity: 0.52; */
               }
 
-              .today {
-                background-image: -webkit-linear-gradient(top,
-                    #fff 0%,
-                    #FFB120 50%,
-                    #FFB120 100%);
+              .line {
+                margin-top: 3px;
+                width: 1px;
+                flex: 1;
+                background-color: #153947;
               }
             }
-          }
-        }
-      }
 
-      .list {
-        height: 320px;
-        overflow: hidden;
-        margin-top: 15px;
-        scrollbar-width: none;
-
-        .item {
-          display: flex;
-          font-size: 13px;
-          color: #D2E0FF;
-          height: 80px !important;
-
-          .icon {
-            width: 40px;
-            display: flex;
-            flex-direction: column;
-            align-items: center;
-            padding-top: 10px;
-
-            .circle {
-              width: 7px;
-              height: 7px;
-              border-radius: 50%;
-              background: #01D9FE;
-              box-shadow: 0px 0px 1px 4px #34788f;
-              /* opacity: 0.52; */
-            }
-
-            .line {
-              margin-top: 3px;
-              width: 1px;
+            .content {
               flex: 1;
-              background-color: #153947;
+
+              .header {
+                display: flex;
+                justify-content: space-between;
+                align-items: center;
+
+                .time {
+                  display: flex;
+                  align-items: center;
+
+                  .status {
+                    height: 18px;
+                    line-height: 18px;
+                    border-radius: 2px;
+                    padding: 2px 4px;
+                    border: 1px solid #869CC9;
+                    font-size: 12px;
+                    margin-left: 8px;
+                  }
+                }
+
+                .have_time {
+                  font-size: 12px;
+                  color: #D2E0FF;
+
+                  span {
+                    color: #FEAF01;
+                  }
+                }
+              }
+
+              .wrap {
+                height: 34px;
+                background: linear-gradient(270deg, rgba(254, 85, 1, 0) 0%, rgba(254, 85, 1, 0.19) 100%);
+                border-radius: 2px 0px 0px 2px;
+                display: flex;
+                align-items: center;
+                border: 1px solid;
+                margin-bottom: 20px;
+                margin-top: 8px;
+                padding: 0 10px;
+                border-image: linear-gradient(270deg, rgba(254, 85, 1, 0), rgba(254, 85, 1, 0.6)) 1 1;
+
+                .title {
+                  flex: 4;
+                  font-weight: bold;
+                  font-size: 15px;
+                  color: #FFFFFF;
+                  display: flex;
+                  align-items: center;
+
+                  span {
+                    margin-left: 4px;
+                  }
+
+                  .xf {
+                    width: 14px;
+                    height: 14px;
+                  }
+
+                  .addr {
+                    width: 12px;
+                    height: 12px;
+                  }
+                }
+
+                .address {
+                  flex: 6;
+                }
+              }
+            }
+          }
+        }
+
+        .dispose_wrap {
+          height: 210px;
+          width: 100%;
+          position: relative;
+
+          .tips {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            justify-content: space-between;
+            position: absolute;
+            top: 0;
+            left: 0;
+            .tips_title {
+              display: flex;
+              align-items: center;
+              img {
+                width: 17px;
+                height: 17px;
+                margin-right: 7px;
+              }
+              span {
+                font-weight: 500;
+                font-size: 16px;
+                color: #FFFFFF;
+              }
             }
           }
 
-          .content {
-            flex: 1;
+          .echart2 {
+            width: 100%;
+            height: 100%;
+          }
+        }
 
-            .header {
+        .police_wrap {
+          padding: 15px 0;
+          height: 225px;
+
+          .item {
+            margin-bottom: 5px;
+
+            .head {
               display: flex;
               justify-content: space-between;
               align-items: center;
-
-              .time {
-                display: flex;
-                align-items: center;
-
-                .status {
-                  height: 18px;
-                  line-height: 18px;
-                  border-radius: 2px;
-                  padding: 2px 4px;
-                  border: 1px solid #869CC9;
-                  font-size: 12px;
-                  margin-left: 8px;
-                }
-              }
-
-              .have_time {
-                font-size: 12px;
-                color: #D2E0FF;
-
-                span {
-                  color: #FEAF01;
-                }
-              }
-            }
-
-            .wrap {
-              height: 34px;
-              background: linear-gradient(270deg, rgba(254, 85, 1, 0) 0%, rgba(254, 85, 1, 0.19) 100%);
-              border-radius: 2px 0px 0px 2px;
-              display: flex;
-              align-items: center;
-              border: 1px solid;
-              margin-bottom: 20px;
-              margin-top: 8px;
-              padding: 0 10px;
-              border-image: linear-gradient(270deg, rgba(254, 85, 1, 0), rgba(254, 85, 1, 0.6)) 1 1;
-
-              .title {
-                flex: 4;
-                font-weight: bold;
-                font-size: 15px;
-                color: #FFFFFF;
-                display: flex;
-                align-items: center;
-
-                span {
-                  margin-left: 4px;
-                }
-
-                .xf {
-                  width: 14px;
-                  height: 14px;
-                }
-
-                .addr {
-                  width: 12px;
-                  height: 12px;
-                }
-              }
-
-              .address {
-                flex: 6;
-              }
+              font-size: 16px;
+              color: #FFFFFF;
+              margin-bottom: 8px;
             }
           }
         }
+
       }
     }
   }

--
Gitblit v1.9.3