Selaa lähdekoodia

大型安保排版

ming 1 vuosi sitten
vanhempi
commit
aa50daa427

+ 7 - 0
src/assets/img/securityPlan/iconEb.svg

@@ -0,0 +1,7 @@
+<svg 
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="20px" height="21px">
+<path fill-rule="evenodd"  fill="rgb(255, 255, 255)"
+ d="M15.250,18.446 L15.250,7.737 L8.334,7.737 L8.334,5.239 L20.000,1.105 L20.000,18.446 L15.250,18.446 ZM12.872,2.677 L7.114,4.887 L7.114,7.966 L2.315,7.966 L2.315,0.525 C2.315,0.235 2.561,-0.000 2.865,-0.000 L12.322,-0.000 C12.468,-0.000 12.608,0.055 12.711,0.154 C12.814,0.252 12.872,0.386 12.872,0.525 L12.872,2.677 ZM9.492,5.526 L9.492,6.556 L11.807,6.556 L11.807,5.526 L9.492,5.526 ZM12.965,5.526 L12.965,6.556 L15.279,6.556 L15.279,5.526 L12.965,5.526 ZM16.437,5.526 L16.437,6.556 L18.752,6.556 L18.752,5.526 L16.437,5.526 ZM16.437,7.737 L16.437,9.947 L18.752,9.947 L18.752,7.737 L16.437,7.737 L16.437,7.737 ZM16.437,11.052 L16.437,13.277 L18.752,13.277 L18.752,11.052 L16.437,11.052 ZM16.437,14.368 L16.437,16.593 L18.752,16.593 L18.752,14.368 L16.437,14.368 ZM0.550,8.842 L13.456,8.842 C13.602,8.842 13.742,8.897 13.845,8.996 C13.948,9.094 14.006,9.228 14.006,9.367 L14.006,21.000 L-0.000,21.000 L-0.000,9.367 C-0.000,9.228 0.058,9.094 0.161,8.996 C0.264,8.897 0.404,8.842 0.550,8.842 L0.550,8.842 ZM2.034,11.052 L2.034,12.627 L11.830,12.627 L11.830,11.052 L2.034,11.052 ZM2.034,14.368 L2.034,15.943 L11.830,15.943 L11.830,14.368 L2.034,14.368 ZM2.034,17.684 L2.034,19.259 L11.830,19.259 L11.830,17.684 L2.034,17.684 Z"/>
+</svg>

+ 1 - 0
src/assets/js/flexible.js

@@ -15,6 +15,7 @@
     // set 1rem = viewWidth / 10
     function setRemUnit() {
         var rem = docEl.clientWidth / 24;
+        console.log(rem)
         docEl.style.fontSize = rem + "px";
     }
 

+ 338 - 0
src/components/unitBox/index.vue

@@ -0,0 +1,338 @@
+<template>
+
+
+    <!-- 医疗机构清单 -->
+    <div class="rightBotContent" v-if="typeValue==1" style="margin-top:15px;height: 100%;">
+        <el-table  ref="reportTable" height="100%" :data="streetDynamicData"  class="transparentTableRow" style="width: 100%"
+            @mouseenter="autoScroll(true)" @mouseleave="autoScroll()">
+            <el-table-column v-for="item in streetDynamicHeaderData" :key="item.prop" :prop="item.prop" align="center"
+                :label="item.name">
+                <template #default="scope">
+                    <el-tooltip placement="left" trigger="click">
+                        <template #content>
+                            <div class="tableTooltip">
+                                <div class="tableTitle" ref="ff">
+                                    <div>物联动态详情</div>
+                                </div>
+                                <img src="~@a/img/icon/close.png" alt="" class="close" @click="closeIsTooltip" />
+                                <el-row class="tableContent">
+                                    <el-col :span="24">
+                                        街镇:
+                                        <span>{{ scope.row.streetTown ? scope.row.streetTown : "--" }}</span>
+                                    </el-col>
+                                    <el-col :span="24">
+                                        设备总数:<span>{{ scope.row.medicalName ? scope.row.medicalName : "--" }}</span>
+                                    </el-col>
+                                    <el-col :span="24">
+                                        在线数:<span> {{ scope.row.address ? scope.row.address : "--" }}</span>
+                                    </el-col>
+                                    <el-col :span="24">
+                                        在线率:<span>{{ scope.row.dangerIssue ? scope.row.dangerIssue : "--" }}</span>
+                                    </el-col>
+                                    <el-col :span="24">
+                                        处置率:<span>{{ scope.row.processedRate ? scope.row.processedRate : "--" }}</span>
+                                    </el-col>
+                                </el-row>
+                            </div>
+                        </template>
+
+                        <template>
+                            <div class="name-wrapper">
+                                {{ scope.row[item.prop] }}
+                            </div>
+                        </template>
+                    </el-tooltip>
+                </template>
+            </el-table-column>
+        </el-table>
+    </div>
+
+    <!-- 电动车自行车现状 -->
+    <div  v-if="typeValue==2" style="margin-top:.25rem">
+        <el-row class="ebItem">
+            <el-col :offset="1" :span="4"><img  src="@/assets/img/securityPlan/iconEb.svg" alt="" class="img" width="20"></el-col>
+            <el-col  :span="8">华漕镇</el-col>
+            <el-col  :span="9" style="color:#73FBFD;cursor:pointer">摸排报告</el-col>
+            <el-col  :span="2" style="color:#73FBFD;text-align:center"> <i class="el-icon-arrow-right"></i></el-col>
+            <div class="panel-footer"></div>
+        </el-row>
+        <el-row class="ebItem">
+            <el-col :offset="1" :span="4"><img  src="@/assets/img/securityPlan/iconEb.svg" alt="" class="img" width="20"></el-col>
+            <el-col  :span="8">新虹街道</el-col>
+            <el-col  :span="9" style="color:#73FBFD;cursor:pointer">摸排报告</el-col>
+            <el-col  :span="2" style="color:#73FBFD;text-align:center"> <i class="el-icon-arrow-right"></i></el-col>
+            <div class="panel-footer"></div>
+        </el-row>
+        <el-row class="ebItem">
+            <el-col :offset="1" :span="4"><img  src="@/assets/img/securityPlan/iconEb.svg" alt="" class="img" width="20"></el-col>
+            <el-col  :span="8">七宝镇</el-col>
+            <el-col  :span="9" style="color:#73FBFD;cursor:pointer">摸排报告</el-col>
+            <el-col  :span="2" style="color:#73FBFD;text-align:center"> <i class="el-icon-arrow-right"></i></el-col>
+            <div class="panel-footer"></div>
+        </el-row>
+        <el-row class="ebItem">
+            <el-col :offset="1" :span="4"><img  src="@/assets/img/securityPlan/iconEb.svg" alt="" class="img" width="20"></el-col>
+            <el-col  :span="8">虹桥镇</el-col>
+            <el-col  :span="9" style="color:#73FBFD;cursor:pointer">摸排报告</el-col>
+            <el-col  :span="2" style="color:#73FBFD;text-align:center"> <i class="el-icon-arrow-right"></i></el-col>
+            <div class="panel-footer"></div>
+        </el-row>
+    </div>  
+
+
+
+    <!-- 宾馆酒店信息统计 -->
+    <div  v-if="typeValue==3">
+        <el-row >
+            <el-col :span="8">图表区域</el-col>
+            <el-col :span="16">
+                <el-row>
+                    <el-col :span="10" style="border: 1px solid rgba(48, 207, 255, 0.6); margin: 20px 10px 10px; box-shadow: inset 0 0 0.07rem 0.04rem rgb(115 251 253 / 40%); box-sizing: border-box">
+                        <div style="padding: 0.3rem 0; text-align: center">
+                            <span style="display: block">
+                                <Strong style=" color: #00C8B8" >
+                                    <CountTo :startVal="0" :endVal="72" :duration="3000" v-if="!isNaN(199)" style="font-size: 0.3rem">723</CountTo>
+                                </Strong>
+                                家
+                            </span>
+                            <span>华漕镇</span>
+                        </div>
+                    </el-col>
+                    <el-col :span="10" style="border: 1px solid rgba(48, 207, 255, 0.6); margin: 20px 10px 10px; box-shadow: inset 0 0 0.07rem 0.04rem rgb(115 251 253 / 40%); box-sizing: border-box">
+                        <div style="padding: 0.3rem 0; text-align: center">
+                            <span style="display: block">
+                                <Strong style=" color: #068DFF" >
+                                    <CountTo :startVal="0" :endVal="72" :duration="3000" v-if="!isNaN(199)" style="font-size: 0.3rem">72</CountTo>
+                                </Strong>
+                                家
+                            </span>
+                            <span>华漕镇</span>
+                        </div>
+                    </el-col>
+                    <el-col :span="10" style="border: 1px solid rgba(48, 207, 255, 0.6); margin: 20px 10px 10px; box-shadow: inset 0 0 0.07rem 0.04rem rgb(115 251 253 / 40%); box-sizing: border-box">
+                        <div style="padding: 0.3rem 0; text-align: center">
+                            <span style="display: block">
+                                <Strong style=" color: #FF843A" >
+                                    <CountTo :startVal="0" :endVal="72" :duration="3000" v-if="!isNaN(199)" style="font-size: 0.3rem">72</CountTo>
+                                </Strong>
+                                家
+                            </span>
+                            <span>华漕镇</span>
+                        </div>
+                    </el-col>
+                    <el-col :span="10" style="border: 1px solid rgba(48, 207, 255, 0.6); margin: 20px 10px 10px; box-shadow: inset 0 0 0.07rem 0.04rem rgb(115 251 253 / 40%); box-sizing: border-box">
+                        <div style="padding: 0.3rem 0; text-align: center">
+                            <span style="display: block">
+                                <Strong style=" color: #7DD807" >
+                                    <CountTo :startVal="0" :endVal="72" :duration="3000" v-if="!isNaN(199)" style="font-size: 0.3rem">72</CountTo>
+                                </Strong>
+                                家
+                            </span>
+                            <span>华漕镇</span>
+                        </div>
+                    </el-col>
+                </el-row>
+
+            </el-col>
+        </el-row>
+    </div>
+
+
+</template>
+
+<script>
+import linstener from "@c/mixins/linstener";
+export default {
+    props: {
+        typeValue: { type: Number, default: () => 3 },
+
+    },
+    mixins: [linstener],
+    data() {
+        return {
+            streetDynamicData: [
+                {
+                    "dangerIssue": "15.6%",
+                    "address": 14,
+                    "medicalName": 90,
+                    "streetTown": "华漕镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "78.8%",
+                    "address": 67,
+                    "medicalName": 85,
+                    "streetTown": "新虹街道",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "17.8%",
+                    "address": 292,
+                    "medicalName": 1641,
+                    "streetTown": "七宝镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "37.4%",
+                    "address": 474,
+                    "medicalName": 1266,
+                    "streetTown": "虹桥镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "34.3%",
+                    "address": 82,
+                    "medicalName": 239,
+                    "streetTown": "古美路街道",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "15.7%",
+                    "address": 336,
+                    "medicalName": 2144,
+                    "streetTown": "莘庄镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "39.1%",
+                    "address": 358,
+                    "medicalName": 916,
+                    "streetTown": "梅陇镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "16.1%",
+                    "address": 293,
+                    "medicalName": 1823,
+                    "streetTown": "颛桥镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "19.8%",
+                    "address": 133,
+                    "medicalName": 673,
+                    "streetTown": "马桥镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "49.6%",
+                    "address": 64,
+                    "medicalName": 129,
+                    "streetTown": "江川路街道",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "16.0%",
+                    "address": 512,
+                    "medicalName": 3205,
+                    "streetTown": "吴泾镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "97.1%",
+                    "address": 4652,
+                    "medicalName": 4791,
+                    "streetTown": "浦锦街道",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "15.9%",
+                    "address": 342,
+                    "medicalName": 2157,
+                    "streetTown": "浦江镇",
+                    "processedRate": "0.0%"
+                },
+                {
+                    "dangerIssue": "8.0%",
+                    "address": 174,
+                    "medicalName": 2174,
+                    "streetTown": "莘庄工业区",
+                    "processedRate": "0.0%"
+                }], //各街镇物联动态-数据存储
+            streetDynamicHeaderData: [
+                { prop: "streetTown", name: "街镇" },
+                { prop: "medicalName", name: "医疗机构名称" },
+                { prop: "address", name: "地址" },
+                { prop: "dangerIssue", name: "隐患问题" },
+            ], //各街镇物联动态-table表格prop头部定义
+        };
+    },
+    watch: {
+       "props.typeValue" :function(val){
+        alert(val)
+
+        }
+
+    },
+    mounted() {
+
+    },
+    created() {
+        setTimeout(() => {
+            this.autoScroll()
+
+        }, 2000)
+    },
+    methods: {
+        beforeDestroy() {
+            this.autoScroll(true)
+        },
+
+    },
+};
+</script>
+
+<style scoped lang="scss">
+.ebItem{
+    margin-top:0.17rem;
+    background:rgba(115, 251, 253, 0.06) !important;
+    padding:.1rem 0;
+    font-size:0.175rem;
+    &::before {
+        position: absolute;
+        top: 0;
+        left: 0;
+        content: "";
+        width: 10px;
+        height: 10px;
+        border-left: 1px solid #02a6b5;
+        border-top: 1px solid #02a6b5;
+    }
+    &::after {
+        position: absolute;
+        top: 0;
+        right: 0;
+        content: "";
+        width: 10px;
+        height: 10px;
+        border-right: 1px solid #02a6b5;
+        border-top: 1px solid #02a6b5;
+    }
+    .panel-footer {
+        position: absolute;
+        left: 0;
+        bottom: 0;
+        width: 100%;
+        &::before {
+            position: absolute;
+            bottom: 0;
+            left: 0;
+            content: "";
+            width: 10px;
+            height: 10px;
+            border-left: 1px solid #02a6b5;
+            border-bottom: 1px solid #02a6b5;
+        }
+        &::after {
+            position: absolute;
+            right: 0;
+            bottom: 0;
+            content: "";
+            width: 10px;
+            height: 10px;
+            border-right: 1px solid #02a6b5;
+            border-bottom: 1px solid #02a6b5;
+        }
+    }
+}
+</style>

+ 64 - 2
src/views/security-plan.vue

@@ -91,7 +91,52 @@
                         </el-table>
                     </div>
                 </div>
+
                 <div class="leftCenter">
+                    <div style="display: flex;">
+                        <h4>疏导区社会单位情况</h4>
+                        <div style="display: flex; border-bottom: 0.0125rem solid rgba(115, 251, 253, 0.5);">
+                            <el-form class="titleElForm" :inline="true" size="mini" :model="barForm" style="height: 0">
+                                <el-form-item>
+                                    <!-- <el-select v-model="barForm.fireType" @change="getHouse()" filterable clearable placeholder="场所">
+                                        <el-option v-for="(item, ind) in fireTypeList" :key="ind" :label="item" :value="item"></el-option>
+                                    </el-select> -->
+                                    <!-- <el-select v-model="units" filterable clearable placeholder="场所">
+                                        <el-option v-for="(item, ind) in diversionArea" :key="ind" :label="item.name" :value="item.value"></el-option>
+                                    </el-select> -->
+                                    
+
+                                    <el-select v-model="value" class="m-2" placeholder="请选择"  style="width:200px">
+                                        <el-option
+                                        v-for="item in options"
+                                        :key="item.value"
+                                        :label="item.label"
+                                        :value="item.value"
+                                        />
+                                    </el-select>
+                                </el-form-item>
+                            </el-form>
+                        </div>
+                    </div>
+                    
+                    <unit-box :typeValue="value"></unit-box>
+                    <!-- <category
+                        ref="category"
+                        v-show="category"
+                        :dataMap="reportComplaintList.map((val, ind) => val.value)"
+                        :xData="reportComplaintList.map((val, ind) => val.name)"
+                        :isSlice="10"
+                        :width="40"
+                        color="#73FBFD"
+                        @echartsClick="categoryClick"
+                    ></category> -->
+              
+                </div>
+
+                
+
+
+                <!-- <div class="leftCenter">
                     <h4 class="h4Top">接警处置情况</h4>
                     <category
                         ref="category"
@@ -106,7 +151,9 @@
                     <div @click="goBack" class="return" v-if="!category">
                         <div class="returnText">返回</div>
                     </div>
-                </div>
+                </div> -->
+
+
                 <div class="leftBotContent2">
                     <el-table v-if="!category" :data="tableData" class="transparentTableRow" height="100%" ref="reportTable" @mouseenter="autoScroll(true)" @mouseleave="autoScroll()">
                         <el-table-column v-for="item in headerData" show-overflow-tooltip :key="item.prop" :prop="item.prop" align="center" min-width="20" :label="item.name">
@@ -444,12 +491,27 @@ import map from "@c/mixins/map-data1";
 import gauge from "@c/gauge/index6";
 // import map from "@c/mixins/map-gaode-public";
 import category from "@c/category/index22";
+import unitBox from "@c/unitBox/index";
 import CountTo from "@/components/count-to/index.js";
 export default {
     mixins: [linstener, map],
-    components: { category, gauge, CountTo },
+    components: { category, gauge, CountTo,unitBox },
     data() {
         return {
+        value:'1',
+        options: [
+        {
+            value: '1',
+            label: '国家机构安全隐患清单',
+        },
+        {
+            value: '2',
+            label: '电动自行车现状摸排报告',
+        },
+        {
+            value: '3',
+            label: '宾馆酒店信息统计',
+        }],
         zfjly1:undefined,
         zfjly2:undefined,
         selectVideoData: [],

+ 1 - 1
src/views/self-management.vue

@@ -1537,7 +1537,7 @@ export default {
             this.patrolInspectionApi(); //企业自主巡检情况接口请求
             this.streetCompanyApi(); //各街镇单位情况接口请求
             // this.erpDataApi(); //企业经营情况接口请求
-            this.caseListApi(); //历史案件接口请求
+            this.caseListApi(); //历史案件接口请求d
             this.deviceTypeListApi(); //物联网设备情况接口请求
             //     this.streetDynamicApi(); //各街镇物联动态接口请求
             this.iotDisposalApi(); //物联网处置情况接口请求