<template>
|
<div style="padding:20px 50px 0 50px;">
|
<el-form ref="form" :rules="taskBasicRules" :model="taskBasicForm" label-position="center" label-width="150px">
|
<el-collapse v-model="activeNames">
|
<el-collapse-item title="基本信息" name="0">
|
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="申请单位:" prop="unit">
|
<el-input v-model="taskBasicForm.unit" readonly></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="申请人:" prop="applicant">
|
<el-input v-model="taskBasicForm.applicant" readonly></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="负责人:" prop="director">
|
<el-select v-model="taskBasicForm.director" clearable filterable class="taskBasic_select">
|
<el-option
|
v-for="item in userList"
|
:key="item.id"
|
:value="item.realname"
|
:label="item.realname"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="危害辨识:" prop="hazard">
|
<el-select v-model="taskBasicForm.hazard" filterable class="taskBasic_select" multiple>
|
<el-option
|
v-for="item in hazardList"
|
:key="item.id"
|
:label="item.text"
|
:value="item.text"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="开始时间:" style="margin-right: 0px" prop="starttime">
|
<el-date-picker value-format="yyyy-MM-dd HH:mm" type="datetime" v-model="taskBasicForm.starttime" placeholder="选择开始日期" class="taskBasic_select">
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="结束时间:" prop="endtime">
|
<el-date-picker value-format="yyyy-MM-dd HH:mm" type="datetime" v-model="taskBasicForm.endtime" placeholder="选择结束日期" class="taskBasic_select">
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
<el-form-item label="施工单位:" prop="constructionunit" >
|
<el-select v-model="taskBasicForm.constructionunit" clearable class="taskBasic_select">
|
<el-option
|
v-for="item in companyList"
|
:key="item.id"
|
:value="item.company"
|
:label="item.company"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="吨位类型:" prop="etype" >
|
<el-select v-model="taskBasicForm.etype" clearable class="taskBasic_select">
|
<el-option
|
v-for="item in etypeList"
|
:key="item.id"
|
:value="item.id"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="是否节假日:" prop="isholiday" >
|
<el-select v-model="taskBasicForm.isholiday" clearable class="taskBasic_select">
|
<el-option
|
v-for="item in list"
|
:key="item.id"
|
:value="item.id"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="12">
|
<el-form-item label="作业地点:" prop="area">
|
<el-input v-model="taskBasicForm.area"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="12">
|
<el-form-item label="作业内容:" prop="description">
|
<el-input v-model="taskBasicForm.description"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否需要检测气体:" prop="isanalysis" >
|
<el-select v-model="taskBasicForm.isanalysis" clearable class="taskBasic_select" @change="showAnalysis">
|
<el-option
|
v-for="item in list"
|
:key="item.id"
|
:value="item.id"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8" v-if="ifAnalysis">
|
<el-form-item label="分析地点:" prop="analysisarea" >
|
<el-input v-model="taskBasicForm.analysisarea"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8" v-if="ifAnalysis">
|
<el-form-item label="分析介质:" prop="analysismedium" >
|
<el-input v-model="taskBasicForm.analysismedium"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
|
</el-collapse-item>
|
<el-collapse-item title="受限空间作业" name="1">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifIncludeArea" :label="1">是</el-radio>
|
<el-radio v-model="ifIncludeArea" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifIncludeArea">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="受限空间分类:" prop="spacecategory">
|
<el-select v-model="taskBasicForm.spacecategory" class="taskBasic_select" @change="handleSpaceCategory">
|
<el-option
|
v-for="item in spaceCategoryList"
|
:key="item.id"
|
:value="item.name"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="受限空间名称:" prop="spacename">
|
<el-select v-model="taskBasicForm.spacename" class="taskBasic_select">
|
<el-option
|
v-for="item in spaceNameList"
|
:key="item.id"
|
:value="item.name"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="受限空间介质名称:" prop="spacemedium">
|
<el-input v-model="taskBasicForm.spacemedium" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="是否受酸碱腐蚀:" prop="acibase">
|
<el-select v-model="taskBasicForm.acibase" class="taskBasic_select">
|
<el-option
|
v-for="item in acibaseList"
|
:key="item.id"
|
:value="item.name"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</div>
|
|
</el-collapse-item>
|
<el-collapse-item title="吊装作业" name="2">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifHoisting" :label="1">是</el-radio>
|
<el-radio v-model="ifHoisting" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifHoisting">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="吊装重物等级:" prop="hoistinglevel">
|
<el-select v-model="taskBasicForm.hoistinglevel" class="taskBasic_select">
|
<el-option value="一级吊装(质量>100吨)"></el-option>
|
<el-option value="二级吊装(40吨<=质量<=100吨)"></el-option>
|
<el-option value="三级吊装(质量<40吨)"></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="吊装重物质量(t):" prop="hoistingweight">
|
<el-input v-model="taskBasicForm.hoistingweight" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
<el-collapse-item title="动土作业" name="3">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifBuilding" :label="1">是</el-radio>
|
<el-radio v-model="ifBuilding" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifBuilding">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="动土作业深度:" prop="soildepth">
|
<el-input v-model="taskBasicForm.soildepth" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="动土作业面积:" prop="soilarea">
|
<el-input v-model="taskBasicForm.soilarea" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-form-item label="动土方案文件:" prop="soilfile">
|
<el-upload
|
accept=".pdf,.jpg,.png"
|
:action="fileRoad"
|
class="upload-demo"
|
ref="upload"
|
:headers="header"
|
:data="uploadForm"
|
list-type="picture-card"
|
:file-list="taskBasicForm.soilfile"
|
:on-change="handleChangeBuildingFile"
|
:on-success="onSoilFileSuccess"
|
:auto-upload="true">
|
<i slot="default" class="el-icon-plus"></i>
|
<div slot="file" slot-scope="{file}">
|
<img
|
class="el-upload-list__item-thumbnail"
|
:src="file.url" alt=""
|
>
|
<span class="el-upload-list__item-actions">
|
<span
|
class="el-upload-list__item-preview"
|
@click="handleFile(file)"
|
>
|
<i class="el-icon-zoom-in"></i>
|
</span>
|
<span
|
v-if="!disabled"
|
class="el-upload-list__item-delete"
|
@click="handleRemove(file,'one')"
|
>
|
<i class="el-icon-delete"></i>
|
</span>
|
</span>
|
</div>
|
</el-upload>
|
</el-form-item>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
<el-collapse-item title="断路作业" name="4">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifIncludeRoad" :label="1">是</el-radio>
|
<el-radio v-model="ifIncludeRoad" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifIncludeRoad">
|
<el-row>
|
<el-col :span="16">
|
<el-form-item label="断路原因:" prop="breakreason">
|
<el-input v-model="taskBasicForm.breakreason" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-form-item label="断路地段示意图:" prop="breakfile">
|
<el-upload
|
accept=".pdf,.jpg,.png"
|
:action="fileRoad"
|
class="upload-demo"
|
ref="upload"
|
:headers="header"
|
list-type="picture-card"
|
:file-list="taskBasicForm.breakfile"
|
:on-success="onBreakFileSuccess"
|
:on-change="handleChangeRoadFile"
|
:auto-upload="true">
|
<i slot="default" class="el-icon-plus"></i>
|
<div slot="file" slot-scope="{file}">
|
<img
|
class="el-upload-list__item-thumbnail"
|
:src="file.url" alt=""
|
>
|
<span class="el-upload-list__item-actions">
|
<span
|
class="el-upload-list__item-preview"
|
@click="handleFile(file)"
|
>
|
<i class="el-icon-zoom-in"></i>
|
</span>
|
<span
|
v-if="!disabled"
|
class="el-upload-list__item-delete"
|
@click="handleRemove(file,'two')"
|
>
|
<i class="el-icon-delete"></i>
|
</span>
|
</span>
|
</div>
|
</el-upload>
|
</el-form-item>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
<el-collapse-item title="高处作业" name="5">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifIncludeHigh" :label="1">是</el-radio>
|
<el-radio v-model="ifIncludeHigh" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifIncludeHigh">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="作业等级:" prop="heightlevel">
|
<el-select v-model="taskBasicForm.heightlevel" class="taskBasic_select">
|
<el-option value="一级高处作业(2米≤高度<5米)"></el-option>
|
<el-option value="二级高处作业(5米≤高度<15米)"></el-option>
|
<el-option value="三级高处作业(15米≤高度<30米)"></el-option>
|
<el-option value="特级高处作业(高度≥30米)"></el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="作业高度:" prop="workheight">
|
<el-input type="number" v-model="taskBasicForm.workheight" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
<el-collapse-item title="临时用电作业" name="6">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifIncludeElectricity" :label="1">是</el-radio>
|
<el-radio v-model="ifIncludeElectricity" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifIncludeElectricity">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="电压接入点:" prop="electricityarea">
|
<el-input v-model="taskBasicForm.electricityarea" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="工作电压:" prop="voltage">
|
<el-input v-model="taskBasicForm.voltage" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="用电设备及功率:" prop="power">
|
<el-input v-model="taskBasicForm.power" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
<el-collapse-item title="盲板抽堵作业" name="7">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifIncludePump" :label="1" >是</el-radio>
|
<el-radio v-model="ifIncludePump" :label="0" >否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifIncludePump">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="设备管道名称:" prop="pipename">
|
<el-input v-model="taskBasicForm.pipename" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="设备管道介质:" prop="pipemedium">
|
<el-input v-model="taskBasicForm.pipemedium" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="设备管道温度:" prop="pipetemperature">
|
<el-input v-model="taskBasicForm.pipetemperature" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="设备管道压力:" prop="pipepressure">
|
<el-input v-model="taskBasicForm.pipepressure" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="盲板材质:" prop="blindboardmaterial">
|
<el-input v-model="taskBasicForm.blindboardmaterial" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="盲板规格11:" prop="blindboardspecification">
|
<el-input v-model="taskBasicForm.blindboardspecification" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="盲板编号:" prop="blindboardnumber">
|
<el-input v-model="taskBasicForm.blindboardnumber" class="taskBasic_select">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-form-item label="盲板位置图:" prop="blindboardlocation">
|
<el-upload
|
accept=".pdf,.jpg,.png"
|
:action="fileRoad"
|
class="upload-demo"
|
ref="upload"
|
:headers="header"
|
list-type="picture-card"
|
:file-list="taskBasicForm.blindboardlocation"
|
:on-success="onPumpFileSuccess"
|
:on-change="handleChangePumpFile"
|
:auto-upload="true">
|
<i slot="default" class="el-icon-plus"></i>
|
<div slot="file" slot-scope="{file}">
|
<img
|
class="el-upload-list__item-thumbnail"
|
:src="file.url" alt=""
|
>
|
<span class="el-upload-list__item-actions">
|
<span
|
class="el-upload-list__item-preview"
|
@click="handleFile(file)"
|
>
|
<i class="el-icon-zoom-in"></i>
|
</span>
|
<span
|
v-if="!disabled"
|
class="el-upload-list__item-delete"
|
@click="handleRemove(file,'three')"
|
>
|
<i class="el-icon-delete"></i>
|
</span>
|
</span>
|
</div>
|
</el-upload>
|
</el-form-item>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
<el-collapse-item title="动火作业" name="8">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="是否涉及:">
|
<el-radio v-model="ifIncludeFire" :label="1">是</el-radio>
|
<el-radio v-model="ifIncludeFire" :label="0">否</el-radio>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<div v-if="ifIncludeFire">
|
<el-row>
|
<el-col :span="8">
|
<el-form-item label="动火级别:" prop="firelevel">
|
<el-select v-model="taskBasicForm.firelevel" class="taskBasic_select">
|
<el-option
|
v-for="item in levelList"
|
:key="item.id"
|
:label="item.name"
|
:value="item.id"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :span="8">
|
<el-form-item label="动火方式:" prop="firetype">
|
<el-select v-model="taskBasicForm.firetype" filterable class="taskBasic_select">
|
<el-option
|
v-for="item in fireTypeList"
|
:key="item.id"
|
:value="item.text"
|
:label="item.text"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</div>
|
</el-collapse-item>
|
</el-collapse>
|
</el-form>
|
<div align="center" style="padding-top: 20px" v-if="title === '新增' || title === '编辑' || title=== '施工单位确认' || title === '施工单位信息填写'|| title === '施工单位信息填写' || title === '复制'">
|
<el-button type="primary" @click="goNext">下一步</el-button>
|
</div>
|
<el-dialog :visible.sync="dialogVisible" :append-to-body="true">
|
<img width="100%" :src="dialogImageUrl" alt="">
|
</el-dialog>
|
</div>
|
</template>
|
|
<script>
|
import { getAllCompany } from '@/api/unitManage'
|
import Cookies from 'js-cookie'
|
import { addTask, updateTask } from '@/api/task'
|
import { dictionaryAllItems } from '@/api/dictionary'
|
import {safetyInspectionItemName} from "@/api/safetySelfInspection";
|
|
export default {
|
name: 'index',
|
props:['title'],
|
data(){
|
return{
|
type:'',
|
fileRoad:process.env.BASE_API + '/task/web/upload',
|
uploadForm:{
|
name:'',
|
},
|
header:{Authorization:''},
|
taskBasicForm:{
|
applicant: "",
|
applyunitname: "",
|
applyunitopinion: "",
|
applyunittime: "",
|
approverprofession: "",
|
approversupervisor: "",
|
area: "",
|
code: "",
|
completedconfirm: "",
|
completedname: "",
|
completedtime: "",
|
constructionname: "",
|
constructionopinion: "",
|
constructiontime: "",
|
constructionunit: "",
|
createdat: "",
|
createdby: "",
|
department: "",
|
director: "",
|
endtime: "",
|
enterprisename: "",
|
enterpriseopinion: "",
|
enterprisetime: "",
|
flag: 0,
|
hazard: [],
|
id: 0,
|
isdel: 0,
|
isholiday: null,
|
level:'',
|
modifiedat: "",
|
modifiedby: "",
|
othertask: "",
|
partdirector: "",
|
profession: "",
|
relevantname: "",
|
relevantopinion: "",
|
relevanttime: "",
|
resources: [
|
],
|
securityname: "",
|
securityopinion: "",
|
securitytime: "",
|
securitydep: "",
|
shiftleadername: "",
|
shiftleaderopinion: "",
|
shiftleadertime: "",
|
starttime: "",
|
status: 0,
|
supervisor: "",
|
taskAnalyses: [
|
],
|
taskEquipments: [
|
],
|
taskRisk: {
|
confirmat: "",
|
content: "",
|
createdat: "",
|
createdby: "",
|
director: "",
|
emergency: "",
|
environment: "",
|
flag: 0,
|
id: 0,
|
modifiedat: "",
|
modifiedby: "",
|
other: "",
|
preventive: "",
|
taskcode: "",
|
taskdirector: ""
|
},
|
taskSecurities: [
|
],
|
taskWorkers: [
|
],
|
unit: "",
|
subTaskInfos:[],
|
type:'',
|
category:'',
|
firelevel:'',
|
checked:'',
|
spacecategory:'',
|
spacename:'',
|
spacemedium:'',
|
acibase:'',
|
hoistinglevel:'',
|
hoistingweight:'',
|
soildepth:'',
|
soilarea:'',
|
soilfile:[],
|
breakreason:'',
|
breakfile:[],
|
workheight:'',
|
heightlevel:'',
|
electricityarea:'',
|
voltage:'',
|
power:'',
|
pipename:'',
|
pipemedium:'',
|
pipetemperature:'',
|
pipepressure:'',
|
blindboardmaterial:'',
|
blindboardspecification:'',
|
blindboardnumber:'',
|
commander:'',
|
blindboardlocation:[],
|
firetype:'',
|
description:'',
|
isanalysis:'',
|
analysisarea:'',
|
analysismedium:'',
|
etype:'',
|
},
|
activeNames:['0'],
|
companyList:[],
|
fireTypeList:[],
|
hazardList:[],
|
userList:[],
|
etypeList:[{id:1,name:'60万吨'},{id:2,name:'130万吨'}],
|
list:[{id:0,name:'否'},{id:1,name:'是'}],
|
levelList:[{id:2,name:'特级'},{id:1,name:'一级'},{id:0,name:'二级'},],
|
spaceCategoryList:[{id:0,name:'密闭设备:如船舱、贮罐、车载槽罐、反应塔(釜)、冷藏箱、压力容器、管道、烟道、锅炉等'},{id:1,name:'地下有限空间:如地下管道、地下室、地下仓库、地下工程、暗沟、隧道、涵洞、地坑、废井、地窖、污水池(井)、沼气池、化粪池、下水道等'},{id:2,name:'地上有限空间:如储藏室、酒糟池、发酵池、垃圾站、温室、冷库、粮仓、料仓等'},],
|
spaceNameList:[],
|
acibaseList:[{id:0,name:'酸腐蚀'},{id:1,name:'碱腐蚀'},{id:2,name:'其他腐蚀'},{id:3,name:'没有腐蚀'}],
|
taskBasicRules:{
|
unit: [{ required: true, message: '申请单位不能为空', trigger: 'blur' }],
|
applicant: [{ required: true, message: '申请人不能为空', trigger: 'blur' }],
|
level: [{ required: true, message: '动火作业级别不能为空', trigger: 'change' }],
|
mode: [{ required: true, message: '用户名不能为空', trigger: 'blur' }],
|
hazard: [{ required: true, message: '危害辨识不能为空', trigger: 'blur' }],
|
director: [{ required: true, message: '负责人不能为空', trigger: 'blur' }],
|
area: [{ required: true, message: '动火地点不能为空', trigger: 'blur' }],
|
constructionunit: [{ required: true, message: '施工部门不能为空', trigger: 'change' }],
|
starttime: [{ required: true, message: '开始时间不能为空', trigger: 'blur' }],
|
endtime: [{ required: true, message: '结束时间不能为空', trigger: 'blur' }],
|
spacecategory: [{ required: true, message: '受限空间分类不能为空', trigger: 'change' }],
|
spacename: [{ required: true, message: '受限空间名称不能为空', trigger: 'change' }],
|
spacemedium: [{ required: true, message: '受限空间介质名称不能为空', trigger: 'change' }],
|
acibase: [{ required: true, message: '是否酸碱腐蚀不能为空', trigger: 'change' }],
|
hoistinglevel: [{ required: true, message: '吊装重物等级不能为空', trigger: 'change' }],
|
hoistingweight: [{ required: true, message: '吊装重物质量不能为空', trigger: 'blur' }],
|
soildepth: [{ required: true, message: '动土作业深度不能为空', trigger: 'blur' }],
|
soilarea: [{ required: true, message: '动土作业面积不能为空', trigger: 'blur' }],
|
// soilfile: [{ required: true, message: '动土方案文件不能为空', trigger: 'blur' }],
|
breakreason: [{ required: true, message: '断路原因不能为空', trigger: 'blur' }],
|
// breakfile: [{ required: true, message: '断路地段示意图不能为空', trigger: 'blur' }],
|
heightlevel: [{ required: true, message: '作业等级不能为空', trigger: 'change' }],
|
workheight: [{ required: true, message: '作业高度不能为空', trigger: 'blur' }],
|
electricityarea: [{ required: true, message: '电压接入点不能为空', trigger: 'blur' }],
|
voltage: [{ required: true, message: '工作电压不能为空', trigger: 'blur' }],
|
power: [{ required: true, message: '用电设备及功率不能为空', trigger: 'blur' }],
|
pipename: [{ required: true, message: '设备管道名称不能为空', trigger: 'blur' }],
|
pipemedium: [{ required: true, message: '设备管道介质不能为空', trigger: 'blur' }],
|
pipetemperature: [{ required: true, message: '设备管道温度不能为空', trigger: 'blur' }],
|
pipepressure: [{ required: true, message: '设备管道压力不能为空', trigger: 'blur' }],
|
blindboardmaterial: [{ required: true, message: '盲板材质不能为空', trigger: 'blur' }],
|
blindboardspecification: [{ required: true, message: '盲板规格不能为空', trigger: 'blur' }],
|
blindboardnumber: [{ required: true, message: '盲板编号不能为空', trigger: 'blur' }],
|
// blindboardlocation: [{ required: true, message: '盲板位置图不能为空', trigger: 'blur' }],
|
firelevel: [{ required: true, message: '动火级别不能为空', trigger: 'blur' }],
|
firetype: [{ required: true, message: '动火类型不能为空', trigger: 'blur' }],
|
isholiday:[{ required: true, message: '是否节假日不能为空', trigger: 'change' }],
|
description:[{ required: true, message: '作业内容不能为空', trigger: 'blur' }],
|
isanalysis:[{ required: true, message: '是否需要气体检测不能为空', trigger: 'change' }],
|
analysisarea:[{ required: true, message: '分析地点不能为空', trigger: 'blur' }],
|
analysismedium:[{ required: true, message: '分析介质不能为空', trigger: 'blur' }],
|
etype:[{ required: true, message: '吨位类型不能为空', trigger: 'change' }]
|
},
|
ifIncludeArea:null,
|
ifHoisting:null,
|
ifBuilding:null,
|
ifIncludeRoad:null,
|
ifIncludeHigh:null,
|
ifIncludeElectricity:null,
|
ifIncludePump:null,
|
ifIncludeFire:null,
|
dialogImageUrl:false,
|
dialogVisible:false,
|
disabled: false,
|
ifAnalysis:false,
|
}
|
},
|
watch:{
|
ifIncludeArea: {
|
handler(newName, oldName) {
|
if(newName === 1){
|
this.ifAnalysis = true
|
this.taskBasicForm.isanalysis = 1
|
}else{
|
this.ifAnalysis = false
|
this.taskBasicForm.isanalysis = 0
|
}
|
},
|
immediate:true,
|
deep:true
|
},
|
ifIncludeFire: {
|
handler(newName, oldName) {
|
if(newName === 1){
|
this.ifAnalysis = true
|
this.taskBasicForm.isanalysis = 1
|
}else{
|
this.ifAnalysis = false
|
this.taskBasicForm.isanalysis = 0
|
}
|
},
|
immediate:true,
|
deep:true
|
}
|
},
|
created(){
|
this.getCompany()
|
this.getFireTypeList()
|
this.getHazardList()
|
this.getUser()
|
},
|
methods:{
|
giveTaskBasic(){
|
this.taskBasicForm = JSON.parse(JSON.stringify(this.taskBasicForm))
|
},
|
handlePictureCardPreview(file){
|
this.dialogImageUrl = file.url;
|
this.dialogVisible = true;
|
},
|
showAnalysis(){
|
if(this.taskBasicForm.isanalysis === 0){
|
this.ifAnalysis = false
|
}else{
|
this.ifAnalysis = true
|
}
|
},
|
goNext(){
|
if(this.title === '施工单位确认'){
|
this.$emit('changeToConstructionConfirm')
|
}else{
|
this.$refs["form"].validate((valid) =>{
|
if(valid){
|
if(this.type === 1){
|
this.addTask()
|
}else if(this.type === 2){
|
this.updateTask()
|
}
|
}else{
|
this.$message({
|
type:'warning',
|
message:'请完善基本信息'
|
})
|
if(this.ifIncludeArea === true){
|
|
}else if(this.ifHoisting === true){
|
|
}else if(this.ifBuilding === true){
|
|
}else if(this.ifIncludeRoad === true){
|
|
}else if(this.ifIncludeHigh === true){
|
|
}else if(this.ifIncludeElectricity === true){
|
|
}else if(this.ifIncludePump === true){
|
|
}else if(this.ifIncludeFire === true){
|
|
}
|
}
|
})
|
}
|
},
|
async addTask(){
|
if(this.taskBasicForm.soilfile.length === 0 && this.ifBuilding === 1){
|
this.$message({
|
type:'warning',
|
message:'请上传动图方案文件'
|
})
|
}else if(this.taskBasicForm.breakfile.length === 0 && this.ifIncludeRoad === 1){
|
this.$message({
|
type:'warning',
|
message:'请上传短路地段示意图'
|
})
|
}else if(this.taskBasicForm.blindboardlocation.length === 0 && this.ifIncludePump === 1){
|
this.$message({
|
type:'warning',
|
message:'请上传盲板位置图'
|
})
|
}else{
|
this.taskBasicForm.hazard = this.taskBasicForm.hazard.join('、')
|
let addForm = JSON.parse(JSON.stringify(this.taskBasicForm))
|
let level = []
|
addForm.subTaskInfos = []
|
if(this.ifIncludeArea === 1){
|
level.push(0)
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'受限空间作业',category:'',level:'',checked:1,spacecategory:this.taskBasicForm.spacecategory,spacename:this.taskBasicForm.spacename,spacemedium:this.taskBasicForm.spacemedium,acibase:this.taskBasicForm.acibase,hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
if(this.ifHoisting === 1){
|
if(this.taskBasicForm.hoistinglevel === '一级吊装(质量>100吨)'){
|
level.push(2)
|
}else if(this.taskBasicForm.hoistinglevel === '二级吊装(40吨<=质量<=100吨)'){
|
level.push(1)
|
}else{
|
level.push(0)
|
}
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'吊装作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:this.taskBasicForm.hoistinglevel,hoistingweight:this.taskBasicForm.hoistingweight,soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
if(this.ifBuilding === 1){
|
level.push(1)
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'动土作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:'',hoistingweight:'',soildepth:this.taskBasicForm.soildepth,soilarea:this.taskBasicForm.soilarea,soilfile:this.taskBasicForm.soilfile,breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
if(this.ifIncludeRoad === 1){
|
level.push(1)
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'断路作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:this.taskBasicForm.breakreason,breakfile:this.taskBasicForm.breakfile,heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
if(this.ifIncludeHigh === 1){
|
if (this.taskBasicForm.heightlevel = '特级高处作业(高度≥30米)'){
|
level.push(2)
|
}else if(this.taskBasicForm.heightlevel = '三级高处作业(15米≤高度<30米)' || this.taskBasicForm.heightlevel === '二级高处作业(5米≤高度<15米)'){
|
level.push(1)
|
}else{
|
level.push(0)
|
}
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'高处作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:this.taskBasicForm.heightlevel,workheight:this.taskBasicForm.workheight,electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
if(this.ifIncludeElectricity === 1){
|
level.push(1)
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'临时用电作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:this.taskBasicForm.electricityarea,voltage:this.taskBasicForm.voltage,power:this.taskBasicForm.power,pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
if(this.ifIncludePump === 1){
|
level.push(0)
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'盲板抽堵作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:this.taskBasicForm.pipename,pipemedium:this.taskBasicForm.pipemedium,pipetemperature:this.taskBasicForm.pipetemperature,pipepressure:this.taskBasicForm.pipepressure,blindboardmaterial:this.taskBasicForm.blindboardmaterial,blindboardspecification:this.taskBasicForm.blindboardspecification,blindboardnumber:this.taskBasicForm.blindboardnumber,commander:'',blindboardlocation:this.taskBasicForm.blindboardlocation,firetype:'',level:''})
|
}
|
if(this.ifIncludeFire === 1){
|
level.push(this.taskBasicForm.firelevel)
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'动火作业',category:'',level:'',checked:1,spacecategory:'',spacename:'',spacemedium:'',acibase:'',hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:this.taskBasicForm.firetype,level:this.taskBasicForm.firelevel})
|
}
|
|
let largeNum = 0
|
for(let i in level){
|
if(level[i] > largeNum){
|
largeNum = level[i]
|
}
|
}
|
addForm.level = largeNum
|
|
this.$delete(addForm,'type')
|
this.$delete(addForm,'category')
|
this.$delete(addForm,'firelevel')
|
this.$delete(addForm,'checked')
|
this.$delete(addForm,'spacecategory')
|
this.$delete(addForm,'spacename')
|
this.$delete(addForm,'spacemedium')
|
this.$delete(addForm,'acibase')
|
this.$delete(addForm,'hoistinglevel')
|
this.$delete(addForm,'hoistingweight')
|
this.$delete(addForm,'soildepth')
|
this.$delete(addForm,'soilarea')
|
this.$delete(addForm,'soilfile')
|
this.$delete(addForm,'breakreason')
|
this.$delete(addForm,'breakfile')
|
this.$delete(addForm,'workheight')
|
this.$delete(addForm,'heightlevel')
|
this.$delete(addForm,'electricityarea')
|
this.$delete(addForm,'voltage')
|
this.$delete(addForm,'power')
|
this.$delete(addForm,'pipename')
|
this.$delete(addForm,'pipemedium')
|
this.$delete(addForm,'pipetemperature')
|
this.$delete(addForm,'pipepressure')
|
this.$delete(addForm,'blindboardmaterial')
|
this.$delete(addForm,'blindboardspecification')
|
this.$delete(addForm,'blindboardnumber')
|
this.$delete(addForm,'commander')
|
this.$delete(addForm,'blindboardlocation')
|
this.$delete(addForm,'firetype')
|
|
let res = await addTask(addForm)
|
if(res.data.code === '200'){
|
this.$notify({
|
type:'success',
|
duration:2000,
|
message:'基本信息新建成功',
|
title:'成功'
|
})
|
this.$emit('changeCardToSafetyActionEdit',res.data.result)
|
}else{
|
this.$message({
|
message:res.data.message,
|
type:'warning'
|
})
|
}
|
}
|
},
|
async updateTask(){
|
if(this.taskBasicForm.soilfile.length === 0 && this.ifBuilding === 1){
|
this.$message({
|
type:'warning',
|
message:'请上传动图方案文件'
|
})
|
}else if(this.taskBasicForm.breakfile.length === 0 && this.ifIncludeRoad === 1){
|
this.$message({
|
type:'warning',
|
message:'请上传短路地段示意图'
|
})
|
}else if(this.taskBasicForm.blindboardlocation.length === 0 && this.ifIncludePump === 1){
|
this.$message({
|
type:'warning',
|
message:'请上传盲板位置图'
|
})
|
}else {
|
this.taskBasicForm.hazard = this.taskBasicForm.hazard.join('、')
|
let addForm = JSON.parse(JSON.stringify(this.taskBasicForm))
|
let level = []
|
if (this.ifIncludeArea === 1) {
|
level.push(0)
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '受限空间作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].spacecategory = this.taskBasicForm.spacecategory
|
addForm.subTaskInfos[i].spacename = this.taskBasicForm.spacename
|
addForm.subTaskInfos[i].spacemedium = this.taskBasicForm.spacemedium
|
addForm.subTaskInfos[i].acibase = this.taskBasicForm.acibase
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({id:'',taskcode:'',type:'受限空间作业',category:'',level:'',checked:1,spacecategory:this.taskBasicForm.spacecategory,spacename:this.taskBasicForm.spacename,spacemedium:this.taskBasicForm.spacemedium,acibase:this.taskBasicForm.acibase,hoistinglevel:'',hoistingweight:'',soildepth:'',soilarea:'',soilfile:[],breakreason:'',breakfile:[],heightlevel:'',workheight:'',electricityarea:'',voltage:'',power:'',pipename:'',pipemedium:'',pipetemperature:'',pipepressure:'',blindboardmaterial:'',blindboardspecification:'',blindboardnumber:'',commander:'',blindboardlocation:[],firetype:'',level:''})
|
}
|
|
}
|
if (this.ifHoisting === 1) {
|
if (this.taskBasicForm.hoistinglevel === '一级吊装(质量>100吨)') {
|
level.push(2)
|
} else if (this.taskBasicForm.hoistinglevel === '二级吊装(40吨<=质量<=100吨)') {
|
level.push(1)
|
} else {
|
level.push(0)
|
}
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '吊装作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].hoistinglevel = this.taskBasicForm.hoistinglevel
|
addForm.subTaskInfos[i].hoistingweight = this.taskBasicForm.hoistingweight
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '吊装作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: this.taskBasicForm.hoistinglevel,
|
hoistingweight: this.taskBasicForm.hoistingweight,
|
soildepth: '',
|
soilarea: '',
|
soilfile: [],
|
breakreason: '',
|
breakfile: [],
|
heightlevel: '',
|
workheight: '',
|
electricityarea: '',
|
voltage: '',
|
power: '',
|
pipename: '',
|
pipemedium: '',
|
pipetemperature: '',
|
pipepressure: '',
|
blindboardmaterial: '',
|
blindboardspecification: '',
|
blindboardnumber: '',
|
commander: '',
|
blindboardlocation: [],
|
firetype: '',
|
level: ''
|
})
|
}
|
|
}
|
if (this.ifBuilding === 1) {
|
level.push(1)
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '动土作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].soildepth = this.taskBasicForm.soildepth
|
addForm.subTaskInfos[i].soilarea = this.taskBasicForm.soilarea
|
addForm.subTaskInfos[i].soilfile = this.taskBasicForm.soilfile
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '动土作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: '',
|
hoistingweight: '',
|
soildepth: this.taskBasicForm.soildepth,
|
soilarea: this.taskBasicForm.soilarea,
|
soilfile: this.taskBasicForm.soilfile,
|
breakreason: '',
|
breakfile: [],
|
heightlevel: '',
|
workheight: '',
|
electricityarea: '',
|
voltage: '',
|
power: '',
|
pipename: '',
|
pipemedium: '',
|
pipetemperature: '',
|
pipepressure: '',
|
blindboardmaterial: '',
|
blindboardspecification: '',
|
blindboardnumber: '',
|
commander: '',
|
blindboardlocation: [],
|
firetype: '',
|
level: ''
|
})
|
}
|
}
|
if (this.ifIncludeRoad === 1) {
|
level.push(1)
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '断路作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].breakreason = this.taskBasicForm.breakreason
|
addForm.subTaskInfos[i].breakfile = this.taskBasicForm.breakfile
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '断路作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: '',
|
hoistingweight: '',
|
soildepth: '',
|
soilarea: '',
|
soilfile: [],
|
breakreason: this.taskBasicForm.breakreason,
|
breakfile: this.taskBasicForm.breakfile,
|
heightlevel: '',
|
workheight: '',
|
electricityarea: '',
|
voltage: '',
|
power: '',
|
pipename: '',
|
pipemedium: '',
|
pipetemperature: '',
|
pipepressure: '',
|
blindboardmaterial: '',
|
blindboardspecification: '',
|
blindboardnumber: '',
|
commander: '',
|
blindboardlocation: [],
|
firetype: '',
|
level: ''
|
})
|
}
|
|
}
|
if (this.ifIncludeHigh === 1) {
|
if (this.taskBasicForm.heightlevel = '特级高处作业(高度≥30米)') {
|
level.push(2)
|
} else if (this.taskBasicForm.heightlevel = '三级高处作业(15米≤高度<30米)' || this.taskBasicForm.heightlevel === '二级高处作业(5米≤高度<15米)') {
|
level.push(1)
|
} else {
|
level.push(0)
|
}
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '高处作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].breakreason = this.taskBasicForm.breakreason
|
addForm.subTaskInfos[i].breakfile = this.taskBasicForm.breakfile
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '高处作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: '',
|
hoistingweight: '',
|
soildepth: '',
|
soilarea: '',
|
soilfile: [],
|
breakreason: '',
|
breakfile: [],
|
heightlevel: this.taskBasicForm.heightlevel,
|
workheight: this.taskBasicForm.workheight,
|
electricityarea: '',
|
voltage: '',
|
power: '',
|
pipename: '',
|
pipemedium: '',
|
pipetemperature: '',
|
pipepressure: '',
|
blindboardmaterial: '',
|
blindboardspecification: '',
|
blindboardnumber: '',
|
commander: '',
|
blindboardlocation: [],
|
firetype: '',
|
level: ''
|
})
|
}
|
|
}
|
if (this.ifIncludeElectricity === 1) {
|
level.push(1)
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '临时用电作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].electricityarea = this.taskBasicForm.electricityarea
|
addForm.subTaskInfos[i].voltage = this.taskBasicForm.voltage
|
addForm.subTaskInfos[i].power = this.taskBasicForm.power
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '临时用电作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: '',
|
hoistingweight: '',
|
soildepth: '',
|
soilarea: '',
|
soilfile: [],
|
breakreason: '',
|
breakfile: [],
|
heightlevel: '',
|
workheight: '',
|
electricityarea: this.taskBasicForm.electricityarea,
|
voltage: this.taskBasicForm.voltage,
|
power: this.taskBasicForm.power,
|
pipename: '',
|
pipemedium: '',
|
pipetemperature: '',
|
pipepressure: '',
|
blindboardmaterial: '',
|
blindboardspecification: '',
|
blindboardnumber: '',
|
commander: '',
|
blindboardlocation: [],
|
firetype: '',
|
level: ''
|
})
|
}
|
|
}
|
if (this.ifIncludePump === 1) {
|
level.push(0)
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '盲板抽堵作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].pipename = this.taskBasicForm.pipename
|
addForm.subTaskInfos[i].pipemedium = this.taskBasicForm.pipemedium
|
addForm.subTaskInfos[i].pipetemperature = this.taskBasicForm.pipetemperature
|
addForm.subTaskInfos[i].pipepressure = this.taskBasicForm.pipepressure
|
addForm.subTaskInfos[i].blindboardmaterial = this.taskBasicForm.blindboardmaterial
|
addForm.subTaskInfos[i].blindboardspecification = this.taskBasicForm.blindboardspecification
|
addForm.subTaskInfos[i].blindboardlocation = this.taskBasicForm.blindboardlocation
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '盲板抽堵作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: '',
|
hoistingweight: '',
|
soildepth: '',
|
soilarea: '',
|
soilfile: [],
|
breakreason: '',
|
breakfile: [],
|
heightlevel: '',
|
workheight: '',
|
electricityarea: '',
|
voltage: '',
|
power: '',
|
pipename: this.taskBasicForm.pipename,
|
pipemedium: this.taskBasicForm.pipemedium,
|
pipetemperature: this.taskBasicForm.pipetemperature,
|
pipepressure: this.taskBasicForm.pipepressure,
|
blindboardmaterial: this.taskBasicForm.blindboardmaterial,
|
blindboardspecification: this.taskBasicForm.blindboardspecification,
|
blindboardnumber: this.taskBasicForm.blindboardnumber,
|
commander: '',
|
blindboardlocation: this.taskBasicForm.blindboardlocation,
|
firetype: '',
|
level: ''
|
})
|
}
|
|
}
|
if (this.ifIncludeFire === 1) {
|
level.push(this.taskBasicForm.firelevel)
|
let ifFirst = true
|
for(let i in addForm.subTaskInfos){
|
if(addForm.subTaskInfos[i].type === '动火作业'){
|
ifFirst = false
|
addForm.subTaskInfos[i].firetype = this.taskBasicForm.firetype
|
addForm.subTaskInfos[i].level = this.taskBasicForm.firelevel
|
}
|
}
|
if(ifFirst === true){
|
addForm.subTaskInfos.push({
|
id: '',
|
taskcode: '',
|
type: '动火作业',
|
category: '',
|
level: '',
|
checked: 1,
|
spacecategory: '',
|
spacename: '',
|
spacemedium: '',
|
acibase: '',
|
hoistinglevel: '',
|
hoistingweight: '',
|
soildepth: '',
|
soilarea: '',
|
soilfile: [],
|
breakreason: '',
|
breakfile: [],
|
heightlevel: '',
|
workheight: '',
|
electricityarea: '',
|
voltage: '',
|
power: '',
|
pipename: '',
|
pipemedium: '',
|
pipetemperature: '',
|
pipepressure: '',
|
blindboardmaterial: '',
|
blindboardspecification: '',
|
blindboardnumber: '',
|
commander: '',
|
blindboardlocation: [],
|
firetype: this.taskBasicForm.firetype,
|
level: this.taskBasicForm.firelevel
|
})
|
}
|
|
}
|
|
let largeNum = 0
|
for (let i in level) {
|
if (level[i] > largeNum) {
|
largeNum = level[i]
|
}
|
}
|
if(largeNum === 2){
|
largeNum = 2
|
}else{
|
largeNum += 1
|
}
|
addForm.level = largeNum
|
|
this.$delete(addForm,'type')
|
this.$delete(addForm,'category')
|
this.$delete(addForm,'firelevel')
|
this.$delete(addForm,'checked')
|
this.$delete(addForm,'spacecategory')
|
this.$delete(addForm,'spacename')
|
this.$delete(addForm,'spacemedium')
|
this.$delete(addForm,'acibase')
|
this.$delete(addForm,'hoistinglevel')
|
this.$delete(addForm,'hoistingweight')
|
this.$delete(addForm,'soildepth')
|
this.$delete(addForm,'soilarea')
|
this.$delete(addForm,'soilfile')
|
this.$delete(addForm,'breakreason')
|
this.$delete(addForm,'breakfile')
|
this.$delete(addForm,'workheight')
|
this.$delete(addForm,'heightlevel')
|
this.$delete(addForm,'electricityarea')
|
this.$delete(addForm,'voltage')
|
this.$delete(addForm,'power')
|
this.$delete(addForm,'pipename')
|
this.$delete(addForm,'pipemedium')
|
this.$delete(addForm,'pipetemperature')
|
this.$delete(addForm,'pipepressure')
|
this.$delete(addForm,'blindboardmaterial')
|
this.$delete(addForm,'blindboardspecification')
|
this.$delete(addForm,'blindboardnumber')
|
this.$delete(addForm,'commander')
|
this.$delete(addForm,'blindboardlocation')
|
this.$delete(addForm,'firetype')
|
|
let res = await updateTask(addForm)
|
if(res.data.code === '200'){
|
this.$notify({
|
type:'success',
|
duration:2000,
|
message:'基本信息编辑成功',
|
title:'成功'
|
})
|
this.$emit('changeCardToSafetyActionEdit',addForm)
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
}
|
},
|
handleSpaceCategory(value){
|
if(value === '密闭设备'){
|
this.taskBasicForm.spacename = ''
|
this.spaceNameList = [{id:0,name:'如船舱'},{id:1,name:'贮罐'},{id:2,name:'车载槽罐'},{id:4,name:'反应塔(釜)'},{id:5,name:'冷藏箱'},{id:6,name:'压力容器'},{id:7,name:'管道'},{id:8,name:'烟道'},{id:9,name:'锅炉'},{id:10,name:'其他'}]
|
}else if(value === '地下有限空间'){
|
this.taskBasicForm.spacename = ''
|
this.spaceNameList = [{id:0,name:'地下管道'},{id:1,name:'地下室'},{id:2,name:'地下仓库'},{id:4,name:'地下工程'},{id:5,name:'暗沟'},{id:6,name:'隧道'},{id:7,name:'涵洞'},{id:8,name:'地坑'},{id:9,name:'废井'},{id:10,name:'地窖'},{id:11,name:'污水池(井)'},{id:12,name:'沼气池'},{id:13,name:'化粪池'},{id:14,name:'下水道'},{id:15,name:'其他'}]
|
}else{
|
this.taskBasicForm.spacename = ''
|
this.spaceNameList = [{id:0,name:'储藏室'},{id:1,name:'酒糟池'},{id:2,name:'发酵池'},{id:4,name:'垃圾站'},{id:5,name:'温室'},{id:6,name:'冷库'},{id:7,name:'粮仓'},{id:8,name:'料仓'},{id:9,name:'其他'}]
|
}
|
},
|
resetFormRules(){
|
this.$nextTick(() =>{
|
this.$refs["form"].clearValidate()
|
})
|
},
|
async getCompany(){
|
// let params = {}
|
// params['pageIndex'] = this.currentPage
|
// params['pageSize'] = this.pageSize
|
// params['company'] = this.company
|
// params['code'] = this.code
|
// params['isMain'] = true
|
let res = await getAllCompany()
|
if(res.data.code === '200'){
|
this.companyList = res.data.result
|
}else{
|
this.$message({
|
message:res.data.message,
|
type:'warning'
|
})
|
}
|
},
|
async getFireTypeList(){
|
const params = {}
|
params['dictionaryType'] = '动火方式'
|
let res = await dictionaryAllItems(params)
|
if (res.data.code === '200') {
|
this.fireTypeList = res.data.result
|
} else {
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
},
|
async getHazardList(){
|
let params = {}
|
params['dictionaryType'] = '危害辨识'
|
let res = await dictionaryAllItems(params)
|
if(res.data.code === '200'){
|
this.hazardList = res.data.result
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
},
|
async getUser(){
|
let res = await safetyInspectionItemName()
|
if(res.data.code === '200'){
|
this.userList = res.data.result
|
}else{
|
this.$message({
|
message:res.data.message,
|
type:'warning'
|
})
|
}
|
},
|
handleChangeBuildingFile(file,fileList){
|
this.uploadForm.name = file.name
|
this.header.Authorization = Cookies.get('token')
|
},
|
onSoilFileSuccess(response){
|
if(response.code === '200'){
|
this.taskBasicForm.soilfile.push({url:process.env.IMG_API + response.result.path,name:response.result.name,fileurl:response.result.path})
|
this.$notify({
|
type:'success',
|
duration:2000,
|
message:'上传成功',
|
title:'成功',
|
})
|
}
|
},
|
handleChangeRoadFile(){
|
this.header.Authorization = Cookies.get('token')
|
},
|
onBreakFileSuccess(response){
|
if(response.code === '200'){
|
this.taskBasicForm.breakfile.push({url:process.env.IMG_API + response.result.path,name:response.result.name,fileurl:response.result.path})
|
this.$notify({
|
type:'success',
|
duration:2000,
|
message:'上传成功',
|
title:'成功',
|
})
|
}
|
},
|
handleChangePumpFile(){
|
this.header.Authorization = Cookies.get('token')
|
},
|
onPumpFileSuccess(response){
|
if(response.code === '200'){
|
this.taskBasicForm.blindboardlocation.push({url:process.env.IMG_API + response.result.path,name:response.result.name,fileurl:response.result.path})
|
this.$notify({
|
type:'success',
|
duration:2000,
|
message:'上传成功',
|
title:'成功',
|
})
|
}
|
},
|
handleFile(file){
|
this.dialogImageUrl = file.url;
|
this.dialogVisible = true;
|
},
|
handleRemove(file,value) {
|
return this.$confirm(`确定移除 ${ file.name }?`,'提示',{
|
confirmButtonText:'确定',
|
cancelButtonText:'取消',
|
type:'warning',
|
}).then(()=> {
|
switch (value) {
|
case 'one':this.taskBasicForm.soilfile.splice(this.taskBasicForm.soilfile.findIndex(item =>item.name === file.name),1);
|
break;
|
case 'two':this.taskBasicForm.breakfile.splice(this.taskBasicForm.breakfile.findIndex(item =>item.name === file.name),1);
|
break;
|
case 'three':this.taskBasicForm.blindboardlocation.splice(this.taskBasicForm.blindboardlocation.findIndex(item =>item.name === file.name),1);
|
break;
|
}
|
})
|
},
|
}
|
}
|
</script>
|
|
<style scoped>
|
.taskBasic_title{
|
font-weight: bolder;
|
font-size: large;
|
text-align: center;
|
margin-top: 24px;
|
}
|
/deep/.el-collapse-item__header{
|
margi:0 auto;
|
width:100%;
|
font-weight: bolder;
|
font-size: large;
|
text-align: center;
|
padding-left: 45%;
|
}
|
.taskBasic_select{
|
width: 100%;
|
}
|
</style>
|