dedsudiyu 1 년 전
부모
커밋
fd08b63b90

+ 9 - 0
src/api/integratedManagement/index.js

@@ -346,6 +346,15 @@ export function laboratorySubRelInfoGetDetailDelete(data) {
   })
 }
 
+//实验室-排序修改
+export function laboratorySubRelInfoUpdateBySort(data) {
+  return request({
+    url: '/laboratory/subRelInfo/updateBySort',
+    method: 'post',
+    data: data
+  })
+}
+
 
 /******************* 安全信息类目 *********************/
 //安全信息类目-列表

+ 8 - 24
src/views/emergencyManagement/planExecuteRecord/planExecuteRecordDetail.vue

@@ -47,8 +47,8 @@
             <!--            <img src="@/assets/images/login-background.jpg">-->
             <video class="video" :src="form.recordVideo?form.recordVideo:''" autoplay controls></video>
             <div class="video-button-box">
-              <p></p>
-              <p></p>
+              <!--<p></p>-->
+              <!--<p></p>-->
             </div>
           </div>
         </div>
@@ -57,8 +57,8 @@
           <div class="addPage_b_t_r_b" v-if="form.messageLogVoList[0]">
             <li v-for="(item,index3) in form.messageLogVoList" :key="index3">
               <i>{{parseTime(item.createTime)}}</i>
-              <i>{{item.alarmType == 1 ? '短信推送':(item.alarmType == 2 ? '语音播报' : '')}}</i>
-              <i>{{item.userList}}</i>
+              <i>{{item.alarmType == 1 ? '语音播报':(item.alarmType == 2 ? '短信推送' : '')}}</i>
+              <i>{{item.nickRoleName}}</i>
             </li>
           </div>
         </div>
@@ -79,7 +79,7 @@
                     +')'}}
                   </p>
                   <p v-if="(item.riskStatus==1||item.riskStatus==2)">
-                    传感器:<span v-for="(minItem,minIndex) in item.sensorJson">{{minItem.sensorName}}:{{minItem.sensorValue}}</span>
+                    传感器:<span v-for="(minItem,minIndex) in item.sensorJson">{{minIndex!=0?' ,':''}}{{minItem.sensorName}}:{{minItem.sensorValue}}</span>
                   </p>
                   <p v-if="(item.riskStatus==1||item.riskStatus==2)">时间:{{parseTime(item.createTime)}}</p>
                 </div>
@@ -92,7 +92,7 @@
                     {{item.eventOperate}}
                   </p>
                   <p v-if="(item.riskStatus!=1&& item.riskStatus!=2)">
-                    传感器:<span v-for="(minItem,minIndex) in item.sensorJson">{{minItem.sensorName}}:{{minItem.sensorValue}}</span>
+                    传感器:<span v-for="(minItem,minIndex) in item.sensorJson">{{minIndex!=0?' ,':''}}{{minItem.sensorName}}:{{minItem.sensorValue}}</span>
                   </p>
                   <p v-if="(item.riskStatus!=1&& item.riskStatus!=2)">
                     时间:{{parseTime(item.createTime)}}
@@ -101,22 +101,6 @@
               </div>
             </div>
           </div>
-          <!--<div class="time-box">-->
-          <!--<ul>-->
-          <!--<li :class="(item.riskStatus==1||item.riskStatus==2)?'risk_trend':'hardware'" v-for="(item,index2) in planAxis" :key="index2">-->
-          <!--<p v-if="(index2 !=0 && index2 !=planAxis.length-1)" :class="(item.riskStatus==1||item.riskStatus==2)?'dot':'dot_tow'"></p>-->
-
-          <!--<p v-if="(item.riskStatus==1||item.riskStatus==2) && item.riskPlanName !='风险解除'"> {{item.riskPlanName}} ({{item.riskPlanLevelName}})</p>-->
-          <!--<p v-if="(item.riskStatus==1||item.riskStatus==2) && item.riskPlanName =='风险解除'"> {{item.riskPlanName}}</p>-->
-
-          <!--<p v-if="(item.riskStatus!=1&& item.riskStatus!=2)">{{item.riskPlanName}}</p>-->
-          <!--<p class="sensor_val">{{item.sensorJsonName}}:<i class="color: #FF3131;">{{item.sensorJsonValue}}</i></p>-->
-          <!--<p class="sensor_timer">时间:<i>{{item.createTime}}</i></p>-->
-
-          <!--<p v-if="index2 !=planAxis.length-1" :class="(item.riskStatus==1||item.riskStatus==2)?'ledgement':'ledgement_tow'"></p>-->
-          <!--</li>-->
-          <!--</ul>-->
-          <!--</div>-->
         </div>
       </div>
     </div>
@@ -322,8 +306,8 @@
               display: block;
             }
             .video-button-box{
-              height:10px;
-              border:1px solid #dedede;
+              /*height:10px;*/
+              /*border:1px solid #dedede;*/
             }
           }
         }

+ 0 - 2
src/views/integratedManagement/laboratoryManagement/subject/associationConfiguration.vue

@@ -370,9 +370,7 @@
       },
       /** 查询危险源列表 */
       getList() {
-        this.$set(this,'loading',true);
         laboratoryHazardList(this.queryParams).then(response => {
-          this.$set(this,'loading',false);
           this.$set(this,'dataList',response.data.records);
           this.$set(this,'total',response.data.total);
         });

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 938 - 1966
src/views/integratedManagement/laboratoryManagement/subject/index.vue


+ 38 - 0
src/views/integratedManagement/laboratoryManagement/subject/indexRightPage/alarmPage.vue

@@ -0,0 +1,38 @@
+<!--报警模块-->
+<template>
+  <div class="indexRightPage-alarmPage">
+
+  </div>
+</template>
+
+<script>
+  //import { getInfo } from "@/api/integratedManagement/index";
+  export default {
+    name: 'alarmPage',
+    data(){
+      return{
+        newData:{},
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+      this.initialize();
+    },
+    methods:{
+      initialize(){
+        console.log(this.$parent.infoId)
+      },
+    },
+  }
+</script>
+
+<style scoped lang="scss">
+  .indexRightPage-alarmPage{
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 38 - 0
src/views/integratedManagement/laboratoryManagement/subject/indexRightPage/entrancePage.vue

@@ -0,0 +1,38 @@
+<!--门禁模块-->
+<template>
+  <div class="indexRightPage-entrancePage">
+
+  </div>
+</template>
+
+<script>
+  //import { getInfo } from "@/api/integratedManagement/index";
+  export default {
+    name: 'entrancePage',
+    data(){
+      return{
+        newData:{},
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+      this.initialize();
+    },
+    methods:{
+      initialize(){
+        console.log(this.$parent.infoId)
+      },
+    },
+  }
+</script>
+
+<style scoped lang="scss">
+  .indexRightPage-entrancePage{
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 38 - 0
src/views/integratedManagement/laboratoryManagement/subject/indexRightPage/hardwarePage.vue

@@ -0,0 +1,38 @@
+<!--硬件模块-->
+<template>
+  <div class="indexRightPage-hardwarePage">
+
+  </div>
+</template>
+
+<script>
+  //import { getInfo } from "@/api/integratedManagement/index";
+  export default {
+    name: 'hardwarePage',
+    data(){
+      return{
+        newData:{},
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+      this.initialize();
+    },
+    methods:{
+      initialize(){
+        console.log(this.$parent.infoId)
+      },
+    },
+  }
+</script>
+
+<style scoped lang="scss">
+  .indexRightPage-hardwarePage{
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 162 - 0
src/views/integratedManagement/laboratoryManagement/subject/indexRightPage/indexRightPage.vue

@@ -0,0 +1,162 @@
+<template>
+  <div class="subject-indexRightPage">
+    <div class="top-button-box">
+      <div :class="rightButtonType == 1 ? 'buttonColorA' : 'buttonColorB'" @click="rightButtonClick(1)">传感器监测</div>
+      <div :class="rightButtonType == 2 ? 'buttonColorA' : 'buttonColorB'" @click="rightButtonClick(2)">物联控制</div>
+      <div :class="rightButtonType == 3 ? 'buttonColorA' : 'buttonColorB'" @click="rightButtonClick(3)">视频监控</div>
+      <div :class="rightButtonType == 4 ? 'buttonColorA' : 'buttonColorB'" @click="rightButtonClick(4)">声光报警</div>
+      <div :class="rightButtonType == 5 ? 'buttonColorA' : 'buttonColorB'" @click="rightButtonClick(5)">智能门禁</div>
+    </div>
+    <div class="bottom-content-max-big-box">
+      <div class="bottom-content-address-box">
+        <el-tooltip class="item" effect="dark"
+                    v-if="deptName"
+                    :content="deptName" placement="bottom">
+          <i>{{deptName}}</i>
+        </el-tooltip>
+        <el-tooltip class="item" effect="dark"
+                    v-if="buildName && floorName"
+                    :content="buildName+floorName" placement="bottom">
+          <i>当前位置:{{buildName}}{{floorName}}</i>
+        </el-tooltip>
+      </div>
+      <div class="bottom-content-big-box">
+        <sensor-page v-if="rightButtonType == 1"></sensor-page>
+        <hardware-page v-if="rightButtonType == 2"></hardware-page>
+        <video-page v-if="rightButtonType == 3"></video-page>
+        <alarm-page v-if="rightButtonType == 4"></alarm-page>
+        <entrance-page v-if="rightButtonType == 5"></entrance-page>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+  import sensorPage from './sensorPage.vue'
+  import hardwarePage from './hardwarePage.vue'
+  import videoPage from './videoPage.vue'
+  import alarmPage from './alarmPage.vue'
+  import entrancePage from './entrancePage.vue'
+  export default {
+    name: 'indexRightPage',
+    components: {
+      sensorPage,
+      hardwarePage,
+      videoPage,
+      alarmPage,
+      entrancePage,
+    },
+    data(){
+      return{
+        //实验室ID
+        infoId:'',
+        //当前选中右侧按钮
+        rightButtonType:1,
+        //位置数据
+        deptName:'',
+        buildName:'',
+        floorName:'',
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+
+    },
+    methods:{
+      tableButtonClick(item){
+        this.$set(this,'infoId',item.infoId);
+        this.$set(this,'deptName',item.deptName);
+        this.$set(this,'buildName',item.buildName);
+        this.$set(this,'floorName',item.floorName);
+        this.$set(this,'rightButtonType',1);
+      },
+      //切换实验室展示数据
+      rightButtonClick(type) {
+        let self = this
+        if (this.rightButtonType != type) {
+          if(type == 1){
+            this.$set(this,'rightButtonType',type);
+          }else if(type == 2){
+            this.$set(this,'rightButtonType',type);
+          }else if(type == 3){
+            this.$set(this,'rightButtonType',type);
+          }else if(type == 4){
+            this.$set(this,'rightButtonType',type);
+          }else if(type == 5){
+            this.$set(this,'rightButtonType',type);
+          }
+        }
+      },
+    },
+  }
+</script>
+
+<style scoped lang="scss">
+  .subject-indexRightPage{
+    width:428px;
+    display: flex;
+    flex-direction: column;
+    .top-button-box{
+      display: flex;
+      margin-left:6px;
+      div{
+        padding:0 10px;
+        height:40px;
+        line-height:40px;
+        font-size:14px;
+        text-align: center;
+        border-top-right-radius: 10px;
+        border-top-left-radius: 10px;
+        margin-right:1px;
+        cursor: pointer;
+        font-weight: 500;
+      }
+      .buttonColorA{
+        color:#0045AF;
+        background:#fff ;
+        border: 1px solid #E0E0E0;
+        border-bottom: 1px solid rgba(224,224,224,0.3);
+      }
+      .buttonColorB{
+        color:#333;
+        background:#E0E0E0 ;
+        border: 1px solid #E0E0E0;
+        border-bottom:none;
+      }
+    }
+    .bottom-content-max-big-box{
+      width:408px;
+      box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.2);
+      border-radius: 0px 0px 10px 10px;
+      font-weight:500;
+      flex:1;
+      display: flex;
+      flex-direction: column;
+      margin-left:6px;
+      overflow: hidden;
+      margin-bottom:10px;
+      .bottom-content-address-box{
+        margin:16px 26px;
+        display: flex;
+        justify-content: space-between;
+        >i{
+          font-style: normal;
+          line-height:18px;
+          font-size:16px;
+          color: #333;
+          overflow:hidden;
+          white-space: nowrap;
+          text-overflow: ellipsis;
+        }
+      }
+      .bottom-content-big-box{
+        flex: 1;
+        display: flex;
+        flex-direction: column;
+        overflow: hidden;
+      }
+    }
+  }
+</style>

+ 38 - 0
src/views/integratedManagement/laboratoryManagement/subject/indexRightPage/sensorPage.vue

@@ -0,0 +1,38 @@
+<!--传感器模块-->
+<template>
+  <div class="indexRightPage-sensorPage">
+
+  </div>
+</template>
+
+<script>
+  //import { getInfo } from "@/api/integratedManagement/index";
+  export default {
+    name: 'sensorPage',
+    data(){
+      return{
+        newData:{},
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+      this.initialize();
+    },
+    methods:{
+      initialize(){
+        console.log(this.$parent.infoId)
+      },
+    },
+  }
+</script>
+
+<style scoped lang="scss">
+  .indexRightPage-sensorPage{
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 38 - 0
src/views/integratedManagement/laboratoryManagement/subject/indexRightPage/videoPage.vue

@@ -0,0 +1,38 @@
+<!--视频模块-->
+<template>
+  <div class="indexRightPage-videoPage">
+
+  </div>
+</template>
+
+<script>
+  //import { getInfo } from "@/api/integratedManagement/index";
+  export default {
+    name: 'videoPage',
+    data(){
+      return{
+        newData:{},
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+      this.initialize();
+    },
+    methods:{
+      initialize(){
+        console.log(this.$parent.infoId)
+      },
+    },
+  }
+</script>
+
+<style scoped lang="scss">
+  .indexRightPage-videoPage{
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 6 - 0
src/views/iotDevice/hardwareManagement/hardwareEquipment/index.vue

@@ -378,6 +378,12 @@
             self.$set(self.dialogForm, 'deviceTypeKey', item.deviceTypeKey)
             self.$set(self.dialogForm, 'deviceId', '')
             self.$set(self.dialogForm, 'deviceNo','')
+            this.$set(this, 'reservedNameOne', '')
+            this.$set(this, 'reservedTypeOne', false)
+            this.$set(this, 'reservedNameTwo', '')
+            this.$set(this, 'reservedTypeTwo', false)
+            this.$set(this, 'reservedNameThree', '')
+            this.$set(this, 'reservedTypeThree', false)
             self.iotDeviceFindByType(item.deviceTypeKey);
           }
         });