Browse Source

民用旧改架空暂存功能

zhanghongrui 9 tháng trước cách đây
mục cha
commit
8b8811e469

+ 109 - 47
pages/oldrenovation/overhead/newoverhead.vue

@@ -7,8 +7,7 @@
 						<view>
 							行政区
 						</view>
-						<view v-if="this.isEmpty(this.XZQValue.dictValue)" style="margin-top: 10;"
-							@click="pickerShow('xzq',0)">
+						<view v-if="this.isEmpty(this.XZQValue.dictValue)" style="margin-top: 10;" @click="pickerShow('xzq',0)">
 							<span style="color: darkgray;">请选择行政区</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -25,8 +24,7 @@
 							小区
 						</view>
 
-						<view v-if="this.isEmpty(this.XQValue.id)" class="uni-list-cell-db" style="margin-top: 10;"
-							@click="pickerShow('xq',0)">
+						<view v-if="this.isEmpty(this.XQValue.id)" class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('xq',0)">
 							<span style="color: darkgray;">请选择小区</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -41,8 +39,7 @@
 						<view class="uni-list-cell-left">
 							楼栋
 						</view>
-						<view v-if="this.isEmpty(this.LDValue.id)" class="uni-list-cell-db" style="margin-top: 10;"
-							@click="pickerShow('ld',0)">
+						<view v-if="this.isEmpty(this.LDValue.id)" class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('ld',0)">
 							<span style="color: darkgray;">请选择楼栋</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -57,8 +54,7 @@
 						<view class="uni-list-cell-left">
 							单元
 						</view>
-						<view v-if="this.isEmpty(this.DYValue.id)" class="uni-list-cell-db" style="margin-top: 10;"
-							@click="pickerShow('dy',0)">
+						<view v-if="this.isEmpty(this.DYValue.id)" class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('dy',0)">
 							<span style="color: darkgray;">请选择单元</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -70,24 +66,19 @@
 				</view>
 
 
-				<SelectPicker :list="selectList" @change="changeSelect" v-if="open" @close="close" titleKey="name"
-					subtitleKey="id" v-model="name"></SelectPicker>
+				<SelectPicker :list="selectList" @change="changeSelect" v-if="open" @close="close" titleKey="name" subtitleKey="id" v-model="name"></SelectPicker>
 
 
-				<SelectPicker :list="dictOptions" @change="changeSelectDict" v-if="openDict" @close="closeDict"
-					titleKey="dictLabel" subtitleKey="dictValue" v-model="dictLabel"></SelectPicker>
+				<SelectPicker :list="dictOptions" @change="changeSelectDict" v-if="openDict" @close="closeDict" titleKey="dictLabel" subtitleKey="dictValue" v-model="dictLabel"></SelectPicker>
 			</view>
 
 			<view class="background">
 				<view>
 					<view class="uni-list">
-						<view
-							style="font-size: 16px;margin-left: 10px;margin-top: 10px;display: flex; justify-content: space-between;margin-bottom: 10px;">
+						<view style="font-size: 16px;margin-left: 10px;margin-top: 10px;display: flex; justify-content: space-between;margin-bottom: 10px;">
 							{{objValue.enginClassValue}}
 
-							<span
-								style="color: blue;font-size: 14px;  display: flex;justify-content:flex-end; margin-right: 10px;"
-								@click="history">历史</span>
+							<span style="color: blue;font-size: 14px;  display: flex;justify-content:flex-end; margin-right: 10px;" @click="history">{{historyName}}</span>
 						</view>
 						<view class="container" style="border-bottom: 1px solid #f8f8f8;">
 
@@ -106,10 +97,7 @@
 							<view class="uni-common-mt" style="width: 100%;">
 								<text class="uni-title uni-common-pl">施工内容</text>
 								<view style="width: 100%;box-sizing: border-box;">
-									<textarea class="textarea" placeholder="请输入施工内容" maxlength="255"
-										placeholder-style="padding: 10rpx;"
-										style="width: 100%;height: 100%;border: 1rpx solid #cccccc; border-radius: 15rpx;padding: 10rpx;line-height:normal;"
-										auto-height v-model="projectContent"></textarea>
+									<textarea class="textarea" placeholder="请输入施工内容" maxlength="255" placeholder-style="padding: 10rpx;" style="width: 100%;height: 100%;border: 1rpx solid #cccccc; border-radius: 15rpx;padding: 10rpx;line-height:normal;" auto-height v-model="projectContent"></textarea>
 								</view>
 							</view>
 						</view>
@@ -142,13 +130,9 @@
 								<text>米 数</text>
 								<!-- style="margin-left: 10px;text-align: right;" -->
 								<view style="display: flex; justify-content: right; width: 70%;">
-									<input class="uni-input" type="number" v-model="a.sl.inputIntegerNumberValue"
-										maxlength="6"
-										style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx; "></input>
+									<input class="uni-input" type="number" v-model="a.sl.inputIntegerNumberValue" maxlength="6" style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx; "></input>
 									<text style="font-weight:bold;margin-left: 10px;margin-right: 10px;">.</text>
-									<input class="uni-input" type="number" v-model="a.sl.inputDecimalNumberValue"
-										maxlength="1"
-										style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx; "></input>
+									<input class="uni-input" type="number" v-model="a.sl.inputDecimalNumberValue" maxlength="1" style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx; "></input>
 								</view>
 							</view>
 							<button v-if="index!=0" @click="this.czggslList.splice(index,1)" class="sc-btn">删除</button>
@@ -163,21 +147,16 @@
 					<view class="align-items" style="margin-top: 20px;margin-bottom: 20px;">
 						<view class="container" style="color: #b2b2b2;">*请上传照片</view>
 						<view class="" style="display: flex; flex-wrap: wrap;margin-top: 10px; margin-left: 10px;">
-							<image :src="loadImgSrc('updateimg.png')" mode=""
-								style="width: 200rpx; height: 150rpx; margin: 0 12rpx;; " @click="choose()"
-								v-show="reviewStatus!='1'"></image>
+							<image :src="loadImgSrc('updateimg.png')" mode="" style="width: 200rpx; height: 150rpx; margin: 0 12rpx;; " @click="choose()" v-show="reviewStatus!='1'"></image>
 							<view v-for="(item,index) in imgArr" :key="index" style="position: relative;">
-								<view
-									v-if="item.substring(item.length - 3) == 'png' || item.substring(item.length - 3) == 'jpg'||item.substring(item.length-4)=='jpeg' ">
-									<image :src="item" mode="" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;"
-										@click="showPhoto(index)">
+								<view v-if="item.substring(item.length - 3) == 'png' || item.substring(item.length - 3) == 'jpg'||item.substring(item.length-4)=='jpeg' ">
+									<image :src="item" mode="" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;" @click="showPhoto(index)">
 									</image>
 								</view>
 								<view v-else>
 									<video :src="item" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;"></video>
 								</view>
-								<view @click="remove(index)"
-									style="position: absolute; top: 0; right: 14rpx; border-radius: 50%;">
+								<view @click="remove(index)" style="position: absolute; top: 0; right: 14rpx; border-radius: 50%;">
 									<image :src="loadImgSrc('icon_close.png')" style=" width: 15px; height: 15px;">
 									</image>
 								</view>
@@ -187,12 +166,12 @@
 				</view>
 			</view>
 			<view class="action-btn" v-show="reviewStatus!='1'">
-				<button @click="submit" class="btn cu-btn block bg-blue lg round">确认上传</button>
+				<button @click="submit('submit')" class="btn cu-btn block bg-blue lg round">确认上传</button>
+				<button @click="submit('save')" class="btn cu-btn block bg-blue lg round" v-if="objValue.enginType == 'old_renovation'">暂存</button>
 			</view>
 
 			<bottom-sheet ref="refShare" :data="historyList" :TitleType="objValue.enginClassValue"></bottom-sheet>
-			<yt-dateTimePicker ref="myPicker" @submit="handleSubmit" :start-year="2024" :end-year="2099"
-				:time-hide="[true, true, true, true, true, true]" :time-label="['年', '月', '日', '时', '分', '秒']" />
+			<yt-dateTimePicker ref="myPicker" @submit="handleSubmit" :start-year="2024" :end-year="2099" :time-hide="[true, true, true, true, true, true]" :time-label="['年', '月', '日', '时', '分', '秒']" />
 		</scroll-view>
 	</template>
 
@@ -227,6 +206,9 @@
 			data() {
 
 				return {
+
+					historyName: '恢复暂存',
+					tempState: '',
 					headers: {
 						Authorization: "Bearer " + getToken()
 					},
@@ -732,8 +714,8 @@
 					})
 				},
 				//提交数据
-				submit() {
-
+				submit(e) {
+					this.tempState = e == 'submit' ? '' : '99'
 					if (this.isEmpty(this.projectValue.dictValue)) {
 						this.$modal.msg("请选择工程周期")
 						return
@@ -779,10 +761,10 @@
 						this.$modal.msg('请上传照片或视频')
 						return
 					}
-					if (this.loading == false) {
-						this.$modal.msg('照片或视频未上传完毕,无法提交!')
-						return
-					}
+					// if (this.loading == false) {
+					// 	this.$modal.msg('照片或视频未上传完毕,无法提交!')
+					// 	return
+					// }
 					this.zEngineeringMaterialBo = [];
 					this.czggslList.forEach((list) => {
 							this.zEngineeringMaterialBo.push({
@@ -823,6 +805,7 @@
 						zEngineeringNodeBo: {
 							type: this.objValue.enginClassValue, //写死 上一页面传过来的  (拆旧管等 字典值)
 							zEngineeringInfoBo: {
+								state: this.tempState,
 								zEngiineeringPhotoBoList: this.imgArr, //照片集合
 								constructTime: this.time, //施工时间
 								remark: this.projectContent, //施工内容
@@ -853,6 +836,10 @@
 
 				},
 				history() {
+					this.imgArr = [];
+					this.projectContent = '';
+					this.zEngineeringMaterialBo = [];
+					this.czggslList = [];
 					if (this.isEmpty(this.projectValue.dictValue)) {
 						this.$modal.msg("请选择工程周期")
 						return
@@ -893,20 +880,92 @@
 						if (res.code == '200') {
 
 							if (res.data != null) {
-
 								getRoomProjectList(res.data.id, this.objValue.enginClassValue).then(
 									res => {
 
 										this.historyList = res.data
 										if (res.data.zEngineeringNodeBo != null) {
-											this.showHistoryList();
+											//this.showHistoryList();
+											if (res.data.zEngineeringNodeBo.reviewStatus == '1') {
+												this.$modal.msg("当前步骤以审核通过请谨慎!")
+											} else if (res.data.zEngineeringNodeBo.reviewStatus == '99') {
+												let dataJson = res.data.zEngineeringNodeBo.zEngineeringInfoBoList[0];
+												this.projectContent = dataJson.remark;
+												this.time = dataJson.constructTime;
+
+												this.imgArr = dataJson.zEngiineeringPhotoBoList;
+												this.zEngineeringMaterialBo = dataJson.zEngineeringMaterialBo;
+
+												this.zEngineeringMaterialBo.forEach((item) => {
+													this.czggslList.push({
+														cz: {
+															id: item.materialQuality,
+															name: item.materialQualityName
+														},
+														gg: {
+															id: item.specifications,
+															name: item.specificationsName
+														},
+
+														sl: {
+															inputIntegerNumberValue: this.getIntegerPart(item.number, 0),
+															inputDecimalNumberValue: this.getIntegerPart(item.number, 1)
+														}
+													})
+												})
+
+											} else {
+												this.czggslList.push({
+													cz: {
+														id: '',
+														name: ''
+													},
+													gg: {
+														id: '',
+														name: ''
+													},
+													sl: {
+														inputIntegerNumberValue: '',
+														inputDecimalNumberValue: ''
+													}
+												});
+												this.$modal.msg("暂无暂存信息")
+											}
 										} else {
+											this.czggslList.push({
+												cz: {
+													id: '',
+													name: ''
+												},
+												gg: {
+													id: '',
+													name: ''
+												},
+												sl: {
+													inputIntegerNumberValue: '',
+													inputDecimalNumberValue: ''
+												}
+											});
 											this.$modal.msg("暂无历史信息")
 										}
 
 									})
 
 							} else {
+								this.czggslList.push({
+									cz: {
+										id: '',
+										name: ''
+									},
+									gg: {
+										id: '',
+										name: ''
+									},
+									sl: {
+										inputIntegerNumberValue: '',
+										inputDecimalNumberValue: ''
+									}
+								});
 								this.$modal.msg("暂无工程信息")
 							}
 						} else {
@@ -914,6 +973,9 @@
 						}
 					})
 				},
+				getIntegerPart(numStr, i) {
+					return numStr.toString().split('.')[i] == undefined ? '0' : numStr.toString().split('.')[i];
+				},
 				showHistoryList() {
 					this.$refs.refShare.handleShowShare();
 				}

+ 40 - 41
pages/oldrenovation/overhead/overhead.vue

@@ -7,8 +7,7 @@
 						<view>
 							行政区
 						</view>
-						<view v-if="this.isEmpty(this.XZQValue.dictValue)" style="margin-top: 10;"
-							@click="pickerShow('xzq')">
+						<view v-if="this.isEmpty(this.XZQValue.dictValue)" style="margin-top: 10;" @click="pickerShow('xzq')">
 							<span style="color: darkgray;">请选择行政区</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -25,8 +24,7 @@
 							小区
 						</view>
 
-						<view v-if="this.isEmpty(this.XQValue.id)" class="uni-list-cell-db" style="margin-top: 10;"
-							@click="pickerShow('xq')">
+						<view v-if="this.isEmpty(this.XQValue.id)" class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('xq')">
 							<span style="color: darkgray;">请选择小区</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -41,8 +39,7 @@
 						<view class="uni-list-cell-left">
 							楼栋
 						</view>
-						<view v-if="this.isEmpty(this.LDValue.id)" class="uni-list-cell-db" style="margin-top: 10;"
-							@click="pickerShow('ld')">
+						<view v-if="this.isEmpty(this.LDValue.id)" class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('ld')">
 							<span style="color: darkgray;">请选择楼栋</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -57,8 +54,7 @@
 						<view class="uni-list-cell-left">
 							单元
 						</view>
-						<view v-if="this.isEmpty(this.DYValue.id)" class="uni-list-cell-db" style="margin-top: 10;"
-							@click="pickerShow('dy')">
+						<view v-if="this.isEmpty(this.DYValue.id)" class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('dy')">
 							<span style="color: darkgray;">请选择单元</span>
 							<image :src="loadImgSrc('icon_right.png')" class="to-right-icon"></image>
 						</view>
@@ -70,24 +66,19 @@
 				</view>
 
 
-				<SelectPicker :list="selectList" @change="changeSelect" v-if="open" @close="close" titleKey="name"
-					subtitleKey="id" v-model="name"></SelectPicker>
+				<SelectPicker :list="selectList" @change="changeSelect" v-if="open" @close="close" titleKey="name" subtitleKey="id" v-model="name"></SelectPicker>
 
 
-				<SelectPicker :list="dictOptions" @change="changeSelectDict" v-if="openDict" @close="closeDict"
-					titleKey="dictLabel" subtitleKey="dictValue" v-model="dictLabel"></SelectPicker>
+				<SelectPicker :list="dictOptions" @change="changeSelectDict" v-if="openDict" @close="closeDict" titleKey="dictLabel" subtitleKey="dictValue" v-model="dictLabel"></SelectPicker>
 			</view>
 
 			<view class="background">
 				<view>
 					<view class="uni-list">
-						<view
-							style="font-size: 16px;margin-left: 10px;margin-top: 10px;display: flex; justify-content: space-between;margin-bottom: 10px;">
+						<view style="font-size: 16px;margin-left: 10px;margin-top: 10px;display: flex; justify-content: space-between;margin-bottom: 10px;">
 							{{objValue.enginClassValue}}
 
-							<span
-								style="color: blue;font-size: 14px;  display: flex;justify-content:flex-end; margin-right: 10px;"
-								@click="history">历史</span>
+							<span style="color: blue;font-size: 14px;  display: flex;justify-content:flex-end; margin-right: 10px;" @click="history">{{historyName}}</span>
 						</view>
 						<view class="container" style="border-bottom: 1px solid #f8f8f8;">
 
@@ -106,10 +97,7 @@
 							<view class="uni-common-mt" style="width: 100%;">
 								<text class="uni-title uni-common-pl">施工内容</text>
 								<view style="width: 100%;box-sizing: border-box;">
-									<textarea class="textarea" placeholder="请输入施工内容" maxlength="255"
-										placeholder-style="padding: 10rpx;"
-										style="width: 100%;height: 100%;border: 1rpx solid #cccccc; border-radius: 15rpx;padding: 10rpx;line-height:normal;"
-										auto-height v-model="projectContent"></textarea>
+									<textarea class="textarea" placeholder="请输入施工内容" maxlength="255" placeholder-style="padding: 10rpx;" style="width: 100%;height: 100%;border: 1rpx solid #cccccc; border-radius: 15rpx;padding: 10rpx;line-height:normal;" auto-height v-model="projectContent"></textarea>
 								</view>
 							</view>
 						</view>
@@ -122,21 +110,16 @@
 					<view class="align-items" style="margin-top: 20px;margin-bottom: 20px;">
 						<view class="container" style="color: #b2b2b2;">*请上传照片</view>
 						<view class="" style="display: flex; flex-wrap: wrap;margin-top: 10px; margin-left: 10px;">
-							<image :src="loadImgSrc('updateimg.png')" mode=""
-								style="width: 200rpx; height: 150rpx; margin: 0 12rpx;; " @click="choose()"
-								v-show="reviewStatus!='1'"></image>
+							<image :src="loadImgSrc('updateimg.png')" mode="" style="width: 200rpx; height: 150rpx; margin: 0 12rpx;; " @click="choose()" v-show="reviewStatus!='1'"></image>
 							<view v-for="(item,index) in imgArr" :key="index" style="position: relative;">
-								<view
-									v-if="item.substring(item.length - 3) == 'png' || item.substring(item.length - 3) == 'jpg'||item.substring(item.length-4)=='jpeg' ">
-									<image :src="item" mode="" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;"
-										@click="showPhoto(index)">
+								<view v-if="item.substring(item.length - 3) == 'png' || item.substring(item.length - 3) == 'jpg'||item.substring(item.length-4)=='jpeg' ">
+									<image :src="item" mode="" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;" @click="showPhoto(index)">
 									</image>
 								</view>
 								<view v-else>
 									<video :src="item" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;"></video>
 								</view>
-								<view @click="remove(index)"
-									style="position: absolute; top: 0; right: 14rpx; border-radius: 50%;">
+								<view @click="remove(index)" style="position: absolute; top: 0; right: 14rpx; border-radius: 50%;">
 									<image :src="loadImgSrc('icon_close.png')" style=" width: 15px; height: 15px;">
 									</image>
 								</view>
@@ -146,12 +129,12 @@
 				</view>
 			</view>
 			<view class="action-btn" v-show="reviewStatus!='1'">
-				<button @click="submit" class="btn cu-btn block bg-blue lg round">确认上传</button>
+				<button @click="submit('submit')" class="btn cu-btn block bg-blue lg round">确认上传</button>
+				<button @click="submit('save')" class="btn cu-btn block bg-blue lg round" v-if="objValue.enginType == 'old_renovation'">暂存</button>
 			</view>
 
 			<bottom-sheet ref="refShare" :data="historyList"></bottom-sheet>
-			<yt-dateTimePicker ref="myPicker" @submit="handleSubmit" :start-year="2024" :end-year="2099"
-				:time-hide="[true, true, true, true, true, true]" :time-label="['年', '月', '日', '时', '分', '秒']" />
+			<yt-dateTimePicker ref="myPicker" @submit="handleSubmit" :start-year="2024" :end-year="2099" :time-hide="[true, true, true, true, true, true]" :time-label="['年', '月', '日', '时', '分', '秒']" />
 		</scroll-view>
 	</template>
 
@@ -186,6 +169,8 @@
 			data() {
 
 				return {
+					historyName: '恢复暂存',
+					tempState: '',
 					headers: {
 						Authorization: "Bearer " + getToken()
 					},
@@ -321,7 +306,7 @@
 						current: index,
 						urls: newArr,
 					})
-					
+
 				},
 				remove(index) {
 					uni.showModal({
@@ -638,8 +623,8 @@
 					})
 				},
 				//提交数据
-				submit() {
-
+				submit(e) {
+					this.tempState = e == 'submit' ? '' : '99'
 					if (this.isEmpty(this.projectValue.dictValue)) {
 						this.$modal.msg("请选择工程周期")
 						return
@@ -660,10 +645,10 @@
 						this.$modal.msg('请上传照片或视频')
 						return
 					}
-					if (this.loading == false) {
-						this.$modal.msg('照片或视频未上传完毕,无法提交!')
-						return
-					}
+					// if (this.loading == false) {
+					// 	this.$modal.msg('照片或视频未上传完毕,无法提交!')
+					// 	return
+					// }
 					//提交
 					this.onsubmit();
 
@@ -694,6 +679,7 @@
 						zEngineeringNodeBo: {
 							type: this.objValue.enginClassValue, //写死 上一页面传过来的  (拆旧管等 字典值)
 							zEngineeringInfoBo: {
+								state: this.tempState,
 								//constructAccordingDrawings: this.isCheck, //是否按图纸施工
 								segmentedCompressionQualified: this.isOkValue, // 分段打压是否台格
 								zEngiineeringPhotoBoList: this.imgArr, //照片集合
@@ -733,6 +719,8 @@
 
 				},
 				history() {
+					this.imgArr = [];
+					this.projectContent = '';
 					if (this.isEmpty(this.projectValue.dictValue)) {
 						this.$modal.msg("请选择工程周期")
 						return
@@ -779,7 +767,18 @@
 
 										this.historyList = res.data
 										if (res.data.zEngineeringNodeBo != null) {
-											this.showHistoryList();
+											//this.showHistoryList();
+											if (res.data.zEngineeringNodeBo.reviewStatus == '1') {
+												// this.showHistoryList();
+												this.$modal.msg("当前步骤以审核通过请谨慎!")
+											} else if (res.data.zEngineeringNodeBo.reviewStatus == '99') {
+												let dataJson = res.data.zEngineeringNodeBo.zEngineeringInfoBoList[0];
+												this.projectContent = dataJson.remark;
+												this.imgArr = dataJson.zEngiineeringPhotoBoList;
+												this.time = dataJson.constructTime;
+											} else {
+												this.$modal.msg("暂无暂存信息")
+											}
 										} else {
 											this.$modal.msg("暂无历史信息")
 										}

+ 25 - 38
pages/statistics/historyDetails.vue

@@ -2,8 +2,7 @@
 	<view>
 		<view class="uni-media-list">
 			<view class="uni-media-list-body">
-				<view v-for="(value, key) in dataJson.zEngineeringNodeBo.zEngineeringInfoBoList" :key="key"
-					v-if="isEdit(value)">
+				<view v-for="(value, key) in dataJson.zEngineeringNodeBo.zEngineeringInfoBoList" :key="key" v-if="isEdit(value)">
 					<view class="uni-media-list-text-top">
 						<view class="tit-text">施工时间:</view>{{value.updateTime}}
 					</view>
@@ -18,10 +17,10 @@
 					<view class="uni-media-list-text-top" v-if="title=='拆旧管'">
 						<view class="tit-text">腐蚀等级:</view>
 						<view @click="pickerShow('fsdj',key)">
-							{{getSelectName(value.zEngineeringMaterialBo[0].corrosionLevel)}}
+							{{value.zEngineeringMaterialBo.length>0?getSelectName(value.zEngineeringMaterialBo[0].corrosionLevel):'请选择腐蚀等级'}}
 						</view>
 					</view>
-				<!-- 	<view class="uni-media-list-text-top" v-if="title=='打孔'">
+					<!-- 	<view class="uni-media-list-text-top" v-if="title=='打孔'">
 						<view class="tit-text">孔距:</view>
 						<view @click="pickerShow('kj',key)">
 							
@@ -48,8 +47,7 @@
 							</view>
 
 							<view class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('cz',key)">
-								<span
-									style="color: black;">{{value.zEngineeringMaterialBo[0].materialQualityName}}</span>
+								<span style="color: black;">{{value.zEngineeringMaterialBo[0].materialQualityName}}</span>
 
 							</view>
 						</view>
@@ -60,24 +58,17 @@
 							</view>
 
 							<view class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('gg',key)">
-								<span
-									style="color: black;">{{value.zEngineeringMaterialBo[0].specificationsName==''?'请选择规格':value.zEngineeringMaterialBo[0].specificationsName}}</span>
+								<span style="color: black;">{{value.zEngineeringMaterialBo[0].specificationsName==''?'请选择规格':value.zEngineeringMaterialBo[0].specificationsName}}</span>
 
 							</view>
 						</view>
 						<view class="uni-media-list-text-top" style="border-bottom: 1px solid #f8f8f8;">
 							<text class="tit-text">米 数</text>
 							<view style="display: flex; justify-content: right; width: 70%;">
-								<input class="uni-input" type="number"
-									:value="getIntegerPart(value.zEngineeringMaterialBo[0].number,0)"
-									@change="setInfoBoNumber(key,$event.target.value,0)" maxlength="6"
-									style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx;"></input>
+								<input class="uni-input" type="number" :value="getIntegerPart(value.zEngineeringMaterialBo[0].number,0)" @change="setInfoBoNumber(key,$event.target.value,0)" maxlength="6" style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx;"></input>
 								<text style="font-weight:bold;margin-left: 10px;margin-right: 10px;">.</text>
 
-								<input class="uni-input" type="number"
-									:value="getIntegerPart(value.zEngineeringMaterialBo[0].number,1)"
-									@change="setInfoBoNumber(key,$event.target.value,1)" maxlength="1"
-									style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx;"></input>
+								<input class="uni-input" type="number" :value="getIntegerPart(value.zEngineeringMaterialBo[0].number,1)" @change="setInfoBoNumber(key,$event.target.value,1)" maxlength="1" style="text-align: center; border: 1px solid #00aaff; border-radius: 20rpx;"></input>
 							</view>
 						</view>
 					</view>
@@ -102,8 +93,7 @@
 							</view>
 
 							<view class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('zbf',key)">
-								<span
-									style="color: black;">{{getSelectZBFName(value.zEngineeringMaterialBo[0].selfClosingValveType)}}</span>
+								<span style="color: black;">{{getSelectZBFName(value.zEngineeringMaterialBo[0].selfClosingValveType)}}</span>
 
 							</view>
 						</view>
@@ -114,8 +104,7 @@
 							</view>
 
 							<view class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('cz',key)">
-								<span
-									style="color: black;">{{value.zEngineeringMaterialBo[0].materialQualityName}}</span>
+								<span style="color: black;">{{value.zEngineeringMaterialBo[0].materialQualityName}}</span>
 
 							</view>
 						</view>
@@ -126,30 +115,24 @@
 							</view>
 
 							<view class="uni-list-cell-db" style="margin-top: 10;" @click="pickerShow('gg',key)">
-								<span
-									style="color: black;">{{value.zEngineeringMaterialBo[0].specificationsName==''?'请选择规格':value.zEngineeringMaterialBo[0].specificationsName}}</span>
+								<span style="color: black;">{{value.zEngineeringMaterialBo[0].specificationsName==''?'请选择规格':value.zEngineeringMaterialBo[0].specificationsName}}</span>
 
 							</view>
 						</view>
 					</view>
 
 					<view class="" style="display: flex; flex-wrap: wrap;margin-top: 10px; margin-left: 10px;">
-						<image :src="loadImgSrc('updateimg.png')" mode=""
-							style="width: 200rpx; height: 150rpx; margin: 0 12rpx;; " @click="choose(key)">
+						<image :src="loadImgSrc('updateimg.png')" mode="" style="width: 200rpx; height: 150rpx; margin: 0 12rpx;; " @click="choose(key)">
 						</image>
-						<view v-for="(item,index) in  value.zEngiineeringPhotoBoList" :key="index"
-							style="position: relative;">
-							<view
-								v-if="item.substring(item.length - 3) == 'png' || item.substring(item.length - 3) == 'jpg'||item.substring(item.length-4)=='jpeg' ">
-								<image :src="item" mode="" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;"
-									@click="showPhoto(index,value.zEngiineeringPhotoBoList)">
+						<view v-for="(item,index) in  value.zEngiineeringPhotoBoList" :key="index" style="position: relative;">
+							<view v-if="item.substring(item.length - 3) == 'png' || item.substring(item.length - 3) == 'jpg'||item.substring(item.length-4)=='jpeg' ">
+								<image :src="item" mode="" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;" @click="showPhoto(index,value.zEngiineeringPhotoBoList)">
 								</image>
 							</view>
 							<view v-else>
 								<video :src="item" style="width: 200rpx; height: 200rpx; margin: 0 12rpx;"></video>
 							</view>
-							<view @click="remove(index,key)"
-								style="position: absolute; top: 0; right: 14rpx; border-radius: 50%;">
+							<view @click="remove(index,key)" style="position: absolute; top: 0; right: 14rpx; border-radius: 50%;">
 								<image :src="loadImgSrc('icon_close.png')" style=" width: 15px; height: 15px;">
 								</image>
 							</view>
@@ -159,11 +142,9 @@
 				</view>
 			</view>
 		</view>
-		<SelectPicker :list="selectList" @change="changeSelect" v-if="open" @close="close" titleKey="name"
-			subtitleKey="id">
+		<SelectPicker :list="selectList" @change="changeSelect" v-if="open" @close="close" titleKey="name" subtitleKey="id">
 		</SelectPicker>
-		<SelectPicker :list="dictOptions" @change="changeSelectDict" v-if="openDict" @close="closeDict"
-			titleKey="dictLabel" subtitleKey="dictValue" v-model="name"></SelectPicker>
+		<SelectPicker :list="dictOptions" @change="changeSelectDict" v-if="openDict" @close="closeDict" titleKey="dictLabel" subtitleKey="dictValue" v-model="name"></SelectPicker>
 		<view class="action-btn" v-if="hideButton==false">
 			<button @click="submit" class="btn cu-btn block bg-blue lg round">确认</button>
 		</view>
@@ -536,8 +517,14 @@
 			changeSelect(item, index) {
 				this.open = false;
 				if (this.chooseType == 'fsdj' || this.chooseType == 'kj') {
-					this.dataJson.zEngineeringNodeBo.zEngineeringInfoBoList[this.dataIndex].zEngineeringMaterialBo[0]
-						.corrosionLevel = item.id;
+					if (this.dataJson.zEngineeringNodeBo.zEngineeringInfoBoList[this.dataIndex].zEngineeringMaterialBo.length > 0) {
+						this.dataJson.zEngineeringNodeBo.zEngineeringInfoBoList[this.dataIndex].zEngineeringMaterialBo[0]
+							.corrosionLevel = item.id;
+					} else {
+						this.dataJson.zEngineeringNodeBo.zEngineeringInfoBoList[this.dataIndex].zEngineeringMaterialBo.push({
+							corrosionLevel: item.id
+						});
+					}
 				} else if (this.chooseType == 'cz') {
 					this.dataJson.zEngineeringNodeBo.zEngineeringInfoBoList[this.dataIndex].zEngineeringMaterialBo[0]
 						.materialQuality = item.id;