瀏覽代碼

生物安防

xsh 3 年之前
父節點
當前提交
99bbcfa9be
共有 4 個文件被更改,包括 99 次插入5 次删除
  1. 28 0
      src/utils/api.js
  2. 2 2
      src/views/BioSafety/BioSafety.vue
  3. 68 2
      src/views/Zoology/Zoology.vue
  4. 1 1
      src/views/Zoology/leftTop/SwiperContent.vue

+ 28 - 0
src/utils/api.js

@@ -343,3 +343,31 @@ export function JmGroups(data) {
   })
 }
 
+/* 栋舍 */
+export function getSchool(data) {
+  return axios({
+    url: '/env/floor/list',
+    method: 'get',
+    params: data
+  })
+}
+
+/* 楼层 */
+export function getByFloor(data) {
+  return axios({
+    url: '/env/box/listByFloor',
+    method: 'get',
+    params: data
+  })
+}
+
+/** 单元 **/
+export function getUid(data) {
+  return axios({
+    url: '/env/room/listBy',
+    method: 'get',
+    params: data
+  })
+}
+
+

+ 2 - 2
src/views/BioSafety/BioSafety.vue

@@ -74,7 +74,7 @@
                         <span>{{item.devChnName}}</span>
                       </div>
                       <div class="content-grid">
-                        <span>车牌号:</span>
+                        <span>车牌:</span>
                         <span>{{item.carNum ? item.carNum : '未识别'}}</span>
                       </div>
                       <div class="content-grid">
@@ -1059,7 +1059,7 @@ export default {
     height: 100%;
     box-sizing: border-box;
     text-align: left;
-    padding-left: 10px;
+    /*padding-left: 10px;*/
     line-height: 30px;
     color: white;
   }

+ 68 - 2
src/views/Zoology/Zoology.vue

@@ -38,9 +38,28 @@
           element-loading-spinner="el-icon-loading"
           element-loading-background="rgba(0, 0, 0, 0.8)"
         >
+          <div class="zooFlex">
+            <el-form :inline="true" size="small">
+              <el-form-item label="栋舍">
+                <el-select v-model="schoolId" style="width: 160px;" @change="handSchool">
+                  <el-option v-for="item in schoolList" :key="item.id" :value="item.id" :label="item.floorName"></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="楼层">
+                <el-select v-model="floorId" style="width: 160px;" @change="handFloor">
+                  <el-option v-for="item in floorList" :key="item.uid" :value="item.uid" :label="item.alias"></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="单元">
+                <el-select v-model="unitId" style="width: 160px;" @change="handUnit">
+                  <el-option v-for="item in unitList" :key="item.id" :value="item.id" :label="item.roomName"></el-option>
+                </el-select>
+              </el-form-item>
+            </el-form>
+          </div>
           <template v-if="swiperData.length > 0">
             <swiper
-                style="height: 600px;  margin-top: auto; margin-bottom: auto;"
+                style="height: 180px;  margin-top: auto; margin-bottom: auto;"
                 ref="mySwiper"
                 class="swiper"
                 :options="swiperOption"
@@ -158,8 +177,9 @@ import SwiperContent from "./leftTop/SwiperContent.vue";
 import ChartBoard from "./charts/ChartBoard.vue";
 import ChartLine from "./charts/ChartLine.vue";
 import ChartLineAnd from "./charts/ChartLineAnd.vue";
-import { getEnv, getByRoom, getListWater, getRoomVideo, getLastVideo } from "@/utils/api";
+import {getEnv, getByRoom, getListWater, getRoomVideo, getLastVideo, getSchool, getByFloor, getUid} from "@/utils/api";
 import { timeDate, Debounce } from "@/utils";
+import { Form, FormItem ,Select } from "element-ui";
 
 export default {
   name: "Zoology",
@@ -172,6 +192,9 @@ export default {
     ChartBoard,
     ChartLine,
     ChartLineAnd,
+    'el-form': Form,
+    'el-form-item': FormItem,
+    'el-select': Select
   },
   data() {
     return {
@@ -232,6 +255,12 @@ export default {
       loading: true,
       weatherLoading: true,
       chartLoading: true,
+      schoolId:'',
+      schoolList: [],
+      floorList: [],
+      floorId: '',
+      unitId: '',
+      unitList: [],
     };
   },
   computed: {
@@ -249,6 +278,11 @@ export default {
           this.loading = false;
         }
       });
+      getSchool({}).then(res => {
+        if(res.code === 10000) {
+          this.schoolList = res.data;
+        }
+      })
     },
     leftTopSelect() {
       // 左上角的选择是否显示
@@ -358,6 +392,31 @@ export default {
     onLeave() {
       this.swipers.autoplay.start();
     },
+    handSchool(val) {
+      this.floorList = [];
+      this.floorId = '';
+      this.unitList= [];
+      this.unitId = '';
+      let params = {
+        floorId: val,
+      };
+      getByFloor(params).then((res) => {
+        this.floorList = res.data;
+      });
+    },
+    handFloor(val) {
+      this.unitList= [];
+      this.unitId = '';
+      let params = {
+        uid: val,
+      };
+      getUid(params).then((res) => {
+        this.unitList = res.data;
+      });
+    },
+    handUnit(val) {
+      this.getRoomId(val);
+    }
   },
   mounted() {
     this.init();
@@ -367,6 +426,9 @@ export default {
 </script>
 
 <style scoped>
+/deep/.el-form-item__label {
+  color: #fff;
+}
 .zoology {
   width: 100%;
   height: 100%;
@@ -516,4 +578,8 @@ export default {
   margin-left: 10px;
   width: 50%;
 }
+.zooFlex {
+  height: 40px;
+  width: 100%;
+}
 </style>

+ 1 - 1
src/views/Zoology/leftTop/SwiperContent.vue

@@ -53,7 +53,7 @@ export default {
   color: #66FFFF;
   font-weight: 200;
   padding: 20px;
-  height: 200px;
+  height: 150px;
 }
 .title {
   font-size: 14px;