From 0eab6dcc163bec041d44bc27c9c89ef9c6ec988d Mon Sep 17 00:00:00 2001
From: yangan <yangan0921@163.com>
Date: 星期四, 26 九月 2024 17:17:39 +0800
Subject: [PATCH] feat:确认装卸bug提交

---
 pages/driver-page/delivery-my/delivery-my/delivery-my.vue |  501 +++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 459 insertions(+), 42 deletions(-)

diff --git a/pages/driver-page/delivery-my/delivery-my/delivery-my.vue b/pages/driver-page/delivery-my/delivery-my/delivery-my.vue
index 2700f33..b5f8841 100644
--- a/pages/driver-page/delivery-my/delivery-my/delivery-my.vue
+++ b/pages/driver-page/delivery-my/delivery-my/delivery-my.vue
@@ -35,14 +35,100 @@
 					label="杞︾墝鍙�"
 					labelWidth="20%"
 					borderBottom
-					required>
+					>
 					<u--input v-model="registerFormModel.carNo"
 						placeholder="璇疯緭鍏ュ唴瀹�"
 						clearable></u--input>
 				</u-form-item>
+				<u-form-item prop="skin"
+					label="鐨噸"
+					labelWidth="20%"
+					borderBottom
+					required v-if="daydata.isWeighing==1">
+					<u--input v-model="skin"
+					border="surround"
+						placeholder="璇疯緭鍏ョ毊閲�"
+						clearable></u--input>
+				</u-form-item>
+				<u-form-item prop="hair"
+					label="姣涢噸"
+					labelWidth="20%"
+					borderBottom
+					required v-if="daydata.isWeighing==1">
+					<u--input v-model="hair"
+					border="surround"
+						placeholder="璇疯緭鍏ユ瘺閲�"
+						clearable></u--input>
+				</u-form-item>
+				<u-form-item prop="clean"
+					label="鍑�閲�"
+					labelWidth="20%"
+					borderBottom
+					required v-if="daydata.isWeighing==1">
+					<u--input v-model="clean"
+					border="surround"
+					disabled
+						placeholder="璇疯緭鍏ュ噣閲�"
+						clearable></u--input>
+				</u-form-item>
+				<uni-table
+				 border 
+				id="table-box"
+				emptyText="鏆傛棤鏇村鏁版嵁" v-if="daydata.isWeighing==0">
+						<uni-tr>
+							<uni-th align="center" >浜у搧</uni-th>
+							<uni-th align="center">鏁伴噺</uni-th>			
+						</uni-tr>
+						<uni-tr v-for="(subItem, index) in tmTaskCoalList" :key="index">
+							<uni-td align="center">
+								<view class="name">{{ subItem.productName }}</view></uni-td>
+					聽   <uni-td align="right">
+						<view>
+						<u--input
+						placeholder="璇疯緭鍏ヤ骇鍝佹暟閲�"
+						type='number'
+						v-model="subItem.productQuantity"
+						></u--input>
+						</view></uni-td>
+					</uni-tr>
+					</uni-table>
+					<u-form-item prop='contactPicture'>
+						<view class="label-text">
+							鍘熷彂鍗曟嵁
+						</view>
+						<u-upload :fileList="fileList1"
+							@afterRead="afterRead"
+							@delete="deletePic"
+							name="1"
+							multiple
+							:maxCount="2"
+							width="250"
+							height="150"
+							:previewFullImage="true"
+							></u-upload>
+					</u-form-item>
+				<!-- <u-form-item labelWidth="20%"
+					label="绌鸿溅鍑哄巶"
+					borderBottom
+					ref="roleRef"
+					required>
+					<u-radio-group v-model="registerFormModel.isEmptyCar"
+						placement="row"
+						size="30"
+						shape="circle"
+						iconSize="20">
+						<u-radio labelSize="14px"
+							size="20px"
+							v-for="(item, index) in radiolist1"
+							:key="index"
+							:label="item.name"
+							:name="item.value"
+							></u-radio>
+					</u-radio-group>
+				</u-form-item> -->
 			</u--form>
 		</view>
-		<view class="history-numbers">
+		<!-- <view class="history-numbers">
 			<scroll-view :scroll-top="scrollTop"
 				scroll-y="true"
 				class="scroll-Y"
@@ -73,7 +159,7 @@
 					<view class="fourth">
 						<view class="fourth-icon">
 							<view
-								style="width: 24rpx;height: 24rpx;line-height: 24rpx;background: url('https://mx.jzeg.cn:9096/appimg/image/banner/clock.png') no-repeat;background-size: cover">
+								style="width: 24rpx;height: 24rpx;line-height: 24rpx;background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/clock.png') no-repeat;background-size: cover">
 							</view>
 						</view>
 						<view class="senddate">{{ daydata.sendDate }}</view>
@@ -81,14 +167,14 @@
 					<view class="fourth">
 						<view class="fourth-icon">
 							<view
-								style="width: 26rpx;height: 26rpx;line-height: 26rpx;background: url('https://mx.jzeg.cn:9096/appimg/image/banner/carnNUm.png') no-repeat;background-size: cover;">
+								style="width: 26rpx;height: 26rpx;line-height: 26rpx;background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/carnNUm.png') no-repeat;background-size: cover;">
 							</view>
 						</view>
 						<view class="senddate">{{ daydata.orderCode }}</view>
 					</view>
 				</view>
-					</scroll-view>
-				</view>
+			</scroll-view>
+		</view> -->
 		<combined-title
 			:title="yuYueData.length != 0 ? yuYueData[0].filedName + '鈥斺��' + yuYueData[0].sendDate : '鏆傛棤棰勭害鍒楄〃'"></combined-title>
 		<view class="appointment-table">
@@ -113,12 +199,22 @@
 				</uni-tr>
 			</uni-table>
 		</view>
+		<view class="logoutModel">
+			<u-modal :show="logoutShow"
+				:title="logoutTitle"
+				showCancelButton
+				:content="logoutContent"
+				@confirm="logoutConfirm"
+				@cancel="logoutCancel"></u-modal>
+		</view>
 	</view>
 </template>
 
 <script>
 	import { apiRegister } from '@/api/publicInterface.js';
 	import { mapMutations } from 'vuex';
+	import { BaseUrl } from '@/api/publicInterface.js';
+	import BigNumber from "bignumber.js"
 	export default {
 		// 鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚銆傛敞鎰忓鏋滄覆鏌撻�熷害蹇紝浼氬湪椤甸潰杩涘叆鍔ㄧ敾瀹屾垚鍓嶈Е鍙�
 		onReady() {
@@ -129,6 +225,7 @@
 			if (params.id) {
 			  this.id = params.id
 			}
+			this.fileList1 = []
 			this.GetMyDelivery()
 			uni.getStorage({
 			    key: 'myDelivery',
@@ -136,23 +233,49 @@
 			        Object.assign(that.registerFormModel, res.data)
 			    }
 			});
+			uni.getStorage({
+			    key: 'isshow',
+			    success: function (res) {
+					that.isshow=res.data
+			    }
+			});
+			this.ids=null
 		},
 		data() {
 			return {
+				ids:null,
+				logoutShow: false,
+				logoutTitle: '鎻愮ず',
+				logoutContent: '鍏ュ満闇�瑕佹壂鎻忚溅鐗岀収鍜屽埛韬唤璇佸叆鍦猴紝璇锋惡甯﹁韩浠借瘉鍘熶欢',
+				isshow:true,
 				scrollTop: 0,
 				id:"",
 				value: 0,
 				daydata:{},
+				tmTaskCoalList:[],
 				range: [{"value": 0,"label": "鍚�"	},{"value": 1,"label": "鏄�"}],
 				carNumShow: false,
 				yuYueData: [],
+				fileList1: [], //鍥剧墖鍒楄〃
+				contactPicture:"",
 				registerFormModel: {
 					phone: '',
 					driver: '',
 					idNumber: '',
 					carNo: '',
 				},
+				skin:"",
+				hair:"",
 				TableData:[],
+				radiolist1: [{
+						name: '鍚�',
+						value:"0"
+					},
+					{
+						name: '鏄�',
+						value:"1"
+					}
+				],
 				rules: {
 					driver: [{
 						type: 'string',
@@ -196,56 +319,349 @@
 							trigger: ['change', 'blur']
 						}
 					],
-					carNo: [{
+					idNumber: [{
 							type: 'string',
 							required: true,
-							message: '璇疯緭鍏ヨ溅鐗屽彿',
+							message: '璇疯緭鍏ヨ韩浠借瘉鍙�',
 							trigger: ['blur', 'change']
-						},
-						{
-							transform(value) {
-								return String(value);
-							},
-							validator: (rule, value, callback) => {
-								return uni.$u.test.carNo(value);
-							},
-							message: '璇疯緭鍏ユ纭殑杞︾墝鍙�',
-							trigger: ['change', 'blur']
 						}
 					],
+					// carNo: [{
+					// 		type: 'string',
+					// 		required: true,
+					// 		message: '璇疯緭鍏ヨ溅鐗屽彿',
+					// 		trigger: ['blur', 'change']
+					// 	},
+					// 	{
+					// 		transform(value) {
+					// 			return String(value);
+					// 		},
+					// 		validator: (rule, value, callback) => {
+					// 			return uni.$u.test.carNo(value);
+					// 		},
+					// 		message: '璇疯緭鍏ユ纭殑杞︾墝鍙�',
+					// 		trigger: ['change', 'blur']
+					// 	}
+					// ],
 				},
 			};
 		},
+		computed:{
+			clean() {
+				if(this.daydata.isWeighing==1){
+				let xx = BigNumber(this.hair ? this.hair : 0)
+				let yy = BigNumber(this.skin ? this.skin : 0)
+				return xx.minus(yy).toNumber() > 0 ? xx.minus(yy).toNumber().toFixed(2) : 0
+				}else{
+					//鏁伴噺
+					if(!this.tmTaskCoalList.length){
+						return false
+					}else{
+						const reslut = this.tmTaskCoalList.find(item=>!item.productQuantity);
+						if(reslut){
+							return false
+						}else{
+							return true
+						}
+					}
+				}
+			}
+		},
 		methods: {
 			...mapMutations(['changeisUploadimg']),
+			// input鑱氱劍
+			inputFocus(v) {
+				if (v == 1) {
+					this.isfocus1 = true;
+				} else {
+					this.isfocus2 = true;
+				}
+			},
+			// input澶辩劍
+			inputBlur() {
+				this.isfocus1 = false;
+				this.isfocus2 = false;
+			},
+			inputChange() {
+				if (Number(this.originInfoForm.coalContactHair) > 0 && Number(this.originInfoForm.coalContactSkin >
+						0)) {
+					this.isInputOrigin = true;
+				}
+			},
+			deletePic(event) {
+				this.changeisUploadimg(true);
+				this[`fileList${event.name}`].splice(event.index, 1);
+			},
+			async afterRead(event) {
+				// 褰撹缃� mutiple 涓� true 鏃�, file 涓烘暟缁勬牸寮忥紝鍚﹀垯涓哄璞℃牸寮�
+				let lists = [].concat(event.file);
+				let fileListLen = this[`fileList${event.name}`].length;
+				lists.map(item => {
+					this[`fileList${event.name}`].push({
+						...item,
+						status: 'uploading',
+						message: '涓婁紶涓�'
+					});
+				});
+				for (let i = 0; i < lists.length; i++) {
+					const result = await this.uploadFilePromise(lists[i].url, event.name);
+					let item = this[`fileList${event.name}`][fileListLen];
+					this[`fileList${event.name}`].splice(
+						fileListLen,
+						1,
+						Object.assign(item, {
+							status: 'success',
+							message: '涓婁紶鎴愬姛',
+							url: result
+						})
+					);
+					fileListLen++;
+				}
+			},
+			uploadFilePromise(url, num) {
+				return new Promise((resolve, reject) => {
+					let a = uni.uploadFile({
+						url: BaseUrl + '/admin/sys-file/uploadUnToken',
+						filePath: url,
+						name: 'file',
+						success: res => {
+							if (num == 1) {
+								this.contactPicture = JSON.parse(res.data)
+									.data.url;
+								resolve(`${BaseUrl}${JSON.parse(res.data).data.url}`);
+							}
+						}
+					});
+				});
+			},
+			logoutConfirm() {
+				this.$refs.regesterFormRef.validate().then(res => {
+				if(this.daydata.orderType=='澶栬喘'){
+					if(this.daydata.isWeighing==1){
+						this.$reqPost('saveMyDelivery',{
+							productName:this.daydata.productName,
+							customerId:this.daydata.customerId,
+							deptId:this.daydata.deptId,
+							filedId:this.daydata.filedId,
+							orderPlanId:this.daydata.id,
+							orderTye:this.daydata.orderType,
+							sendDate:this.daydata.sendDate,
+							carNumSurplus:this.daydata.carNumSurplus,
+							yyId:this.ids.id,
+							...this.registerFormModel,
+							tmTaskCoalContact:{
+								coalName:this.daydata.productName,
+								contactPicture:this.contactPicture,
+								skin:this.skin,
+								hair:this.hair,
+								clean:this.clean
+							}
+						}, 'json').then(res => {
+							uni.setStorage({
+							    key: 'myDelivery',
+							    data: this.registerFormModel,
+							});
+							uni.setStorage({
+							    key: 'isshow',
+							    data: false,
+							});
+							this.logoutShow=false
+							this.isshow=false
+							if (res.code === 0) {
+								uni.$u.toast('棰勭害鎴愬姛')
+								this.GetMyDeliverys()
+							} else {
+								uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+							}
+						})
+					}else{
+						let numDtoList=this.tmTaskCoalList.map(item=>{
+							return {tmId:item.productId,num:item.productQuantity,coalName:item.coalName}
+						})
+						this.$reqPost('saveMyDelivery',{
+							productName:this.daydata.productName,
+							customerId:this.daydata.customerId,
+							deptId:this.daydata.deptId,
+							filedId:this.daydata.filedId,
+							orderPlanId:this.daydata.id,
+							orderTye:this.daydata.orderType,
+							sendDate:this.daydata.sendDate,
+							carNumSurplus:this.daydata.carNumSurplus,
+							yyId:this.ids.id,
+							...this.registerFormModel,
+							tmTaskCoalContact:{								
+								contactPicture:this.contactPicture,
+								numDtoList:numDtoList
+							}
+						}, 'json').then(res => {
+							uni.setStorage({
+							    key: 'myDelivery',
+							    data: this.registerFormModel,
+							});
+							uni.setStorage({
+							    key: 'isshow',
+							    data: false,
+							});
+							this.logoutShow=false
+							this.isshow=false
+							if (res.code === 0) {
+								uni.$u.toast('棰勭害鎴愬姛')
+								this.GetMyDeliverys()
+							} else {
+								uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+							}
+						})
+					}
+					
+				}else{
+					this.$reqPost('saveMyDelivery',{
+						productName:this.daydata.productName,
+						customerId:this.daydata.customerId,
+						deptId:this.daydata.deptId,
+						filedId:this.daydata.filedId,
+						orderPlanId:this.daydata.id,
+						orderTye:this.daydata.orderType,
+						sendDate:this.daydata.sendDate,
+						carNumSurplus:this.daydata.carNumSurplus,
+						yyId:this.ids.id,
+						...this.registerFormModel
+					}, 'json').then(res => {
+						uni.setStorage({
+						    key: 'myDelivery',
+						    data: this.registerFormModel,
+						});
+						uni.setStorage({
+						    key: 'isshow',
+						    data: false,
+						});
+						this.logoutShow=false
+						this.isshow=false
+						if (res.code === 0) {
+							uni.$u.toast('棰勭害鎴愬姛')
+							this.GetMyDeliverys()
+						} else {
+							uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+						}
+					})
+				}
+				})
+			},
+			logoutCancel() {
+				this.logoutShow = false;
+			},
 			yuYueBtnClick(item){
 				this.$refs.regesterFormRef.validate().then(res => {
-				this.$reqPost('saveMyDelivery',{
-					productName:this.daydata.productName,
-					customerId:this.daydata.customerId,
-					deptId:this.daydata.deptId,
-					filedId:this.daydata.filedId,
-					orderPlanId:this.daydata.id,
-					orderTye:this.daydata.orderType,
-					sendDate:this.daydata.sendDate,
-					carNumSurplus:this.daydata.carNumSurplus,
-					yyId:item.id,
-					...this.registerFormModel
-				}, 'json').then(res => {
-					uni.setStorage({
-					    key: 'myDelivery',
-					    data: this.registerFormModel,
-					});
-					if (res.code === 0) {
-						uni.$u.toast('棰勭害鎴愬姛')
-						this.GetMyDelivery()
-					} else {
-						uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+					if(this.isshow){
+						this.logoutShow = true;
+						this.ids=item
+					}else{
+						if(this.daydata.orderType=='澶栬喘'){
+							if(this.daydata.isWeighing==1){
+								this.$reqPost('saveMyDelivery',{
+									productName:this.daydata.productName,
+									customerId:this.daydata.customerId,
+									deptId:this.daydata.deptId,
+									filedId:this.daydata.filedId,
+									orderPlanId:this.daydata.id,
+									orderTye:this.daydata.orderType,
+									sendDate:this.daydata.sendDate,
+									carNumSurplus:this.daydata.carNumSurplus,
+									yyId:item.id,
+									...this.registerFormModel,
+									tmTaskCoalContact:{
+										coalName:this.daydata.productName,
+										contactPicture:this.contactPicture,
+										skin:this.skin,
+										hair:this.hair,
+										clean:this.clean
+									}
+								}, 'json').then(res => {
+									uni.setStorage({
+									    key: 'myDelivery',
+									    data: this.registerFormModel,
+									});
+									if (res.code === 0) {
+										uni.$u.toast('棰勭害鎴愬姛')
+										this.GetMyDeliverys()
+									} else {
+										uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+									}
+								})
+							}else{
+								let numDtoList=this.tmTaskCoalList.map(item=>{
+									return {tmId:item.productId,num:item.productQuantity,coalName:item.coalName}
+								})
+								this.$reqPost('saveMyDelivery',{
+									productName:this.daydata.productName,
+									customerId:this.daydata.customerId,
+									deptId:this.daydata.deptId,
+									filedId:this.daydata.filedId,
+									orderPlanId:this.daydata.id,
+									orderTye:this.daydata.orderType,
+									sendDate:this.daydata.sendDate,
+									carNumSurplus:this.daydata.carNumSurplus,
+									yyId:item.id,
+									...this.registerFormModel,
+									tmTaskCoalContact:{								
+										contactPicture:this.contactPicture,
+										numDtoList:numDtoList
+									}
+								}, 'json').then(res => {
+									uni.setStorage({
+									    key: 'myDelivery',
+									    data: this.registerFormModel,
+									});
+									if (res.code === 0) {
+										uni.$u.toast('棰勭害鎴愬姛')
+										this.GetMyDeliverys()
+									} else {
+										uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+									}
+								})
+							}
+							
+						}else{
+							this.$reqPost('saveMyDelivery',{
+								productName:this.daydata.productName,
+								customerId:this.daydata.customerId,
+								deptId:this.daydata.deptId,
+								filedId:this.daydata.filedId,
+								orderPlanId:this.daydata.id,
+								orderTye:this.daydata.orderType,
+								sendDate:this.daydata.sendDate,
+								carNumSurplus:this.daydata.carNumSurplus,
+								yyId:item.id,
+								...this.registerFormModel
+							}, 'json').then(res => {
+								uni.setStorage({
+								    key: 'myDelivery',
+								    data: this.registerFormModel,
+								});
+								if (res.code === 0) {
+									uni.$u.toast('棰勭害鎴愬姛')
+									this.GetMyDeliverys()
+								} else {
+									uni.$u.toast(res.msg ? res.msg : '棰勭害澶辫触')
+								}
+							})
+						}
 					}
 				})
-				
-				
-				})
+			},
+			GetMyDeliverys() {
+				this.$reqGet('driverYuYueList', {orderPlanId:this.id}).then(res => {
+					if (res.code == 0) {
+						this.yuYueData = res.data;
+					} else {
+						this.$u.toast('鍔犺浇澶辫触');
+					}
+				});
+				this.$reqGetId('myDelivery',this.id).then(res => {
+					if (res.data) {
+						this.daydata=res.data
+						this.tmTaskCoalList=res.data.jhOrderPlanList
+					}
+				});
 			},
 			GetMyDelivery() {
 				uni.showLoading({
@@ -262,6 +678,7 @@
 				this.$reqGetId('myDelivery',this.id).then(res => {
 					if (res.data) {
 						this.daydata=res.data
+						this.tmTaskCoalList=res.data.jhOrderPlanList
 					}
 				});
 			}

--
Gitblit v1.9.1