|
@@ -142,7 +142,7 @@
|
|
<el-input v-model="form.designHead" placeholder="请填写现场负责人" maxlength="20"></el-input>
|
|
<el-input v-model="form.designHead" placeholder="请填写现场负责人" maxlength="20"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="设计联系方式" prop="designPhone">
|
|
<el-form-item label="设计联系方式" prop="designPhone">
|
|
- <el-input v-model="form.designPhone" placeholder="请填写联系方式" maxlength="13"></el-input>
|
|
|
|
|
|
+ <el-input v-model="form.designPhone" placeholder="请填写设计联系方式" maxlength="11"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="监理单位" prop="supervisionUnit">
|
|
<el-form-item label="监理单位" prop="supervisionUnit">
|
|
<el-input v-model="form.supervisionUnit" placeholder="请填写监理单位" maxlength="50"/>
|
|
<el-input v-model="form.supervisionUnit" placeholder="请填写监理单位" maxlength="50"/>
|
|
@@ -151,7 +151,7 @@
|
|
<el-input v-model="form.supervisionHead" placeholder="请填写监理负责人" maxlength="20"></el-input>
|
|
<el-input v-model="form.supervisionHead" placeholder="请填写监理负责人" maxlength="20"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="监理联系电话" prop="supervisionPhone">
|
|
<el-form-item label="监理联系电话" prop="supervisionPhone">
|
|
- <el-input v-model="form.supervisionPhone" placeholder="请填写联系方式" maxlength="13"></el-input>
|
|
|
|
|
|
+ <el-input v-model="form.supervisionPhone" placeholder="请填写监理联系电话" maxlength="11"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="工程类型" prop="enginType">
|
|
<el-form-item label="工程类型" prop="enginType">
|
|
<el-select v-model="form.enginType" placeholder="请选择工程类型" style="width: 100%">
|
|
<el-select v-model="form.enginType" placeholder="请选择工程类型" style="width: 100%">
|
|
@@ -175,43 +175,24 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
- <el-form-item label="文件" prop="" v-if="currentType==='put'">
|
|
|
|
|
|
+ <el-form-item label="文件" prop="" v-if="currentType==='put'" style="width: 100%">
|
|
<ObsFileUpload ref="obsFileUpload" :file-size="100" :file-type="['dwg','dwt','doc','docx','xls','xlsx','png', 'jpg', 'jpeg']" :limit="9999" :value="form.pics"
|
|
<ObsFileUpload ref="obsFileUpload" :file-size="100" :file-type="['dwg','dwt','doc','docx','xls','xlsx','png', 'jpg', 'jpeg']" :limit="9999" :value="form.pics"
|
|
></ObsFileUpload>
|
|
></ObsFileUpload>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="文件" prop="" v-if="currentType==='add'">
|
|
|
|
|
|
+ <el-form-item label="文件" prop="" v-if="currentType==='add'" style="width: 100%">
|
|
<ObsFileUpload ref="obsFileUpload" :file-size="100" :file-type="['dwg','dwt','doc','docx','xls','xlsx','png', 'jpg', 'jpeg']" :limit="9999" :value="form.files"
|
|
<ObsFileUpload ref="obsFileUpload" :file-size="100" :file-type="['dwg','dwt','doc','docx','xls','xlsx','png', 'jpg', 'jpeg']" :limit="9999" :value="form.files"
|
|
></ObsFileUpload>
|
|
></ObsFileUpload>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
-<!-- <el-row>-->
|
|
|
|
-<!-- <el-form-item label="附件" prop="zEngineeringAttachmentsList" style="width: 100%;">-->
|
|
|
|
-<!-- <ObsImageUpload ref="obsImageUpload" :limit="9999" :fileType="['dwg','dwt','doc','docx','xls','xlsx','png', 'jpg', 'jpeg']" :value="zEngineeringAttachmentsList"-->
|
|
|
|
-<!-- @input="getUrl"></ObsImageUpload>-->
|
|
|
|
-<!-- </el-form-item>-->
|
|
|
|
-<!-- </el-row>-->
|
|
|
|
-
|
|
|
|
-<!-- <el-row>-->
|
|
|
|
-<!-- <el-form-item label="备注" prop="remark">-->
|
|
|
|
-<!-- <el-input-->
|
|
|
|
-<!-- v-model="form.remark"-->
|
|
|
|
-<!-- type="textarea"-->
|
|
|
|
-<!-- placeholder="请输入内容"-->
|
|
|
|
-<!-- class="remark_input"-->
|
|
|
|
-<!-- maxlength="200"-->
|
|
|
|
-<!-- show-word-limit-->
|
|
|
|
-<!-- />-->
|
|
|
|
-<!-- </el-form-item>-->
|
|
|
|
-<!-- </el-row>-->
|
|
|
|
|
|
+ <div style="width: 20%; float: right">
|
|
|
|
+ <el-button :loading="buttonLoading" type="primary" @click="toNodeDetail">填写施工信息</el-button>
|
|
|
|
+ <el-button @click="cancel">取 消</el-button>
|
|
|
|
+ </div>
|
|
</el-form>
|
|
</el-form>
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
|
- <el-button :loading="buttonLoading" type="primary" @click="toNodeDetail">填写施工信息</el-button>
|
|
|
|
- <el-button @click="cancel">取 消</el-button>
|
|
|
|
- </div>
|
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
<!-- 施工信息dialog -->
|
|
<!-- 施工信息dialog -->
|
|
- <el-dialog :visible.sync="nodeDetailVisible" title="施工信息" append-to-body customClass="appendElNodeDialog" width="70% !important">
|
|
|
|
|
|
+ <el-dialog :visible.sync="nodeDetailVisible" title="施工信息" append-to-body customClass="appendElNodeDialog" width="70% !important">
|
|
<!-- 节点表单 -->
|
|
<!-- 节点表单 -->
|
|
<el-form ref="nodeForm" :model="form.zEngineeringNodeBo.zEngineeringInfoBo" :rules="nodeRules" label-width="200px">
|
|
<el-form ref="nodeForm" :model="form.zEngineeringNodeBo.zEngineeringInfoBo" :rules="nodeRules" label-width="200px">
|
|
<el-form-item label="施工时间" prop="constructTime">
|
|
<el-form-item label="施工时间" prop="constructTime">
|
|
@@ -226,68 +207,52 @@
|
|
<el-form-item label="施工人" prop="constructUser" v-if="form.id">
|
|
<el-form-item label="施工人" prop="constructUser" v-if="form.id">
|
|
<el-input v-model="form.zEngineeringNodeBo.zEngineeringInfoBo.constructUser" placeholder="请填写施工人" maxlength="20" disabled></el-input>
|
|
<el-input v-model="form.zEngineeringNodeBo.zEngineeringInfoBo.constructUser" placeholder="请填写施工人" maxlength="20" disabled></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
-<!-- <el-button icon="el-icon-plus" size="small" type="primary" @click="addzEngineeringMaterialBo()">添加用料</el-button>-->
|
|
|
|
-<!-- <el-row :gutter="10">-->
|
|
|
|
-<!-- <div v-for="(item, index) in form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo" :key="index" style="width: 100px;height: 100px;background-color: #0BB0DE">-->
|
|
|
|
-<!-- <el-col :span="7">-->
|
|
|
|
-<!-- <div style="width: 100px;height: 100px;background-color: #0BB0DE">-->
|
|
|
|
-<!-- <el-form-item-->
|
|
|
|
-<!-- :prop="'zEngineeringInfoBo.zEngineeringMaterialBo.' + index + '.materialQuality'"-->
|
|
|
|
-<!-- label="材质" + index-->
|
|
|
|
-<!-- :rules="{required: true, message: '材质不能为空', trigger: 'blur'}">-->
|
|
|
|
-<!-- <el-input v-model="item.materialQuality" placeholder="请填写材质" maxlength="20"/>-->
|
|
|
|
-<!-- </el-form-item>-->
|
|
|
|
-<!-- </div>-->
|
|
|
|
-<!-- </el-col>-->
|
|
|
|
-<!-- <el-col :span="7">-->
|
|
|
|
-<!-- <div style="width: 100px;height: 100px;background-color: #0BB0DE">-->
|
|
|
|
-<!-- <el-form-item-->
|
|
|
|
-<!-- :prop="'zEngineeringInfoBo.zEngineeringMaterialBo.' + index + '.specifications'"-->
|
|
|
|
-<!-- label="规格" + index-->
|
|
|
|
-<!-- :rules="{required: true, message: '规格不能为空', trigger: 'blur'}">-->
|
|
|
|
-<!-- <el-input v-model="item.specifications" placeholder="请填写材质" maxlength="20"/>-->
|
|
|
|
-<!-- </el-form-item>-->
|
|
|
|
-<!-- </div>-->
|
|
|
|
-<!-- </el-col>-->
|
|
|
|
-<!-- <el-col :span="7">-->
|
|
|
|
-<!-- <div style="width: 100px;height: 100px;background-color: #0BB0DE">-->
|
|
|
|
-<!-- <el-form-item-->
|
|
|
|
-<!-- :prop="'zEngineeringInfoBo.zEngineeringMaterialBo.' + index + '.number'"-->
|
|
|
|
-<!-- label="数量" + index-->
|
|
|
|
-<!-- :rules="{required: true, message: '数量不能为空', trigger: 'blur'}">-->
|
|
|
|
-<!-- <el-input v-model="item.number" placeholder="请填写数量" maxlength="8"/>-->
|
|
|
|
-<!-- </el-form-item>-->
|
|
|
|
-<!-- </div>-->
|
|
|
|
-<!-- </el-col>-->
|
|
|
|
-<!-- <el-col :span="3">-->
|
|
|
|
-<!-- <div style="width: 100px;height: 100px;background-color: #0BB0DE">-->
|
|
|
|
-<!-- <el-form-item>-->
|
|
|
|
-<!-- <el-button type="danger" icon="el-icon-delete" @click.prevent="removezEngineeringMaterialBo(item,index)"/>-->
|
|
|
|
-<!-- </el-form-item>-->
|
|
|
|
-<!-- </div>-->
|
|
|
|
-<!-- </el-col>-->
|
|
|
|
-<!-- </div>-->
|
|
|
|
-<!-- </el-row>-->
|
|
|
|
<el-row>
|
|
<el-row>
|
|
<el-form-item label="照片" prop="zEngiineeringPhotoBoList" style="width: 100%;">
|
|
<el-form-item label="照片" prop="zEngiineeringPhotoBoList" style="width: 100%;">
|
|
<ObsImageUpload ref="obsImageUpload" :limit="9999" :fileType="['png', 'jpg', 'jpeg']" :value="form.zEngineeringNodeBo.zEngineeringInfoBo.zEngiineeringPhotoBoList"
|
|
<ObsImageUpload ref="obsImageUpload" :limit="9999" :fileType="['png', 'jpg', 'jpeg']" :value="form.zEngineeringNodeBo.zEngineeringInfoBo.zEngiineeringPhotoBoList"
|
|
@input="getUrl"></ObsImageUpload>
|
|
@input="getUrl"></ObsImageUpload>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
- <!-- 节点复选框 -->
|
|
|
|
-<!-- <el-checkbox-group v-model="currentNode" @change="currentNodeHasChanged">-->
|
|
|
|
-<!-- <el-checkbox-->
|
|
|
|
-<!-- :label="e"-->
|
|
|
|
-<!-- v-for="e in nodeList"-->
|
|
|
|
-<!-- :key="e"-->
|
|
|
|
-<!-- ></el-checkbox>-->
|
|
|
|
-<!-- </el-checkbox-group>-->
|
|
|
|
-<!-- <div style="display: flex;margin-top: 3%;">-->
|
|
|
|
- <div style="width: 20%; float: right">
|
|
|
|
- <el-button :loading="buttonLoading" type="primary" @click="submitForm">提交</el-button>
|
|
|
|
- <el-button @click="nodeCancel">取 消</el-button>
|
|
|
|
- </div>
|
|
|
|
-<!-- </div>-->
|
|
|
|
|
|
+ <el-row v-for="(item, index) in form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo" :key="index">
|
|
|
|
+ <el-col :span="7">
|
|
|
|
+ <el-form-item
|
|
|
|
+ :prop="'zEngineeringMaterialBo.' + index + '.materialQuality'"
|
|
|
|
+ label-width="50px"
|
|
|
|
+ label="材质" :rules="{required: true, message: '请输入材质', trigger: 'blur'}">
|
|
|
|
+ <el-input v-model="item.materialQuality" placeholder="请输入材质" style="width: 100%"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="7">
|
|
|
|
+ <el-form-item
|
|
|
|
+ :prop="'zEngineeringMaterialBo.' + index + '.specifications'"
|
|
|
|
+ label-width="50px"
|
|
|
|
+ label="规格" :rules="{required: true, message: '请输入规格', trigger: 'blur'}">
|
|
|
|
+ <el-input v-model="item.specifications" placeholder="请输入规格" style="width: 100%"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="7">
|
|
|
|
+ <el-form-item
|
|
|
|
+ :prop="'zEngineeringMaterialBo.' + index + '.number'"
|
|
|
|
+ label-width="50px"
|
|
|
|
+ label="数量" :rules="{required: true, message: '请输入数量', trigger: 'change'}">
|
|
|
|
+ <div class="block" style="display: inline-block; margin-right: 20px;">
|
|
|
|
+ <el-input v-model="item.number" placeholder="请输入数量" style="width: 100%"/>
|
|
|
|
+ </div>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="3">
|
|
|
|
+ <el-form-item style="margin-left: -120px;">
|
|
|
|
+ <el-button v-if="form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo.length > 1" @click="removezEngineeringMaterialBo(index)">
|
|
|
|
+ 删除
|
|
|
|
+ </el-button>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <div style="width: 25%; float: right">
|
|
|
|
+ <el-button @click="addzEngineeringMaterialBo">新增用料信息</el-button>
|
|
|
|
+ <el-button :loading="buttonLoading" type="primary" @click="submitForm">提交</el-button>
|
|
|
|
+ <el-button @click="nodeCancel">取 消</el-button>
|
|
|
|
+ </div>
|
|
</el-form>
|
|
</el-form>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
<ConstructionDetails
|
|
<ConstructionDetails
|
|
@@ -308,6 +273,8 @@ import {
|
|
import EngineePipe from '@/components/EngineePipe'
|
|
import EngineePipe from '@/components/EngineePipe'
|
|
import { validPhoneMobile } from '@/api/rules'
|
|
import { validPhoneMobile } from '@/api/rules'
|
|
import ConstructionDetails from "@/components/ConstructionDetails/index.vue";
|
|
import ConstructionDetails from "@/components/ConstructionDetails/index.vue";
|
|
|
|
+import { getEnginMaterialQualityList } from '@/api/zdsz/enginee'
|
|
|
|
+import { getEnginSpecificationsList } from '@/api/zdsz/enginSpecifications'
|
|
|
|
|
|
export default {
|
|
export default {
|
|
name: "openrepair",
|
|
name: "openrepair",
|
|
@@ -462,13 +429,10 @@ export default {
|
|
// 节点规则校验
|
|
// 节点规则校验
|
|
nodeRules: {
|
|
nodeRules: {
|
|
// constructTime: [
|
|
// constructTime: [
|
|
- // {required: true, message: "施工时间不能为空", trigger: 'blur'}
|
|
|
|
- // ],
|
|
|
|
- // constructAddre: [
|
|
|
|
- // {required: true, message: "施工地址不能为空", trigger: 'blur'}
|
|
|
|
|
|
+ // {required: true, message: "施工时间不能为空", trigger: ['blur','change']}
|
|
// ],
|
|
// ],
|
|
// zEngiineeringPhotoBoList: [
|
|
// zEngiineeringPhotoBoList: [
|
|
- // {required: true, message: "图片不能为空", trigger: 'blur'}
|
|
|
|
|
|
+ // {required: true, message: "图片不能为空", trigger: ['blur','change']}
|
|
// ],
|
|
// ],
|
|
|
|
|
|
},
|
|
},
|
|
@@ -476,24 +440,31 @@ export default {
|
|
};
|
|
};
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
- this.getList();
|
|
|
|
// 根据url获取type节点类型
|
|
// 根据url获取type节点类型
|
|
this.getType();
|
|
this.getType();
|
|
if (this.form.type === '2') {
|
|
if (this.form.type === '2') {
|
|
this.engineeType = false
|
|
this.engineeType = false
|
|
}
|
|
}
|
|
|
|
+ this.getList();
|
|
|
|
+ },
|
|
|
|
+ mounted() {
|
|
|
|
+ // 手动渲染
|
|
|
|
+ setInterval(() =>{
|
|
|
|
+ this.$forceUpdate()
|
|
|
|
+ },500)
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
- // addzEngineeringMaterialBo(){
|
|
|
|
- // this.form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo.push({
|
|
|
|
- // materialQuality: '', // 用料材质
|
|
|
|
- // specifications: '', // 用料规格
|
|
|
|
- // number: '' // 用料数量
|
|
|
|
- // })
|
|
|
|
- // },
|
|
|
|
- // removezEngineeringMaterialBo(item, index){
|
|
|
|
- // this.form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo.splice(index, 1)
|
|
|
|
- // },
|
|
|
|
|
|
+ addzEngineeringMaterialBo(){
|
|
|
|
+ console.log(this.form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo)
|
|
|
|
+ this.form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo.push({
|
|
|
|
+ materialQuality: '', // 用料材质
|
|
|
|
+ specifications: '', // 用料规格
|
|
|
|
+ number: '' // 用料数量
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ removezEngineeringMaterialBo(index){
|
|
|
|
+ this.form.zEngineeringNodeBo.zEngineeringInfoBo.zEngineeringMaterialBo.splice(index, 1)
|
|
|
|
+ },
|
|
// 根据url获取type节点类型
|
|
// 根据url获取type节点类型
|
|
getType() {
|
|
getType() {
|
|
const queryString = window.location.search;
|
|
const queryString = window.location.search;
|
|
@@ -503,7 +474,6 @@ export default {
|
|
this.form.type = type;
|
|
this.form.type = type;
|
|
this.form.zEngineeringNodeBo.type = (type === '1' ? "工业工程" : "市政工程")
|
|
this.form.zEngineeringNodeBo.type = (type === '1' ? "工业工程" : "市政工程")
|
|
}
|
|
}
|
|
-
|
|
|
|
},
|
|
},
|
|
// 新增顶管工程
|
|
// 新增顶管工程
|
|
addNewPipe(data) {
|
|
addNewPipe(data) {
|
|
@@ -548,6 +518,15 @@ export default {
|
|
/** 查询市政工程|工业工程列表 */
|
|
/** 查询市政工程|工业工程列表 */
|
|
getList() {
|
|
getList() {
|
|
this.loading = true;
|
|
this.loading = true;
|
|
|
|
+ let enginType = this.form.zEngineeringNodeBo.type;
|
|
|
|
+ // 获取材质 市政工程 1 - 工业工程 2
|
|
|
|
+ getEnginMaterialQualityList({enginType}).then(res => {
|
|
|
|
+ console.log(res);
|
|
|
|
+ });
|
|
|
|
+ // 获取材质规格
|
|
|
|
+ getEnginSpecificationsList('材质ID').then(res => {
|
|
|
|
+ console.log(res)
|
|
|
|
+ })
|
|
getEngineeIndustryList({
|
|
getEngineeIndustryList({
|
|
type: this.form.type
|
|
type: this.form.type
|
|
}).then(res => {
|
|
}).then(res => {
|