htc 1 month ago
parent
commit
7c81f3c3af

+ 12 - 20
pages/operation/index.vue

@@ -7,11 +7,11 @@
 				<div class="top">
 					<div class="left">
 						<p>本月巡检次数</p>
-						<p>{{xjData.abnormalNum}}/{{xjData.normalNum}}</p>
+						<p>{{xjData.abnormalNum||0}}/{{xjData.normalNum||0}}</p>
 					</div>
 					<div class="right">
-						<p>异常:<span>{{xjData.abnormalNum}}</span></p>
-						<p>正常:<span>{{xjData.normalNum}}</span></p>
+						<p>异常:<span>{{xjData.abnormalNum||0}}</span></p>
+						<p>正常:<span>{{xjData.normalNum||0}}</span></p>
 					</div>
 				</div>
 				<div class="bottom">
@@ -22,11 +22,11 @@
 				<div class="top">
 					<div class="left">
 						<p>故障工单</p>
-						<p>{{gzData.normalNum}}/{{gzData.abnormalNum}}</p>
+						<p>{{gzData.normalNum||0}}/{{gzData.abnormalNum||0}}</p>
 					</div>
 					<div class="right">
-						<p>已解决:<span>{{gzData.normalNum}}</span></p>
-						<p>未解决:<span>{{gzData.abnormalNum}}</span></p>
+						<p>已解决:<span>{{gzData.normalNum||0}}</span></p>
+						<p>未解决:<span>{{gzData.abnormalNum||0}}</span></p>
 					</div>
 				</div>
 				<div class="bottom">
@@ -65,7 +65,7 @@
 					<div class="left">
 						<div class="name">{{item.customer||''}}</div>
 						<p>故障类型<span>{{item.typeName}}</span></p>
-						<p>故障描述<span>{{item.description||''}}</span></p>
+						<p>故障描述<span>{{item.repairDesc||''}}</span></p>
 						<p>故障时间<span>{{item.happenDate||''}}</span></p>
 					</div>
 					<div class="right">
@@ -75,7 +75,7 @@
 				</div>
 			</div>
 			<template v-else>
-				<page-empty :height="'calc(100vh - 200px)'"></page-empty>
+				<page-empty :height="'calc(100vh - 450px)'"></page-empty>
 			</template>
 		</div>
 	</view>
@@ -99,11 +99,6 @@
 				},
 				xjWidth:0,
 				gzWidth:0,
-				isOver:false,
-				params:{
-					page:1,
-					limit:2
-				},
 				dataList:[],
 				typeList:[],
 			}
@@ -144,13 +139,10 @@
 			getDataList(){
 				this.$api.get('/wms/order/operation/page',{page:1,limit:2}).then(res=>{
 					if(res.data.code===0){
-						if(this.dataList.length<res.data.data.total){
-							this.params.page++;
-							this.dataList = [...this.dataList,...res.data.data.list];
-							this.dataList.forEach(d=>{
-								d.typeName = this.typeList.find(t=>t.dictValue==d.optCategory)?.dictLabel;
-							})
-						}else this.isOver = true
+						this.dataList = res.data.data.list;
+						this.dataList.forEach(d=>{
+							d.typeName = this.typeList.find(t=>t.dictValue==d.optCategory)?.dictLabel;
+						})
 					}else this.$showModal(res.data.msg)
 				});
 			},

+ 11 - 7
pagesOperation/record/add.vue

@@ -62,8 +62,7 @@
 							:fileList="fileList"
 						    @afterRead="afterRead"
 						    @delete="deletePic"
-						    multiple
-						    :maxCount="5"
+						    :maxCount="1"
 						></u-upload>
 					</div>
 				</div>
@@ -200,9 +199,13 @@
 					  user: "test",
 					},
 					success: (res) => {
-					  setTimeout(() => {
-						resolve(res.data.data);
-					  }, 1000);
+						let data = JSON.parse(res.data);
+						if(data){
+							if(data.code!==0) return
+							setTimeout(() => {
+								resolve(data.data);
+							}, 1000);
+						}
 					},
 				  });
 				});
@@ -212,8 +215,9 @@
 				if(idx>-1) return this.$showToast(this.rules[idx].tip)
 				
 				let dto = JSON.parse(JSON.stringify(this.dto))
-				this.dto.startDate = new Date(dto.startDate).Format('yyyy-MM-dd hh:mm:ss');
-				this.$api.post('/wms/order/inspection',this.dto).then(res=>{
+				dto.startDate = new Date(dto.startDate).Format('yyyy-MM-dd hh:mm:ss');
+				dto.inspectionFile = this.fileList[0].url;
+				this.$api.post('/wms/order/inspection',dto).then(res=>{
 					if(res.data.code!==0) return this.$showToast(res.data.msg)
 					this.$showToast('操作成功')
 					setTimeout(()=>{

+ 5 - 7
pagesOperation/record/detail.vue

@@ -31,16 +31,14 @@
 				</div>
 				<div class="box_item2">
 					<div class="top">备注</div>
-					<div class="bottom">{{dto.remark||''}}</div>
+					<div class="bottom2">{{dto.remark||''}}</div>
 				</div>
 			</div>
 			<div class="box">
 				<div class="box_item2">
 					<div class="top">巡检打卡</div>
-					<div class="bottom">
-						<div class="imgs" v-if="imgList.length">
-							<image :src="img" v-for="(img,idx) in imgList" :key="idx"></image>
-						</div>
+					<div class="bottom2">
+						<image :src="dto.inspectionFile" v-if="dto.inspectionFile" style="width: 180rpx;height: 180rpx;"></image>
 					</div>
 				</div>
 			</div>
@@ -84,7 +82,6 @@
 					this.dto = res.data.data;
 					this.dto.startDate2 = new Date(this.dto.startDate).Format('yyyy-MM-dd');
 					this.dto.orderNo2 = this.projectList.find(p=>p.id==this.dto.orderId)?.orderNo||'';
-					this.imgList = this.dto.inspectionFile.split(',');
 				})
 			},
 			back(){
@@ -140,12 +137,13 @@
 				line-height: 42rpx;
 				padding: 24rpx 0;
 			}
-			.bottom{
+			.bottom2{
 				font-family: PingFangSC, PingFang SC;
 				font-weight: 400;
 				font-size: 28rpx;
 				color: #4E5969;
 				line-height: 40rpx;
+				padding-bottom: 20rpx;
 			}
 		}
 		

+ 20 - 13
pagesOperation/repair/index.vue

@@ -50,13 +50,13 @@
 				<div class="box_item">
 					<div class="left">报修人员</div>
 					<div class="right">
-						<input type="text" placeholder="请输入报修人员"  placeholder-class="inp_ph" v-model="dto.maintainer">
+						<input type="text" placeholder="请输入报修人员"  placeholder-class="inp_ph" v-model="dto.optUser">
 					</div>
 				</div>
 				<div class="box_item2">
 					<div class="top">故障描述</div>
 					<div class="bottom">
-						<u--textarea v-model="dto.description" placeholder="故障描述" placeholder-class="inp_ph2" border="none" height="110"></u--textarea>
+						<u--textarea v-model="dto.repairDesc" placeholder="故障描述" placeholder-class="inp_ph2" border="none" height="110"></u--textarea>
 					</div>
 				</div>
 			</div>
@@ -106,9 +106,10 @@
 					serialnumber:'',
 					happenDate:'',
 					optCategory:'',
-					maintainer:'',
-					description:'',
-					faultFile:''
+					optUser:'',
+					repairDesc:'',
+					faultFile:'',
+					status:0
 				},
 				fileList:[],
 				orderNoText:'请选择项目订单号',
@@ -139,14 +140,14 @@
 					{key:'serialnumber',tip:'请选择产品编号'},
 					{key:'happenDate',tip:'请选择故障发生时间'},
 					{key:'optCategory',tip:'请选择故障类型'},
-					{key:'maintainer',tip:'请输入报修人员'},
-					{key:'description',tip:'请输入故障描述'}
+					{key:'optUser',tip:'请输入报修人员'},
+					{key:'repairDesc',tip:'请输入故障描述'}
 				]
 			}
 		},
 		onLoad() {
 			let d = new Date();
-			this.minDate = new Date(d.getFullYear()-3,d.getMonth()+1,d.getDate()).getTime();
+			this.minDate = new Date(d.getFullYear()-1,d.getMonth()+1,d.getDate()).getTime();
 			this.maxDate = new Date().getTime();
 			this.getOrderList();
 			this.getCustomerList();
@@ -245,9 +246,13 @@
 					  user: "test",
 					},
 					success: (res) => {
-					  setTimeout(() => {
-						resolve(res.data.data);
-					  }, 1000);
+						let data = JSON.parse(res.data);
+						if(data){
+							if(data.code!==0) return
+							setTimeout(() => {
+								resolve(data.data);
+							}, 1000);
+						}
 					},
 				  });
 				});
@@ -257,8 +262,10 @@
 				if(idx>-1) return this.$showToast(this.rules[idx].tip)
 				
 				let dto = JSON.parse(JSON.stringify(this.dto))
-				this.dto.happenDate = new Date(dto.happenDate).Format('yyyy-MM-dd');
-				this.$api.post('/wms/order/operation',this.dto).then(res=>{
+				dto.happenDate = new Date(dto.happenDate).Format('yyyy-MM-dd');
+				let file = this.fileList.map(f=>f.url);
+				dto.faultFile = file.join(';')
+				this.$api.post('/wms/order/operation',dto).then(res=>{
 					if(res.data.code!==0) return this.$showToast(res.data.msg)
 					this.$showToast('报修成功')
 					setTimeout(()=>{

+ 10 - 10
pagesOperation/workorder/detail.vue

@@ -32,7 +32,7 @@
 			</div>
 			<div class="bs_item">
 				<div class="left">报修人员</div>
-				<div class="right">{{dto.maintainer||''}}</div>
+				<div class="right">{{dto.optUser||''}}</div>
 			</div>
 			<div class="bs_item">
 				<div class="left">报修时间</div>
@@ -40,18 +40,18 @@
 			</div>
 			<div class="bs_item">
 				<div class="left">故障描述</div>
-				<div class="right">{{dto.description||''}}</div>
+				<div class="right">{{dto.repairDesc||''}}</div>
 			</div>
 		</div>
 		<div class="box">
 			<div class="b_title">故障照片</div>
 			<div style="padding-top: 24rpx;">
-				<template v-if="yjj">
+				<!-- <template v-if="yjj"> -->
 					<div class="imgs">
 						<image :src="img" v-for="(img,idx) in imgList" :key="idx"></image>
 					</div>
-				</template>
-				<template v-else>
+				<!-- </template> -->
+				<!-- <template v-else>
 					<u-upload width="180" height="180"
 						:fileList="fileList"
 						@afterRead="afterRead"
@@ -59,7 +59,7 @@
 						multiple
 						:maxCount="5"
 					></u-upload>
-				</template>
+				</template> -->
 			</div>
 		</div>
 		<div class="box">
@@ -113,10 +113,10 @@
 				<div class="left">维修人员</div>
 				<div class="right">
 					<template v-if="yjj">
-						{{dto.optUser||""}}
+						{{dto.maintainer||""}}
 					</template>
 					<template v-else>
-						<input type="text" placeholder="请输入维修人员"  placeholder-class="inp_ph" v-model="dto.optUser">
+						<input type="text" placeholder="请输入维修人员"  placeholder-class="inp_ph" v-model="dto.maintainer">
 					</template>
 				</div>
 			</div>
@@ -165,7 +165,7 @@
 					{key:'faultCause',tip:'请输入故障原因'},
 					{key:'repairStartTime',tip:'请选择维修开始时间'},
 					{key:'repairEndTime',tip:'请选择维修结束时间'},
-					{key:'optUser',tip:'请输入维修人员'},
+					{key:'maintainer',tip:'请输入维修人员'},
 					{key:'remark',tip:'请输入维修描述'}
 				]
 			}
@@ -208,7 +208,7 @@
 					this.dto = res.data.data;
 					this.dto.orderNo2 = this.projectList.find(p=>p.id==this.dto.orderId)?.orderNo||'';
 					this.dto.typeName = this.typeList.find(t=>t.dictValue==this.dto.optCategory)?.dictLabel||'';
-					this.imgList = this.dto.faultFile.split(',');
+					this.imgList = this.dto.faultFile.split(';');
 					this.yjj = this.dto.status==1?true:false;
 				})
 			},

+ 1 - 1
pagesOperation/workorder/index.vue

@@ -25,7 +25,7 @@
 				<div class="left">
 					<div class="name">{{item.customer||''}}</div>
 					<p>故障类型<span>{{item.typeName}}</span></p>
-					<p>故障描述<span>{{item.description||''}}</span></p>
+					<p>故障描述<span>{{item.repairDesc||''}}</span></p>
 					<p>故障时间<span>{{item.happenDate||''}}</span></p>
 				</div>
 				<div class="right">