338 lines
13 KiB
Vue
338 lines
13 KiB
Vue
|
<template>
|
|||
|
<view class="content">
|
|||
|
<view class="card">
|
|||
|
<u-cell-group :border="false">
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">检查题目:</view>
|
|||
|
<view slot="value">
|
|||
|
<u-radio-group v-model="form.INSPECTION_SUBJECT" placement="row" disabled>
|
|||
|
<u-radio label="安全" name="安全"></u-radio>
|
|||
|
<u-radio label="环保" name="环保" class="ml-10"></u-radio>
|
|||
|
<u-radio label="综合" name="综合" class="ml-10"></u-radio>
|
|||
|
</u-radio-group>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">被检查单位:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ form.INSPECTED_CORPINFO_ID_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">被检查单位现场负责人:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ form.INSPECTED_SITEUSER_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">检查场所:</view>
|
|||
|
<view slot="value">
|
|||
|
<u--input v-model="form.INSPECTION_PLACE" border="none" placeholder="请输入检查场所" inputAlign="right"
|
|||
|
disabled></u--input>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">检查类型:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ form.INSPECTION_TYPE_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">检查开始时间:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ form.INSPECTION_TIME_START }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">检查结束时间:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ form.INSPECTION_TIME_END }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">记录填写时间:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ form.CREATTIME}}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title">检查情况:</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none">
|
|||
|
<view slot="value">
|
|||
|
<view class="pr mt-10" v-for="(item,index) in form.situationList" :key="item.id">
|
|||
|
<u--textarea v-model="item.SITUATION" placeholder="请输入检查情况" disabled></u--textarea>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title">检查人员:</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="title-none">
|
|||
|
<view slot="value" style="flex: 1">
|
|||
|
<view class="pr mt-10" v-for="(item,index) in form.inspectorList" :key="item.id">
|
|||
|
<u-cell-group :border="false" class="border">
|
|||
|
<u-cell class="title-show">
|
|||
|
<view slot="title">{{ index + 1 }}.检查人员单位</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ item.INSPECTION_DEPARTMENT_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="title-show" :border="false">
|
|||
|
<view slot="title">{{ index + 1 }}.检查人员</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ item.INSPECTION_USER_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
</u-cell-group>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title">发现问题:</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="title-none">
|
|||
|
<view slot="value" style="flex: 1">
|
|||
|
<uni-table border stripe emptyText="暂无更多数据">
|
|||
|
<uni-tr>
|
|||
|
<uni-th align="center">序号</uni-th>
|
|||
|
<uni-th align="center">隐患部位</uni-th>
|
|||
|
<uni-th align="center">隐患描述</uni-th>
|
|||
|
<uni-th align="center">操作</uni-th>
|
|||
|
</uni-tr>
|
|||
|
<uni-tr v-for="(item,index) in form.hiddenList" :key="item.HIDDEN_ID || item.id">
|
|||
|
<uni-td>{{ index + 1 }}</uni-td>
|
|||
|
<uni-td>{{ item.HIDDENPART_NAME }}</uni-td>
|
|||
|
<uni-td>{{ item.HIDDENDESCR }}</uni-td>
|
|||
|
<uni-td>
|
|||
|
<view class="flex-between">
|
|||
|
<u-icon name="eye-fill" @tap="showHidden(item, index)"></u-icon>
|
|||
|
</view>
|
|||
|
</uni-td>
|
|||
|
</uni-tr>
|
|||
|
</uni-table>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<template v-for="item in form.inspectorVerifyList">
|
|||
|
<u-cell class="flex-none" v-show="item.INSPECTION_USER_OPINION">
|
|||
|
<view slot="title" class="title">检查人意见:</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<u--textarea v-model="item.INSPECTION_USER_OPINION" disabled placeholder="请输入检查人意见"></u--textarea>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none" v-show="item.INSPECTION_USER_SIGN_IMG">
|
|||
|
<view slot="title" class="title">签字:</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<u--image :showLoading="true" :src="$store.state.filePath + item.INSPECTION_USER_SIGN_IMG"
|
|||
|
width="100%" height="80px" mode="scaleToFill"
|
|||
|
@click="previewImage($store.state.filePath + item.INSPECTION_USER_SIGN_IMG)"></u--image>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
</template>
|
|||
|
</u-cell-group>
|
|||
|
</view>
|
|||
|
<u-popup :show="popupShow" @close="popupShow = false" mode="right" :closeOnClickOverlay="false"
|
|||
|
:customStyle="{width:'85vw',overflowY:'auto'}">
|
|||
|
<view class="card">
|
|||
|
<u-cell-group :border="false">
|
|||
|
<u-cell class="flex-none">
|
|||
|
<view slot="title" class="title required">隐患照片:</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<u-upload
|
|||
|
disabled
|
|||
|
deletable
|
|||
|
uploadIcon="plus"
|
|||
|
:fileList="hiddenForm.hiddenImgs"
|
|||
|
multiple
|
|||
|
:maxCount="4"
|
|||
|
></u-upload>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none">
|
|||
|
<view slot="title" class="title flex-between">
|
|||
|
隐患视频:
|
|||
|
<u-icon v-if="hiddenForm.hiddenVideos.length !== 0 && hiddenForm.hiddenVideos[0].url"
|
|||
|
name="play-circle-fill" size="30" @click="previewVideo(hiddenForm.hiddenVideos[0].url)"></u-icon>
|
|||
|
</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<u-upload
|
|||
|
disabled
|
|||
|
deletable
|
|||
|
accept="video"
|
|||
|
uploadIcon="plus"
|
|||
|
:fileList="hiddenForm.hiddenVideos"
|
|||
|
multiple
|
|||
|
:maxCount="1"
|
|||
|
></u-upload>
|
|||
|
<u-modal :show="modalShow" title="视频播放" confirmText="关闭" @confirm="modalShow = false">
|
|||
|
<view>
|
|||
|
<video v-if="modalShow" :src="videoUrl" :autoplay="true"></video>
|
|||
|
</view>
|
|||
|
</u-modal>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none">
|
|||
|
<view slot="title" class="title required">隐患描述:</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<u--textarea v-model="hiddenForm.HIDDENDESCR" placeholder="请输入隐患描述" disabled></u--textarea>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">隐患部位:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ hiddenForm.HIDDENPART_NAME?hiddenForm.HIDDENPART_NAME:hiddenForm.HIDDENPART }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">隐患级别:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ hiddenForm.HIDDENLEVEL_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">隐患类型:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ hiddenForm.HIDDENTYPE_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">是否是相关方:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ hiddenForm.ISRELEVANT==='1'?'是':'否' }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">隐患发现时间:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ hiddenForm.DISCOVERYTIME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none">
|
|||
|
<view slot="title" class="title required">隐患上报位置:</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<view>经度:{{ hiddenForm.LONGITUDE }}</view>
|
|||
|
<view>纬度:{{ hiddenForm.LATITUDE }}</view>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none">
|
|||
|
<view slot="title" class="title required">隐患位置描述:</view>
|
|||
|
<view slot="value" class="mt-10">
|
|||
|
<u--textarea v-model="hiddenForm.POSITIONDESC" placeholder="请输入隐患位置描述" disabled></u--textarea>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell>
|
|||
|
<view slot="title" class="title required">隐患发现人:</view>
|
|||
|
<view slot="value">
|
|||
|
<text>{{ hiddenForm.CREATOR_NAME }}</text>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
<u-cell class="flex-none" :border="false">
|
|||
|
<view slot="value" class="flex-between">
|
|||
|
<u-button type="info" text="取消" class="bth" @click="popupClose"></u-button>
|
|||
|
</view>
|
|||
|
</u-cell>
|
|||
|
</u-cell-group>
|
|||
|
</view>
|
|||
|
</u-popup>
|
|||
|
</view>
|
|||
|
</template>
|
|||
|
|
|||
|
<script>
|
|||
|
import {getSafetyenvironmentalGoEdit} from "../../../api";
|
|||
|
|
|||
|
export default {
|
|||
|
data() {
|
|||
|
return {
|
|||
|
form: {
|
|||
|
INSPECTION_SUBJECT: '',
|
|||
|
INSPECTED_DEPARTMENT_NAME: '',
|
|||
|
INSPECTED_DEPARTMENT_ID: '',
|
|||
|
INSPECTED_SITEUSER_NAME: '',
|
|||
|
INSPECTED_SITEUSER_ID: '',
|
|||
|
INSPECTION_PLACE: '',
|
|||
|
INSPECTION_TYPE_NAME: '',
|
|||
|
INSPECTION_TIME_START: uni.$u.timeFormat(new Date(), 'yyyy-mm-dd hh:MM'),
|
|||
|
INSPECTION_TIME_END: uni.$u.timeFormat(new Date(), 'yyyy-mm-dd hh:MM'),
|
|||
|
CREATTIME:'',
|
|||
|
situationList: [{id: Math.random(), INSPECTION_SITUATION_ID: '', SITUATION: ''}],
|
|||
|
inspectorList: [{
|
|||
|
id: Math.random(),
|
|||
|
inspectionUserShow: false,
|
|||
|
INSPECTION_INSPECTOR_ID: '',
|
|||
|
INSPECTION_DEPARTMENT_ID: '',
|
|||
|
INSPECTION_DEPARTMENT_NAME: '',
|
|||
|
INSPECTION_USER_ID: '',
|
|||
|
INSPECTION_USER_NAME: ''
|
|||
|
}],
|
|||
|
hiddenList: [],
|
|||
|
INSPECTION_USER_OPINION: '',
|
|||
|
INSPECTION_USER_SIGN_IMG: '',
|
|||
|
},
|
|||
|
INSPECTION_ID: '',
|
|||
|
popupShow: false,
|
|||
|
hiddenForm: {
|
|||
|
hiddenImgs: [],
|
|||
|
hiddenVideos: [],
|
|||
|
HIDDENDESCR: '',
|
|||
|
HIDDENPART_NAME: '',
|
|||
|
HIDDENPART: '',
|
|||
|
HIDDENLEVEL_NAME: '',
|
|||
|
HIDDENLEVEL: '',
|
|||
|
HIDDENTYPE_NAME: '',
|
|||
|
HIDDENTYPE: '',
|
|||
|
DISCOVERYTIME: uni.$u.timeFormat(new Date(), 'yyyy-mm-dd hh:MM'),
|
|||
|
LONGITUDE: '',
|
|||
|
LATITUDE: '',
|
|||
|
CREATOR_NAME: '',
|
|||
|
CREATOR: '',
|
|||
|
ISRELEVANT: ''
|
|||
|
},
|
|||
|
modalShow: false,
|
|||
|
videoUrl: ''
|
|||
|
}
|
|||
|
},
|
|||
|
onLoad(event) {
|
|||
|
this.INSPECTION_ID = event.INSPECTION_ID
|
|||
|
if (this.INSPECTION_ID) {
|
|||
|
this.fnGetSafetyenvironmentalGoEdit()
|
|||
|
}
|
|||
|
},
|
|||
|
methods: {
|
|||
|
async fnGetSafetyenvironmentalGoEdit() {
|
|||
|
let resData = await getSafetyenvironmentalGoEdit({INSPECTION_ID: this.INSPECTION_ID})
|
|||
|
for (let i = 0; i < resData.pd.hiddenList.length; i++) {
|
|||
|
for (let j = 0; j < resData.pd.hiddenList[i].hiddenImgs.length; j++) {
|
|||
|
resData.pd.hiddenList[i].hiddenImgs[j].url = this.$store.state.filePath + resData.pd.hiddenList[i].hiddenImgs[j].FILEPATH
|
|||
|
}
|
|||
|
for (let j = 0; j < resData.pd.hiddenList[i].hiddenVideos.length; j++) {
|
|||
|
resData.pd.hiddenList[i].hiddenVideos[j].url = this.$store.state.filePath + resData.pd.hiddenList[i].hiddenVideos[j].FILEPATH
|
|||
|
}
|
|||
|
}
|
|||
|
this.form = resData.pd
|
|||
|
},
|
|||
|
showHidden(item) {
|
|||
|
this.hiddenForm = item
|
|||
|
this.popupShow = true
|
|||
|
},
|
|||
|
popupClose() {
|
|||
|
this.popupShow = false
|
|||
|
},
|
|||
|
previewImage(current) {
|
|||
|
if(false){
|
|||
|
uni.previewImage({
|
|||
|
urls: [current],
|
|||
|
current
|
|||
|
});
|
|||
|
}
|
|||
|
},
|
|||
|
previewVideo(videoUrl){
|
|||
|
this.modalShow = true;
|
|||
|
this.videoUrl = videoUrl;
|
|||
|
}
|
|||
|
},
|
|||
|
}
|
|||
|
</script>
|
|||
|
|
|||
|
<style>
|
|||
|
</style>
|