Kaynağa Gözat

问题修复

13127578837 1 yıl önce
ebeveyn
işleme
3f4a454445

+ 1 - 1
proxy-dev.js

@@ -18,7 +18,7 @@ module.exports = {
             // target: 'http://32.0.15.107:8080/prod-api', //线上-107测试服务器
             target: "http://park.usky.cn/prod-api", //线上-20正式服务器
             //     target: 'http://172.16.120.165:801/dev-api', //165
-            //     target: 'http://32.0.15.107:8080/api/', //闵行线上发布时
+                // target: 'http://32.0.15.107:8080/api/', //闵行线上发布时
             //     ws: true, // 代理websockets
             changeOrigin: true,
             pathRewrite: {

+ 0 - 7
src/App.vue

@@ -8,7 +8,6 @@
                 <router-view></router-view>
       <!-- </keep-alive> -->
       <timeSelect :select="select" />
-      <!-- <el-col  id="mapF"></el-col> -->
     </div>
     <div class="bg"></div>
     
@@ -41,13 +40,10 @@
 </template>
 
 <script>
-// import linstener from "@c/mixins/linstener";
-// import map from "@c/mixins/map-data1";
 import heads from "@v/head";
 import timeSelect from "@v/time-select";
 export default {
   components: { heads, timeSelect },
-//   mixins: [linstener, map],
   name: "App",
   data() {
     return {
@@ -78,14 +74,11 @@ export default {
 
   watch: {
     $route(to, from) {
-      console.log(to,from)
       if(to.fullPath == "/enforcement-dynamic"){
         this.select = "jinyinian"
       }else{
         this.select = "dangyue"
       }
-      // console.log(from.path); //从哪来
-      // console.log(to); //到哪去
 
       if (this.stores.$state.leftBtn) {
         this.stores.$state.leftBtn = true; //左侧收起按钮

BIN
src/assets/img/sadian/dfx.png


BIN
src/assets/img/sadian/gfx.png


BIN
src/assets/img/sadian/jgfx.png


BIN
src/assets/img/sadian/ybfx.png


+ 1 - 5
src/components/category/index3.vue

@@ -126,12 +126,8 @@ export default {
                         name:"风险等级",
                         type: "bar",
                         barWidth: 15,
-                        itemStyle: {
-                            color: this.color,
-                            borderRadius: this.borderRadius,
-                        },
                         data: zData,
-                    },
+                    }
                 ],
             });
         },

+ 4 - 4
src/components/fire-pie/index.vue

@@ -11,7 +11,7 @@ export default {
     radius: { type: Number, default: () => 120 },
     color: {
       type: Array,
-      default: () => ["#e2e244", "#17dOeb", "#e66a56", "#2b72f6", "#12a260", "#d350b3", "#eea600", "#eb4a4c", "#72c651", "#13DFE8", "#F6E73F", "#13DFE8", "#F6E73F"],
+      default: () => ["#3f8a3f", "#68afc1", "#5081c5", "#c3a102", "#d17100", "#b72727", "#009b8a", "#71a382", "#1c6093","#a4294f"],
     },
   },
   data() {
@@ -35,7 +35,7 @@ export default {
           echartsMap = this.$echarts.init(this.$refs.echartD);
         }
        echartsMap.setOption({
-        color: ["#17d0eb", "#e66a56", "#2b72f6", "#12a260", "#d350b3", "#eea600", "#eb4a4c", "#72c651", "#F6E73F","#3059fd"],
+        color: ["#3f8a3f", "#68afc1", "#5081c5", "#c3a102", "#d17100", "#b72727", "#009b8a", "#71a382", "#1c6093","#a4294f"],
         tooltip: {
           confine: true,
           trigger: "item",
@@ -45,13 +45,13 @@ export default {
         },
         legend: {
           // icon:'rect',
-          itemWidth: 20,
+          itemWidth: 10,
           // orient: 'vertical',
           bottom: 0,
           textStyle: {
             show: true,
             color: "#fff",
-            fontSize: "0.175rem",
+            fontSize: "0.15rem",
             fontFamily: "syhtN",
             width: this.isVs ? 0 : 85,
             overflow: "truncate",

+ 5 - 2
src/components/mixins/map-data1.js

@@ -16,7 +16,6 @@ export default {
     },
     methods: {
         streetTownMap(name) {
-            console.log(name)
             return name
         },
         /**
@@ -311,7 +310,11 @@ export default {
 
                                 type == "三合一" ? this.stores.sadianIcon.shy : type == "实时警情" ? this.stores.sadianIcon.ssjq :
 
-                                type == "本年度重点事项推进情况" && val.status == 1 ? this.stores.sadianIcon.ywc : type == "本年度重点事项推进情况" && val.status == 2 ? this.stores.sadianIcon.jxz : type == "本年度重点事项推进情况" && val.status == 3 ? this.stores.sadianIcon.zbz : this.stores.sadianIcon.trsy,
+                                type == "本年度重点事项推进情况" && val.status == 1 ? this.stores.sadianIcon.ywc : type == "本年度重点事项推进情况" && val.status == 2 ? this.stores.sadianIcon.jxz : type == "本年度重点事项推进情况" && val.status == 3 ? this.stores.sadianIcon.zbz : 
+
+                                type == "高风险" ? this.stores.sadianIcon.gfx : type == "较高风险" ? this.stores.sadianIcon.jgfx : type == "一般风险" ? this.stores.sadianIcon.ybfx : type == "低风险" ? this.stores.sadianIcon.dfx : 
+                                
+                                this.stores.sadianIcon.trsy,
 
                             // this.jqzhczIcon3 : val.type == "4" ?
                             // this.jqzhczIcon4 : val.type == "5" ?

+ 8 - 8
src/components/pie/index5.vue

@@ -33,10 +33,10 @@
             echartsMap = this.$echarts.init(this.$refs.echartD);
         }
          let colorList = [
-                'red',
-           'orange',
-           'yellow',
-           'green',
+                '#b72727',
+           '#c3a102',
+           '#3f8a3f',
+           '#009b8a',
           ]
         for(let i=0;i<data.length;i++){
           data[i].label = {
@@ -45,10 +45,10 @@
         }
         let option = {
           color: [
-           'red',
-           'orange',
-           'yellow',
-           'green',
+           '#b72727',
+           '#c3a102',
+           '#3f8a3f',
+           '#009b8a',
           ],
           legend: {
             // icon:'rect',

+ 5 - 0
src/http/api.js

@@ -15,6 +15,7 @@ let api = {
         streetDataList: "/prod-api/service-fire/demStreetTown/streetDataList", //街镇数据
         hazardsNoticeList: "/prod-api/service-fire/demFireHazardsNotice/hazardsNoticeList", //挂牌督改情况
         hazardsNoticeStatistic: "/prod-api/service-fire/demFireHazardsNotice/hazardsNoticeStatistic", //挂牌督改统计情况
+        infoList: "/prod-api/service-fire/demFireTypicalCase/infoList", //典型火灾案例
 
     },
     siaeall: {
@@ -75,6 +76,9 @@ let api = {
         demFireStationList: "/prod-api/service-fire/demFireStation/demFireStationList", //消防站撒点
         demStreetMicroStationList: "/prod-api/service-fire/demStreetMicroStation/demStreetMicroStationList", //微型消防站撒点
         demHighRiseList: "/prod-api/service-fire/demHighRise/demHighRiseList", //高层建筑撒点
+        // gridMemberList: "/prod-api/service-fire/demNewInspectRecord/siAeAllCollect", //网格人员 SAA
+        gridMemberList: "/prod-api/service-fire/demGridMember/gridMemberList", //网格人员 SAA
+        regionInfo: "/prod-api/service-fire/baseRegionStatistic/regionInfo", //闵行区基本情况
 
     },
 
@@ -99,6 +103,7 @@ let api = {
         alertStatisticsByHouse2: "/api/jcjAjxx/alertStatisticsByHouse", //警情时段分布 杨
         alertStatisticsByMonth2: "/api/jcjAjxx/alertStatisticsByMonth", //历史警情趋势图 杨
         alertStatisticsByMonth3: "/api/jcjAjxx/alertStatistics", //警情处置 杨
+
     },
     city: {
         storeScatterer: "/prod-api/service-fire/demStore/storeScatterer", //仓库 詹

+ 5 - 2
src/http/axios.js

@@ -1,7 +1,10 @@
 import axios from "axios";
 import { ElMessage } from "element-plus";
-if (process.env.NODE_ENV !== "development") axios.defaults.baseURL = process.env.VUE_APP_BASE_URL;
-
+if (process.env.NODE_ENV !== "development") {
+  axios.defaults.baseURL = process.env.VUE_APP_BASE_URL;
+  axios.defaults.timeout = 5000
+}
+// console.log( axios.defaults)
 // 请求拦截
 axios.interceptors.request.use(
   (config) => {

+ 4 - 0
src/store/modules/public.js

@@ -83,6 +83,10 @@ const useStore = defineStore("public", {
             ywc: require("@a/img/sadian/ywc.png"), //已完成
             jxz: require("@a/img/sadian/jxz.png"), //进行中
             zbz: require("@a/img/sadian/zbz.png"), //招标中
+            gfx: require("@a/img/sadian/gfx.png"), //招标中
+            jgfx: require("@a/img/sadian/jgfx.png"), //招标中
+            ybfx: require("@a/img/sadian/ybfx.png"), //招标中
+            dfx: require("@a/img/sadian/dfx.png"), //招标中
 
         },
 

+ 44 - 15
src/views/enforcement-dynamic.vue

@@ -161,6 +161,14 @@
                                 <!-- <span>{{alFsdAllNumber.checkNumber || 0}}</span> -->
                                 <span>345</span>
                         </el-col>
+                        <el-col>
+                            <span>承诺数</span>
+                            <span>38</span>
+                        </el-col>
+                        <el-col>
+                            <span>非承诺数</span>
+                            <span>111</span>
+                        </el-col>
                     </el-row>
                 </div>
             </div>
@@ -419,7 +427,12 @@
                 </div> -->
                 
                 <div class="treeMap">
-                    <h4 class="h4Top">投诉类型排名</h4>
+                    <h4 class="h4Top">投诉类型排名
+                         <div class="gp">
+                                <span>满意数<span>1001</span></span>
+                                <span>不满意数<span>12</span></span>
+                        </div>
+                    </h4>
                     <category
                         ref="category"
                         v-if="reportComplaintList.length > 0"
@@ -1024,18 +1037,20 @@ export default {
          * @api接口请求
          */
         async adstraLicenseApi() {
+            console.log(33333333)
             let res = await this.$axios.get(
                 this.$api.siaeall.lawTrendList2 +
                     "?" +
                     this.$qs.stringify({
-                        // startTime: this.stores.timeList[0],
-                        // endTime:  this.stores.timeList[1],
+                        startTime: this.stores.timeList[0],
+                        endTime:  this.stores.timeList[1],
                         moduleType: "adstraLicense",
                     })
             );
 
             if (res.status === "SUCCESS") {
-                this.alFsdAllNumber = res.data;
+                console.log(1111111,res)
+                // this.alFsdAllNumber = res.data;
             }
         },
 
@@ -1344,8 +1359,8 @@ export default {
             top: 0.64rem;
             position: absolute;
             > .el-col {
-                margin-top: 0.3rem;
-                height: 0.637rem;
+                margin-top: 0.1rem;
+                height: 0.40rem;
                 border-radius: 4px;
                 background-size: 100% 100%;
                 padding: 0 0.3rem;
@@ -1354,10 +1369,10 @@ export default {
                 align-items: center;
                 box-shadow: inset 0 0 0.2rem 0.0125rem #30cfff;
                 border: 1px solid transparent;
-                font-size: 0.2rem;
+                font-size: 0.18rem;
                 @include color_primary($color-primary3);
                 span:nth-child(2) {
-                    font-size: 0.3rem;
+                    font-size: 0.25rem;
                     @include color_primary($color-primary1);
                 }
             }
@@ -1502,7 +1517,23 @@ export default {
     overflow: hidden;
 }
 
-
+.gp{
+        font-size: 12px;
+        font-family: "微软雅黑";
+        float:right;
+        margin-top:10px;
+        >span{
+                margin-right:10px;
+                >span{
+                        font-size: 14px;
+                        font-weight: 700;
+                        margin-left:6px;
+                }
+        }
+        >span:nth-child(2){
+                margin-right: 0px;
+        }
+}
 ::v-deep .monitor-list .el-input__inner{
         border-radius: 0 !important;
         border:none;
@@ -1532,6 +1563,7 @@ export default {
         }
 
     }
+
 </style>
 <style>
 .el-progress{
@@ -1549,17 +1581,14 @@ export default {
         top:1px;
         left:50%;
         z-index: 10;
-}
-.rightBox1:nth-child(1){}{
-
 }
 .j1 .el-progress-bar__inner,.j3 .el-progress-bar__inner{
-        background: green;
+        background: #3f8a3f;
 }
 .j2 .el-progress-bar__inner{
-        background: blue;
+        background: #5081c5;
 }
 .j4 .el-progress-bar__inner{
-        background: red;
+        background: #b72727;
 }
 </style>

+ 114 - 28
src/views/fire-data-analysis.vue

@@ -2,6 +2,42 @@
     <el-row class="contentBox">
         <transition name="el-fade-in-linear">
             <el-col class="leftBox" v-show="stroes.$state.leftBtn">
+                <div class="leftTop2">
+                    <h4>火灾信息统计</h4>
+                    <div class="threeBox">
+                        <div class="flexBoxE11">
+                            <el-row class="hzxxtj">
+                                <el-col :span="8" >
+                                    财产损失:<Strong>{{ hzxxtj.a1 }}</Strong> 万
+                                </el-col>
+                                <el-col :span="8">
+                                    火灾总数:<Strong>{{ hzxxtj.a2 }}</Strong> 起
+                                </el-col>
+                                <el-col :span="8">
+                                    重大火灾:<Strong>{{ hzxxtj.a3 }}</Strong> 起
+                                </el-col>
+                                <el-col :span="8">
+                                    亡人数:<Strong>{{ hzxxtj.a4 }}</Strong> 人
+                                </el-col>
+                                <el-col :span="8">
+                                    过火面积:<Strong>{{ hzxxtj.a5 }}</Strong>㎡
+                                </el-col>
+                                <el-col :span="8">
+                                    较大火灾:<Strong>{{ hzxxtj.a6 }}</Strong> 起
+                                </el-col>
+                                <el-col :span="8">
+                                    伤人数:<Strong>{{ hzxxtj.a7 }}</Strong>人
+                                </el-col>
+                                <el-col :span="8">
+                                   特大火灾:<Strong>{{ hzxxtj.a8 }}</Strong>起
+                                </el-col>
+                                <el-col :span="8">
+                                    轻微火灾:<Strong>{{ hzxxtj.a9 }}</Strong> 起
+                                </el-col>
+                            </el-row>
+                        </div>
+                    </div>
+                </div>
                 <div class="leftBot">
                     <div style="display: flex">
                         <h4>火灾原因占比</h4>
@@ -25,7 +61,7 @@
                         <div
                             class="flexBoxE"
                             :style="{
-                                'padding-top': isVsFirePie ? '0.75rem' : 0,
+                                'padding-top': isVsFirePie ? '0.02rem' : 0,
                             }"
                         >
                             <el-form
@@ -56,7 +92,7 @@
                                 ref="firePie1"
                                 :dataMap="fireCauseRatioList"
                                 :isVs="isVsFirePie"
-                                :radius="isVsFirePie ? 80 : 80"
+                                :radius="isVsFirePie ? 60 : 60"
                             ></fire-pie>
                         </div>
                         <div class="line" v-show="isVsFirePie"></div>
@@ -93,8 +129,8 @@
                             ></fire-pie>
                         </div>
                         <!-- <div class="VS" @click="vsClick('isVsFirePie')" :style="{ 'font-size': isVsFirePie ? '.15rem' : '.15rem' }">
-              {{ isVsFirePie ? "返回" : "对比" }}
-            </div> -->
+                            {{ isVsFirePie ? "返回" : "对比" }}
+                        </div> -->
                     </el-row>
                 </div>
                 <div class="leftTop">
@@ -277,21 +313,21 @@
                         >
                             <el-button
                                 size="mini"
-                                @click="tabsArea = 'qg'"
+                                @click="fireCase(1)"
                                 :class="{ btnClick: tabsArea == 'qg' }"
                             >
                                 全国
                             </el-button>
                             <el-button
                                 size="mini"
-                                @click="tabsArea = 'bs'"
+                                @click="fireCase(2)"
                                 :class="{ btnClick: tabsArea == 'bs' }"
                             >
                                 本市
                             </el-button>
                             <el-button
                                 size="mini"
-                                @click="tabsArea = 'bq'"
+                                @click="fireCase(3)"
                                 :class="{ btnClick: tabsArea == 'bq' }"
                             >
                                 本区
@@ -299,21 +335,9 @@
                         </div>
                     </div>
                         <div class="contentNew" style="height:44vh;overflow-y: scroll;">
-                            <p v-if="tabsArea=='qg'">1、2023年1月15日,辽宁省盘锦浩业化工有限公司烷基化装置在维修过程中发生泄漏爆炸着火事故,造成13人死亡、35人受伤。国务院安委会对该起事故查处实行挂牌督办。</p>
-                            <p v-if="tabsArea=='qg'">2、2月2日晚11点40分左右,广安市广安区广福街仁和花园发生一起室内居民住宅火灾事故,火灾致4人死亡,3人受伤。</p>
-                            <p v-if="tabsArea=='qg'">3、2023年4月17日14时4分,位于武义县泉溪镇凤凰山工业区的浙江伟嘉利工贸有限公司一厂房起火,三楼有人被困。截至4月18日4时许,事故现场已完成两轮搜救工作,发现遇难人员11名;</p>
-                            <p v-if="tabsArea=='qg'">4、2023年2月16日上午6时07分左右,渭塘镇珍珠湖路1号发生火灾,7时10分火势扑灭,现场搜救已完成。事故造成6人死亡,另有28人送医院救治。</p>
-                            <p v-if="tabsArea=='qg'">5、6月1日0时01分海宁市黄湾镇闸口村一临时工棚发生一起爆燃事故。事故造成5人死亡。</p>
-                            <p v-if="tabsArea=='qg'">6、北京丰台长峰医院火灾:2023年4月18日北京丰台长峰医院发生火灾。截至19日9时,长峰医院火灾中转院的71人经救治无效29人遇难,其中,26人为住院患者、1名护士、1名医生、3名其他人员。</p>
-                            <p v-if="tabsArea=='qg'">7、山西省吕梁市临县一小区火灾:2023年5月7日,山西省吕梁市临县一小区一单元电缆井内发生火灾,涉火建筑高32层共有住户104户。经紧急疏散救援5人送医后抢救无效死亡。</p>
-                            <p v-if="tabsArea=='qg'">8、2023年5月25日,河南省郑州河南真实生物科技有限公司起火事故造成3人死亡。</p>
-
-                            <p v-if="tabsArea=='bs'">1、2023年5月2日,上海市嘉定区安亭镇一高层小区发生火灾,造成4人死亡。</p>
-                            <p v-if="tabsArea=='bs'">2、2023年5月18日,上海市奉贤区青村镇一农村自建房火灾事故,造成5人死亡。</p>
-                            <p v-if="tabsArea=='bs'">3、2023年6月18日,上海市浦东新区康桥镇一老旧小区火灾,造成4人死亡。</p>
-
-
-                            <p v-if="tabsArea=='bq'">1、2023年2月3日清晨6时许,上海市闵行区华宁路191弄红旗三村小区一居民家中发生火灾。事发后,消防部门迅速到场处置。截至当天,该起火灾造成一人死亡,一人受伤。</p>
+                            <p v-for="(item,index) in fireCaseData" :key="index">
+                                {{ index + 1}}、{{ item.caseBrief }} <a :href="item.fileUrl" v-if="item.fileUrl" target="_blank" style="color:#73fbfd">查看详情</a>
+                            </p>
                             
                         </div>  
                 </el-col>
@@ -441,6 +465,19 @@ export default {
     mixins: [linstener, map, ],
     data() {
         return {
+            hzxxtj:{
+                a1:100,
+                a2:200,
+                a3:100,
+                a4:100,
+                a5:100,
+                a6:100,
+                a7:100,
+                a8:100,
+                a9:100,
+
+            },//火灾信息统计
+            fireCaseData:[],//火灾案例
             pieData:[
                 {value:2,name:"亡人火灾数"},
                 {value:138,name:"本月全区火灾总数"},
@@ -570,13 +607,13 @@ export default {
         this.initMap();
     },
     methods: {
-        load() {},
         tableRowClassName({ row, column }) {
             if (column.property === "deathToll" && row.deathToll > 0) {
                 return "death";
             }
         },
         async getData() {
+             this.fireCase(1)
             let res = await this.$axios.get(
                 this.$api.fire.fireType + "?" + this.$qs.stringify({})
             );
@@ -603,6 +640,7 @@ export default {
             this.getFireStatis();
             this.policeInfo();
             this.sadianSelect(1)
+           
             // this.getPage();
         },
          /**
@@ -863,6 +901,29 @@ export default {
                 }else{
                         this.heatMap([],pageType,type);
                 }
+        },
+        /**
+         * 典型火灾案例
+         */
+        async fireCase(id){
+            let regionType = id
+            if(id == 1){
+                this.tabsArea = "qg"
+            }
+            if(id == 2){
+                this.tabsArea = "bs"
+            }
+            if(id == 3){
+                this.tabsArea = "bq"
+            }
+            let res = await await this.$axios.get(this.$api.fire.infoList +
+            "?" +
+            this.$qs.stringify({
+                regionType:regionType
+            }))
+            this.fireCaseData = res.data
+            console.log(11,res)
+
         }
     },
 };
@@ -872,9 +933,9 @@ export default {
 @import "@/assets/scss/color.scss";
 .contentBox {
     .leftBox {
-        .leftTop {
+        .leftTop,.leftTop2 {
             height: 50%;
-            max-height: 50%;
+            max-height: 33%;
             justify-content: center;
             align-items: center;
             box-sizing: border-box;
@@ -902,10 +963,32 @@ export default {
                     height: calc(100% - 0.675rem);
                 }
             }
+            .threeBox {
+                & >.flexBoxE11{
+                color:#fff;
+                & > .el-row {
+                    width: 100%;
+                    font-size: 0.175rem;
+                    align-items: center;
+                    margin-top:0.12rem;
+                    .el-col {
+
+                        margin-top: 0.45rem;
+                        span {
+                            margin-right: 0.125rem;
+                        }
+                        .el-progress {
+                            flex: 1;
+                            height: 0.3rem;
+                        }
+                    }
+                }
+            }
+        }
         }
         .leftBot {
             height: calc(50% - 0.125rem);
-            max-height: calc(50% - 0.125rem);
+            max-height: calc(33% - 0.125rem);
             width: 100%;
             .threeBox {
                 width: 100%;
@@ -921,7 +1004,7 @@ export default {
                     justify-content: space-between;
                     width: 100%;
                     height: 100%;
-                    padding-top: 0.75rem;
+                    padding-top:0.02rem;
                     box-sizing: border-box;
                     .el-form {
                         text-align: center;
@@ -933,7 +1016,7 @@ export default {
                 .line {
                     flex: none;
                     width: 1px;
-                    height: 3.75rem;
+                    height: 3rem;
                     opacity: 1;
                     background: linear-gradient(
                         rgba(255, 255, 255, 0),
@@ -962,6 +1045,8 @@ export default {
                 }
             }
         }
+        
+
     }
     .rightBox {
         .rightTop {
@@ -997,6 +1082,7 @@ export default {
             margin-top:10px;
         }
     }
+    
 
 
 </style>

+ 83 - 7
src/views/fire-signs.vue

@@ -3,10 +3,10 @@
         <transition name="el-fade-in-linear">
             <el-col class="leftBox" v-show="stroes.$state.leftBtn">
                 <div class="leftTop">
-                    <h4>风险等级占比图</h4>
-                    <el-row class="threeBox">
-                        <div class="flexBoxE">
-                            <pie3 :dataMap="pieData2"></pie3>
+                    <h4>闵行区基本情况</h4>
+                    <div class="threeBox">
+                        <div class="flexBoxE11">
+                            <!-- <pie3 :dataMap="pieData2"></pie3> -->
                             <!-- <el-row>
                                 <el-col>
                                     <span class="title">高风险数量</span>
@@ -57,8 +57,46 @@
                                     </el-progress>
                                 </el-col>
                             </el-row> -->
+                            <el-row class="mhjbqk">
+                                <el-col :span="8" >
+                                    辖区面积:<Strong>{{ mhjbqk.regionArea }}</Strong> km²
+                                </el-col>
+                                <el-col :span="8">
+                                    重点单位:<Strong>{{ mhjbqk.keyCompanyNum }}</Strong> 家
+                                </el-col>
+                                <el-col :span="8">
+                                    微型消防站:<Strong>{{ mhjbqk.miniFireNum }}</Strong> 个
+                                </el-col>
+                                <el-col :span="8">
+                                    常住人口:<Strong>{{ mhjbqk.regionResident }}</Strong> 万
+                                </el-col>
+                                <el-col :span="8">
+                                    医院:<Strong>{{ mhjbqk.hospitalNum }}</Strong>家
+                                </el-col>
+                                <el-col :span="8">
+                                    专职消防队:<Strong>{{ mhjbqk.fullTimeNum }}</Strong> 个
+                                </el-col>
+                                <el-col :span="8">
+                                    街镇:<Strong>{{ mhjbqk.streetTownNum }}</Strong>个
+                                </el-col>
+                                <el-col :span="8">
+                                   学校:<Strong>{{ mhjbqk.schoolNum }}</Strong>个
+                                </el-col>
+                                <el-col :span="8">
+                                    一级微型消防站:<Strong>{{ mhjbqk.priorMiniNum }}</Strong> 个
+                                </el-col>
+                                <el-col :span="8">
+                                    大型综合体:<Strong>{{ mhjbqk.largeBuildNum }}</Strong> 个
+                                </el-col>
+                                <el-col :span="8">
+                                    消防救援站:<Strong>{{ mhjbqk.fireRescueNum }}</Strong> 个
+                                </el-col>
+                                <el-col :span="8">
+                                   社区微型消防站:<Strong>{{ mhjbqk.communityMiniNum }}</Strong> 个
+                                </el-col>
+                            </el-row>
                         </div>
-                    </el-row>
+                    </div>
                 </div>
 
                 <div class="leftBot">
@@ -477,6 +515,10 @@ export default {
     mixins: [linstener, map],
     data() {
         return {
+            //闵行区基本情况
+            mhjbqk:{
+
+            },
                 
                 noticeNum:0,//已挂牌数
                 cancellationNum:0,//销案数
@@ -1475,6 +1517,7 @@ export default {
         window.addEventListener("resize", () => this.resizeTimeActions([this.$refs.categoryLine, this.$refs.category, this.$refs.radarChart, this.$refs.wordCloud]), true);
         this.initMap();
         this.checkboxChange(7);
+        this.regionInfo()
     },
     methods: {
         mounted() {
@@ -1542,7 +1585,7 @@ export default {
             //     }
 
             this.getTrend();
-            this.getFireStatis();
+            // this.getFireStatis();
             this.reportComplaintApi2(); // 投诉类型排名
             this.sadianSelect(this.checkedArray.checkedData[0]);
             this.getHazardsNoticeList()//挂牌督改情况
@@ -1834,11 +1877,12 @@ export default {
                     })
             );
             if (res) {
-                // this.tableData = res.data.records;
+                
             }
         },
          // 挂牌督改情况
         getHazardsNoticeList() {
+            
              this.$axios.get(
                 this.$api.fire.hazardsNoticeList +
                     "?" +
@@ -1891,6 +1935,13 @@ export default {
                         singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
                         waitTime: 500, // 单步运动停止的时间(默认值1000ms)
                 };
+        },
+        //闵行区基本情况
+        regionInfo(){
+            this.$axios.get(this.$api.fireSite.regionInfo
+            ).then(res=>{
+               this.mhjbqk = res.data[0]
+            })
         }
     },
 
@@ -1991,6 +2042,25 @@ export default {
                         }
                     }
                 }
+                & >.flexBoxE11{
+                     & > .el-row {
+                        width: 100%;
+                        font-size: 0.175rem;
+                        align-items: center;
+                        margin-top:0.12rem;
+                        .el-col {
+
+                            margin-top: 0.45rem;
+                            span {
+                                margin-right: 0.125rem;
+                            }
+                            .el-progress {
+                                flex: 1;
+                                height: 0.3rem;
+                            }
+                        }
+                    }
+                }
                 .line {
                     flex: none;
                     width: 1px;
@@ -2163,6 +2233,12 @@ export default {
                 margin-right: 0px;
         }
 }
+.mhjbqk{
+    margin-top:-50px;
+    >div{
+        margin-top:40px;
+    }
+}
 </style>
 <style>
 .el-loading-mask{

+ 1 - 1
src/views/rescue-station.vue

@@ -579,7 +579,7 @@ export default {
                     { value: 40, label: "消防站" },
                     { value: 41, label: "专职队" },
                 //     { value: 43, label: "城市消防站" },
-                    { value: 44, label: "企业消防队" },
+                    { value: 44, label: "微型消防站" },
                     { value: 42, label: "街镇微型消防站" },
                     { value: 45, label: "社区微型消防站" },
                     { value: 46, label: "一级微型消防站" },

+ 129 - 157
src/views/security-plan.vue

@@ -3,10 +3,9 @@
         <transition name="el-fade-in-linear">
             <el-col class="leftBox" v-show="stroes.$state.leftBtn">
                 <div class="leftTop">
-                    <h4>疏导区社会面防火巡查情况</h4>
-
-                    <div class="leftTopContent">
-                        <el-row>
+                    <h4>疏导区基本情况</h4>
+                    <div class="leftTopContent2">
+                        <!-- <el-row>
                             <el-col :span="12">
                                 <div>
                                     <div class="title">
@@ -56,11 +55,51 @@
                                     </div>
                                     <div class="content">
                                         <span>5410</span>
-                                        <!-- <span>同比</span>
-                    <span style="color: #05fe3a">-5.3%</span> -->
                                     </div>
                                 </div>
                             </el-col>
+                        </el-row> -->
+                        <el-row>
+                            <div>
+                                <p>疏导区总面积</p>
+                                <p><strong>59</strong>km²</p>
+                            </div>
+                            <div>
+                                <p>华漕镇</p>
+                                <p><strong>28.2</strong>km²</p>
+                            </div>
+                            <div>
+                                <p>新虹街道</p>
+                                <p><strong>19.26</strong>km²</p>
+                            </div>
+                            <div>
+                                <p>七宝镇</p>
+                                <p><strong>—</strong>km²</p>
+                            </div>
+                            <div>
+                                <p>虹桥镇</p>
+                                <p><strong>—</strong>km²</p>
+                            </div>
+                            <div>
+                                <p>大网格</p>
+                                <p><strong>4</strong>个</p>
+                            </div>
+                            <div>
+                                <p>小网格</p>
+                                <p><strong>25</strong>个</p>
+                            </div>
+                            <div>
+                                <p>网格人员</p>
+                                <p><strong>20</strong>个</p>
+                            </div>
+                            <div>
+                                <p>分管领导</p>
+                                <p><strong>待定</strong></p>
+                            </div>
+                            <div>
+                                <p>增援干部</p>
+                                <p><strong>11</strong>个</p>
+                            </div>
                         </el-row>
                     </div>
                 </div>
@@ -94,8 +133,6 @@
                                             </el-row>
                                             <el-row class="tableExpendcontent">
                                                 <el-col>
-                                                    <!-- <img src="~@a/img/test/bg3.png" alt="" /> -->
-                                                    <!-- <div>{{ item.cphm }}</div> -->
                                                     <div>
                                                         车牌号:<span
                                                             style="
@@ -111,8 +148,6 @@
                                                     v-if="item.zhy"
                                                     :span="12"
                                                 >
-                                                    <!-- <img src="~@a/img/test/bg7.png" alt="" /> -->
-                                                    <!-- <div>{{ item.zhy }}</div> -->
                                                     <div>
                                                         指挥员:<span
                                                             style="
@@ -128,8 +163,7 @@
                                                     v-if="item.txy"
                                                     :span="12"
                                                 >
-                                                    <!-- <img src="~@a/img/test/bg7.png" alt="" /> -->
-                                                    <!-- <div>{{ item.txy }}</div> -->
+
                                                     <div>
                                                         通讯员:<span
                                                             style="
@@ -145,8 +179,7 @@
                                                     v-if="item.jsy"
                                                     :span="12"
                                                 >
-                                                    <!-- <img src="~@a/img/test/bg7.png" alt="" /> -->
-                                                    <!-- <div>{{ item.jsy }}</div> -->
+
                                                     <div>
                                                         驾驶员:<span
                                                             style="
@@ -162,8 +195,7 @@
                                                     v-if="item.zsry"
                                                     :span="24"
                                                 >
-                                                    <!-- <img src="~@a/img/test/bg7.png" alt="" /> -->
-                                                    <!-- <div>{{ item.zsry }}</div> -->
+
                                                     <div>
                                                         战士人员:<span
                                                             style="
@@ -286,10 +318,6 @@
                         class="img"
                     />
                     <div class="content">
-                        <!-- <p>街镇筛选</p>
-                        <el-select class="mtb-12" v-model="stroes.$state.streetTown" placeholder="请选择街镇" @change="checkStreetTown">
-                        <el-option v-for="item in stroes.$state.streetTownList" :key="item.value" :label="item.label" :value="item.value"> </el-option>
-                        </el-select> -->
                         <p>类型筛选</p>
                         <div class="selectType">
                             <div
@@ -399,7 +427,7 @@
                                         <el-col
                                             :span="24"
                                             style="color: #ff0000"
-                                            >350</el-col
+                                            >8</el-col
                                         >
                                     </el-row>
                                 </div>
@@ -418,7 +446,7 @@
                                         <el-col
                                             :span="24"
                                             style="color: #ff5a00"
-                                            >54</el-col
+                                            >0</el-col
                                         >
                                     </el-row>
                                 </div>
@@ -437,7 +465,7 @@
                                         <el-col
                                             :span="24"
                                             style="color: #ffd800"
-                                            >220</el-col
+                                            >6</el-col
                                         >
                                     </el-row>
                                 </div>
@@ -456,7 +484,7 @@
                                         <el-col
                                             :span="24"
                                             style="color: #0084ff"
-                                            >4786</el-col
+                                            >18</el-col
                                         >
                                     </el-row>
                                 </div>
@@ -885,125 +913,20 @@ export default {
             ],
             rightArray: {
                 tableData: [
-                    {
-                        value1: "K11",
-                        value2: "新虹街道",
-                        value3: "张 伟18601769394 何成13818725590",
-                        value4: "陈伟杰 17317672567",
-                    },
-                    {
-                        value1: "K12",
-                        value2: "新虹街道",
-                        value3: "成 诚 15000038283",
-                        value4: "候 林 18800295992",
-                    },
-                    {
-                        value1: "K13",
-                        value2: "新虹街道",
-                        value3: "张 峰 13917651810",
-                        value4: "章俊杰 13082050172",
-                    },
-                    {
-                        value1: "K14",
-                        value2: "新虹街道",
-                        value3: "陈晓杰 15121104867",
-                        value4: "高翔 17601304704",
-                    },
-                    {
-                        value1: "K15",
-                        value2: "新虹街道",
-                        value3: "陆永丰 13671988221",
-                        value4: "高 翔 17601304704",
-                    },
-                    {
-                        value1: "S21",
-                        value2: "华漕镇",
-                        value3: "汪利强 13601955218",
-                        value4: "",
-                    },
-                    {
-                        value1: "S23",
-                        value2: "华漕镇",
-                        value3: "姚佳旭 18616173204",
-                        value4: "唐锦涛 15530649915",
-                    },
-                    {
-                        value1: "S24",
-                        value2: "华漕镇",
-                        value3: "陈 叶 13817827919",
-                        value4: "",
-                    },
-                    {
-                        value1: "S25",
-                        value2: "华漕镇",
-                        value3: "单 江 13052103663 庄元豪 15900468502",
-                        value4: "张连杰 17621890801",
-                    },
-                    {
-                        value1: "S26",
-                        value2: "华漕镇",
-                        value3: "许文明 13917538341",
-                        value4: "陆锋栋 13296481670",
-                    },
-                    {
-                        value1: "S31、S32",
-                        value2: "七宝镇",
-                        value3: "高剑峰 13331852615",
-                        value4: "王宇佳 15821489308",
-                    },
-                    {
-                        value1: "S36、S37",
-                        value2: "七宝镇",
-                        value3: "谢春亮 13764016857",
-                        value4: "易铁彬 15612617919",
-                    },
-                    {
-                        value1: "S34",
-                        value2: "七宝镇",
-                        value3: "吴毅波 18616882119",
-                        value4: "",
-                    },
-                    {
-                        value1: "S38、S39",
-                        value2: "七宝镇",
-                        value3: "赵依滨 17717416864",
-                        value4: "",
-                    },
-                    {
-                        value1: "S33、S35",
-                        value2: "七宝镇",
-                        value3: "孙文强 13917039136",
-                        value4: "周明浩 13818487991",
-                    },
-                    {
-                        value1: "541、542",
-                        value2: "虹桥镇",
-                        value3: "郁志荣 18918617551",
-                        value4: "",
-                    },
-                    {
-                        value1: "543、544",
-                        value2: "虹桥镇",
-                        value3: "夏 戴 13816005022",
-                        value4: "",
-                    },
-                    {
-                        value1: "545",
-                        value2: "虹桥镇",
-                        value3: "张罕彦 13917847674",
-                        value4: "",
-                    },
+
                 ],
                 headerData2: [
-                    { prop: "value1", name: "网格区域" },
-                    { prop: "value2", name: "街道" },
-                    { prop: "value3", name: "网格人员" },
-                    { prop: "value4", name: "增援干部" },
+                    { prop: "gridArea", name: "网格区域" },
+                    { prop: "streetTown", name: "街道" },
+                    { prop: "gridPeople", name: "网格人员" },
+                    { prop: "recruiting", name: "增援干部" },
+                    { prop: "responsibilities", name: "分管领导" },
                 ],
             },
         };
     },
     mounted() {
+        // this.grid()
         window.addEventListener(
             "resize",
             () => this.resizeTimeActions([this.$refs.category,this.$refs.gauge1, ]),
@@ -1013,6 +936,7 @@ export default {
         this.anbaoMap(); //安保区域
         this.getFireSiteDuty(); //各站点执勤实力
         this.sadianSelect(this.checkedArray.checkedData[0]); //撒点
+        
     },
     methods: {
             selectArray(id){
@@ -1211,8 +1135,6 @@ export default {
          * 撒点测绘院、高德
          */
         sadianSelect(id) {
-                console.log(id,this.stroes.$state.mapBool)
-                console.log(this.checkedArray.checkedData[0] )
             let type =
                 this.checkedArray.checkedList[this.checkedArray.checkedData[0]]
                     .label;
@@ -1220,12 +1142,6 @@ export default {
             let arr = [];
             if (this.stroes.$state.mapBool == 1) {
                 if (id == 0) {
-                        // let data = {
-                        //         gisX: 121.302183,
-                        //         gisY:31.189991,
-                        //         type:"国家会展中心",
-                        // }
-                        // arr.push(data)
                         this.initMarkers(arr.slice(0, 500), "security-plan", type);
                 }else if (id == 1 || id == 2) {
                         this.historicalWarning()
@@ -1248,12 +1164,6 @@ export default {
                                 }
                         })
                         .then((res) => {
-                        // let data = {
-                        //                 gisX: 121.302183,
-                        //                 gisY:31.189991,
-                        //                 type:"国家会展中心",
-                        //         }
-                        //         arr.push(data)
                                 this.initMarkers(arr.slice(0, 500), "security-plan", type);
                         });
                 }else{
@@ -1345,7 +1255,6 @@ export default {
                 if(id == 42 ){
                         this.$axios.get(this.$api.fireSite.demStreetMicroStationList  + "?" +
                                 this.$qs.stringify({
-                                        // streetTown:this.stroes.$state.streetTown,
                                 })).then((res) => {
                                         for(let i=0;i<res.data.length;i++){
                                                 if(res.data[i].streetTown.indexOf("华漕") > -1 || res.data[i].streetTown.indexOf("新虹") > -1 || res.data[i].streetTown.indexOf("七宝") > -1  || res.data[i].streetTown.indexOf("虹桥") > -1 ){
@@ -1368,7 +1277,6 @@ export default {
                                 "facilityType": [
                                        13,14
                                 ] ,
-                                // streetTown:this.stroes.$state.streetTown,
                         }).then((res) => {
                                 for(let i=0;i<res.data.length;i++){
                                         if(res.data[i].streetTown.indexOf("华漕") > -1 || res.data[i].streetTown.indexOf("新虹") > -1 || res.data[i].streetTown.indexOf("七宝") > -1  || res.data[i].streetTown.indexOf("虹桥") > -1 ){
@@ -1390,7 +1298,6 @@ export default {
                                 "facilityType": [
                                        15,16
                                 ] ,
-                                // streetTown:this.stroes.$state.streetTown,
                         }).then((res) => {
                                 for(let i=0;i<res.data.length;i++){
                                         if(res.data[i].streetTown.indexOf("华漕") > -1 || res.data[i].streetTown.indexOf("新虹") > -1 || res.data[i].streetTown.indexOf("七宝") > -1  || res.data[i].streetTown.indexOf("虹桥") > -1 ){
@@ -1412,7 +1319,6 @@ export default {
                                 "facilityType": [
                                       17
                                 ] ,
-                                // streetTown:this.stroes.$state.streetTown,
                         }).then((res) => {
                                 for(let i=0;i<res.data.length;i++){
                                         if(res.data[i].streetTown.indexOf("华漕") > -1 || res.data[i].streetTown.indexOf("新虹") > -1 || res.data[i].streetTown.indexOf("七宝") > -1  || res.data[i].streetTown.indexOf("虹桥") > -1 ){
@@ -1451,9 +1357,6 @@ export default {
                                 this.addMarker(arr, "rescue-station","街镇专职消防队");
                         });
                 }
-                // else{
-                //         this.sadian([], "security-plan", type);
-                // }
             }
             
         },
@@ -1476,6 +1379,59 @@ export default {
                 }
             }
         },
+
+        /**
+         * 网格人员
+         */
+        grid(){
+             this.$axios.get(this.$api.fireSite.gridMemberList +
+                    "?" +
+             this.$qs.stringify({
+                pageNum: 1,
+                pageSize: 20,
+            })).then(res=>{
+                
+                let data = res.data.records
+                let gridData = []
+                if(data.length>0){
+                    for(let i =0;i<data.length;i++){
+                        if(data[i].gridMemderViceList && data[i].gridMemderViceList.length>0){
+                            gridData[i] = {
+                                gridArea:data[i].gridArea,
+                                streetTown:data[i].streetTown,
+                                gridPeople:undefined,
+                                recruiting:undefined,
+                                responsibilities:undefined
+                            }
+                            for(let a =0;i<data[i].gridMemderViceList.length;a++){
+                                if(data[i].gridMemderViceList.personnelType == 1){
+                                    if(gridData[i].gridPeople){
+                                        gridData[i].gridPeople = `${gridData[i].gridPeople},${data[i].gridMemderViceList[a].personnelName} ${data[i].gridMemderViceList[a].phone}`
+                                    }else{
+                                        gridData[i].gridPeople = `${data[i].gridMemderViceList[a].personnelName} ${data[i].gridMemderViceList[a].phone}`
+                                    } 
+                                }
+                                if(data[i].gridMemderViceList.personnelType == 2){
+                                    if(gridData[i].recruiting){
+                                        gridData[i].recruiting = `${gridData[i].recruiting},${data[i].gridMemderViceList[a].personnelName} ${data[i].gridMemderViceList[a].phone}`
+                                    }else{
+                                        gridData[i].recruiting = `${data[i].gridMemderViceList[a].personnelName} ${data[i].gridMemderViceList[a].phone}`
+                                    } 
+                                }
+                                if(data[i].gridMemderViceList.personnelType == 3){
+                                    if(gridData[i].responsibilities){
+                                        gridData[i].responsibilities = `${gridData[i].responsibilities},${data[i].gridMemderViceList[a].personnelName} ${data[i].gridMemderViceList[a].phone}`
+                                    }else{
+                                        gridData[i].responsibilities = `${data[i].gridMemderViceList[a].personnelName} ${data[i].gridMemderViceList[a].phone}`
+                                    } 
+                                }
+                            }
+                        }
+                    }
+                }
+                this.rightArray.tableData = gridData
+            })
+        }
     },
 };
 </script>
@@ -1534,6 +1490,22 @@ export default {
                     }
                 }
             }
+            .leftTopContent2{
+                color:#fff;
+                font-size: 0.175rem;
+                .el-row{
+                    >div{
+                        width:20%;
+                        margin-top:40px;
+                        p:nth-child(2){
+                            // text-align: center;
+                            strong{
+                                font-size: 0.2rem;
+                            }
+                        }
+                    }
+                }
+            }
         }
 
         .leftCenter {

+ 12 - 14
src/views/self-management.vue

@@ -15,10 +15,7 @@
                                 其他-8(每一起减一次,最小等于0)
                                 <br />设施状况指数10分:每出现1项减1分,每1起减1次,最小等于0 <br />事件事故指数25分:每出现1项减2分,每1起减1次,最小等于0
                                 <br />场所行业风险15分:每1起减1次,最小等于0 <br />消防隐患指数10分:三合一、电动车;每1起减1次,最小等于0 <br />物联隐患指数10分:物联网隐患处置率,<br />
-                                90%以上(10分),90%-80%(8分),80%-60%(6分),<br />
-                                60%-45%(4分),45%(2分)以下,最小等于0
-                                <br />
-                                <br />
+                                高风险:0-60分,较高风险:60-70分,一般风险:70-80分,低风险:80-100分<br />
                             </template>
                             <img src="@/assets/img/why.png" alt="hah" class="why" />
                         </el-tooltip>
@@ -1587,6 +1584,7 @@ export default {
             this.djActive = [false, false, false, false];
             this.djActive[id] = !status;
             let type = "重点单位";
+            console.log(type,id)
             let arr = [];
             if (this.djActive[id]) {
                 this.$axios
@@ -1610,7 +1608,7 @@ export default {
                                 arr[i].type = type;
                             }
                             setTimeout(() => {
-                                this.addMarker(arr.splice(0, 500), "self-management", type);
+                                this.addMarker(arr.splice(0, 500), "self-management", id == 0 ? "高风险" : id ==1 ? "较高风险" : id == 2 ?  "一般风险" : id == 3 ? "低风险" : "");
                             }, 500);
                         } else {
                             this.addMarker([], "self-management", type);
@@ -1828,31 +1826,31 @@ export default {
                 if (this.tabsArea == "data1") {
                     this.patrolInspectionList[0].value = res.data[0].value;
                     this.patrolInspectionList[0].name = res.data[0].name;
-                    this.patrolInspectionList[1].value = "87.5";
+                    this.patrolInspectionList[1].value = res.data[1].value;
                     this.patrolInspectionList[1].name = res.data[1].name;
-                    this.patrolInspectionList[2].value = 7;
+                    this.patrolInspectionList[2].value = res.data[2].value;
                     this.patrolInspectionList[2].name = res.data[2].name;
-                    this.patrolInspectionList[3].value = 1;
+                    this.patrolInspectionList[3].value = res.data[3].value;
                     this.patrolInspectionList[3].name = res.data[3].name;
                 }
                 if (this.tabsArea == "data2") {
                     this.patrolInspectionList[0].value = res.data[0].value;
                     this.patrolInspectionList[0].name = res.data[0].name;
-                    this.patrolInspectionList[1].value = "93.75";
+                    this.patrolInspectionList[1].value = res.data[1].value;
                     this.patrolInspectionList[1].name = res.data[1].name;
-                    this.patrolInspectionList[2].value = 45;
+                    this.patrolInspectionList[2].value = res.data[2].value;
                     this.patrolInspectionList[2].name = res.data[2].name;
-                    this.patrolInspectionList[3].value = 3;
+                    this.patrolInspectionList[3].value = res.data[3].value;
                     this.patrolInspectionList[3].name = res.data[3].name;
                 }
                 if (this.tabsArea == "data3") {
                     this.patrolInspectionList[0].value = res.data[0].value;
                     this.patrolInspectionList[0].name = res.data[0].name;
-                    this.patrolInspectionList[1].value = "93.83";
+                    this.patrolInspectionList[1].value = res.data[1].value;
                     this.patrolInspectionList[1].name = res.data[1].name;
-                    this.patrolInspectionList[2].value = 137;
+                    this.patrolInspectionList[2].value = res.data[2].value;
                     this.patrolInspectionList[2].name = res.data[2].name;
-                    this.patrolInspectionList[3].value = 9;
+                    this.patrolInspectionList[3].value = res.data[3].value;
                     this.patrolInspectionList[3].name = res.data[3].name;
                 }
             }