<template> <view> <cu-custom bgColor="bg-gradual-blueness" :isBack="true"> <block slot="backText">返回</block> <block slot="content">隐患排查项</block> </cu-custom> <scroll-view scroll-y> <view class="check-items" v-for="(item, index) in info" :key="item.EQUIPMENT_RECORD_ID"> <view class="title">消防区域: {{item.FIRE_REGION_NAME}}</view> <view class="title">消防点位:{{item.FIRE_POINT_NAME}}</view> <view class="title">器材类型:{{item.dicName}}</view> <view class="title">器材编码:{{item.FIRE_DEVICE_CODE}}</view> <view class="title">消防器材检查标准:</view> <view class="dy-card" v-for="(item, index) in item.fireDeviceTypeList" :key="item"> <view class="title">{{ index + 1 }}、{{ item }}</view> </view> <view class="check-items-select"> <radio-group class="block"> <view class="flex justify-between padding-sm"> <view class="select"> <view @click="checkTrue(item)" class="flex align-center"> <radio class='mr10' :class="item.ISNORMAL==0 ?'checked':''" :checked="item.ISNORMAL==0" disabled></radio> <text>合格</text> </view> <!-- <view v-if="item.ISNORMAL== 0 && isTongyong" @click="gotoAddImg" class="cuIcon-infofill text-blue unqualified"></view> --> </view> <view class="select"> <view class="flex align-center" @click="goToAdd(item,index)"> <radio class='red mr10' :class="item.ISNORMAL==1?'checked':''" :checked="item.ISNORMAL==1" disabled></radio> <text>不合格</text> </view> <view v-if="item.ISNORMAL==1" @click="goToEdit(item,index)" class="cuIcon-infofill text-blue unqualified"></view> </view> </view> </radio-group> </view> </view> </scroll-view> <view v-if="files.length > 0" class="check-items"> <view class="title" style="font-size: 18px;">点位检查标准合格照片</view> <!-- <scroll-view scroll-x class="bg-white nav" style="margin-top: 20px;" scroll-with-animation> <view class="cu-item" v-for="(item,index) in files" v-bind:key="index"> <view class="imgs"> <image :src="baseImgPath+item.FILEPATH" :data-index="index" @click="ViewShowImage" mode=""> </image> </view> </view> </scroll-view> --> <swiper class="swiper" style="height: 270px;margin-left: 8px; margin-top: 10px;" circular indicator-dots="ture"> <swiper-item v-for="(item,index) in files" v-bind:key="index"> <image :src="baseImgPath+item.FILEPATH" :data-index="index" @click="ViewShowImage" mode="aspectFit"> </swiper-item> </swiper> </view> <view> </view> <view class="cu-tabbar-height"></view> <view v-if="this.ISLOG == '0'" class="bottom-fixed" @click="$noMultipleClicks(save)"> <button class="cu-btn bg-green">提交</button> </view> <view v-else class="bottom-fixed" @click="$noMultipleClicks(save)"> <button class="cu-btn bg-green">查看点位图片</button> </view> </view> </template> <script> import { basePath, corpinfoId, loginUser, loginSession, baseImgPath } from '@/common/tool.js'; export default { data() { return { baseImgPath, files: [], noClick: true, FIRE_CHECK_STANDARD_ID: '', FIRE_DEVICE_ID: '', EQUIPMENT_RECORD_ID: '', FIRE_POINT_ID: '', EQUIPMENT_POINT_ID: '', FIRE_PREPARED_ID: '', FIRE_RECORD_ID: '', FIRE_CHECK_ID: '', ISLOG: '', FIRE_DEVICE_TYPE_ID: '', //消防器材类型编码 fireDeviceTypeList: [], info: [], isTongyong: true, } }, onLoad(e) { this.FIRE_DEVICE_TYPE_ID = e.FIRE_DEVICE_TYPE_ID this.FIRE_DEVICE_ID = e.FIRE_DEVICE_ID this.FIRE_RECORD_ID = e.FIRE_RECORD_ID this.EQUIPMENT_POINT_ID = e.EQUIPMENT_POINT_ID this.EQUIPMENT_RECORD_ID = e.EQUIPMENT_RECORD_ID this.FIRE_POINT_ID = e.FIRE_POINT_ID this.info.EQUIPMENT_RECORD_ID = e.EQUIPMENT_RECORD_ID this.FIRE_CHECK_ID = e.FIRE_CHECK_ID this.ISLOG = e.ISLOG if (corpinfoId == 'ffbf90f7064340ae9d56c16d4f560423') { this.isTongyong = false; } loginSession(); this.getData(); this.getPointQualifiedPhotos(); // this.getDeviceData() }, onShow() { var _this = this; if (_this.initflag) { _this.initflag = false; _this.$forceUpdate(); //强制刷新 } // this.getFireDeviceType(); }, methods: { ViewShowImage(e) { let files = []; for (var i = 0; i < this.files.length; i++) { files.push(baseImgPath + this.files[i].FILEPATH) } uni.previewImage({ urls: files, current: e.currentTarget.dataset.index }); }, getData() { // 获取这个 消防器材 是否有隐患 var _this = this; uni.showLoading({ title: '请稍候' }) var bashurl = '/app/fireRecordManger/goRecordDeviceByPid' if (this.ISLOG == '0') { bashurl = '/app/fireRecordManger/goRecordDeviceByEid' } uni.request({ url: basePath + bashurl, method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { EQUIPMENT_RECORD_ID: _this.EQUIPMENT_RECORD_ID, //检查记录id FIRE_RECORD_ID: _this.FIRE_RECORD_ID, //检查记录id FIRE_CHECK_ID: _this.FIRE_CHECK_ID, //检查记录id FIRE_POINT_ID: _this.FIRE_POINT_ID, //检查记录id USER_ID: loginUser.USER_ID, CORPINFO_ID: loginUser.CORPINFO_ID }, success: (res) => { console.log(res) if ("success" == res.data.result) { uni.hideLoading(); _this.info = res.data.varData // _this.info.FIRE_REGION_NAME = res.data.varData[0].FIRE_REGION_NAME; // _this.info.FIRE_POINT_NAME = res.data.varData[0].FIRE_POINT_NAME; // _this.info.FIRE_DEVICE_TYPE_NAME = res.data.varData[0].dicName; // _this.info.FIRE_DEVICE_CODE = res.data.varData[0].FIRE_DEVICE_CODE; // // _this.info.HIDDEN_ID = res.data.varData[0].HIDDEN_ID; // _this.info.HASHIDDEN = res.data.varData[0].HASHIDDEN; // _this.$set(_this.info, 'ISNORMAL', res.data.varData[0].ISNORMAL) } else { uni.showToast({ title: res.message, duration: 2000 }); } } }); }, getPointQualifiedPhotos() { var _this = this; uni.request({ url: basePath + '/app/fireRecordManger/getPointQualifiedPhotos', method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { FIRE_POINT_ID: _this.FIRE_POINT_ID, EQUIPMENT_POINT_ID: _this.EQUIPMENT_POINT_ID, //检查记录id ISLOG: _this.ISLOG }, success: (res) => { if ("success" == res.data.result) { _this.files = res.data.varList; } else { uni.showToast({ title: res.data.message, duration: 2000 }); } } }); }, getFireDeviceType() { var _this = this; uni.showLoading({ title: '请稍候' }) uni.request({ url: basePath + '/app/fireRecordManger/getStandardListByType', method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { FIRE_DEVICE_TYPE_LIST: _this.FIRE_DEVICE_TYPE_ID, }, success: (res) => { if ("success" == res.data.result) { uni.hideLoading(); _this.fireDeviceTypeList = res.data.varList; } else { uni.showToast({ title: res.data.message, duration: 2000 }); } } }); }, //去保存 async save() { var _this = this; if (_this.ISLOG == 1) { _this.gotoAddImg() } else { uni.showLoading({ title: '请稍候' }) for (var i = 0; i < _this.info.length; i++) { let item = _this.info[i] if (item.ISNORMAL == undefined || item.ISNORMAL == '2') { if (!item.HIDDEN_ID) { uni.hideLoading() uni.showToast({ title: '此检查内容未排查完成,无法提交', icon: 'none' }) return } } if (item.ISNORMAL == 1) { if (!item.HIDDEN_ID) { uni.hideLoading() uni.showToast({ title: '请上传隐患信息', icon: 'none' }) return } } if (item.HIDDEN_ID) { let params = { HIDDEN_ID: item.HIDDEN_ID, HIDDENDESCR: '' } uni.request({ url: basePath + '/app/hidden/goEdit', method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { HIDDEN_ID: item.HIDDEN_ID, }, success: (res) => { if ("success" == res.data.result) { uni.hideLoading(); _this.info[i].HIDDENDESCR = res.data.pd.HIDDENDESCR } else if ("exception" == res.data.result) { uni.showToast({ title: '错误', duration: 2000 }); } } }); } } uni.request({ url: basePath + '/app/fireRecordManger/editDeviceCheck', xhrFields: { withCredentials: true }, method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { CHECK_DATA: JSON.stringify(_this.info), EQUIPMENT_POINT_ID: this.EQUIPMENT_POINT_ID }, success: function(res) { if ("noSuccessImg" == res.data.result) { uni.showToast({ title: '请上传合格图片', icon: 'none' }) return } if ("success" == res.data.result) { setTimeout(function() { // var pages = getCurrentPages(); // 获取当前页面栈 // var prePage = pages[pages.length - 2]; // 上一个页面 // prePage.$vm.initflag = true; // A 页面 init方法 为true // uni.navigateBack({}); // uni.hideLoading(); // 去添加照片 _this.gotoAddImg() }, 1500); } else { uni.showToast({ title: "系统错误", duration: 2000 }); } } }) return } }, // 不涉及 checkNotInvolved() { if (this.info.HASHIDDEN > 0) { uni.showToast({ icon: 'none', title: "此检查内容存在未处理隐患,无法检查", duration: 1000 }); return; } let _this = this; if (_this.info.HIDDEN_ID) { //不合格改为合格时 删除旧隐患 uni.request({ url: basePath + '/app/hidden/delete', xhrFields: { withCredentials: true }, method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { HIDDEN_ID: _this.info.HIDDEN_ID }, success: function(res) { if ("success" == res.data.result) { _this.info.ISNORMAL = 2; _this.info.HIDDEN_ID = ''; _this.$forceUpdate(); //强制刷新 } else { uni.showToast({ title: "系统错误", duration: 2000 }); } } }) } else { _this.info.ISNORMAL = 2; _this.info.HIDDEN_ID = ''; _this.$forceUpdate(); //强制刷新 } }, //点击合格 checkTrue(item) { // 记录纯查看 if (this.ISLOG == '1') { return } if (item.HASHIDDEN > 0) { uni.showToast({ icon: 'none', title: "此检查内容存在未处理隐患,无法检查", duration: 1000 }); return; } if (item.HIDDEN_ID) { //不合格改为合格时 删除旧隐患 uni.request({ url: basePath + '/app/hidden/delete', xhrFields: { withCredentials: true }, method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { HIDDEN_ID: item.HIDDEN_ID }, success: function(res) { if ("success" == res.data.result) { item.ISNORMAL = 0; item.HIDDEN_ID = ''; _this.$forceUpdate(); //强制刷新 } else { uni.showToast({ title: "系统错误", duration: 2000 }); } } }) } else { item.ISNORMAL = 0; item.HIDDEN_ID = ''; this.$forceUpdate(); //强制刷新 } }, //跳转事件 goToAdd(item, index) { console.log('add') if (this.ISLOG == '1') { // 记录纯查看 并且当前是合格 if (item.ISNORMAL == 0) { return } } if (item.HASHIDDEN > 0 && this.ISLOG == '0') { uni.showToast({ icon: 'none', title: "此检查内容存在未处理隐患,无法检查", duration: 1000 }); return; } if (item.ISNORMAL == 1) { return; } item.ISNORMAL = 1 uni.navigateTo({ url: '/pages/application/fire-management/hidden-trouble-app/exclude-form?' + 'LISTMANAGER_ID=' + this.FIRE_CHECK_ID + '&RECORDITEM_ID=' + this.FIRE_CHECK_STANDARD_ID + '&RISKITEM_ID=' + this.FIRE_CHECK_ID + '&FIRE_PREPARED_ID=' + item.FIRE_PREPARED_ID + '&HIDDEN_ID=' + item.HIDDEN_ID + '&INDEX=' + index + '&FIRE_DEVICE_TYPE_ID=' + item.FIRE_DEVICE_TYPE_ID + '&ISLOG=' + this.ISLOG }); }, //跳转事件 goToEdit(item, index) { console.log(item.HASHIDDEN) if (item.HASHIDDEN == 1) { uni.showToast({ icon: 'none', title: "此检查内容存在未处理隐患", duration: 1000 }); return; } uni.navigateTo({ url: '/pages/application/fire-management/hidden-trouble-app/exclude-form?HIDDEN_ID=' + item.HIDDEN_ID + '&FIRE_DEVICE_TYPE_ID=' + item.FIRE_DEVICE_TYPE_ID + '&ISLOG=' + this.ISLOG + '&INDEX=' + index }); }, //添加合格照片 gotoAddImg() { uni.navigateTo({ url: '/pages/application/fire-management/hidden-trouble-app/check-items-imgs?EQUIPMENT_POINT_ID=' + this.EQUIPMENT_POINT_ID + '&ISLOG=' + this.ISLOG }); }, getHegeImgCount(FOREIGN_KEY) { console.log('hhhhh') return new Promise((resolve, reject) => { var _this = this; uni.showLoading({ title: '请稍候' }) uni.request({ url: basePath + '/app/imgfiles/listImgs', method: 'POST', dataType: 'json', header: { 'Content-type': 'application/x-www-form-urlencoded' }, data: { FOREIGN_KEY: FOREIGN_KEY, TYPE: 14 }, success: (res) => { if ("success" == res.data.result) { uni.hideLoading(); if (res.data.imgs) { if (res.data.imgs.length > 0) { console.info('11') return res.data.imgs.length } } } else if ("exception" == data.result) { uni.showToast({ title: '错误', duration: 2000 }); return 0 } return 0 } }); return 0 }) }, } } </script> <style> .select radio { transform: scale(0.9); } </style>