|
@@ -20,15 +20,20 @@
|
|
|
</view>
|
|
|
<view class="safetyCard" v-if="pageType==0">
|
|
|
<view class="lab-info">
|
|
|
- <view class="lab-info-t">
|
|
|
- <view>{{newData.levelName}}</view>
|
|
|
- <view>{{newData.typeName}}</view>
|
|
|
- <view>{{newData.subName}}({{newData.roomNum}})</view>
|
|
|
- </view>
|
|
|
- <view class="lab-info-b">
|
|
|
- <img src="@/pages_safetyCheck/images/icon_sys_xz@1x.png">
|
|
|
- {{newData.buildName}}{{newData.floorName}}
|
|
|
+ <img class="lab-info-l" src="@/pages_safetyCheck/images/icon_aqjc_shiyanshi.png">
|
|
|
+ <view class="lab-info-c">
|
|
|
+ <view class="lab-info-c-t">
|
|
|
+ <view class="lab-info-c-t-l">{{newData.subName}}</view>
|
|
|
+ <view class="lab-info-c-t-r">
|
|
|
+ <text>{{newData.levelName}}</text>
|
|
|
+ <text>{{newData.typeName}}</text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="lab-info-c-b">
|
|
|
+ {{newData.roomNum}}房间&{{newData.buildName}}
|
|
|
+ </view>
|
|
|
</view>
|
|
|
+ <view class="lab-info-r">{{newData.subArea}}㎡</view>
|
|
|
</view>
|
|
|
<view class="liability-unit">
|
|
|
<view>学院单位</view>
|
|
@@ -83,8 +88,29 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="position-button-box" v-if="pageType == 0">
|
|
|
- <view class="position-button-p-1" @click="goPage('securityCheck')">安全检查</view>
|
|
|
- <view class="position-button-p-2" @click="goPage('snapshot')">随手拍</view>
|
|
|
+ <img class="position-button-p-1" @click="goPage('securityCheck')"
|
|
|
+ src="@/pages_safetyCheck/images/icon_aqjc_anquanjiancha.png">
|
|
|
+ <img class="position-button-p-2" @click="goPage('snapshot')"
|
|
|
+ src="@/pages_safetyCheck/images/icon_aqjc_suishoupai.png">
|
|
|
+ </view>
|
|
|
+ <view class="shade" v-if="dialogVisible">
|
|
|
+ <view class="null-box" @click="dialogClose()"></view>
|
|
|
+ <view class="shade_n">
|
|
|
+ <view class="title">
|
|
|
+ <view>检查批次</view>
|
|
|
+ <img src="@/pages_safetyCheck/images/icon_06.png">
|
|
|
+ </view>
|
|
|
+ <view class="batch">
|
|
|
+ <view class="batch-li" @click="batchClick(item)" v-for="(item,index) in shadeList">
|
|
|
+ <view class="batch-li-l">
|
|
|
+ <text>{{item.planTitle}}</text>
|
|
|
+ </view>
|
|
|
+ <view class="batch-li-r">
|
|
|
+ <img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
<!-- 物联控制 -->
|
|
|
<iotControl ref="iotControl" v-if="pageType == 1" :subjectData="subjectData"></iotControl>
|
|
@@ -102,6 +128,9 @@
|
|
|
import {
|
|
|
pageRestrictVerify
|
|
|
} from '@/utils/index'
|
|
|
+ import {
|
|
|
+ securityAppCheckPlanTitleList,
|
|
|
+ } from '@/pages_safetyCheck/api/index.js'
|
|
|
import {
|
|
|
iotControl
|
|
|
} from '@/pages_manage/views/laboratory/iotControl.vue'
|
|
@@ -160,7 +189,14 @@
|
|
|
conditioningPage: false,
|
|
|
// 空调弹窗
|
|
|
airConditioningData: null,
|
|
|
- saoCodeType:false,
|
|
|
+ saoCodeType: false,
|
|
|
+ dialogVisible: true,
|
|
|
+ shadeList: [],
|
|
|
+ queryParams: {
|
|
|
+ page: 1,
|
|
|
+ pageSize: 100,
|
|
|
+ checkCategory: '', //1校院巡查 2学院自查
|
|
|
+ },
|
|
|
|
|
|
}
|
|
|
},
|
|
@@ -191,26 +227,107 @@
|
|
|
|
|
|
},
|
|
|
mounted() {
|
|
|
-
|
|
|
+ this.securityAppCheckPlanTitleList();
|
|
|
},
|
|
|
methods: {
|
|
|
+ //查询计划
|
|
|
+ async securityAppCheckPlanTitleList() {
|
|
|
+ let self = this;
|
|
|
+ const {
|
|
|
+ data
|
|
|
+ } = await securityAppCheckPlanTitleList(this.queryParams);
|
|
|
+ if (data.code == 200) {
|
|
|
+ //this.shadeList = data.data.records;
|
|
|
+ if (data.data.record[0]) { //一个计划
|
|
|
+ let planSetId = data.data.record[0]
|
|
|
+ if (data.data.record[0].checkPlanSetVoList[0]) { //一个批次
|
|
|
+ let planSetId = data.data.record[0].checkPlanSetVoList[0].planSetId
|
|
|
+ self.securityAppCheckManageList(planSetId)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //检查任务-在此结果里对比实验室Id判断是否有实验室
|
|
|
+ async securityAppCheckManageList(planSetId) {
|
|
|
+ let self = this;
|
|
|
+ let obj = {
|
|
|
+ page: 1,
|
|
|
+ pageSize: 20,
|
|
|
+ planSetId: planSetId,
|
|
|
+ }
|
|
|
+ const {
|
|
|
+ data
|
|
|
+ } = await securityAppCheckManageList(this.queryParams);
|
|
|
+ if (data.code == 200) {
|
|
|
+ //this.shadeList = data.data.records;
|
|
|
+ data.data.records.forEach(function(item, index) {
|
|
|
+ if (self.newData.subId == item.subId) {
|
|
|
+ let manageId = item.manageId
|
|
|
+ self.securityAppCheckSetOptionList(manageId)
|
|
|
+ } else {
|
|
|
+ uni.showToast({
|
|
|
+ title: '该实验室暂无检查计划!',
|
|
|
+ icon: "none",
|
|
|
+ mask: true,
|
|
|
+ duration: 2000
|
|
|
+ });
|
|
|
+ return
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //查询检查项
|
|
|
+ async securityAppCheckSetOptionList(manageId) {
|
|
|
+ let self = this;
|
|
|
+ let obj = {
|
|
|
+ page: 1,
|
|
|
+ pageSize: 20,
|
|
|
+ checkStatus: '0',
|
|
|
+ manageId: manageId,
|
|
|
+ }
|
|
|
+ const {
|
|
|
+ data
|
|
|
+ } = await securityAppCheckManageList(this.queryParams);
|
|
|
+ if (data.code == 200) {
|
|
|
+ if (data.data.records[0]) {
|
|
|
+ let infoData = row;
|
|
|
+ infoData.pageType = 0;
|
|
|
+ infoData.itemsStatus = 0;
|
|
|
+ infoData.subId = data.data.records[0].subId;
|
|
|
+ infoData.manageId = data.data.records[0].manageId;
|
|
|
+ infoData.setOptionId = data.data.records[0].setOptionId;
|
|
|
+ infoData.hazardCheckPro = data.data.records[0].hazardCheckPro;
|
|
|
+ uni.redirectTo({
|
|
|
+ url: '/pages_safetyCheck/views/inspectManage/inspectAdd?infoData=' +
|
|
|
+ encodeURIComponent(
|
|
|
+ JSON
|
|
|
+ .stringify(infoData))
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
//拨打电话
|
|
|
- callPhone(tel){
|
|
|
+ callPhone(tel) {
|
|
|
uni.makePhoneCall({
|
|
|
phoneNumber: tel
|
|
|
})
|
|
|
},
|
|
|
- goVideoPage(){
|
|
|
+ goVideoPage() {
|
|
|
console.log('视频')
|
|
|
let obj = {
|
|
|
- type:4,
|
|
|
- subId:this.newData.subId
|
|
|
+ type: 4,
|
|
|
+ subId: this.newData.subId
|
|
|
}
|
|
|
uni.navigateTo({
|
|
|
- url: '/pages_manage/views/laboratory/videoPlayer?item='+encodeURIComponent(JSON.stringify(obj))
|
|
|
+ url: '/pages_manage/views/laboratory/videoPlayer?item=' + encodeURIComponent(JSON.stringify(
|
|
|
+ obj))
|
|
|
});
|
|
|
},
|
|
|
- getIotControlData(){
|
|
|
+ getIotControlData() {
|
|
|
this.$refs['iotControl'].iotAppHardwareFindByType();
|
|
|
},
|
|
|
buttonClick(type, row) {
|
|
@@ -241,7 +358,8 @@
|
|
|
} else if (type == 'adminShowType') {
|
|
|
this.$set(this.newData, 'adminShowType', !this.newData.adminShowType);
|
|
|
} else if (type == 'list') {
|
|
|
- this.$set(this.newData.labInfoBrandModels[index], 'showType', !this.newData.labInfoBrandModels[index].showType);
|
|
|
+ this.$set(this.newData.labInfoBrandModels[index], 'showType', !this.newData.labInfoBrandModels[index]
|
|
|
+ .showType);
|
|
|
}
|
|
|
},
|
|
|
//顶部tab点击
|
|
@@ -250,7 +368,7 @@
|
|
|
this.$set(this, 'pageType', index);
|
|
|
}
|
|
|
},
|
|
|
- goPage(type){
|
|
|
+ goPage(type) {
|
|
|
if (!pageRestrictVerify(type)) {
|
|
|
uni.showToast({
|
|
|
title: '没有相关权限,请联系管理员',
|
|
@@ -265,17 +383,6 @@
|
|
|
uni.navigateTo({
|
|
|
url: "/pages_safetyCheck/views/safetyCheck",
|
|
|
});
|
|
|
- /* if(this.identityData){
|
|
|
-
|
|
|
- }else{
|
|
|
- uni.showToast({
|
|
|
- mask: true,
|
|
|
- icon: "none",
|
|
|
- position: "center",
|
|
|
- title: '您不是校/院级管理员或督导组成员,无法使用该功能.',
|
|
|
- duration: 2000
|
|
|
- });
|
|
|
- } */
|
|
|
} else if (type == 'snapshot') {
|
|
|
//随手拍
|
|
|
uni.navigateTo({
|
|
@@ -289,7 +396,7 @@
|
|
|
|
|
|
<style lang="stylus" scoped>
|
|
|
.safetyCardScan {
|
|
|
- height:100%;
|
|
|
+ height: 100%;
|
|
|
|
|
|
#fontColor-A {
|
|
|
color: #00DEDE;
|
|
@@ -304,7 +411,7 @@
|
|
|
}
|
|
|
|
|
|
.header {
|
|
|
- height:192rpx;
|
|
|
+ height: 192rpx;
|
|
|
width: 100%;
|
|
|
// position: fixed;
|
|
|
// top: 0rpx;
|
|
@@ -392,71 +499,85 @@
|
|
|
/* 安全信息牌 */
|
|
|
.safetyCard {
|
|
|
padding-bottom: 150rpx;
|
|
|
+
|
|
|
.lab-info {
|
|
|
background: #FFFFFF;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
|
|
|
- .lab-info-t {
|
|
|
- width: 750rpx;
|
|
|
+ .lab-info-l {
|
|
|
+ width: 80rpx;
|
|
|
height: 80rpx;
|
|
|
- border-bottom: 2rpx dashed #E0E0E0;
|
|
|
- display: flex;
|
|
|
- justify-content: flex-start;
|
|
|
- align-items: center;
|
|
|
- padding: 0 30rpx;
|
|
|
- box-sizing: border-box;
|
|
|
+ background: #0183FA;
|
|
|
+ border-radius: 10rpx 10rpx 10rpx 10rpx;
|
|
|
+ margin-left: 30rpx;
|
|
|
+ margin-top: 30rpx;
|
|
|
+ }
|
|
|
|
|
|
- >view:nth-of-type(1) {
|
|
|
- width: 100rpx;
|
|
|
- height: 60rpx;
|
|
|
- background: #FF0000;
|
|
|
- border-radius: 50rpx 50rpx 50rpx 50rpx;
|
|
|
- font-size: 30rpx;
|
|
|
- color: #FFFFFF;
|
|
|
- line-height: 60rpx;
|
|
|
- text-align: center;
|
|
|
- }
|
|
|
+ .lab-info-c {
|
|
|
+ margin: 24rpx 30rpx 0 20rpx;
|
|
|
+ flex: 1;
|
|
|
|
|
|
- >view:nth-of-type(2) {
|
|
|
- width: 130rpx;
|
|
|
- height: 60rpx;
|
|
|
- border-radius: 50rpx 50rpx 50rpx 50rpx;
|
|
|
- border: 2rpx solid #FF8C00;
|
|
|
- font-size: 30rpx;
|
|
|
- color: #FF8C00;
|
|
|
- line-height: 60rpx;
|
|
|
- text-align: center;
|
|
|
- margin: 0 30rpx 0 10rpx;
|
|
|
+ .lab-info-c-t {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+
|
|
|
+ .lab-info-c-t-l {
|
|
|
+ font-size: 30rpx;
|
|
|
+ color: #333333;
|
|
|
+ line-height: 42rpx;
|
|
|
+ text-align: left;
|
|
|
+ overflow: hidden;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ white-space: nowrap;
|
|
|
+ }
|
|
|
+
|
|
|
+ .lab-info-c-t-r {
|
|
|
+ display: flex;
|
|
|
+ justify-content: flex-start;
|
|
|
+ background: rgba(255, 0, 0, 0.2);
|
|
|
+ border-radius: 10rpx 10rpx 10rpx 10rpx;
|
|
|
+ border: 2rpx solid #FF0000;
|
|
|
+ width: 180rpx;
|
|
|
+ height: 40rpx;
|
|
|
+ margin-left: 10rpx;
|
|
|
+
|
|
|
+ >text {
|
|
|
+ display: inline-block;
|
|
|
+ flex: 1;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 24rpx;
|
|
|
+ color: #FF0000;
|
|
|
+ line-height: 40rpx;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+
|
|
|
+ >text:nth-of-type(1) {
|
|
|
+ border-right: 2rpx solid #FF0000;
|
|
|
+ }
|
|
|
+
|
|
|
+ >text:nth-of-type(2) {}
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- >view:nth-of-type(3) {
|
|
|
+ .lab-info-c-b {
|
|
|
font-size: 30rpx;
|
|
|
- color: #333333;
|
|
|
+ color: #666666;
|
|
|
line-height: 42rpx;
|
|
|
text-align: left;
|
|
|
- overflow: hidden;
|
|
|
- text-overflow: ellipsis;
|
|
|
- white-space: nowrap;
|
|
|
+ margin-top: 10rpx;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .lab-info-b {
|
|
|
- height: 80rpx;
|
|
|
- padding: 0 30rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- display: flex;
|
|
|
- justify-content: flex-start;
|
|
|
- align-items: center;
|
|
|
-
|
|
|
- >img {
|
|
|
- width: 34rpx;
|
|
|
- height: 34rpx;
|
|
|
- margin-right: 12rpx;
|
|
|
- }
|
|
|
-
|
|
|
- font-size: 30rpx;
|
|
|
- color: #333333;
|
|
|
- line-height: 42rpx;
|
|
|
- text-align: left;
|
|
|
+ .lab-info-r {
|
|
|
+ width: 100rpx;
|
|
|
+ height: 150rpx;
|
|
|
+ background: rgba(1, 131, 250, 0.2);
|
|
|
+ border-radius: 0rpx 0rpx 0rpx 0rpx;
|
|
|
+ font-size: 28rpx;
|
|
|
+ color: #0183FA;
|
|
|
+ line-height: 150rpx;
|
|
|
+ text-align: center;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -682,30 +803,117 @@
|
|
|
|
|
|
.position-button-box {
|
|
|
position: fixed;
|
|
|
- bottom: 25rpx;
|
|
|
- left: 30rpx;
|
|
|
- width: 690rpx;
|
|
|
- height: 100rpx;
|
|
|
+ bottom: 26rpx;
|
|
|
display: flex;
|
|
|
- color: #fff;
|
|
|
- overflow: hidden;
|
|
|
- border-radius: 50rpx;
|
|
|
+ justify-content: center;
|
|
|
+
|
|
|
+ >img {
|
|
|
+ width: 130rpx;
|
|
|
+ height: 130rpx;
|
|
|
+ }
|
|
|
|
|
|
.position-button-p-1 {
|
|
|
- width: 345rpx;
|
|
|
- line-height: 100rpx;
|
|
|
- font-size: 30rpx;
|
|
|
- text-align: center;
|
|
|
- background-color: #FF8C00;
|
|
|
+ margin-left: 174rpx;
|
|
|
+ margin-right: 120rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .position-button-p-2 {}
|
|
|
+ }
|
|
|
+
|
|
|
+ .shade {
|
|
|
+ height: 100%;
|
|
|
+ width: 100%;
|
|
|
+ position: fixed;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ z-index: 200;
|
|
|
+ background: rgba(0, 0, 0, 0.2);
|
|
|
+ top: 0;
|
|
|
+
|
|
|
+ .null-box {
|
|
|
+ flex: 1;
|
|
|
}
|
|
|
|
|
|
- .position-button-p-2 {
|
|
|
- width: 345rpx;
|
|
|
- line-height: 100rpx;
|
|
|
- font-size: 30rpx;
|
|
|
- text-align: center;
|
|
|
- background-color: #0183FA;
|
|
|
+ .shade_n {
|
|
|
+ position: absolute;
|
|
|
+ bottom: 0;
|
|
|
+ left: 0;
|
|
|
+ width: 750rpx;
|
|
|
+ height: 466rpx;
|
|
|
+ background: #FFFFFF;
|
|
|
+ border-radius: 20rpx 20rpx 0rpx 0rpx;
|
|
|
+ overflow-y: auto;
|
|
|
+
|
|
|
+ .title {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ padding: 0 50rpx 0 284rpx;
|
|
|
+ box-sizing: border-box;
|
|
|
+ border-bottom: 1rpx solid #E0E0E0;
|
|
|
+
|
|
|
+ >view {
|
|
|
+ font-size: 30rpx;
|
|
|
+ color: #3D3D3D;
|
|
|
+ line-height: 90rpx;
|
|
|
+ text-align: left;
|
|
|
+ }
|
|
|
+
|
|
|
+ >img {
|
|
|
+ width: 24rpx;
|
|
|
+ height: 12rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .batch {
|
|
|
+ padding: 0 30rpx;
|
|
|
+ box-sizing: border-box;
|
|
|
+
|
|
|
+ .batch-li {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ border-bottom: 1rpx solid #E0E0E0;
|
|
|
+ padding: 20rpx 0 16rpx 0rpx;
|
|
|
+ box-sizing: border-box;
|
|
|
+
|
|
|
+ .batch-li-l {
|
|
|
+ >text:nth-of-type(1) {
|
|
|
+ display: block;
|
|
|
+ font-size: 30rpx;
|
|
|
+ color: #333333;
|
|
|
+ line-height: 42rpx;
|
|
|
+ text-align: left;
|
|
|
+ }
|
|
|
+
|
|
|
+ >text:nth-of-type(2) {
|
|
|
+ display: block;
|
|
|
+ font-size: 28rpx;
|
|
|
+ color: #666666;
|
|
|
+ line-height: 39rpx;
|
|
|
+ text-align: left;
|
|
|
+ margin-top: 6rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .batch-li-r {
|
|
|
+ font-size: 28rpx;
|
|
|
+ color: #666666;
|
|
|
+ line-height: 39rpx;
|
|
|
+ text-align: left;
|
|
|
+ display: flex;
|
|
|
+ justify-content: flex-start;
|
|
|
+ align-items: center;
|
|
|
+
|
|
|
+ >img {
|
|
|
+ width: 24rpx;
|
|
|
+ height: 24rpx;
|
|
|
+ margin-left: 9rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-</style>
|
|
|
+</style>
|