From 55ea3d5de0c128d82bbc85551b3f52b917abbd68 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 22 八月 2025 20:58:18 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/jinkuai

---
 small-program/pages/order-details/order-details.vue |  162 +++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 123 insertions(+), 39 deletions(-)

diff --git a/small-program/pages/order-details/order-details.vue b/small-program/pages/order-details/order-details.vue
index 2f981b1..98fb261 100644
--- a/small-program/pages/order-details/order-details.vue
+++ b/small-program/pages/order-details/order-details.vue
@@ -10,16 +10,20 @@
 		<view class="order-quxiao">
 			<view class="order-quxiao-btn" @click="show = true" v-if="userInfo.id === info.acceptMemberId && info.status ===2">鍙栨秷璁㈠崟</view>
 			<view class="order-quxiao-btn" @click="show = true" v-if="userInfo.id === info.releaseMemberId && (info.status ===0 ||  info.status ===1|| info.status ===2)">鍙栨秷璁㈠崟</view>
+			<view class="order-quxiao-btn1" v-if="userInfo.id === info.releaseMemberId && (info.status ===0 ||  info.status ===1|| info.status ===2)" @click="jumpEdit()">淇敼璁㈠崟</view>
 		</view>
-		<view class="order-user"  v-if="userInfo.id === info.releaseMemberId">
+		<view class="order-user"  v-if="userInfo.id === info.releaseMemberId && info.acceptMemberId">
 			<view class="order-user-info">
 				<view class="user-info-l">
 					<view class="user-info-l-image">
 						<image v-if="info.acceptCoverImage" :src="info.acceptCoverImage" mode="widthFix"></image>
-						<image v-else src="/static/logo.png" mode="widthFix"></image>
+						<image v-else src="/static/icon/img@2x.png" mode="widthFix"></image>
 					</view>
 					<view class="user-info-l-i">
-						<view class="user-info-l-i-top">{{info.acceptName || '鍖垮悕'}}</view>
+						<view class="user-info-l-i-top">
+							<text>{{info.acceptName || '鍖垮悕'}}</text>
+							<view class="user-info-l-i-top-jdf">鎺ュ崟鏂�</view>
+						</view>
 						<view class="user-info-l-i-bottom">
 							<view class="user-info-l-i-bottom-item">
 								<text>璇勫垎锛�</text>
@@ -27,7 +31,7 @@
 							</view>
 							<view class="user-info-l-i-bottom-item">
 								<text>鍗曟暟锛�</text>
-								<text>{{info.publishNum || 0}}</text>
+								<text>{{info.receiveNum ? info.receiveNum : 0}}</text>
 							</view>
 						</view>
 					</view>
@@ -63,7 +67,7 @@
 			</view>
 			<view class="address" v-if="info.type===1 && wayList && wayList.length>0">
 				<view class="address-xian"></view>
-				<view class="address-row"  v-for="(item,index) in wayList" style="display: block;margin: 10px" :key="'bbb'+index">
+				<view class="address-row"  v-for="(item,index) in wayList" style="display: block;margin: 10px" :key="index">
 					<image v-if="index === 0" src="/static/icon/ic_qidian@2x.png" mode="widthFix"></image>
 					<image v-if="index >0 && index < wayList.length-1" src="/static/icon/ic_jingguo@2x.png" mode="widthFix"></image>
 					<image v-if="index === wayList.length-1" src="/static/icon/ic_zhongdian@2x.png" mode="widthFix"></image>
@@ -94,8 +98,15 @@
 				</view>
 				<view class="price-row">
 					<view class="price-row-label">棰勪及鎬昏垂鐢�(鍏�)</view>
-					<view class="price-row-val" style="color: #FF0000;">
+					<view class="price-row-val" :style="{color: userInfo.id !== info.acceptMemberId ? '#FF0000' : ''}">
 						楼{{((info.estimatedAccount||0)/100).toFixed(2) }}
+					</view>
+				</view>
+				
+				<view class="price-row" v-if="userInfo.id === info.acceptMemberId">
+					<view class="price-row-label">瀹為檯鍒拌处(鍏�)</view>
+					<view class="price-row-val" style="color: #FF0000;">
+						楼{{((info.estimatedAccount * (1 - (info.platformRata || 0))) / 100).toFixed(2) }}
 					</view>
 				</view>
 			</view>
@@ -104,7 +115,7 @@
 			<view class="order-info-title">
 				<text>璇勪环</text>
 			</view>
-			<u-rate :count="count" activeColor="#FFC331" size="26" v-model="info.commentLevel"></u-rate>
+			<u-rate :count="count" readonly activeColor="#FFC331" size="26" v-model="info.commentLevel"></u-rate>
 			<view class="order-info-remark">
 				{{ info.commentInfo || '-'}}
 			</view>
@@ -113,10 +124,10 @@
 			<view class="order-ren-left">
 				<view class="order-ren-left-img">
 					<image v-if="info.releaseCoverImage" :src="info.releaseCoverImage" mode="widthFix"></image>
-					<image v-else src="/static/logo.png" mode="widthFix"></image>
+					<image v-else src="/static/icon/img@2x.png" mode="widthFix"></image>
 				</view>
 				<text>{{info.releaseName || '鍖垮悕'}}</text>
-				<view class="order-ren-left-tip">鍙戝崟鏂�</view>
+				<view class="order-ren-left-tip">涓氫富</view>
 			</view>
 			<view class="order-ren-x"></view>
 			<view class="order-ren-lx"  @click="contactPhone(info.releasePhone)">
@@ -129,50 +140,56 @@
 				<text>璁㈠崟淇℃伅</text>
 			</view>
 			<view class="order-info-list">
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.code">
 					<text>璁㈠崟缂栧彿锛�</text>
 					<text>{{info.code || ''}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.createTime">
 					<text>涓嬪崟鏃堕棿锛�</text>
 					<text>{{info.createTime||'-'}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.acceptTime">
 					<text>鎺ュ崟鏃堕棿锛�</text>
 					<text>{{info.acceptTime||'-'}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.workStartTime">
 					<text>寮�濮嬫椂闂达細</text>
 					<text>{{info.workStartTime||'-'}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.finishTime">
 					<text>瀹屾垚鏃堕棿锛�</text>
 					<text>{{info.finishTime||'-'}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.payTime">
 					<text>鏀粯鏃堕棿锛�</text>
 					<text>{{info.payTime||'-'}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.payMethod && info.payMethod >= 0">
 					<text>鏀粯鏂瑰紡锛�</text>
 					<text>{{info.payMethod==0?'寰俊鏀粯':'-'}}</text>
 				</view>
-				<view class="order-info-list-item">
+				<view class="order-info-list-item" v-if="info.wxExternalNo">
 					<text>浜ゆ槗鍗曞彿锛�</text>
 					<text>{{info.wxExternalNo || '-'}}</text>
 				</view>
 			</view>
 		</view>
-		<view style="width: 100%; height: calc(108rpx + env(safe-area-inset-bottom));" v-if="![4, 99].includes(info.status)"></view>
-		<view class="order-footer" v-if="![4, 99].includes(info.status)">
-			<view class="order-footer-btn"> 
+		<view style="width: 100%; height: calc(108rpx + env(safe-area-inset-bottom));" v-if="![99].includes(info.status)"></view>
+		<view class="order-footer" v-if="![99].includes(info.status)">
+			<template v-if="(userInfo.id === info.releaseMemberId) && info.status ===2">
+				<sunui-mverify hint="寮�濮嬩綔涓�" @change="getaccept($event)"></sunui-mverify>
+			</template>
+			<view class="order-footer-btn" v-else> 
 				<view class="order-footer-btn-a" @click="show = true" v-if="userInfo.id === info.acceptMemberId && info.status ===2">鍙栨秷璁㈠崟</view>
 				<view class="order-footer-btn-a" @click="show = true" v-if="userInfo.id === info.releaseMemberId && (info.status ===0 ||  info.status ===1|| info.status ===2)">鍙栨秷璁㈠崟</view>
 				<view class="order-footer-btn-b" @click="show2=true" v-if="userInfo.id === info.releaseMemberId && (info.status ===4 && info.commentStatus!=1)">鍘昏瘎浠�</view>
-				<view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId &&((info.status ===3 && info.type !==2)|| (info.status ===0 && info.type===2))" @click="show1 = true">鍘绘敮浠�</view>
+				<view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId &&((info.status ===3 && info.type !==2)|| (info.status ===0 && info.type===2))" @click="show1 = true">{{info.type === 2 ? '缁х画鏀粯' : '瀹屾垚骞舵敮浠�'}}</view>
+				
+				<view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId && ((info.status ===3 && info.type===2))" @click="payment1">瀹屾垚浣滀笟</view>
+				
 				<view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId && (info.status ===0 ||  info.status ===1|| info.status ===2)" @click="jumpEdit()">淇敼璁㈠崟</view>
 				<view class="order-footer-btn-b" @click="show5 =true" v-if="userInfo.id === info.acceptMemberId && (info.isUpdate==1 && info.status ===2)">淇敼纭</view>
-				<view class="order-footer-btn-b" @click="show3 =true" v-if="userInfo.id === info.releaseMemberId && (info.status ===2)">寮�濮嬩綔涓�</view>
+				<view class="order-footer-btn-b" @click="startJobs()" v-if="userInfo.id === info.releaseMemberId && (info.status ===2)">寮�濮嬩綔涓�</view>
 				<view class="order-footer-btn-b"  @click="show6 =true" v-if="userInfo.id !== info.releaseMemberId && (info.status ===1)">鎶㈠崟</view>
 			</view>
 			<view style="width: 100%; height: env(safe-area-inset-bottom);"></view>
@@ -285,6 +302,7 @@
 
 <script>
 	import { mapState } from 'vuex'
+	import sunuiMverify from '@/components/sunui-mverify/sunui-mverify.vue';
 	export default {
 		computed: {
 			...mapState( ['userInfo'])
@@ -316,6 +334,24 @@
 			this.getOrderData()
 		},
 		methods:{
+			getaccept(e) {
+				if (!e.msg) return;
+				this.$u.api.begin({ orderId: this.info.id })
+					.then(res => {
+						if (res.code === 200) {
+							this.getOrderData()
+						}
+					})
+			},
+			// 寮�濮嬩綔涓�
+			startJobs() {
+				this.$u.api.begin({ orderId: this.info.id })
+					.then(res => {
+						if (res.code === 200) {
+							this.getOrderData()
+						}
+					})
+			},
 			// 淇敼
 			jumpEdit() {
 				if (this.info.type === 0 && this.info.workType === 0) {
@@ -335,6 +371,16 @@
 						url: `/pages/freight/freight?id=${this.info.id}`
 					})
 				}
+			},
+			payment1() {
+				var that = this
+				this.$u.api.doneOrder({
+					orderId: this.info.id
+				}).then(res => {
+					if (res.code === 200) {
+						that.getOrderData()
+					}
+				})
 			},
 			payment() {
 				var that = this
@@ -440,24 +486,33 @@
 			},
 			cancelDo(){
 				var that = this
-				var param ={ orderId:that.id}
-				this.$u.api.cancelOrder(param).then(res =>{
-					if(res.code ===200){
-						that.show=false
-						uni.showToast({ title: '璁㈠崟鍙栨秷鎴愬姛', icon: 'error', duration: 2000 });
-						if(that.userInfo.id !== that.info.releaseMemberId){
-							uni.navigateBack({ delta: 1 })
-						}else{
-							that.getOrderData()
-						} 
+				uni.requestSubscribeMessage({
+					tmplIds: ['AA97cHjvlPiNO4viMkVe4JifCf9TD5b5Eb7s6El3VS8'],
+					success(res) {
+						var param ={ orderId:that.id}
+						that.$u.api.cancelOrder(param).then(res =>{
+							if(res.code ===200){
+								that.show=false
+								uni.showToast({ title: '璁㈠崟鍙栨秷鎴愬姛', icon: 'error', duration: 2000 });
+								if(that.userInfo.id !== that.info.releaseMemberId){
+									uni.navigateBack({ delta: 1 })
+								}else{
+									that.getOrderData()
+								} 
+							}
+						 }) 
+					},
+					fail(err) {
+						console.log(err)
 					}
-				 }) 
+				})
+				
 			},
 			previemImg(src){
 				uni.previewImage({
-					current: src, // 褰撳墠鏄剧ず鍥剧墖鐨刪ttp閾炬帴
-					urls: [src] // 闇�瑕侀瑙堢殑鍥剧墖http閾炬帴鍒楄〃
-				  });
+					current: src,
+					urls: [src]
+				});
 			},
 			contactPhone(phone){
 				if(phone !=null && phone!=''){
@@ -1016,9 +1071,26 @@
 						flex-direction: column;
 						justify-content: space-between;
 						.user-info-l-i-top {
-							font-weight: 400;
-							font-size: 30rpx;
-							color: #222222;
+							width: 100%;
+							display: flex;
+							align-items: center;
+							text {
+								font-weight: 400;
+								font-size: 30rpx;
+								color: #222222;
+							}
+							.user-info-l-i-top-jdf {
+								width: 96rpx;
+								height: 42rpx;
+								line-height: 42rpx;
+								text-align: center;
+								font-weight: 400;
+								font-size: 24rpx;
+								color: #FF7200;
+								border-radius: 8rpx;
+								border: 2rpx solid #FD9E24;
+								margin-left: 10rpx;
+							}
 						}
 						.user-info-l-i-bottom {
 							display: flex;
@@ -1083,6 +1155,18 @@
 				border-radius: 34rpx;
 				border: 1rpx solid #B2B2B2;
 			}
+			.order-quxiao-btn1 {
+				width: 160rpx;
+				height: 64rpx;
+				line-height: 64rpx;
+				text-align: center;
+				border-radius: 34rpx;
+				font-weight: 400;
+				font-size: 28rpx;
+				color: #00BC12;
+				margin-left: 20rpx;
+				border: 1rpx solid #00BC12;
+			}
 		}
 	}
 	.address {

--
Gitblit v1.9.3