需求优化
This commit is contained in:
parent
6d7d8efac4
commit
9c1be5ef3d
|
|
@ -280,6 +280,7 @@ export default {
|
|||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.$router.push('/project/projectManagements/outsourcingPro/editOutsourcingPro/' + row.proId)
|
||||
localStorage.setItem('proStatusUseInfo', row.proStatus)
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
|
|
|
|||
|
|
@ -1,27 +1,38 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
|
||||
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px">
|
||||
<h2 style="color: #409EFF;background: #e8e8e8;padding: 15px;border-radius: 10px">当前施工信息</h2>
|
||||
<h2 style="color: #409eff; background: #e8e8e8; padding: 15px; border-radius: 10px">当前施工信息</h2>
|
||||
<el-row>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="承包商数量">
|
||||
<el-input v-model="formData.consNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.consNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="分包商数量">
|
||||
<el-input v-model="formData.subNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.subNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="当前在场人数">
|
||||
<el-input v-model="formData.presentNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.presentNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
|
@ -29,22 +40,34 @@
|
|||
<el-row>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="特殊工种人数">
|
||||
<el-input v-model="formData.specialJobsNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.specialJobsNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="工器具总数">
|
||||
<el-input v-model="formData.equipmentNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.equipmentNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="特殊设备数量">
|
||||
<el-input v-model="formData.specialEquipmentNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.specialEquipmentNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
|
@ -52,45 +75,66 @@
|
|||
<el-row>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="监理人数">
|
||||
<el-input v-model="formData.supervisorNum" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.supervisorNum"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="工程状态">
|
||||
<el-select v-model="formData.proStatus" placeholder="请选择工程状态" clearable :style="{width: '100%'}"
|
||||
:disabled="true"
|
||||
<el-select
|
||||
v-model="formData.proStatus"
|
||||
placeholder="请选择工程状态"
|
||||
clearable
|
||||
:style="{ width: '100%' }"
|
||||
:disabled="true"
|
||||
>
|
||||
<el-option v-for="dict in proStatusOptions"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
<el-option
|
||||
v-for="dict in proStatusOptions"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<h2 style="color: #409EFF;background: #e8e8e8;padding: 15px;border-radius: 10px">工程基本信息填写</h2>
|
||||
<h2 style="color: #409eff; background: #e8e8e8; padding: 15px; border-radius: 10px">工程基本信息填写</h2>
|
||||
<el-row>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="工程名称" style="width: 100%">
|
||||
<el-input v-model="formData.proName" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.proName"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="工程负责人" style="width: 100%">
|
||||
<el-input v-model="formData.proLeader" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.proLeader"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="负责人联系方式" style="width: 100%">
|
||||
<el-input v-model="formData.proLeaderPhone" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.proLeaderPhone"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
|
@ -98,29 +142,45 @@
|
|||
<el-row>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="工程类型" style="width: 100%">
|
||||
<el-select v-model="formData.proType" placeholder="请选择工程类型" clearable :style="{width: '100%'}"
|
||||
:disabled="true"
|
||||
<el-select
|
||||
v-model="formData.proType"
|
||||
placeholder="请选择工程类型"
|
||||
clearable
|
||||
:style="{ width: '100%' }"
|
||||
:disabled="true"
|
||||
>
|
||||
<el-option v-for="dict in proTypeOptions"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
<el-option
|
||||
v-for="dict in proTypeOptions"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="计划开工日期" prop="startDate" style="width: 100%">
|
||||
<el-date-picker v-model="formData.startDate" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
|
||||
:style="{width: '100%'}" placeholder="请选择开工期日计划开工日期"
|
||||
:editable="false" clearable
|
||||
<el-date-picker
|
||||
v-model="formData.startDate"
|
||||
format="yyyy-MM-dd"
|
||||
value-format="yyyy-MM-dd"
|
||||
:style="{ width: '100%' }"
|
||||
placeholder="请选择开工期日计划开工日期"
|
||||
:editable="false"
|
||||
clearable
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="计划竣工日期" prop="endDate">
|
||||
<el-date-picker v-model="formData.endDate" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
|
||||
:editable="false" :style="{width: '100%'}" placeholder="请选择计划竣工日期" clearable
|
||||
<el-date-picker
|
||||
v-model="formData.endDate"
|
||||
format="yyyy-MM-dd"
|
||||
value-format="yyyy-MM-dd"
|
||||
:editable="false"
|
||||
:style="{ width: '100%' }"
|
||||
placeholder="请选择计划竣工日期"
|
||||
clearable
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
|
@ -128,17 +188,25 @@
|
|||
<el-row v-if="formData.proType == 2">
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="选择监理单位" prop="supervisorUnitId">
|
||||
<el-select v-model="formData.supervisorUnitId" placeholder="请选择监理单位" clearable :disabled="true"
|
||||
:style="{width: '100%'}"
|
||||
<el-select
|
||||
v-model="formData.supervisorUnitId"
|
||||
placeholder="请选择监理单位"
|
||||
clearable
|
||||
:disabled="true"
|
||||
:style="{ width: '100%' }"
|
||||
>
|
||||
<el-option v-for="(item,index) in supervisorUnitOptions" :key="index" :label="item.label"
|
||||
:value="item.value" :disabled="item.disabled"
|
||||
<el-option
|
||||
v-for="(item, index) in supervisorUnitOptions"
|
||||
:key="index"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
:disabled="item.disabled"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<h2 style="color: #409EFF;background: #e8e8e8;padding: 15px;border-radius: 10px">工程地址配置</h2>
|
||||
<h2 style="color: #409eff; background: #e8e8e8; padding: 15px; border-radius: 10px">工程地址配置</h2>
|
||||
<el-row>
|
||||
<el-form-item
|
||||
v-for="(domain, index) in formData.proAddress"
|
||||
|
|
@ -147,144 +215,245 @@
|
|||
:key="domain.key"
|
||||
:prop="'proAddress.' + index + '.value'"
|
||||
:rules="{
|
||||
required: true, message: '请选择工程地址', trigger: 'blur'
|
||||
}"
|
||||
required: true,
|
||||
message: '请选择工程地址',
|
||||
trigger: 'blur',
|
||||
}"
|
||||
>
|
||||
<el-select v-model="domain.value" placeholder="请选择工程地址" clearable @clear="clearAddress(index)"
|
||||
:style="{width: '26%'}"
|
||||
@change="changeLonLat(domain.value,index)"
|
||||
<el-select
|
||||
v-model="domain.value"
|
||||
placeholder="请选择工程地址"
|
||||
clearable
|
||||
@clear="clearAddress(index)"
|
||||
:style="{ width: '26%' }"
|
||||
@change="changeLonLat(domain.value, index)"
|
||||
>
|
||||
<el-option v-for="(option, i) in proAddressOptions" :key="i" :label="option.label" :value="option.value"
|
||||
:disabled="option.disabled"
|
||||
<el-option
|
||||
v-for="(option, i) in proAddressOptions"
|
||||
:key="i"
|
||||
:label="option.label"
|
||||
:value="option.value"
|
||||
:disabled="option.disabled"
|
||||
></el-option>
|
||||
</el-select>
|
||||
<el-input v-model="domain.lon" placeholder="经度" clearable :disabled="true"
|
||||
:style="{width: '20%',marginLeft:'2%'}" v-no-whitespace
|
||||
<el-input
|
||||
v-model="domain.lon"
|
||||
placeholder="经度"
|
||||
clearable
|
||||
:disabled="true"
|
||||
:style="{ width: '20%', marginLeft: '2%' }"
|
||||
v-no-whitespace
|
||||
></el-input>
|
||||
<el-input v-model="domain.lat" placeholder="经度" clearable :disabled="true"
|
||||
:style="{width: '20%',marginLeft:'2%'}" v-no-whitespace
|
||||
<el-input
|
||||
v-model="domain.lat"
|
||||
placeholder="经度"
|
||||
clearable
|
||||
:disabled="true"
|
||||
:style="{ width: '20%', marginLeft: '2%' }"
|
||||
v-no-whitespace
|
||||
></el-input>
|
||||
<el-button type="primary" plain size="medium" icon="el-icon-circle-plus" circle :style="{marginLeft:'2%'}"
|
||||
@click="addAddressOption"
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
size="medium"
|
||||
icon="el-icon-circle-plus"
|
||||
circle
|
||||
:style="{ marginLeft: '2%' }"
|
||||
@click="addAddressOption"
|
||||
></el-button>
|
||||
<el-button v-if="index !== 0" v-show="true" type="danger" plain icon="el-icon-remove" circle
|
||||
@click="removeAddressOption(domain)"
|
||||
<el-button
|
||||
v-if="index !== 0"
|
||||
v-show="true"
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-remove"
|
||||
circle
|
||||
@click="removeAddressOption(domain)"
|
||||
></el-button>
|
||||
<el-button v-if="index === 0" v-show="true" type="primary" @click="addAddress">新增地址</el-button>
|
||||
</el-form-item>
|
||||
|
||||
</el-row>
|
||||
<h2 style="color: #409EFF;background: #e8e8e8;padding: 15px;border-radius: 10px">承包商配置</h2>
|
||||
<h2 style="color: #409eff; background: #e8e8e8; padding: 15px; border-radius: 10px">承包商配置</h2>
|
||||
<el-row>
|
||||
<el-form-item
|
||||
v-for="(domain, index) in formData.consArr"
|
||||
:label="'选择承包商' + index"
|
||||
:key="domain.key"
|
||||
>
|
||||
<el-form-item v-for="(domain, index) in formData.consArr" :label="'选择承包商' + index" :key="domain.key">
|
||||
<el-col :span="7">
|
||||
<el-select v-model="domain.value" placeholder="请选择承包商" clearable
|
||||
:style="{width: '100%'}"
|
||||
@change="changeCons(domain.value,index)"
|
||||
<el-select
|
||||
v-model="domain.value"
|
||||
placeholder="请选择承包商"
|
||||
clearable
|
||||
:style="{ width: '100%' }"
|
||||
@change="changeCons(domain.value, index)"
|
||||
>
|
||||
<el-option v-for="(option, i) in consOptions" :key="i" :label="option.label" :value="option.value"
|
||||
:disabled="option.disabled"
|
||||
<el-option
|
||||
v-for="(option, i) in consOptions"
|
||||
:key="i"
|
||||
:label="option.label"
|
||||
:value="option.value"
|
||||
:disabled="option.disabled"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12">
|
||||
<el-checkbox-group v-model="domain.checkList" style="margin-left: 2%;">
|
||||
<el-checkbox v-for="(option,index) in materialOptions" :label="option.value" :key="index" >
|
||||
<el-checkbox-group v-model="domain.checkList" style="margin-left: 2%">
|
||||
<el-checkbox v-for="(option, index) in materialOptions" :label="option.value" :key="index">
|
||||
{{ option.label }}
|
||||
</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-button type="primary" plain size="medium" icon="el-icon-circle-plus" circle
|
||||
@click="addConsOption"
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
size="medium"
|
||||
icon="el-icon-circle-plus"
|
||||
circle
|
||||
@click="addConsOption"
|
||||
></el-button>
|
||||
<el-button v-if="index !== 0" v-show="true" type="danger" plain icon="el-icon-remove" circle
|
||||
@click="removeConsOption(domain)"
|
||||
<el-button
|
||||
v-if="
|
||||
index !== 0 &&
|
||||
(proStatusUseInfo === '规划中' || proStatusUseInfo === '筹备中' || proStatusUseInfo === '在建中')
|
||||
"
|
||||
v-show="true"
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-remove"
|
||||
circle
|
||||
@click="removeConsOption(domain)"
|
||||
></el-button>
|
||||
<el-button v-show="index === 0" type="primary" @click="addCons">新增承包商单位</el-button>
|
||||
<el-button
|
||||
v-show="
|
||||
index === 0 &&
|
||||
(proStatusUseInfo === '规划中' || proStatusUseInfo === '筹备中' || proStatusUseInfo === '在建中')
|
||||
"
|
||||
type="primary"
|
||||
@click="addCons"
|
||||
>
|
||||
新增承包商单位
|
||||
</el-button>
|
||||
</el-col>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<h2 style="color: #409EFF;background: #e8e8e8;padding: 15px;border-radius: 10px">其他信息</h2>
|
||||
<h2 style="color: #409eff; background: #e8e8e8; padding: 15px; border-radius: 10px">其他信息</h2>
|
||||
<el-row>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="创建人">
|
||||
<el-input v-model="formData.createPerson" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.createPerson"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-form-item label-width="120px" label="创建时间">
|
||||
<el-input v-model="formData.createTime" clearable :disabled="true" v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="formData.createTime"
|
||||
clearable
|
||||
:disabled="true"
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-dialog :title="'创建工程地址'" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
|
||||
<bns-map
|
||||
:items="mapItems"
|
||||
v-on:closeMain="closeMain"
|
||||
>
|
||||
</bns-map>
|
||||
<bns-map :items="mapItems" v-on:closeMain="closeMain"></bns-map>
|
||||
</el-dialog>
|
||||
<!-- 创建承包商单位 -->
|
||||
<el-dialog :title="'创建承包商单位'" :visible.sync="consFormOpen" width="30%" :close-on-click-modal="false">
|
||||
<el-form ref="consForm" :model="consForm" :rules="consRules" size="medium" label-width="100px">
|
||||
<el-form-item label="承包商单位名称" prop="consName" label-width="170px">
|
||||
<el-input v-model="consForm.consName" placeholder="请输入承包商单位名称" show-word-limit :maxlength="60"
|
||||
@blur="checkIsExistConsName" v-no-whitespace
|
||||
clearable
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.consName"
|
||||
placeholder="请输入承包商单位名称"
|
||||
show-word-limit
|
||||
:maxlength="60"
|
||||
@blur="checkIsExistConsName"
|
||||
v-no-whitespace
|
||||
clearable
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位地址" prop="consAddress" label-width="170px">
|
||||
<el-input v-model="consForm.consAddress" placeholder="请输入单位地址" show-word-limit :maxlength="200"
|
||||
clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.consAddress"
|
||||
placeholder="请输入单位地址"
|
||||
show-word-limit
|
||||
:maxlength="200"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法人姓名" prop="corporateName" label-width="170px">
|
||||
<el-input v-model="consForm.corporateName" placeholder="请输入法人姓名" show-word-limit :maxlength="20"
|
||||
clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.corporateName"
|
||||
placeholder="请输入法人姓名"
|
||||
show-word-limit
|
||||
:maxlength="20"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法人联系方式" prop="corporatePhone" label-width="170px">
|
||||
<el-input v-model="consForm.corporatePhone" placeholder="请输入法人联系方式" show-word-limit :maxlength="11"
|
||||
clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.corporatePhone"
|
||||
placeholder="请输入法人联系方式"
|
||||
show-word-limit
|
||||
:maxlength="11"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="社会统一征信代码" prop="socialUnifiedCreditCode" label-width="170px">
|
||||
<el-input v-model="consForm.socialUnifiedCreditCode" placeholder="请输入社会统一征信代码" show-word-limit
|
||||
:maxlength="20" clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.socialUnifiedCreditCode"
|
||||
placeholder="请输入社会统一征信代码"
|
||||
show-word-limit
|
||||
:maxlength="20"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="承包商负责人" prop="contractorPrincipal" label-width="170px">
|
||||
<el-input v-model="consForm.contractorPrincipal" placeholder="请输入承包商负责人" show-word-limit
|
||||
:maxlength="20" clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.contractorPrincipal"
|
||||
placeholder="请输入承包商负责人"
|
||||
show-word-limit
|
||||
:maxlength="20"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="承包商负责人联系方式" prop="contractorPrincipalPhone" label-width="170px">
|
||||
<el-input v-model="consForm.contractorPrincipalPhone" placeholder="请输入承包商负责人联系方式" show-word-limit
|
||||
:maxlength="11" clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.contractorPrincipalPhone"
|
||||
placeholder="请输入承包商负责人联系方式"
|
||||
show-word-limit
|
||||
:maxlength="11"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="承包商负责人身份证" prop="contractorPrincipalIdCard" label-width="170px">
|
||||
<el-input v-model="consForm.contractorPrincipalIdCard" placeholder="请输入承包商负责人身份证" show-word-limit
|
||||
:maxlength="18" clearable v-no-whitespace
|
||||
:style="{width: '100%'}"
|
||||
<el-input
|
||||
v-model="consForm.contractorPrincipalIdCard"
|
||||
placeholder="请输入承包商负责人身份证"
|
||||
show-word-limit
|
||||
:maxlength="18"
|
||||
clearable
|
||||
v-no-whitespace
|
||||
:style="{ width: '100%' }"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
|
@ -295,13 +464,17 @@
|
|||
</el-dialog>
|
||||
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm" :style="{float:'right',marginLeft:'10px'}" v-preventReClick="5000">提
|
||||
交
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="submitForm"
|
||||
:style="{ float: 'right', marginLeft: '10px' }"
|
||||
v-preventReClick="5000"
|
||||
>
|
||||
提 交
|
||||
</el-button>
|
||||
<el-button @click="resetForm" :style="{float:'right'}">取 消</el-button>
|
||||
<el-button @click="resetForm" :style="{ float: 'right' }">取 消</el-button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
<script>
|
||||
import { dictTableOption, selectCons, selectMaterial, selectProAddress, selectSupervisionUnit } from '@/api/tool/select'
|
||||
|
|
@ -324,21 +497,27 @@ export default {
|
|||
proAddressForm: {},
|
||||
//工程地址form表单 校验
|
||||
proAddressRules: {
|
||||
proAddress: [{
|
||||
required: true,
|
||||
message: '请输入工程地址',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
lon: [{
|
||||
required: true,
|
||||
message: '请输入经度',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
lat: [{
|
||||
required: true,
|
||||
message: '请输入纬度',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
proAddress: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入工程地址',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
lon: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入经度',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
lat: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入纬度',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
},
|
||||
//工程地址
|
||||
mapItems: {},
|
||||
|
|
@ -346,53 +525,71 @@ export default {
|
|||
consForm: {},
|
||||
//承包商单位form表单 校验
|
||||
consRules: {
|
||||
consName: [{
|
||||
required: true,
|
||||
message: '请输入承包商单位名称',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
consAddress: [{
|
||||
required: true,
|
||||
message: '请输入单位地址',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
corporateName: [{
|
||||
required: true,
|
||||
message: '请输入法人姓名',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
corporatePhone: [{
|
||||
required: true,
|
||||
validator: numberUtils.checkPhone,
|
||||
trigger: 'blur',
|
||||
}],
|
||||
socialUnifiedCreditCode: [{
|
||||
required: true,
|
||||
message: '请输入社会统一征信代码',
|
||||
trigger: 'blur',
|
||||
}, {
|
||||
pattern: /^[a-zA-Z0-9]+$/,
|
||||
message: '请输入数字或字母',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
contractorPrincipal: [{
|
||||
required: true,
|
||||
message: '请输入承包商负责人',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
contractorPrincipalPhone: [{
|
||||
required: true,
|
||||
validator: numberUtils.checkPhone,
|
||||
trigger: 'blur',
|
||||
}],
|
||||
contractorPrincipalIdCard: [{
|
||||
required: true,
|
||||
validator: numberUtils.checkIdCardNumber,
|
||||
trigger: 'blur',
|
||||
}],
|
||||
consName: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入承包商单位名称',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
consAddress: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入单位地址',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
corporateName: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入法人姓名',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
corporatePhone: [
|
||||
{
|
||||
required: true,
|
||||
validator: numberUtils.checkPhone,
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
socialUnifiedCreditCode: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入社会统一征信代码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
{
|
||||
pattern: /^[a-zA-Z0-9]+$/,
|
||||
message: '请输入数字或字母',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
contractorPrincipal: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入承包商负责人',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
contractorPrincipalPhone: [
|
||||
{
|
||||
required: true,
|
||||
validator: numberUtils.checkPhone,
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
contractorPrincipalIdCard: [
|
||||
{
|
||||
required: true,
|
||||
validator: numberUtils.checkIdCardNumber,
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
},
|
||||
gutterValue: parseInt('24', 10),
|
||||
mainFormFields: [ // 主表单字段定义
|
||||
mainFormFields: [
|
||||
// 主表单字段定义
|
||||
{
|
||||
label: '工程地址',
|
||||
prop: 'proAddress',
|
||||
|
|
@ -454,41 +651,55 @@ export default {
|
|||
},
|
||||
//主表单校验
|
||||
rules: {
|
||||
proName: [{
|
||||
required: true,
|
||||
message: '请输入工程名称',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
proLeader: [{
|
||||
required: true,
|
||||
message: '请输入工程负责人',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
proLeaderPhone: [{
|
||||
required: true,
|
||||
message: '请输入负责人联系方式',
|
||||
trigger: 'blur',
|
||||
}],
|
||||
supervisorUnit: [{
|
||||
required: true,
|
||||
message: '请选择监理单位',
|
||||
trigger: 'change',
|
||||
}],
|
||||
startDate: [{
|
||||
required: true,
|
||||
message: '请选择开工期日计划开工日期',
|
||||
trigger: 'change',
|
||||
}],
|
||||
endDate: [{
|
||||
required: true,
|
||||
message: '请选择计划竣工日期',
|
||||
trigger: 'change',
|
||||
}],
|
||||
proType: [{
|
||||
required: true,
|
||||
message: '请选择工程类型',
|
||||
trigger: 'change',
|
||||
}],
|
||||
proName: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入工程名称',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
proLeader: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入工程负责人',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
proLeaderPhone: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入负责人联系方式',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
supervisorUnit: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择监理单位',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
startDate: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择开工期日计划开工日期',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
endDate: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择计划竣工日期',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
proType: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择工程类型',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
},
|
||||
//工程类型下拉选
|
||||
proTypeOptions: [],
|
||||
|
|
@ -503,6 +714,8 @@ export default {
|
|||
proAddressOptions: [],
|
||||
paramsData: {},
|
||||
proId: '',
|
||||
|
||||
proStatusUseInfo: '',
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
|
@ -514,9 +727,10 @@ export default {
|
|||
this.getMaterial()
|
||||
this.getSupervisionUnit()
|
||||
this.getData(this.proId)
|
||||
|
||||
this.proStatusUseInfo = localStorage.getItem('proStatusUseInfo') || ''
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
mounted() {},
|
||||
watch: {
|
||||
open: {
|
||||
handler(newVal, oldVal) {
|
||||
|
|
@ -679,10 +893,10 @@ export default {
|
|||
this.$tab.closePage()
|
||||
}
|
||||
})
|
||||
if (this.hasDuplicates(this.formData.consArr,'label')){
|
||||
if (this.hasDuplicates(this.formData.consArr, 'label')) {
|
||||
this.$message({
|
||||
message: '承包商不能重复',
|
||||
type: 'error'
|
||||
type: 'error',
|
||||
})
|
||||
return false
|
||||
}
|
||||
|
|
@ -821,7 +1035,5 @@ export default {
|
|||
},
|
||||
},
|
||||
}
|
||||
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
<style></style>
|
||||
|
|
|
|||
Loading…
Reference in New Issue