ZZ 1 mesiac pred
rodič
commit
bb6d683ce0

+ 12 - 11
mer_uniapp/pages/index/index.vue

@@ -101,7 +101,7 @@
 							<view>
 								<view class="goods-title">{{item.name}}</view>
 								<view class="goods-desc">{{item.intro}}</view>
-								<view style="margin-top: 10rpx;">
+								<view class="flex-y-center" style="margin-top: 10rpx;">
 									<image src="/static/img/ic-ykj.png" style="height: 38rpx;width: 86rpx;"></image>
 									<text class="goods-price">¥</text>
 									<text class="goods-price" style="font-size: 30rpx;">{{item.price}}</text>
@@ -241,13 +241,6 @@
 							const recommend = res2.result.address_reference.landmark_l2.title;; // 推荐使用的地址描述,描述精确性较高
 							console.log('地址信息1:', res2);
 							that.userAddress = recommend;
-							getMerchantList({
-								latitude: uni.getStorageSync('user_latitude'),
-								longitude: uni.getStorageSync('user_longitude'),
-							}).then(res => {
-								that.merchantList = res.data.list;
-								console.log('商品信息:', that.merchantList);
-							});
 							that.getHomeData();
 						},
 						fail: (err) => {
@@ -271,7 +264,15 @@
 						name: '今日吃啥',
 						icon: '/static/img/ic-random.png',
 						color: '#FF9805'
-					})
+					});
+					getMerchantList({
+						latitude: uni.getStorageSync('user_latitude'),
+						longitude: uni.getStorageSync('user_longitude'),
+						cateId: this.cateList[0].id
+					}).then(res => {
+						this.merchantList = res.data.list;
+						console.log('商品信息:', this.merchantList);
+					});
 					// this.messageList = [{"id":2,"title":"绿草地活动大促,消费满三十减十五"},{"id":3,"title":"绿草地活动大促,消费满三十减十五33333"}];
 					console.log("this.messageList--", this.messageList)
 					// this.startScroll();
@@ -319,7 +320,7 @@
 			onCateListClick(item) {
 				if (item.link) {
 					uni.navigateTo({
-						url: item.link + `id=${item.id}`
+						url: item.link + `?id=${item.id}&navTitle=${item.name}`
 					})
 				}
 			},
@@ -541,7 +542,7 @@
 	}
 
 	.goods-list {
-		flex: 0 0 356rpx;
+		flex: 1;
 		margin-right: 18rpx;
 	}
 

+ 31 - 37
mer_uniapp/pages/substitute_fast_mail/components/fast_mail_figure/index.vue

@@ -2,11 +2,11 @@
 	<view>
 		<view class="cart_nav acea-row">
 			<!-- #ifdef MP-->
-			<view class="mp-header flex-col flex-center" :style="{top: navH + 'rpx'}">
-				<view class="flex-y-center" style="justify-content: flex-end;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
-					<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
-				</view>
-				<view class="flex-wrap flex-around-center" style="margin: 0 100rpx;gap: 20rpx;width: 100%;">
+			<view class="mp-header" :style="{top: navH + 'rpx'}">
+				<view class=" flex-col flex-center" style="background-color: #fff;">
+					<view class="flex-y-center" style="justify-content: flex-end;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
+						<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
+					</view>
 					<view class="upload">
 						<view class='pictrue' v-for="(item,index) in pics" :key="index" :data-index="index" @click="getPhotoClickIdx">
 							<image :src='item'></image>
@@ -17,8 +17,8 @@
 							<view>上传凭证</view>
 						</view>
 					</view>
+					<button class="sub flex-center" @tap="onSure">确定</button>
 				</view>
-				<button class="sub flex-center" @tap="onSure">确定</button>
 			</view>
 			<!-- #endif -->
 		</view>
@@ -41,27 +41,8 @@
 	export default {
 		data() {
 			return {
+				pics: [],
 				navH: '',
-				specsIndex: 1,
-				specsData: [{
-						id: 1,
-						value: 5,
-						style: 'width: 167rpx;height: 153rpx;',
-						name: '大件'
-					},
-					{
-						id: 2,
-						value: 3,
-						style: 'width: 125rpx;height: 115rpx;',
-						name: '中件'
-					},
-					{
-						id: 3,
-						value: 2,
-						style: 'width: 84rpx;height: 77rpx;',
-						name: '小件'
-					}
-				]
 			}
 		},
 		props: {},
@@ -76,7 +57,7 @@
 			// #endif
 		},
 		methods: {
-			
+
 			/**
 			 * 上传文件
 			 *
@@ -122,8 +103,7 @@
 				}
 			},
 			onSure() {
-				const obj = this.specsData.find(item => item.id == this.specsIndex)
-				this.$emit('specsValue', obj)
+				this.$emit('figureValue', this.pics)
 			},
 			onCancel() {
 				this.$emit('onCancel', false)
@@ -138,7 +118,8 @@
 		border-bottom-left-radius: 23rpx;
 		position: fixed;
 		z-index: 99999;
-		background-color: #fff;
+		background: rgba(33, 33, 33, 0.8);
+		height: 100%;
 		width: 100%;
 		/* #ifdef H5 */
 		padding-bottom: 20rpx;
@@ -179,7 +160,21 @@
 		color: #FFFFFF;
 		margin: 58rpx 0 96rpx 0;
 	}
-	
+
+	.upload {
+		display: -webkit-box;
+		display: -moz-box;
+		display: -webkit-flex;
+		display: -ms-flexbox;
+		display: flex;
+		-webkit-box-lines: multiple;
+		-moz-box-lines: multiple;
+		-o-box-lines: multiple;
+		-webkit-flex-wrap: wrap;
+		-ms-flex-wrap: wrap;
+		flex-wrap: wrap;
+	}
+
 	.pictrue {
 		width: 130rpx;
 		height: 130rpx;
@@ -187,22 +182,22 @@
 		position: relative;
 		font-size: 11px;
 		color: #bbb;
-	
+
 		&:nth-child(4n) {
 			margin-right: 0;
 		}
-	
+
 		&:nth-last-child(1) {
 			border: 0.5px solid #ddd;
 			box-sizing: border-box;
 		}
-	
+
 		uni-image,
 		image {
 			width: 100%;
 			height: 100%;
 			border-radius: 1px;
-	
+
 			img {
 				-webkit-touch-callout: none;
 				-webkit-user-select: none;
@@ -216,7 +211,7 @@
 				height: 100%;
 			}
 		}
-	
+
 		.icon-guanbi1 {
 			font-size: 33rpx;
 			position: absolute;
@@ -224,5 +219,4 @@
 			right: -10px;
 		}
 	}
-	
 </style>

+ 135 - 0
mer_uniapp/pages/substitute_fast_mail/components/fast_mail_point/index.vue

@@ -0,0 +1,135 @@
+<template>
+	<view>
+		<view class="cart_nav acea-row">
+			<!-- #ifdef MP-->
+			<view class="mp-header" :style="{top: navH + 'rpx'}">
+				<view class=" flex-col flex-center" style="background-color: #fff;">
+					<view class="flex-y-center" style="justify-content: flex-end;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
+						<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
+					</view>
+					<view class="flex-wrap flex-around-center" style="margin: 0 100rpx;gap: 20rpx;width: 100%;">
+						<radio-group @change="radioChange">
+							<label class="uni-list-cell uni-list-cell-pd" v-for="(item, index) in pointData" :key="item.value">
+								<view>
+									<radio :value="item.isDefault" :checked="item.isDefault" />
+								</view>
+								<view class="tip-box">{{item.name}}</view>
+							</label>
+						</radio-group>
+						<!-- <view v-for="(item, index) in specsData" :key="index" style="flex: 1;" class="flex-center flex-col">
+							<radio :value="item.isDefault" :checked="item.isDefault" />
+							<view class="tip-box flex-center" >
+								{{item.name}}
+							</view>
+						</view> -->
+					</view>
+					<button class="sub flex-center" @tap="onSure">确定</button>
+				</view>
+			</view>
+			<!-- #endif -->
+		</view>
+	</view>
+</template>
+
+<script>
+	// +----------------------------------------------------------------------
+	// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
+	// +----------------------------------------------------------------------
+	// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
+	// +----------------------------------------------------------------------
+	// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
+	// +----------------------------------------------------------------------
+	// | Author: CRMEB Team <admin@crmeb.com>
+	// +----------------------------------------------------------------------
+	import {
+		mapGetters
+	} from "vuex";
+	export default {
+		data() {
+			return {
+				navH: '',
+				pointData: [{
+						id: 1,
+						name: '邮块超市取件码500以上-23-2栋负一',
+						isDefault: false
+					},
+					{
+						id: 2,
+						name: '京东快递-二食堂四楼',
+						isDefault: false
+					},
+					{
+						id: 3,
+						name: '华北门华硕电脑店顺丰快递-校外',
+						isDefault: false
+					}
+				]
+			}
+		},
+		props: {},
+		computed: mapGetters(['globalData']),
+		created() {
+			// #ifdef MP || APP-PLUS
+			// 获取导航高度;
+			this.navH = this.globalData.navHeight;
+			// #endif
+			// #ifdef H5
+			this.navH = 80;
+			// #endif
+		},
+		methods: {
+			radioChange: function(evt) {
+				console.log(evt)
+			},
+			onSure() {
+				const obj = this.pointData.find(item => item.isDefault)
+				this.$emit('pointValue', obj)
+			},
+			onCancel() {
+				this.$emit('onCancel', false)
+			}
+		}
+	}
+</script>
+
+<style scoped lang="scss">
+	/* #ifdef MP || APP-PLUS */
+	.mp-header {
+		border-bottom-left-radius: 23rpx;
+		position: fixed;
+		z-index: 99999;
+		background: rgba(33, 33, 33, 0.8);
+		height: 100%;
+		width: 100%;
+		/* #ifdef H5 */
+		padding-bottom: 20rpx;
+		/* #endif */
+
+		.tip-box {
+			// width: 27%;
+			width: 153rpx;
+			height: 58rpx;
+			font-weight: 400;
+			font-size: 23rpx;
+			color: #141414;
+			// padding: 12rpx 60rpx;
+		}
+	}
+
+	/* #endif */
+	.cart_nav {
+		z-index: 99999;
+		width: 100%;
+		background-color: #fff;
+	}
+
+	.sub {
+		background-color: $bg-color-primary;
+		width: 308rpx;
+		height: 77rpx;
+		font-weight: 500;
+		font-size: 31rpx;
+		color: #FFFFFF;
+		margin: 58rpx 0 96rpx 0;
+	}
+</style>

+ 16 - 13
mer_uniapp/pages/substitute_fast_mail/components/fast_mail_specs/index.vue

@@ -2,21 +2,23 @@
 	<view>
 		<view class="cart_nav acea-row">
 			<!-- #ifdef MP-->
-			<view class="mp-header flex-col flex-center" :style="{top: navH + 'rpx'}">
-				<view class="flex-y-center" style="justify-content: flex-end;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
-					<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
-				</view>
-				<view class="flex-wrap flex-around-center" style="margin: 0 100rpx;gap: 20rpx;width: 100%;">
-					<view v-for="(item, index) in specsData" :key="index" style="flex: 1;" class="flex-center flex-col">
-						<view class="flex-center" style="height: 153rpx;">
-							<image :style="item.style" src="/static/img/ic-fast-mail.png" mode=""></image>
-						</view>
-						<view class="tip-box flex-center" :class="specsIndex === item.id ? 'active-tip' : ''" @tap="specsIndex = item.id">
-							{{item.name}}¥ {{item.value}}
+			<view class="mp-header" :style="{top: navH + 'rpx'}">
+				<view class=" flex-col flex-center" style="background-color: #fff;">
+					<view class="flex-y-center" style="justify-content: flex-end;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
+						<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
+					</view>
+					<view class="flex-wrap flex-around-center" style="margin: 0 100rpx;gap: 20rpx;width: 100%;">
+						<view v-for="(item, index) in specsData" :key="index" style="flex: 1;" class="flex-center flex-col">
+							<view class="flex-center" style="height: 153rpx;">
+								<image :style="item.style" src="/static/img/ic-fast-mail.png" mode=""></image>
+							</view>
+							<view class="tip-box flex-center" :class="specsIndex === item.id ? 'active-tip' : ''" @tap="specsIndex = item.id">
+								{{item.name}}¥ {{item.value}}
+							</view>
 						</view>
 					</view>
+					<button class="sub flex-center" @tap="onSure">确定</button>
 				</view>
-				<button class="sub flex-center" @tap="onSure">确定</button>
 			</view>
 			<!-- #endif -->
 		</view>
@@ -91,7 +93,8 @@
 		border-bottom-left-radius: 23rpx;
 		position: fixed;
 		z-index: 99999;
-		background-color: #fff;
+		background: rgba(33, 33, 33, 0.8);
+		height: 100%;
 		width: 100%;
 		/* #ifdef H5 */
 		padding-bottom: 20rpx;

+ 17 - 15
mer_uniapp/pages/substitute_fast_mail/components/fast_mail_tip/index.vue

@@ -2,19 +2,21 @@
 	<view>
 		<view class="cart_nav acea-row">
 			<!-- #ifdef MP-->
-			<view class="mp-header flex-col flex-center" :style="{top: navH + 'rpx'}">
-				<view class="flex-y-center" style="justify-content: space-between;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
-					<view style="opacity: 0;">1</view>
-					<view style="font-weight: 600;font-size: 27rpx;color: #141414;">随心小费</view>
-					<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
-				</view>
-				<view class="flex-wrap flex-around-center" style="margin: 0 100rpx;gap: 20rpx;width: 100%;">
-					<view class="tip-box flex-center" :class="tipIndex === item.id ? 'active-tip' : ''" v-for="(item, index) in tipData"
-					 :key="index" @tap="tipIndex = item.id,tipValue = item.value">
-						¥ {{item.value}}
+			<view class="mp-header" :style="{top: navH + 'rpx'}">
+				<view class="flex-col flex-center" style="background-color: #fff;">
+					<view class="flex-y-center" style="justify-content: space-between;padding: 10rpx 19rpx 38rpx 19rpx;width: 100%;">
+						<view style="opacity: 0;">1</view>
+						<view style="font-weight: 600;font-size: 27rpx;color: #141414;">随心小费</view>
+						<image style="width: 39rpx;height: 39rpx;" src="/static/img/chacha.png" @tap="onCancel"></image>
+					</view>
+					<view class="flex-wrap flex-around-center" style="margin: 0 100rpx;gap: 20rpx;width: 100%;">
+						<view class="tip-box flex-center" :class="tipIndex === item.id ? 'active-tip' : ''" v-for="(item, index) in tipData"
+						 :key="index" @tap="tipIndex = item.id,tipValue = item.value">
+							¥ {{item.value}}
+						</view>
 					</view>
+					<button class="sub flex-center" @tap="onSure">确定</button>
 				</view>
-				<button class="sub flex-center" @tap="onSure">确定</button>
 			</view>
 			<!-- #endif -->
 		</view>
@@ -67,8 +69,7 @@
 				]
 			}
 		},
-		props: {
-		},
+		props: {},
 		computed: mapGetters(['globalData']),
 		created() {
 			// #ifdef MP || APP-PLUS
@@ -96,8 +97,9 @@
 		border-bottom-left-radius: 23rpx;
 		position: fixed;
 		z-index: 99999;
-		background-color: #fff;
+		background: rgba(33, 33, 33, 0.8);
 		width: 100%;
+		height: 100%;
 		/* #ifdef H5 */
 		padding-bottom: 20rpx;
 		/* #endif */
@@ -124,7 +126,7 @@
 	.cart_nav {
 		z-index: 99999;
 		width: 100%;
-		background-color: #fff;
+		height: 100%;
 	}
 
 	.sub {

+ 27 - 13
mer_uniapp/pages/substitute_fast_mail/components/take_fast_mail/index.vue

@@ -17,7 +17,7 @@
 						<view class="flex-y-center">
 							<image style="width: 135rpx; height: 135rpx;border-radius: 50%;" src="/static/img/ic-message.png"></image>
 							<view style="margin-left: 29rpx;">
-								<view class="send-name">到哪里</view>
+								<view class="send-name">到哪里</view>
 								<view class="send-tips">请输入收件人信息</view>
 								<view style="font-weight: 500;font-size: 23rpx;color: #FF6702;">可送单时间段00:00——23:59</view>
 							</view>
@@ -27,8 +27,8 @@
 					<view class="flex-y-center flex-between-center" style="margin-bottom: 20rpx">
 						<view class="flex-y-center">
 							<image style="width: 135rpx; height: 135rpx;border-radius: 50%;" src="/static/img/ic-message.png"></image>
-							<view style="margin-left: 29rpx;">
-								<view class="send-name">到哪里</view>
+							<view style="margin-left: 29rpx;" @tap="isPoint = true">
+								<view class="send-name">到哪里</view>
 								<view class="send-tips">请输入寄件人信息</view>
 								<view style="font-weight: 500;font-size: 23rpx;color: #FF6702;">可送单时间段00:00——17:00</view>
 							</view>
@@ -71,7 +71,7 @@
 					<view class="flex-between-center">
 						<view class="remark-name">小费</view>
 						<view class="flex-y-center" @tap="isTip = true">
-							<text style="font-weight: 400;font-size: 27rpx;color: #646464;">{{tipValue ? '¥' + tipValue : ''}}</text>
+							<text style="font-weight: 400;font-size: 27rpx;color: #646464;">{{fastMailObj.tipValue ? '¥' + fastMailObj.tipValue : ''}}</text>
 							<view class='iconfont icon-jiantou' style="font-size: 30rpx;margin: 0 19rpx;"></view>
 						</view>
 					</view>
@@ -80,7 +80,8 @@
 		</view>
 		<fast-mail-tip v-if="isTip" @tipValue="onTipValue" @onCancel="onCanCel"></fast-mail-tip>
 		<fast-mail-specs v-if="isSpecs" @specsValue="onSpecsValue" @onCancel="onCanCel"></fast-mail-specs>
-		<fast-mail-figure v-if="isFigure" @specsValue="onSpecsValue" @onCancel="onCanCel"></fast-mail-figure>
+		<fast-mail-figure v-if="isFigure" @figureValue="onFigureValue" @onCancel="onCanCel"></fast-mail-figure>
+		<fast-mail-point v-if="isPoint" @pointValue="onPointValue" @onCancel="onCanCel"></fast-mail-point>
 	</view>
 </template>
 
@@ -109,8 +110,9 @@
 			return {
 				isTip: false, // 小费弹窗
 				isSpecs: false, // 规格弹窗
-				isFigure : false, // 附图弹窗
-				specsObj: {},
+				isFigure: false, // 附图弹窗
+				isPoint: false, // 选择快递点弹窗
+				fastMailObj: {},
 				tipValue: 0,
 				winHeight: 0,
 				isNodes: 0, //控制什么时候开始抓取元素节点,只要数值改变就重新抓取
@@ -144,18 +146,30 @@
 				// this.scrollLeft = e * 60;
 			},
 			onTipValue(value) {
-				this.tipValue = value
+				this.fastMailObj.tipValue = value
 				this.isTip = false;
 				console.log(value)
 			},
 			onCanCel(val) {
 				this.isTip = val
-				this.isSpecs = val;
+				this.isSpecs = val
+				this.isFigure = val
+				this.isPoint = val
 			},
-			onSpecsValue(value) {
-				this.specsObj = value
-				this.isSpecs = false;
-				console.log(value)
+			onSpecsValue(obj) {
+				this.fastMailObj.specsObj = obj
+				this.isSpecs = false
+				console.log(obj)
+			},
+			onFigureValue(obj) {
+				this.fastMailObj.figureObj = obj
+				this.isFigure = false
+				console.log(obj)
+			},
+			onPointValue(obj) {
+				this.fastMailObj.pointObj = obj
+				this.isPoint = false
+				console.log(obj)
 			}
 		}
 	}