Explorar el Código

Merge branch 'master' of http://113.204.105.114:10011/TwoKe/zhgkpt-datav

liuxing hace 1 año
padre
commit
504033126e

+ 25 - 0
app/src/assets/css/main.css

@@ -84,3 +84,28 @@ html,body {
 .el-date-table td.in-range div, .el-date-table td.in-range div:hover, .el-date-table.is-week-mode .el-date-table__row.current div, .el-date-table.is-week-mode .el-date-table__row:hover div {
   background-color: rgba(0,213,255, 0.3) !important;
 }
+
+.el-time-range-picker {
+  background-color: #4167a0;
+  color: #fff;
+}
+
+.el-time-spinner__item.active:not(.disabled) {
+  color: #2f7df2;
+}
+
+.el-time-spinner__item  {
+  color: #fff;
+}
+.el-time-spinner__item:hover:not(.disabled):not(.active) {
+  background:  #2f7df2;
+}
+.el-time-panel__btn {
+  color: #fff;
+}
+.el-date-editor .el-range__icon {
+  margin-bottom: 8px;
+}
+.el-date-editor .el-range-separator {
+  margin-bottom: 5px;
+}

+ 0 - 1
app/src/components/Map.vue

@@ -258,7 +258,6 @@ export default {
             try {
               const d = JSON.parse(p.data);
               if (d.jd === this.data.jd && d.wd === this.data.wd) {
-                console.log(d);
                 p.type = "currentJzKey";
                 break;
               }

+ 2 - 2
app/src/mixin/unit.js

@@ -136,8 +136,8 @@ const punishmentMixin = {
 					label: "不排除原因",
 				},
 				{
-					value: "电火灾",
-					label: "电火灾",
+					value: "电火灾",
+					label: "电火灾",
 				},
 				{
 					value: "放火",

+ 0 - 1
app/src/views/Detail/components/YhModalContent.vue

@@ -86,7 +86,6 @@ export default {
         } else {
           params = {};
         }
-
         this.params = params;
         this.funList();
       },

+ 59 - 86
app/src/views/FireCondition/components/hzfbCont.vue

@@ -3,14 +3,19 @@ import { getJdjcUnit, getGcjztjUnit } from "@/api/index.js";
 import { area } from "@/api/area";
 import punishmentMixin from "@/mixin/unit.js";
 import { hzfxLsit } from "@/api/hzfx.js";
+import moment from "moment";
 export default {
   name: "BasicInfoModalContent",
   mixins: [punishmentMixin],
+  props: {
+    qy: String,
+    default: {
+      type: Object,
+      default: () => ({})
+    }
+  },
   data() {
     return {
-      qhyy1: "",
-	  zqsj: "",
-      sw: "",
       options: [],
       options1: [
         {
@@ -25,33 +30,38 @@ export default {
       fxdjList: [],
       tableData: [],
       unitList: [],
-      value: "市",
+      value: "重庆市",
       params: {
+        qx: "",
         pageSize: 10,
         pageNum: 1,
+        qhyy1: "",
+        queryRqTime: "",
+        sw: "",
+        querySfmTime: "",
+        search: "",
       },
       total: 0,
-      search: "",
-      search1: "",
-      search2: "",
-      // Unittype: "", // 建筑分类
-      // year: "", // 年代
-      // hnum: "", //高度
-      // management: "", //管理形式
-      // subject: "", //管理主体
-      // maintenance: "", //维保形式
-      // risklevel: "", //风险等级
+      times: []
     };
   },
-  props: {
-    qy: String,
-  },
   watch: {
     qy: {
       handler(val) {
         this.value = val;
+        console.log("-------------test", val)
         this.funUnitList();
-        this.handUnitList();
+      },
+      immediate: true
+    },
+    default: {
+      handler() {
+        let params = {};
+        if (this.default) {
+          Object.assign(params, this.default);
+        }
+        this.params = params;
+        this.funUnitList()
       },
       immediate: true,
       deep: true,
@@ -65,10 +75,8 @@ export default {
       hzfxLsit({
         ...this.params,
         qx: this.value === "重庆市" ? "" : this.value,
-        zqdd: this.search,
-        srs: this.sw,
-        qhyy1: this.qhyy1,
-		zqsj: this.zqsj
+		    queryRqTime: this.params.queryRqTime ? this.params.queryRqTime.map(item => moment(item).format('yyyy-MM-DD')).join(',') : null,
+		    querySfmTime: this.params.querySfmTime ? this.params.querySfmTime.map(item => moment(item).format('HH:mm:ss')).join(',') : null
       }).then((res) => {
         this.tableData = res.data.rows;
         this.total = res.data.total;
@@ -82,42 +90,13 @@ export default {
       this.params.pageNum = val;
       this.funUnitList();
     },
-    handUnitList() {
-      hzfxLsit({
-        qy: this.value === "重庆市" ? "" : this.value,
-      }).then((res) => {
-        const list = res.data.rows[0];
-        // this.unitList = [
-        //   {
-        //     title: "高层建筑总数(栋)",
-        //     unitNum: list.ggjz + list.gyjz + list.zzjz,
-        //   },
-        //   {
-        //     title: "超高层建筑总数(栋)",
-        //     unitNum: list.cggjz,
-        //   },
-        //   {
-        //     title: "老旧高层建筑总数(栋)",
-        //     unitNum: list.ljzzgc,
-        //   },
-        //   {
-        //     title: "公共建筑总数(栋)",
-        //     unitNum: list.ggjz,
-        //   },
-        //   {
-        //     title: "住宅建筑总数(栋)",
-        //     unitNum: list.zzjz,
-        //   },
-        // ];
-      });
-    },
     resetForm() {
       this.qhyy1 = "";
       this.zqsj = "";
       this.sw = "";
       this.value = "";
       this.search = "";
-      this.search1 = "";
+      this.qhsd = null;
       (this.params = {
         pageSize: 10,
         pageNum: 1,
@@ -133,13 +112,17 @@ export default {
     },
   },
   created() {
-    this.funUnitList();
-    this.handUnitList();
     area({
       pageNum: 1,
       pageSize: 100,
     }).then((res) => {
       this.options = res.data.rows;
+      let params = {};
+      if (this.default) {
+        Object.assign(params, this.default);
+      }
+      this.params = params;
+      this.funUnitList();
     });
   },
 };
@@ -147,18 +130,6 @@ export default {
 
 <template>
   <div>
-    <!-- 建筑数 -->
-    <div class="unit-bulid">
-      <div class="unit-num" v-for="(item, index) in unitList" :key="index">
-        <span>{{ item.title }}</span>
-        <!-- <span class="build-num">{{ item.unitNum }}</span> -->
-        <LinearText
-          style="display: inline-block"
-          :text="item.unitNum"
-          fontSize="40px"
-        ></LinearText>
-      </div>
-    </div>
     <!-- 搜索 -->
     <div class="maintenance-supervision">
       <div class="maintenance-supervision_header">
@@ -174,11 +145,11 @@ export default {
           </el-select>
         </div>
         <div class="inp">
-          <el-input v-model="search" placeholder="请输入建筑名称"></el-input>
+          <el-input v-model="params.search" placeholder="请输入建筑名称"></el-input>
         </div>
         <!-- 伤亡 -->
         <div>
-          <el-select v-model="sw" placeholder="伤亡">
+          <el-select v-model="params.sw" placeholder="伤亡">
             <el-option
               :value="item.value"
               :label="item.lable"
@@ -189,22 +160,31 @@ export default {
           </el-select>
         </div>
         <div>
-          <el-select v-model="zqsj" placeholder="起火日期">
-            <el-option
-              :value="item.value"
-              :label="item.lable"
-              v-for="(item, index) in yearList"
-              :key="index"
-            >
-            </el-option>
-          </el-select>
+          <el-date-picker
+            v-model="params.queryRqTime"
+            type="daterange"
+            style="width: 250px;"
+            size="size"
+            range-separator="至"
+            placeholder="起火日期"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期">
+          </el-date-picker>
         </div>
         <div class="inp">
-          <el-input v-model="search2" placeholder="起火时段"></el-input>
+          <el-time-picker
+            is-range
+            v-model="params.querySfmTime"
+            style="width: 250px;"
+            range-separator="至"
+            start-placeholder="开始时间"
+            end-placeholder="结束时间"
+            placeholder="起火时段">
+          </el-time-picker>
         </div>
         <!-- 起火原因 -->
         <div>
-          <el-select v-model="qhyy1" placeholder="起火原因">
+          <el-select v-model="params.qhyy1" clear placeholder="起火原因">
             <el-option
               :value="item.value"
               :label="item.lable"
@@ -282,9 +262,6 @@ export default {
     padding-bottom: 10px;
     font-size: 12px;
     color: rgb(79, 149, 186);
-    // .select-item{
-    //   margin-right: 20px;
-    // }
   }
 
   .btn-item {
@@ -375,10 +352,6 @@ export default {
       flex: 0.15;
     }
   }
-
-  .inp {
-    margin-left: 20px;
-  }
 }
 
 .unit-bulid {

+ 17 - 6
app/src/views/Home/components/BasicInfoModalContent.vue

@@ -19,6 +19,7 @@ export default {
       total: 0,
       search: "",
       titleNames: "",
+      loading: false,
       // Unittype: "", // 建筑分类
       // year: "", // 年代
       // hnum: "", //高度
@@ -30,7 +31,7 @@ export default {
   },
   props: {
     qy: String,
-    default: Object
+    default: Object,
   },
   watch: {
     qy: {
@@ -60,6 +61,7 @@ export default {
           this.value = null;
         }
         this.params = params;
+        console.log('=====区县',this.params );
         this.funUnitList();
         this.handUnitList();
       },
@@ -96,7 +98,7 @@ export default {
         this.funUnitList();
       }
       if (title == "工业建筑总数(栋)") {
-        this.params.dl = "业建筑";
+        this.params.dl = "业建筑";
         this.funUnitList();
       }
       if (title == "住宅建筑总数(栋)") {
@@ -105,14 +107,20 @@ export default {
       }
     },
     funUnitList() {
+      this.loading = true;
       getJdjcUnit({
         ...this.params,
         qx: this.value === "重庆市" ? "" : this.value,
         gcjzmc: this.search,
-      }).then((res) => {
-        this.tableData = res.data.rows;
-        this.total = res.data.total;
-      });
+      })
+        .then((res) => {
+          this.tableData = res.data.rows;
+          this.total = res.data.total;
+          this.loading = false;
+        })
+        .catch(() => {
+          this.loading = false;
+        });
     },
     handleSizeChange(val) {
       this.params.pageSize = val;
@@ -331,6 +339,9 @@ export default {
       :data="tableData"
       @row-click="rowClickHandler"
       style="text-align: center"
+      element-loading-text="加载中...请稍等"
+      v-loading="loading"
+      element-loading-background="rgba(0, 163, 255, 0.3) "
     >
       <el-table-column type="index" label="序号" width="60"> </el-table-column>
       <el-table-column prop="qx" label="区域" width="180" show-overflow-tooltip>

+ 10 - 2
app/src/views/Home/components/FireIndex/index.vue

@@ -91,7 +91,7 @@
       </div>
     </div>
     <basic-modal top="120px" ref="basicInfoModal1" name="历史火灾查询">
-			<hzfbCont :qy="qx" />
+			<hzfbCont :default="defaultModal" :qy="qx" />
 		</basic-modal>
   </div>
 </template>
@@ -100,6 +100,7 @@
 import Chart from './Chart.vue'
 import { getSxzbListToatl, getQhyyListToatl, getHzzbSxzbYoy } from "@/api/index.js";
 import hzfbCont from '../../../FireCondition/components/hzfbCont.vue';
+import moment from 'moment';
 export default {
   name: 'FireIndex',
   components: {
@@ -147,7 +148,8 @@ export default {
       fireIndexLabel: [],
       fireIndexData: [],
       monthTbData: {},
-      yearTbData: {}
+      yearTbData: {},
+      defaultModal: []
     }
   },
   watch: {
@@ -314,6 +316,12 @@ export default {
       })
     },
     openFire(){
+      const date = new Date();
+      const type = ['month', 'year'][this.modeType]
+      this.defaultModal = {
+          queryRqTime: [moment(date).startOf(type).toDate(), moment(date).endOf(type).toDate()],
+          querySfmTime: [moment("2023-01-01 00:00:00").toDate(), moment("2023-01-01 23:59:59").toDate()],
+        }
       this.showModal("basicInfoModal1");
     }
   },

+ 6 - 5
app/src/views/Home/components/HiddenDangerDetection/HiddenDangerType.vue

@@ -17,7 +17,7 @@
               margin: 0 4px;
             "
           ></span>
-          <span>消防设施({{ yhType[0].value }})</span>
+          <span>消防设施({{ yhType[0]?.value }})</span>
         </li>
         <li @click="showModlus('生命通道')">
           <span
@@ -29,7 +29,7 @@
               margin: 0 4px;
             "
           ></span>
-          <span>生命通道({{ yhType[1].value }})</span>
+          <span>生命通道({{ yhType[1]?.value }})</span>
         </li>
         <li @click="showModlus('用电用气')" style="margin-right: 5px;" >
           <span
@@ -41,7 +41,7 @@
               margin: 0 4px;
             "
           ></span>
-          <span>用电用气({{ yhType[2].value }})</span>
+          <span>用电用气({{ yhType[2]?.value }})</span>
         </li>
         <li @click="showModlus('消防管理')">
           <span
@@ -53,7 +53,7 @@
               margin: 0 4px;
             "
           ></span>
-          <span>消防管理({{ yhType[3].value }})</span>
+          <span>消防管理({{ yhType[3]?.value }})</span>
         </li>
       </ul>
     </div>
@@ -71,6 +71,7 @@ import toolUtils from "@/utils/echartsTooltip";
 export default {
   props: {
     yhType: Array,
+    qy:String
   },
   components: { YhModalContent },
   data() {
@@ -83,7 +84,6 @@ export default {
   watch: {
     yhType: {
       handler(val) {
-        console.log('----隐患排序',val);
         if (val.length > 0) {
           this.$nextTick(() => {
             // 获取dom容器
@@ -267,6 +267,7 @@ export default {
     },
     showModlus(val) {
       this.yhModal = {
+        qx:this.qy,
         zdqx: [val]
       }
       this.showModal("yhModal");

+ 2 - 1
app/src/views/Home/components/HiddenDangerDetection/index.vue

@@ -17,10 +17,11 @@
           :pcdsNum="pcdsNum"
           :wzgsNum="wzgsNum"
           :yzgsNum="yzgsNum"
+          :qy="qy"
         />
       </div>
       <div class="item">
-        <HiddenDangerType :yhType="yhType" />
+        <HiddenDangerType :yhType="yhType" :qy='qy' />
       </div>
     </div>
   </div>

+ 2 - 0
app/src/views/Home/components/HiddenDangerDetection/pcNum.vue

@@ -42,6 +42,7 @@ export default {
     allNum: String,
     yzgsNum: String,
     wzgsNum: String,
+    qy:String
   },
   data() {
     return {
@@ -52,6 +53,7 @@ export default {
     openModal(val) {
       if (val) {
         this.params = {
+          qx:this.qy,
           zgjd: val,
         };
       } else {

+ 5 - 1
app/src/views/Home/components/MapCharts.vue

@@ -24,6 +24,10 @@ export default {
         res += `隐患<span style="font-size: 24px;color:red;font-weight:bold;">${params.value}</span>个`;
         return res;
       }
+    },
+    right: {
+      type: Number,
+      default: 50
     }
   },
   data() {
@@ -408,7 +412,7 @@ export default {
           show: true,
           type: 'piecewise',
           bottom: 20,
-          right: 50,
+          right: this.right,
           max: this.calcMaxData(data),
           inRange: {
             color: [

+ 1 - 2
app/src/views/Home/components/RiskWarning.vue

@@ -91,6 +91,7 @@ export default {
       immediate: true,
       deep: true,
     },
+    
   },
   methods: {
     showValue(label) {
@@ -201,8 +202,6 @@ export default {
           },
         };
       });
-
-      console.log(data);
       const option = {
         // backgroundColor: "#0d3059",
         color,

+ 6 - 3
app/src/views/Home/index.vue

@@ -47,7 +47,7 @@
         title="风险预警"
         @click-header="openBasicModal"
       >
-        <RiskWarning :riskList="riskList" @showFxyj="showFxyj" />
+        <RiskWarning :riskList="riskList" @showFxyj="showFxyj" :qy="qy" />
       </border-panel>
       <border-panel
         height="331px"
@@ -180,8 +180,8 @@ export default {
     },
     showTc(val) {
       if (val) {
-        // this.typeName = val;
         this.defaultModel = {
+          qy: this.qy,
           dl: val
         }
         this.showModal("basicInfoModal");
@@ -189,6 +189,7 @@ export default {
     },
     showFxyj(val){
       this.defaultModel = {
+        qy: this.qy,
         fxdj: val
       }
       this.showModal("basicInfoModal");
@@ -197,7 +198,9 @@ export default {
       this.showModal("basicInfoModal");
     },
     UnitType(name){
-      const params={}
+      const params={
+        qy:this.qy,
+      }
         if (name == "超高层建筑总数(栋)") {
         params.gd = "100米以上";
       }

+ 1 - 0
app/src/views/Iot/index.vue

@@ -35,6 +35,7 @@
         :mapHeatData="heatMap"
         :qx="qx"
         @selectArea="(area) => (qx = area)"
+        :right="80"
       />
       <div style="position: absolute; width: 500px; left: 90px; top: 10px">
         <SearchBox :area.sync="qx" />

+ 0 - 1
app/src/views/Risk/index.vue

@@ -116,7 +116,6 @@ export default {
   methods: {
     switchTo(params) {
       this.params = params;
-      console.log(this.params);
       let page = "yhModal";
       if (params.page) {
         page = params.page;