zhaoyun 2 周之前
父節點
當前提交
aa7c3fa35a

+ 52 - 0
mer_uniapp/api/rider.js

@@ -17,4 +17,56 @@ import request from "@/utils/request.js";
  */
 export function getRiderList(data) {
 	return request.get('order/riderOrderTakinglist', data);
+}
+/**
+ * 订单列表
+ * @param object data
+ */
+export function riderOrderList(data) {
+	return request.get('rider/order/list', data);
+}
+/**
+ * 订单列表
+ * @param object data
+ */
+export function riderExpressOrderList(data) {
+	return request.get('rider/express/list', data);
+}
+/**
+ * 接单
+ * 
+*/
+export function riderOrderReceiving(data) {
+  return request.post(`rider/order/receiving`,data);
+}
+/**
+ * 订单表头数量接口
+ * 
+*/
+export function orderStatusNum(data) {
+  return request.get(`rider/order/status/num`,data);
+}
+/**
+ * 订单取消
+ * @param string id
+ *
+ */
+export function orderCancel(orderNo) {
+	return request.post(`rider/order/cancel/${orderNo}`);
+}
+/**
+ * 订单取货
+ * @param string id
+ *
+ */
+export function orderPickUp(orderNo) {
+	return request.post(`rider/order/pickUp/${orderNo}`);
+}
+/**
+ * 订单取消
+ * @param string id
+ *
+ */
+export function orderComplete(orderNo) {
+	return request.post(`rider/order/complete/${orderNo}`);
 }

+ 6 - 10
mer_uniapp/filters/commFilter.js

@@ -121,11 +121,9 @@ export function expressStatusFilter(status) {
 	const statusMap = {
 		0: '待支付',
 		1: '待接单',
-		2: '待取件',
-		3: '已取件',
-		4: '待配送',
-		5: '已收件',
-		6: '已完成',
+		2: '待收件',
+		3: '配送中',
+		4: '已完成',
 		9: '已取消',
 	}
 	return statusMap[status]
@@ -138,11 +136,9 @@ export function orderExpressTipsStatusFilter(status) {
 	const statusMap = {
 		0: '待支付,若有异议,请联系平台处理。',
 		1: '等待快递员接单,请耐心等待',
-		2: '快递员已接单,正赶往驿站,请耐心等待',
-		3: '快递员已取件,正在为您配送!',
-		4: '快递员正在为您配送,若您已收到快递请您尽快确认!',
-		5: '配送完成,若对此订单存在疑问,请联系平台协商处理。',
-		6: '配送完成,若对此订单存在疑问,请联系平台协商处理。',
+		2: '快递员已接单,正在为您配送',
+		3: '递员正在为您配送,若您已收到快递请您尽快确认!',
+		4: '配送完成,若对此订单存在疑问,请联系平台协商处理!',
 	}
 	return statusMap[status]
 }

+ 22 - 1
mer_uniapp/pages.json

@@ -1621,7 +1621,28 @@
 				{
 					"path": "order/index",
 					"style": {
-						"navigationBarTitleText": "跑腿记录",
+						"navigationBarTitleText": "外卖接单",
+						"navigationStyle": "custom"
+					}
+				},
+				{
+					"path": "order/detail",
+					"style": {
+						"navigationBarTitleText": "外卖订单详情",
+						"navigationStyle": "custom"
+					}
+				},
+				{
+					"path": "express/index",
+					"style": {
+						"navigationBarTitleText": "快递接单",
+						"navigationStyle": "custom"
+					}
+				},
+				{
+					"path": "express/detail",
+					"style": {
+						"navigationBarTitleText": "快递订单详情",
 						"navigationStyle": "custom"
 					}
 				},

+ 1 - 1
mer_uniapp/pages/address/user_address/index.vue

@@ -36,7 +36,7 @@
 					</view>
 					<view class='item acea-row row-between-wrapper'>
 						<view class='name'>详细地址</view>
-						<input class="address" type='text' placeholder='请填写具体地址' placeholder-style="color:#ccc;" name='detail'
+						<input class="address" type='text' placeholder='请填写具体地址' readonly="readonly" placeholder-style="color:#ccc;" name='detail'
 						 placeholder-class='placeholder' v-model='userAddress.detail' maxlength="100"></input>
 						<view class='iconfont icon-dizhi font_color' @tap="chooseLocation"></view>
 					</view>

+ 1 - 1
mer_uniapp/pages/goods/order_confirm/index-bak.vue

@@ -110,7 +110,7 @@
 					</view>
 					<view v-show="item.shippingType === 1 && Number(orderInfoVo.secondType)===0"
 						class='item acea-row row-between-wrapper'>
-						<view>快递费用</view>
+						<view>配送费用</view>
 						<view v-if='!item.freightFee || item.freightFee == 0' class="noCoupon">免运费</view>
 						<view v-else class='money'>¥{{item.freightFee}}</view>
 					</view>

+ 3 - 3
mer_uniapp/pages/goods/order_confirm/index.vue

@@ -125,12 +125,12 @@
 					</view>
 					<view v-show="item.shippingType === 3" class='item acea-row row-between-wrapper'>
 						<view>配送费</view>
-						<view v-if='!item.freightFee || item.freightFee == 0' class="noCoupon">免费</view>
+						<view v-if='!item.freightFee || item.freightFee == 0' class="noCoupon">免配送费</view>
 						<view v-else class='money'>¥{{item.freightFee}}</view>
 					</view>
 					<view v-show="item.shippingType === 1 && Number(orderInfoVo.secondType)===0" class='item acea-row row-between-wrapper'>
-						<view>快递费用</view>
-						<view v-if='!item.freightFee || item.freightFee == 0' class="noCoupon">免费</view>
+						<view>配送费</view>
+						<view v-if='!item.freightFee || item.freightFee == 0' class="noCoupon">免配送费</view>
 						<view v-else class='money'>¥{{item.freightFee}}</view>
 					</view>
 					<view v-show="item.svipDiscountPrice != 0&&orderInfoVo.type!=2 && !orderType" class='item acea-row row-between-wrapper'>

+ 1 - 1
mer_uniapp/pages/rider_index/components/footerPage/index.vue

@@ -42,7 +42,7 @@
 						role: '0'
 					},
 					{
-						pagePath: "/pages/rider_index/order/index?riderStatus=6",
+						pagePath: "/pages/rider_index/order/index?type=complete",
 						iconPath: require("../../static/ddh.png"),
 						selectedIconPath: require("../../static/ddl.png"),
 						text: "跑腿记录",

+ 23 - 20
mer_uniapp/pages/rider_index/order/detail.vue

@@ -16,13 +16,13 @@
 				<view v-if="info.refundStatus != 3&&info.status == 4" class="data">货物正在运输中,等待用户确认收货!</view>
 				<view v-if="info.refundStatus != 3&&info.status == 3" class="data">用户已下单,您可以联系用户到店自提!</view>
 				<view v-if="info.refundStatus != 3&&info.status == 5" class="data">用户已经确认收货啦,您可以联系用户索要好评呦!</view>
-				<view v-if="info.refundStatus != 3&&info.status == 6" class="data">订单已经完成,您可以申请货款提现啦~</view>
+				<view v-if="info.refundStatus != 3&&info.status == 6" class="data">订单已经完成,您可以提现啦~</view>
 				<view v-if="info.refundStatus == 3" class="data">此订单退款已原路返回!</view>
 			</view>
-			<view class="remarks acea-row row-middle" @click="modify('1')">
+			<view class="remarks acea-row row-middle">
 				<text class="iconfont icon-ic_notes"></text>
 				<view class="line1 mark-box" style="text-align: left;">
-					{{info.merchantRemark ? info.merchantRemark : '订单未备注,点击添加备注信息'}}
+					{{info.merchantRemark ? info.merchantRemark : '订单未备注'}}
 				</view>
 			</view>
 			<view class="address" v-if="info.shippingType==1&&info.secondType!=2">
@@ -34,13 +34,13 @@
 				<view v-if="info.shippingType == 1">地址:{{ info.userAddress }}</view>
 			</view>
 			<view class="acea-row row-middle user-box">
-				<image :src="info.avatar" class="image"></image>
+				<!--image :src="info.avatar" class="image"></image-->
 				<view class="text">
-					<view class="acea-row row-middle name">
-						{{info.nickname}}
+					<view class="iconfont icon-ic_location4 acea-row row-middle name">
+						{{orderInfo.merName}}
 					</view>
-					<view v-if="info.phone" class="">{{info.phone}}(ID:{{info.uid}})</view>
-					<view v-else class="">ID:{{info.uid}}</view>
+					<view v-if="orderInfo.merPhone" class="">{{orderInfo.merPhone}}</view>
+					<view v-if="info.shippingType == 1">地址:{{ orderInfo.merAddress }}</view>
 				</view>
 			</view>
 			<!-- 未拆单时,正常单 -->
@@ -89,7 +89,7 @@
 					<view>下单时间:</view>
 					<view class="conter">{{ info.payTime }}</view>
 				</view>
-				<view class="item acea-row row-between">
+				<!--view class="item acea-row row-between">
 					<view>支付方式:</view>
 					<view class="conter">
 						{{payType[info.payChannel]}}
@@ -106,7 +106,7 @@
 					<view class="conter">
 						{{info.createTime}}
 					</view>
-				</view>
+				</view-->
 			</view>
 			<view class="wrapper" v-if="info.deliveryType != 'fictitious'">
 				<view class="item acea-row row-between">
@@ -114,7 +114,7 @@
 					<view v-if="Number(info.secondType) > 4" class='conter'>自动发货</view>
 					<view v-else-if="Number(info.secondType) == 2" class='conter'>虚拟发货</view>
 					<view class="conter" v-else>
-						{{info.shippingType==1?'商家配送':info.shippingType==2?'到店自提':'虚拟发货'}}
+						{{info.shippingType==1?'骑手配送':info.shippingType==2?'到店自提':'虚拟发货'}}
 					</view>
 				</view>
 			</view>
@@ -127,10 +127,10 @@
 					<view class='conter'>¥{{info.proTotalPrice}}</view>
 				</view>
 				<view class="item acea-row row-between">
-					<view>费</view>
-					<view class="conter">¥{{ info.totalPostage }}</view>
+					<view>配送费</view>
+					<view class="conter">¥{{ orderInfo.deliveCharge}}</view>
 				</view>
-				<view class='item acea-row row-between'>
+				<!--view class='item acea-row row-between'>
 					<view>会员优惠</view>
 					<view class='conter'>-¥{{info.svipDiscountPrice}}</view>
 				</view>
@@ -150,10 +150,10 @@
 					实付款:
 					<BaseMoney :money="info.payPrice" symbolSize="24" integerSize="40" decimalSize="24" color="#E93323">
 					</BaseMoney>
-				</view>
+				</view-->
 			</view>
 			<view class="height-add"></view>
-			<view class="footer acea-row row-right row-middle">
+			<!--view class="footer acea-row row-right row-middle">
 				<view class="tomore" v-if="info.status==2&&!info.userRefundSign">
 					<span @click="toMore">更多</span>
 					<view class="more-operate" v-if="moreShow">
@@ -182,7 +182,7 @@
 			<PriceChange :change="change" :orderInfo="info" :isRefund="isRefund"
 				v-on:statusChange="statusChange($event)" v-on:closechange="changeclose($event)"
 				v-on:savePrice="savePrice" :status="status"></PriceChange>
-		</view>
+		</view-->
 		<uni-popup ref="hs_popup" background-color="#fff" borderRadius="10px">
 			<view class="sh_popup-content"
 				:class="{ 'popup-height': popup_center === 'left' || popup_center === 'right' }">
@@ -271,7 +271,8 @@
 				confirmShow: false,
 				info: {},
 				refundSum: '',
-				orderNo: ''
+				orderNo: '',
+				orderInfo: {}
 			};
 		},
 		onShow() {
@@ -296,8 +297,10 @@
 			this.initOrderInfo(this.orderNo)
 		},
 		onLoad(options) {
-			this.orderNo = options.orderNo
-			this.initOrderInfo(options.orderNo)
+			this.orderInfo=JSON.parse(options.orderInfo);
+			//this.orderNo = options.orderNo
+			//this.deliveCharge=options.deliveCharge
+			this.initOrderInfo(this.orderInfo.orderNo)
 		},
 		onPageScroll(e) {
 			// #ifdef MP || APP-PLUS

+ 164 - 68
mer_uniapp/pages/rider_index/order/index.vue

@@ -24,26 +24,26 @@
 			<view class="nav acea-row row-around row-middle" id="nav">
 			<!-- #endif -->
 				<scroll-view scroll-x="true" class="scroll_view">
-					<view class="item" :class="state == 'all' ? 'on' : ''" @click="changeStatus('all')">
-						全部({{headerArr['all']!=undefined?headerArr['all']:0}})
-						<image src="../static/adorn.png" v-if="state == 'all'"></image>
+					<view class="item" :class="state == 'await' ? 'on' : ''" @click="changeStatus('await')">
+						待接单
+						<image src="../static/adorn.png" v-if="state == 'await'"></image>
 					</view>
-					<view class="item" :class="state == 'notShipped' ? 'on' : ''" @click="changeStatus('notShipped')">
+					<!--view class="item" :class="state == 'notShipped' ? 'on' : ''" @click="changeStatus('notShipped')">
 						待接单({{headerArr['notShipped']!=undefined?headerArr['notShipped']:0}})
 						<image src="../static/adorn.png" v-if="state == 'notShipped'"></image>
-					</view>
-					<view class="item" :class="state == 'spike' ? 'on' : ''" @click="changeStatus('spike')">
-						待取货({{headerArr['spike']!=undefined?headerArr['spike']:0}})
+					</view-->
+					<view class="item" :class="state == 'pickUp' ? 'on' : ''" @click="changeStatus('pickUp')">
+						待取货({{headerArr['pickUp']!=undefined?headerArr['pickUp']:0}})
 						<image src="../static/adorn.png" v-if="state == 'spike'"></image>
 					</view>
-					<view class="item" :class="state == 'awaitVerification' ? 'on' : ''"
-						@click="changeStatus('awaitVerification')">
-						配送中({{headerArr['verification']!=undefined?headerArr['verification']:0}})
-						<image src="../static/adorn.png" v-if="state == 'awaitVerification'"></image>
+					<view class="item" :class="state == 'delivery' ? 'on' : ''"
+						@click="changeStatus('delivery')">
+						配送中({{headerArr['delivery']!=undefined?headerArr['delivery']:0}})
+						<image src="../static/adorn.png" v-if="state == 'delivery'"></image>
 					</view>
-					<view class="item" :class="state == 'receiving' ? 'on' : ''" @click="changeStatus('receiving')">
-						已完成({{headerArr['receiving']!=undefined?headerArr['receiving']:0}})
-						<image src="../static/adorn.png" v-if="state == 'receiving'"></image>
+					<view class="item" :class="state == 'complete' ? 'on' : ''" @click="changeStatus('complete')">
+						已完成({{headerArr['complete']!=undefined?headerArr['complete']:0}})
+						<image src="../static/adorn.png" v-if="state == 'complete'"></image>
 					</view>
 					<!--view class="item" :class="state == 'complete' ? 'on' : ''" @click="changeStatus('complete')">
 						已完成({{headerArr['complete']!=undefined?headerArr['complete']:0}})
@@ -64,7 +64,7 @@
 					<view class="order-num acea-row row-between-wrapper" @click="toDetail(item)">
 						<view>
 							<view class="title">
-								<view class="type">{{orderType[item.type]}}</view>{{item.orderNo}}
+								<view class="type">{{orderType[item.orderType]}}</view>{{item.orderNo}}
 							</view>
 						</view>
 						<view class="state">
@@ -80,7 +80,7 @@
 								</view>
 							</scroll-view> -->
 							<view class="picTxt">
-								<view class="acea-row" v-for="(val, key) in item.infoResponseList" :key="key">
+								<view class="acea-row" >
 									 <view class="order-content">
 									 	<view class="bold-size flex-y-center" style="padding: 10rpx 0;">
 									 		<view class="icon-info"></view>
@@ -90,27 +90,27 @@
 									     <view class="line"></view>
 									 		<view class="box-item">
 									 			<view class="bold-size">
-									 				<text class="order-icon">取</text>大粽子杂货店
+									 				<text class="order-icon">取</text>{{item.merName}}
 									 			</view>
 									 		</view>
-									 		<text class="onBold-size"><text class="order-icon" style="opacity: 0">取</text>长沙岳麓区西中心</text>
+									 		<text class="onBold-size"><text class="order-icon" style="opacity: 0">取</text>{{item.merAddress}}</text>
 									 	</view>
 									 	<view>
 									 		<view class="box-item">
 									 			<view class="bold-size">
-									 				<text class="order-icon">送</text>张先生
+									 				<text class="order-icon">送</text>{{item.userAddress}}
 									 			</view>
 									 		</view>
-									 		<text class="onBold-size"><text class="order-icon" style="opacity: 0">送</text>枫林三路喜地大厦</text>
+									 		<!--text class="onBold-size"><text class="order-icon" style="opacity: 0">送</text>{{remark}}</text-->
 									 	</view>
 									 </view>
 								</view>
 							</view>
 							<view class="money">
-								配送费 <baseMoney :money="item.payPrice" symbolSize="20" integerSize="32" decimalSize="20">
+								配送费 <baseMoney :money="item.deliveCharge" symbolSize="20" integerSize="32" decimalSize="20">
 								</baseMoney>
 								<!-- <view class="num">共{{ item.totalNum }}件</view> -->
-								<view class="num">距离{{ item.totalNum }}km</view>
+								<view class="num">距离{{ item.distance }}km</view>
 								<view class="map" @click="goMap(item)">
 									<text class="iconfont icon-chakanditu"></text>
 									<view class="map_text">查看地图</view>
@@ -124,9 +124,17 @@
 						<view class="more">
 						</view>
 						<view class="acea-row row-middle">
-							<view class="bnt on acea-row row-center-wrapper">联系客户</view>
-							<view class="bnt primary"
-								@click="goDelivery(item)">接单
+							<view v-if="item.status==1 || item.status==2"  @click="cancel(item)" class="bnt on acea-row row-center-wrapper">取消订单</view>
+							<view v-if="item.status==1"  class="bnt on acea-row row-center-wrapper">联系商家</view>
+							<view v-if="item.status==2"  class="bnt on acea-row row-center-wrapper">联系客户</view>
+							<view class="bnt primary" v-if="item.status==0" 
+								@click="receiving(item)">接单
+							</view>
+							<view class="bnt primary" v-if="item.status==1"
+								@click="pickUp(item)">取货配送
+							</view>
+							<view class="bnt primary" v-if="item.status==2"
+								@click="complete(item)">送达完成
 							</view>
 						</view>
 					</view>
@@ -211,10 +219,12 @@
 	import {
 		employeeOrderList,
 		employeeOrderMark,
-		orderStatusNum,
 		employeeOrderInfo,
 		orderGetVerfication
 	} from '@/api/work.js';
+	import {
+		riderOrderList,riderOrderReceiving,orderStatusNum,orderPickUp,orderComplete,orderCancel
+	} from '@/api/rider.js';
 	export default {
 		name: "AdminOrderList",
 		components: {
@@ -232,8 +242,8 @@
 			return {
 				urlDomain: this.$Cache.get("imgHost"),
 				datetimerange: [],
-				orderType: ['普通','秒杀','拼团'],
-				orderStatus: ['待支付', '待发货', '部分发货', '待核销', '待收货', '已收货', '已完成', '已取消'],
+				orderType: ['外卖','快递'],
+				orderStatus: ['待接单', '待取货', '配送中', '已完成'],
 				getHeight: this.$util.getWXStatusHeight(),
 				iconColor: '#333333',
 				isScrolling: false,
@@ -258,15 +268,15 @@
 						val: '1',
 					},
 					{
-						label: '近1个月',
+						label: '今天',
 						val: '2',
 					},
 					{
-						label: '近3个月',
+						label: '最近7天',
 						val: '3',
 					},
 					{
-						label: '近6个月',
+						label: '本周',
 						val: '4',
 					},
 				],
@@ -276,17 +286,17 @@
 						val: '',
 					},
 					{
-						label: '普通订单',
+						label: '外卖订单',
 						val: 0,
 					},
 					{
-						label: '秒杀订单',
+						label: '待取快递订单',
 						val: 1,
-					},
-					{
-						label: '拼团订单',
-						val: 2,
 					}
+					// {
+					// 	label: '拼团订单',
+					// 	val: 2,
+					// }
 				],
 				confirmOrder: {},
 				confirmShow: false,
@@ -296,16 +306,18 @@
 					merId: '',
 					orderNo: '',
 					page: 1,
-					status: 'all',
-					type: '',
+					status: 'await',
+					type: 0,
+					latitude: uni.getStorageSync('user_latitude'),
+					longitude: uni.getStorageSync('user_longitude'),
 				},
 				headerArr: {},
 				totalPage: '',
 			};
 		},
 		onLoad(options) {
-			this.state = options.type ? options.type : 'all';
-			this.searchListData.status = options.type ? options.type : 'all';
+			this.state = options.type ? options.type : 'await';
+			this.searchListData.status = options.type ? options.type : 'await';
 		},
 		// created() {
 		// 	this.getInitList()
@@ -331,7 +343,8 @@
 			},
 			//订单列表
 			getInitList(type) {
-				employeeOrderList(this.searchListData).then(res => {
+				this.loading=true;
+				riderOrderList(this.searchListData).then(res => {
 					//下拉触底
 					if (type == 'bottom') {
 						this.list = this.list.concat(res.data.list)
@@ -344,17 +357,47 @@
 						title: err
 					})
 				})
+				this.loading=false;
 			},
 			toDetail(item) {
-				if(item.groupBuyRecordStatus===0){
-					return this.$util.Tips({
-						title: '拼团中无法查看详情'
-					})
-				}else{
 					uni.navigateTo({
-						url: `/pages/admin/order/detail?orderNo=${item.orderNo}`
+						//url: `/pages/rider_index/order/detail?orderNo=${item.orderNo}&deliveCharge=${item.deliveCharge}`
+						url: `/pages/rider_index/order/detail?orderInfo=${JSON.stringify(item)}`
 					})
+				
+			},
+			//查看内置地图
+			goMap(item) {
+				let that = this;
+				let latitude=item.status==1 || item.status==0?item.merLatitude:item.userLatitude;
+				let longitude=item.status==1 || item.status==0?item.merLongitude:item.userLongitude;
+				let merName=item.status==1 || item.status==0?item.merName:item.userName;
+				let address=item.status==1 || item.status==0?item.merAddress:item.userAddress;
+				//#ifdef H5
+				if (that.$wechat.isWeixin() === true) {
+					that.$wechat.seeLocation({
+						latitude: parseFloat(latitude),
+						longitude: parseFloat(longitude),
+						name: merName,
+						address: address,
+					}).then(res => {
+						console.log('success');
+					})
+				} else {
+					//#endif
+					uni.openLocation({
+						latitude: parseFloat(latitude),
+						longitude: parseFloat(longitude),
+						scale: 8,
+						name: merName,
+						address: address,
+						success: function(res) {
+							that.go_map = true
+						},
+					});
+					// #ifdef H5
 				}
+				//#endif
 			},
 			//发送货
 			goDelivery(item) {
@@ -374,23 +417,76 @@
 					this.isRefund = type
 				}
 			},
-			//核销
-			verify(item) {
-				employeeOrderInfo(item.orderNo).then(res => {
-					let verifyCode=res.data.verifyCode
-					orderGetVerfication({
-						verifyCode: res.data.verifyCode
-					}).then(res => {
-						if (res.code == 200) {
-							uni.navigateTo({
-								url: `/pages/admin/cancel/list?info=${JSON.stringify(res.data)}&verifyCode=${verifyCode}`
-							})
-						} else {
-							self.$util.Tips({
-								title: res.message
-							});
-						}
-					})
+			//接单
+			receiving(item) {
+				riderOrderReceiving(item).then(res => {
+					 if (res.code == 200) {
+						 setTimeout(() => {
+						 	this.statusHeader();
+						 	this.getInitList();
+						 }, 50)
+						 return this.$util.Tips({
+						 	title: '接单成功'
+						 })
+					 } else {
+					 	self.$util.Tips({
+					 		title: res.message
+					 	});
+					 }
+				})
+			},
+			//取消
+			cancel(item) {
+				orderCancel(item.orderNo).then(res => {
+					 if (res.code == 200) {
+						 setTimeout(() => {
+						 	this.statusHeader();
+						 	this.getInitList();
+						 }, 50)
+						 return this.$util.Tips({
+						 	title: '取消成功'
+						 })
+					 } else {
+					 	self.$util.Tips({
+					 		title: res.message
+					 	});
+					 }
+				})
+			},
+			//取货
+			pickUp(item) {
+				orderPickUp(item.orderNo).then(res => {
+					 if (res.code == 200) {
+						 setTimeout(() => {
+						 	this.statusHeader();
+						 	this.getInitList();
+						 }, 50)
+						 return this.$util.Tips({
+						 	title: '取货完成,请尽快安排配送'
+						 })
+					 } else {
+					 	self.$util.Tips({
+					 		title: res.message
+					 	});
+					 }
+				})
+			},
+			//收货完成
+			complete(item) {
+				orderComplete(item.orderNo).then(res => {
+					 if (res.code == 200) {
+						 setTimeout(() => {
+						 	this.statusHeader();
+						 	this.getInitList();
+						 }, 50)
+						 return this.$util.Tips({
+						 	title: '配送完成'
+						 })
+					 } else {
+					 	self.$util.Tips({
+					 		title: res.message
+					 	});
+					 }
 				})
 			},
 			changeclose: function(msg) {
@@ -434,11 +530,11 @@
 					this.dateSelected = value;
 					return
 				} else if (value == 2) {
-					this.searchListData.dateLimit = 'lately30'
+					this.searchListData.dateLimit = 'today'
 				} else if (value == 3) {
-					this.searchListData.dateLimit = 'lately90'
+					this.searchListData.dateLimit = 'lately7'
 				} else if (value == 4) {
-					this.searchListData.dateLimit = 'lately180'
+					this.searchListData.dateLimit = 'week'
 				}
 				this.dateSelected = value;
 			},

+ 0 - 787
mer_uniapp/pages/rider_index/order/send.vue

@@ -1,787 +0,0 @@
-<template>
-	<view class="sendBox">
-		<view class="title" v-if="info.userRefundSign" @click="skipList(info.orderNo)">
-			<view class="acea-row row-middle">
-				<text class="iconfont icon-shuoming2"></text>
-				<view>该订单存在处理中售后,请点击查看</view>
-			</view>
-			<text class="iconfont icon-xiangyou"></text>
-		</view>
-		<view class="list">
-			<view>
-				<text>订单编号:</text><text>{{info.orderNo}}</text>
-			</view>
-			<view v-if="sendIndex!=4">
-				<text>配送方式:</text>
-				<picker :disabled="type==2" mode="selector" :range="sendTypeArray" @change="sendPickerChange">
-					<view>{{ sendTypeArray[sendIndex] }}<text v-if="type!=2" class="iconfont icon-xiangyou"></text>
-					</view>
-				</picker>
-			</view>
-			<view v-if="sendIndex==4">
-				<text>配送方式:</text>
-				<view class="">
-					虚拟发货
-				</view>
-			</view>
-			<view v-if="sendIndex==0&&templateShow=='1'">
-				<text>发货类型:</text>
-				<picker mode="selector"  :range="expressSendType" @change="expressSendTypeChange">
-					<view>{{ (expressSendType.length&&expressSendType[expressSendTypeIndex])||'' }}<text
-							class="iconfont icon-xiangyou"></text></view>
-				</picker>
-				</text>
-			</view>
-			<view v-if="sendIndex==0&&expressSendTypeIndex==1">
-				<text>寄件人姓名:</text><input v-model="saveData.toName" class="input-text textarea-small" type="text"
-					placeholder-class="placeholderInput" placeholder="此处填写寄件人姓名" />
-			</view>
-			<view v-if="sendIndex==0&&expressSendTypeIndex==1">
-				<text>寄件人电话:</text><input v-model="saveData.toTel" class="input-text textarea-small" type="text"
-					placeholder-class="placeholderInput" placeholder="此处填写寄件人电话" />
-			</view>
-			<view v-if="sendIndex==0&&expressSendTypeIndex==1">
-				<text>寄件人地址:</text><input v-model="saveData.toAddr" class="input-text textarea-small" type="text"
-					placeholder-class="placeholderInput" placeholder="此处填写寄件人地址" />
-			</view>
-			<view v-if="sendIndex==0">
-				<text>快递公司:</text>
-				<picker mode="selector" range-key='name' :range="expressArray" @change="bindPickerChange">
-					<view>{{ (expressArray.length&&expressArray[index].name)||'' }}<text
-							class="iconfont icon-xiangyou"></text></view>
-				</picker>
-				</text>
-			</view>
-			<view v-if="sendIndex==0&&expressSendTypeIndex==1">
-				<text>电子面单:</text>
-				<picker mode="selector" range-key='title' :range="templateArray" @change="templateChange">
-					<view>{{ (templateArray.length&&templateArray[templateIndex].title)||'' }}<text
-							class="iconfont icon-xiangyou"></text><text v-if="templateArray.length" @click.stop="preview" class="preview">预览</text>
-					</view>
-				</picker>
-				</text>
-			</view>
-			<view v-if="sendIndex==0&&expressSendTypeIndex==0">
-				<text>快递单号:</text>
-				<view class="acea-row row-middle">
-					<input v-model="saveData.expressNumber" class="input-text" type="text" maxlength="40"
-						placeholder-class="placeholderInput" placeholder="请输入"></input>
-					<text @click="scanCode" class="iconfont icon-ic_Scan"></text>
-				</view>
-			</view>
-			<view v-if="sendIndex==1">
-				<text>发货备注:</text><textarea v-model="saveData.deliveryMark" class="input-text textarea" type="text"
-					placeholder-class="placeholderInput" placeholder="此处填写发货备注" />
-			</view>
-			<view v-if="sendIndex==2">
-				<text>配送人员:</text>
-				<picker mode="selector" range-key='personnelName' :range="deliveryPersonnelList"
-					@change="deliveryPersonneChange">
-					<view>
-						{{ saveData.deliveryCarrier||'' }}<text class="iconfont icon-xiangyou"></text>
-					</view>
-				</picker>
-				</text>
-			</view>
-			<view v-if="sendIndex==2">
-				<text>手机号:</text><input v-model="saveData.carrierPhone" disabled="true" class="input-text" type="text"
-					placeholder-class="placeholderInput" placeholder="请输入手机号" />
-			</view>
-			<view v-if="sendIndex==4">
-				<text>发货备注:</text><textarea v-model="saveData.deliveryMark" class="input-text textarea" type="text"
-					placeholder-class="placeholderInput" placeholder="此处填写发货备注" />
-			</view>
-		</view>
-		<view class="split-wrapper" v-if="info.totalNum>1&&type==1&&sendIndex!=4">
-			<view class="split-switch acea-row row-between-wrapper">
-				<view>分单发货</view>
-				<view class="switch" :class="{ on: curGoods }" @click="changeGoods"></view>
-			</view>
-			<splitOrder :select_all="false" :splitGoods="splitGoods" @getList="getList" v-if="curGoods"></splitOrder>
-		</view>
-		<view class="height-add"></view>
-		<view class="confirm-wrapper">
-			<view class="confirm-wrapper-num">
-				<text v-if="type==1">共{{num}}件</text>
-			</view>
-			<view v-if="type==1" class="confirm" @click="saveInfo">确认发货</view>
-			<view v-else class="confirm" @click="updateInfo">确认修改</view>
-		</view>
-	</view>
-</template>
-
-<script>
-	import Cache from '@/utils/cache';
-	import {
-		orderInvoiceListInfo
-	} from '@/api/order.js';
-	import {
-		Debounce
-	} from '@/utils/validate.js'
-	import {
-		expressSearchPage,
-		employeeOrderInvoiceUpdate,
-		deliveryPersonnelApi,
-		employeeExpressTemplate,
-		employeeExpressElectInfo
-	} from '@/api/work.js'
-	import {
-		employeeOrderSend,
-		employeeOrderInfo,
-		employeeInvoiceList
-	} from '@/api/work.js'
-	import splitOrder from '../components/splitOrder/index.vue'
-	export default {
-		components: {
-			splitOrder
-		},
-		data() {
-			return {
-				info: {},
-				index: 0,
-				sendIndex: 0,
-				expressArray: [],
-				curGoods: 0,
-				splitGoods: [],
-				cartIds: [],
-				expressSendType: ['手动填写', '电子面单'],
-				saveData: {
-					"expressRecordType": 1,
-					"orderNo": '',
-					"deliveryType": "express",
-					"isSplit": "",
-					"detailList": [{
-						"num": 0,
-						"orderDetailId": 0
-					}],
-					"expressCode": "",
-					"expressNumber": "",
-					"deliveryMark": "",
-					"deliveryCarrier": "",
-					"carrierPhone": "",
-					"id": '',
-					"toName": '',
-					"toTel": '',
-					"toAddr": '',
-					"expressTempId": ''
-				},
-				sendTypeArray: ['快递配送', '无需发货', '商家送货'],
-				expressType: ['express', 'noNeed', 'merchant'],
-				//1-发货 2-编辑
-				type: 1,
-				//配送方式
-				deliveryType: '',
-				orderNo: '',
-				orderIndex: '',
-				deliveryPersonnelList: [], //配送人员
-				personneIndex: 0,
-				expressSendTypeIndex: 0,
-				templateArray: [],
-				templateIndex: 0,
-				templateShow:Cache.get('electrPrintingSwitch') ,
-			}
-		},
-		computed: {
-			num() {
-				let sum = 0
-				if (this.curGoods) {
-					this.cartIds.forEach(value => {
-						sum += value.num
-					})
-				} else {
-					let list = this.info.orderDetailList
-					if (list) {
-						list.forEach(item => {
-							sum += (item.payNum - item.deliveryNum - item.refundNum)
-						})
-					}
-				}
-				return sum
-			}
-		},
-		created() {
-			this.expressAll('1')
-		},
-		onLoad(options) {
-			this.initOrderInfo(options.orderNo)
-			this.updateInit(options)
-			this.getDeliveryPersonnel(options)
-			this.getElectInfo()
-		},
-		methods: {
-			getElectInfo(){
-				employeeExpressElectInfo().then(res=>{
-					this.saveData.toName=res.data.senderUsername;
-					this.saveData.toTel=res.data.senderPhone;
-					this.saveData.toAddr=res.data.senderAddr;
-				})
-			},
-			preview() {
-				uni.previewImage({
-					current: 0,
-					urls: [this.templateArray[this.templateIndex].pic],
-					longPressActions: {
-						fail: function(err) {
-							console.log(err.errMsg);
-						}
-					}
-				})
-			},
-			//配送人员列表
-			async getDeliveryPersonnel(options) {
-				let {
-					data
-				} = await deliveryPersonnelApi({
-					limit: 99999,
-					page: 1
-				})
-				this.deliveryPersonnelList = data.list
-				if (options.index != 0) {
-					this.saveData.deliveryCarrier = this.deliveryPersonnelList[this.personneIndex].personnelName
-					this.saveData.carrierPhone = this.deliveryPersonnelList[this.personneIndex].personnelPhone
-				}
-
-			},
-			//配送人员选择
-			deliveryPersonneChange: function(e) {
-				this.personneIndex = e.detail.value
-				this.saveData.deliveryCarrier = this.deliveryPersonnelList[e.detail.value].personnelName
-				this.saveData.carrierPhone = this.deliveryPersonnelList[e.detail.value].personnelPhone
-			},
-			updateInit(options) {
-				if (options.type) {
-					this.type = options.type
-					this.orderNo = options.orderNo
-					this.orderIndex = options.index
-					this.getInfo(options.orderNo, options.index)
-				}
-			},
-			getInfo(orderNo, index) {
-				orderInvoiceListInfo(orderNo).then(res => {
-					this.sendIndex = res.data.invoiceList[index].deliveryType == 'merchant' ? 2 : 1
-					this.saveData.deliveryMark = res.data.invoiceList[index].deliveryMark
-					this.saveData.deliveryCarrier = res.data.invoiceList[index].deliveryCarrier
-					this.saveData.carrierPhone = res.data.invoiceList[index].carrierPhone
-					this.saveData.id = res.data.invoiceList[index].id
-				})
-			},
-			// 扫码
-			scanCode() {
-				var self = this;
-				// #ifdef MP || APP
-				uni.scanCode({
-					scanType: ['barCode'],
-					success(res) {
-						self.saveData.expressNumber = res.result;
-					}
-				})
-				// #endif
-				//#ifdef H5
-				if (this.$wechat.isWeixin()) {
-					this.$wechat.wechatEvevt('scanQRCode', {
-						needResult: 1,
-						scanType: ["barCode"]
-					}).then(res => {
-						let result = res.resultStr;
-						if (result.includes(',')) {
-							result = result.split(",")[1]
-						}
-						self.saveData.expressNumber = result
-					})
-				} else {
-					return self.$util.Tips({
-						title: '扫码仅支持小程序/公众号/APP',
-						endtime: 2000,
-					});
-				}
-				//#endif
-			},
-			skipList(orderNo) {
-				uni.navigateTo({
-					url: `/pages/admin/skipRefund/index?orderNo=${orderNo}`
-				})
-			},
-			expressAll(flag) {
-				expressSearchPage({
-					openStatus: true
-				}).then(res => {
-					if (res.data.list.length) {
-						this.expressArray = res.data.list
-						flag == '1' && (this.saveData.expressCode = this.expressArray[0].code)
-					} else {
-						return this.$util.Tips({
-							title: '请先配置物流公司~',
-							endtime: 2000,
-						});
-					}
-				})
-			},
-			getList(val) {
-				let that = this;
-				that.splitGoods = JSON.parse(JSON.stringify(val));
-				let cartIds = [];
-				val.forEach((item) => {
-					if (item.checked) {
-						let i = {
-							orderDetailId: item.id,
-							num: item.surplus_num
-						}
-						cartIds.push(i)
-					}
-				})
-				this.cartIds = cartIds;
-			},
-			// 点击获取拆单列表
-			changeGoods() {
-				this.curGoods = this.curGoods ? 0 : 1;
-				if (this.curGoods) {
-					this.splitList();
-				}
-			},
-			splitList() {
-				let list = this.info.orderDetailList
-				list.forEach((item) => {
-					item.checked = false
-					item.surplus_num = item.payNum - item.deliveryNum - item.refundNum
-					item.numShow = item.payNum - item.deliveryNum - item.refundNum
-				})
-				this.splitGoods = list;
-			},
-			initOrderInfo(orderNo) {
-				employeeOrderInfo(orderNo).then(res => {
-					this.info = res.data
-					this.saveData.orderNo = this.info.orderNo
-					if (this.info.secondType == 2) {
-						this.sendIndex = 4
-					}
-				})
-			},
-			bindPickerChange: function(e) {
-				this.index = e.detail.value
-				this.saveData.expressCode = this.expressArray[e.detail.value].code
-				if (this.expressSendTypeIndex == 1) {
-					this.getTemplate(this.expressArray[e.detail.value].code)
-					this.templateIndex = 0
-				}
-			},
-			getTemplate(code) {
-				employeeExpressTemplate({
-					com: code
-				}).then(res => {
-					this.templateArray = res.data.data.data
-				})
-			},
-			expressSendTypeChange: function(e) {
-				this.expressSendTypeIndex = e.detail.value
-				this.getTemplate(this.expressArray[0].code)
-				this.templateIndex = 0
-			},
-			templateChange: function(e) {
-				this.templateIndex = e.detail.value
-			},
-			sendPickerChange: function(e) {
-				this.sendIndex = e.detail.value
-				this.saveData.deliveryType = this.expressType[this.sendIndex]
-			},
-			//确认提交
-			saveInfo: Debounce(function() {
-				this.saveData.expressTempId = this.templateArray[this.templateIndex]?.temp_id
-				// 是否分单
-				if (this.curGoods) {
-					this.saveData.detailList = this.cartIds
-					this.saveData.isSplit = true
-				} else {
-					this.saveData.isSplit = false
-					let arr = []
-					let list = this.info.orderDetailList
-					list.forEach(item => {
-						arr.push({
-							orderDetailId: item.attrValueId,
-							num: item.payNum - item.deliveryNum - item.refundNum
-						})
-					})
-					this.saveData.detailList = arr
-				}
-				if (this.sendIndex == 0 && this.expressSendTypeIndex == 1) {
-					// 提交校验
-					if (!this.saveData.toAddr || !this.saveData.toName || !this.saveData.toTel) {
-						return this.$util.Tips({
-							title: '请将信息填写完整'
-						})
-					}
-					if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(this.saveData.toTel)) {
-						return this.$util.Tips({
-							title: '请输入正确寄件人电话'
-						})
-					}
-				}
-				if (this.sendIndex == 0 && this.expressSendTypeIndex == 0) {
-					// 提交校验
-					if (!this.saveData.expressNumber) {
-						return this.$util.Tips({
-							title: '请输入快递单号'
-						})
-					} else if (!this.saveData.detailList.length) {
-						return this.$util.Tips({
-							title: '请先选择商品'
-						})
-					}
-				}
-				if (this.sendIndex == 1) {
-					// 提交校验
-					if (!this.saveData.deliveryMark) {
-						// return this.$util.Tips({
-						// 	title: '请输入商家备注'
-						// })
-					} else if (!this.saveData.detailList.length) {
-						return this.$util.Tips({
-							title: '请先选择商品'
-						})
-					}
-				}
-				if (this.sendIndex == 2) {
-					// 提交校验
-					if (!this.saveData.deliveryCarrier) {
-						return this.$util.Tips({
-							title: '请输入配送人姓名'
-						})
-					} else if (!this.saveData.detailList.length) {
-						return this.$util.Tips({
-							title: '请先选择商品'
-						})
-					} else if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(this.saveData.carrierPhone)) {
-						return this.$util.Tips({
-							title: '请输入正确手机号码'
-						})
-					}
-				}
-				if (this.sendIndex == 4) {
-					this.saveData.deliveryType = 'noNeed'
-				}
-				//参数处理
-				if (this.expressSendTypeIndex == 1) {
-					this.expressSendTypeIndex = 2
-					this.saveData.expressRecordType=2
-				} else if (this.expressSendTypeIndex == 0) {
-					this.expressSendTypeIndex = 1
-					this.saveData.expressRecordType=1
-				}
-				employeeOrderSend(this.saveData).then(res => {
-					if (res.code == 200) {
-						this.$util.Tips({
-							title: '操作成功'
-						})
-						setTimeout(() => {
-							uni.navigateBack({
-								delta: 1,
-							});
-						}, 500)
-					}
-				}).catch(err => {
-					return this.$util.Tips({
-						title: err
-					})
-				})
-				if (this.expressSendTypeIndex == 2) {
-					this.expressSendTypeIndex = 1
-					this.saveData.expressRecordType=1
-				} else if (this.expressSendTypeIndex == 1) {
-					this.expressSendTypeIndex = 0
-					this.saveData.expressRecordType=0
-				}
-			}),
-			// 修改配送信息
-			updateInfo() {
-				employeeOrderInvoiceUpdate(this.saveData).then(res => {
-					this.$util.Tips({
-						title: '操作成功',
-						endtime: 1000,
-					})
-					setTimeout(() => {
-						uni.redirectTo({
-							url: `/pages/admin/logistics/record?orderNo=${this.orderNo}&index=${this.orderIndex}`
-						})
-					}, 500)
-				})
-			}
-		}
-	}
-</script>
-
-<style scoped lang="scss">
-	/deep/.uni-checkbox-input.uni-checkbox-input-checked {
-		border: 1px solid #2A7EFB !important;
-		background-color: #2A7EFB !important;
-		color: #FFF !important;
-	}
-
-	/deep/.wx-checkbox-input.wx-checkbox-input-checked {
-		border: 1px solid #2A7EFB !important;
-		background-color: #2A7EFB !important;
-		color: #FFF !important;
-	}
-
-	.sendBox {
-		padding: 20rpx;
-
-		.title {
-			display: flex;
-			align-items: center;
-			justify-content: space-between;
-			background: #E5EFFE;
-			border-radius: 14rpx;
-			padding: 28rpx 24rpx;
-			font-family: PingFang SC, PingFang SC;
-			font-weight: 400;
-			font-size: 26rpx;
-			color: #2A7EFB;
-			margin-bottom: 20rpx;
-		}
-
-		.list {
-			padding: 28rpx 24rpx;
-			border-radius: 14rpx;
-			font-size: 28rpx;
-			background-color: #FFF;
-			// margin-top: 20rpx;
-
-			&>view {
-				padding: 20rpx 0;
-				display: flex;
-				justify-content: space-between;
-
-				input {
-					font-weight: 400;
-					font-size: 14px;
-					color: #999999;
-				}
-			}
-		}
-
-		.operate {
-			padding: 28rpx 24rpx;
-			border-radius: 14rpx;
-			background-color: #FFF;
-			margin-top: 20rpx;
-
-			.operate-btn {
-				display: flex;
-				align-items: center;
-				justify-content: space-between;
-			}
-
-			.operate-goods {
-				margin-top: 20rpx;
-
-				.operate-goods-item {
-					display: flex;
-					align-items: center;
-					justify-content: space-between;
-
-					.icon-a-ic_CompleteSelect,
-					.icon-weixuanzhong {
-						color: #2A7EFB;
-					}
-
-					.goods-info {
-						display: flex;
-
-						.img {
-							width: 136rpx;
-							height: 136rpx;
-							border-radius: 16rpx;
-						}
-
-						.info {
-							display: flex;
-							flex-direction: column;
-							justify-content: space-between;
-							margin-left: 10rpx;
-
-							&>view {
-								width: 350rpx;
-								overflow: hidden;
-								/* 确保超出容器的文本被裁剪 */
-								white-space: nowrap;
-								/* 确保文本在一行内显示 */
-								text-overflow: ellipsis;
-								/* 使用省略号表示文本溢出 */
-							}
-
-							.name {
-								font-size: 28rpx;
-								color: #333333;
-							}
-
-							.sku {
-								font-size: 22rpx;
-								color: #999999;
-							}
-
-							.num {
-								font-size: 22rpx;
-
-								text {
-									color: #2A7EFB;
-								}
-							}
-						}
-					}
-
-					.num-operate {
-						height: 130rpx;
-						display: flex;
-						align-items: end;
-
-						.num-operate-box {
-							display: flex;
-							align-items: center;
-
-							.ipt {
-								text-align: center;
-								width: 50rpx;
-								background: #F5F5F5;
-								border-radius: 4rpx;
-								margin: 0 10rpx;
-							}
-
-							.iconfont {
-								font-size: 28rpx;
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-
-	.split-wrapper {
-		border-radius: 24rpx;
-		margin-top: 20rpx;
-		background: #FFFFFF;
-
-		.splitOrder {
-			padding: 0 24rpx 46rpx;
-			margin: 0;
-		}
-	}
-
-	.split-switch {
-		padding: 40rpx 24rpx;
-		font-size: 28rpx;
-		color: #333333;
-
-		.switch {
-			position: relative;
-			width: 79rpx;
-			height: 48rpx;
-			padding: 4rpx;
-			border-radius: 24rpx;
-			background: #DDDDDD;
-			transition: background 0.1s, border 0.1s;
-			line-height: 48rpx;
-
-			&::after {
-				content: "";
-				position: absolute;
-				top: 4rpx;
-				left: 4rpx;
-				width: 40rpx;
-				height: 40rpx;
-				border-radius: 20rpx;
-				background: #FFFFFF;
-				box-shadow: 0 3rpx 6rpx 0 rgba(0, 0, 0, 0.08);
-				transition: transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
-			}
-
-			&.on {
-				background: #2A7EFB;
-
-				&::after {
-					transform: translateX(31rpx);
-				}
-			}
-		}
-	}
-
-	.height-add {
-		height: 120rpx;
-	}
-
-	.confirm-wrapper {
-		position: fixed;
-		left: 0;
-		bottom: 0;
-		bottom: constant(safe-area-inset-bottom);
-		bottom: env(safe-area-inset-bottom);
-		width: 100%;
-		padding: 20rpx;
-		display: flex;
-		justify-content: space-between;
-		height: 100rpx;
-		line-height: 100rpx;
-		background: #fff;
-	}
-
-	.confirm {
-		width: 160rpx;
-		height: 64rpx;
-		font-weight: 500;
-		font-size: 28rpx;
-		color: #fff;
-		border-radius: 40rpx;
-		background: #2A7EFB;
-		text-align: center;
-		line-height: 64rpx;
-	}
-
-	.confirm-wrapper-num {
-		height: 60rpx;
-		line-height: 60rpx;
-	}
-
-	.placeholderInput {
-		text-align: right;
-		width: 100%;
-		font-size: 28rpx;
-	}
-
-	.icon-xiangyou {
-		font-size: 28rpx !important;
-		color: #999;
-	}
-
-	.icon-shuoming2 {
-		margin-right: 6rpx !important;
-	}
-
-	.input-text {
-		text-align: right !important;
-		white-space: normal;
-	}
-
-	/deep/.split-switch .switch::after {
-		top: 4rpx;
-	}
-
-	.icon-ic_Scan {
-		color: #2A7EFB;
-		margin-left: 12rpx;
-	}
-
-	.textarea {
-		width: 400rpx;
-		height: 80rpx;
-	}
-
-	.preview {
-		font-weight: 400;
-		font-size: 14px;
-		color: #2A7EFB;
-	}
-	.textarea-small{
-		width: 400rpx;
-		height: 38rpx;
-		line-height: 38rpx;
-	}
-</style>

+ 6 - 6
mer_uniapp/pages/rider_index/work/index.vue

@@ -108,7 +108,7 @@
 					<view class="title-box bottom-line">外卖订单</view>
 				</view>
 				 <view class="goods acea-row" v-if="selectMerchantRole.split(',').includes('6')">
-				 	<navigator url="/pages/rider_index/order/index" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
+				 	<navigator url="/pages/rider_index/order/index?type=await" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
 				 		<view class="img-box">
 				 			<view class="img positionImg">
 				 				<image class="positionImg" :src="urlDomain+'crmebimage/presets/adminImg/daifahuo.png'"
@@ -121,7 +121,7 @@
 				 		</view>
 				 		<view class="">去接单</view>
 				 	</navigator>
-				 	<navigator url="/pages/rider_index/order/index" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
+				 	<navigator url="/pages/rider_index/order/index?type=pickUp" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
 				 		<view class="img-box">
 				 			<view class="img positionImg">
 				 				<image :src="urlDomain+'crmebimage/presets/adminImg/daihexiao.png'" mode=""></image>
@@ -132,7 +132,7 @@
 				 		</view>
 				 		<view class="">待取货</view>
 				 	</navigator>
-				 	<navigator url="/pages/rider_index/order/index" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('2')">
+				 	<navigator url="/pages/rider_index/order/index?type=delivery" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('2')">
 				 		<view class="img-box">
 				 			<view class="img positionImg">
 				 				<image :src="urlDomain+'crmebimage/presets/adminImg/daishenhe.png'" mode=""></image>
@@ -152,7 +152,7 @@
 			 		<view class="title-box bottom-line">代取快递订单</view>
 			 	</view>
 			 	 <view class="goods acea-row" v-if="selectMerchantRole.split(',').includes('6')">
-			 	 	<navigator url="/pages/rider_index/order/index" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
+			 	 	<navigator url="/pages/rider_index/express/index?type=await" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
 			 	 		<view class="img-box">
 			 	 			<view class="img positionImg">
 			 	 				<image class="positionImg" :src="urlDomain+'crmebimage/presets/adminImg/daifahuo.png'"
@@ -165,7 +165,7 @@
 			 	 		</view>
 			 	 		<view class="">去接单</view>
 			 	 	</navigator>
-			 	 	<navigator url="/pages/rider_index/order/index" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
+			 	 	<navigator url="/pages/rider_index/express/index?type=pickUp" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('1')">
 			 	 		<view class="img-box">
 			 	 			<view class="img positionImg">
 			 	 				<image :src="urlDomain+'crmebimage/presets/adminImg/daihexiao.png'" mode=""></image>
@@ -176,7 +176,7 @@
 			 	 		</view>
 			 	 		<view class="">待取货</view>
 			 	 	</navigator>
-			 	 	<navigator url="/pages/rider_index/order/index" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('2')">
+			 	 	<navigator url="/pages/rider_index/express/index?type=delivery" hover-class="none" class="item" v-if="selectMerchantRole.split(',').includes('2')">
 			 	 		<view class="img-box">
 			 	 			<view class="img positionImg">
 			 	 				<image :src="urlDomain+'crmebimage/presets/adminImg/daishenhe.png'" mode=""></image>

+ 33 - 11
mer_uniapp/pages/substitute_fast_mail/my_fast_mail/index.vue

@@ -12,7 +12,7 @@
 			</view>
 			<view class="btn" @click="search">
 				<text>搜索</text>
-			</view>
+			</view> 
 		</view>
 		<scroll-view class="scroll-view_x" scroll-x style="white-space: nowrap; vertical-align: middle;" show-scrollbar="false">
 			<view class='nav borRadius14 acea-row'>
@@ -36,9 +36,18 @@
 			</view>
 			<scroll-view scroll-y scroll-with-animation @scrolltolower="onScrollBottom" style="flex: 1;overflow: hidden;">
 				<view class="fast-box" v-for="(item, index) in fastMailData" :key="index">
-					<text class="order-no">
-						订单:{{item.orderNo}}
-					</text>
+					<view class="acea-row row-middle">
+						<view>
+							<text class="order-no">
+							  订单:{{item.orderNo}}</text>
+							</view>
+						<view class="state" v-if="item.status == 9">
+							已取消
+						</view>
+						<view class="state" v-else>
+							{{orderStatus[item.status]}}
+						</view>
+					</view>
 					<view :class="postIndex !== item.postOrderInfoList.length - 1 ? 'qie-ge' : ''" v-for="(post, postIndex) in item.postOrderInfoList"
 					 :key="postIndex">
 						<view class="flex-between-center mb-20">
@@ -100,10 +109,10 @@
 						<view class='bnt bg_color' v-if="item.status === 0" @click='goPay(item)'>
 							立即付款
 						</view>
-						<view class='bnt cancelBnt' v-if="item.status==6 || item.status==9" @click='delOrder(item.orderNo,index)'>
+						<view class='bnt cancelBnt' v-if="item.status==4 || item.status==9" @click='delOrder(item.orderNo,index)'>
 							删除订单
 						</view>
-						<view class='bnt bg_color' v-if="item.status==3||item.status==4 || item.status==5 " @click='expressReceiving(item.orderNo)'>
+						<view class='bnt bg_color' v-if="item.status==3 || item.status==5 " @click='expressReceiving(item.orderNo)'>
 							确认收件
 						</view>
 					</view>
@@ -154,7 +163,9 @@
 		},
 		data() {
 			return {
+				orderStatus: ['待付款','待接单', '待收件', '配送中', '已完成','已取消'],
 				urlDomain: this.$Cache.get("imgHost"),
+				theme: app.globalData.theme,
 				winHeight: 0,
 				isNodes: 0, //控制什么时候开始抓取元素节点,只要数值改变就重新抓取
 				autoplay: true,
@@ -170,11 +181,11 @@
 					name: '代接单'
 				}, 
 				{
-					id: 4,
+					id: 2,
 					name: '代收件'
 				}, 
 				{
-					id: 6,
+					id: 4,
 					name: '已完成'
 				}, {
 					id: 9,
@@ -304,10 +315,14 @@
 			expressReceiving: function(orderNo){
 				receiving(orderNo).then(res=>{
 					if(res.code==200){
-						this.$util.Tips({
+						setTimeout(() => {
+							this.getAllOrder();
+						}, 50)
+						return this.$util.Tips({
 							title: '操作成功'
 						})
-						that.getAllOrder();
+						
+						//that.getAllOrder();
 						this.change = false
 					}else{
 						this.$util.Tips({
@@ -469,7 +484,14 @@
 		margin: 20rpx 0;
 		display: inline-block;
 	}
-
+	.font_color {
+		@include main_color(theme);
+	}
+	.state {
+		    color: $bg-color-primary;
+			margin-left: auto;
+			@include main_color(theme);
+	}
 	.fast-box {
 		padding: 30rpx;
 		border-radius: 23rpx;

+ 2 - 2
mer_uniapp/pages/user/index.vue

@@ -152,7 +152,7 @@
 							</view>
 						</view>
 						<!-- 商家管理 -->
-						<view class="user-menus mt20" v-if="isEmployee">
+						<view class="user-menus mt20" v-if="isEmployee && isLogin">
 							<view class="menu-title">店铺管理</view>
 							<view class="list-box">
 								<view class="item" @click="toggle('bottom')">
@@ -162,7 +162,7 @@
 							</view>
 						</view>
 						<!-- 骑手管理 -->
-						<view class="user-menus mt20" v-if="userInfo.isRider">
+						<view class="user-menus mt20" v-if="userInfo.isRider && isLogin">
 							<view class="menu-title">骑手管理</view>
 							<view class="list-box">
 								<view class="item" @click="menusTap('/pages/rider_index/work/index')">