Pārlūkot izejas kodu

完善部分功能及页面样式

hwb0 3 gadi atpakaļ
vecāks
revīzija
5937df479e

+ 8 - 8
components/pay-popup/pay-popup.vue

@@ -22,7 +22,7 @@
 					</view>
 				</view>
 				<view class="flex agreement">
-					<view class="txt" @click="toRule">同意<text>《盲票购买须知》</text></view>
+					<view class="txt" @click="toRule">同意<text>《盲票产品规则》</text></view>
 					<view class="checked">
 						<u-checkbox-group>
 							<u-checkbox :value="checked" :checked="checked" shape="circle" activeColor="#E96737"
@@ -103,7 +103,7 @@
 				let _this = this
 				let payIng = false
 				if (!this.checked) {
-					uni.$u.toast('请同意《盲票购买须知》!');
+					uni.$u.toast('请同意《盲票产品规则》');
 					return
 				}
 				uni.showLoading({
@@ -258,7 +258,7 @@
 
 		.btn {
 			justify-content: space-between;
-			padding: 20rpx 20rpx;
+			padding: 20rpx 40rpx;
 
 			&-left {
 				.coin {
@@ -273,13 +273,13 @@
 
 			&-right {
 				.confirm {
-					width: 250rpx;
-					height: 60rpx;
-					line-height: 60rpx;
-					border-radius: 8px;
+					width: 280rpx;
+					height: 90rpx;
+					font-size: 36rpx;
+					line-height: 90rpx;
+					border-radius: 10rpx;
 					background-color: rgba(235, 112, 9, 100);
 					color: rgba(255, 255, 255, 100);
-					font-size: 28rpx;
 					text-align: center;
 				}
 			}

+ 2 - 2
pages/about/index.vue

@@ -5,7 +5,7 @@
 			<view class="flex about-logo">
 				<!-- <image src="../../static/logo.png" mode=""></image> -->
 				<view class="image">MP</view>
-				<view class="edition">v 1.0.0</view>
+				<view class="edition">v 1.0.2</view>
 			</view>
 			<view class="about-action">
 				<u-cell-group :border="false">
@@ -34,7 +34,7 @@
 </style>
 <style lang="scss" scoped>
 	.about {
-		height: 100vh;
+		min-height: calc(100vh - 44px - var(--status-bar-height));
 		background-color: #FFFFFF;
 
 		&-logo {

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 1
pages/about/rule.vue


+ 6 - 7
pages/address/index.vue

@@ -257,21 +257,20 @@
 		padding-bottom: env(safe-area-inset-bottom);
 
 		.btn-wrapper {
-			height: 120rpx;
 			display: flex;
 			align-items: center;
-			padding: 0 40rpx;
+			padding: 20rpx 0;
 		}
 
 		/deep/ button {
-			width: 100%;
-			line-height: 76rpx;
-			font-size: 28rpx;
-			height: 76rpx;
+			width: 640rpx;
+			height: 90rpx;
+			line-height: 90rpx;
+			font-size: 36rpx;
 			color: #fff;
 			background-color: $uni-bg-color;
 			border: none;
-			border-radius: 100rpx;
+			border-radius: 20rpx;
 		}
 	}
 </style>

+ 2 - 2
pages/bean/index.vue

@@ -13,7 +13,7 @@
 						<view class="date">{{ $parseTime(item.createdTime) }}</view>
 					</view>
 					<view class="flex right">
-						<view class="amt">{{ item.logMoney }}</view>
+						<view class="amt">{{ item.logMoney > 0 ? '+' : '' }}{{ item.logMoney }}</view>
 						<view class="balance">余额:{{ item.money }}</view>
 					</view>
 				</view>
@@ -104,7 +104,7 @@
 			height: 230rpx;
 			line-height: 230rpx;
 			border-radius: 10rpx;
-			background: url(https://mp-public-test-1307117429.cos.ap-shanghai.myqcloud.com/md-bkgd.png) center center;
+			background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/md-bkgd.png) center center;
 			font-size: 50rpx;
 			padding-left: 180rpx;
 			font-weight: bold;

+ 10 - 15
pages/choice/index.vue

@@ -8,8 +8,8 @@
 				<view class="choice-list-item" v-for="(item, index) in prizeList" :key="index"
 					@click="selectPrize(item, index)">
 					<view
-						:class="{'item-info action': actionIndex == index && total > 1, 'item-info confirm': actionIndex != index, 'item-info null': item.remainQty == 0}">
-						<view class="flex info">
+						:class="{'item-info action': actionIndex == index && total > 1, 'item-info confirm': actionIndex != index ||  total == 1, 'item-info null': item.remainQty == 0}">
+						<view class="flex info-image">
 							<image :src="item.picUrl" mode="aspectFill"></image>
 						</view>
 						<view class="title" v-if="item.prizeType && item.prizeType.value != 'coin'">{{ item.title }}
@@ -72,7 +72,6 @@
 		},
 		onLoad(options) {
 			this.ticketId = options.id
-			this.orderId = options.orderId
 		},
 		onShow() {
 			this.getPrizeList()
@@ -82,9 +81,7 @@
 				uni.showLoading({
 					title: '加载中'
 				});
-				let data = this.orderId ? {
-					orderId: this.orderId
-				} : {
+				let data = {
 					ticketId: this.ticketId
 				}
 				$http.post('/api/v1/mp/user/ticket/queryHitPrizeList', data).then(res => {
@@ -96,6 +93,7 @@
 							item.prizeType = JSON.parse(item.prizeType)
 						})
 						this.prizeList = res.data.prizeList
+						console.log(this.prizeList);
 						this.ticketId = res.data.ticketId
 						this.total = this.prizeList.length
 					} else if (res.code == 1018) {
@@ -132,7 +130,6 @@
 									prizeId: item.prizeId
 								}).then(res => {
 									if (res.code == 0) {
-										uni.$u.toast('兑换成功');
 										_this.comfirmShow = true
 									}
 								})
@@ -146,7 +143,6 @@
 						prizeId: item.prizeId
 					}).then(res => {
 						if (res.code == 0) {
-							uni.$u.toast('兑换成功');
 							_this.comfirmShow = true
 						}
 					})
@@ -184,9 +180,8 @@
 <style lang="scss" scoped>
 	.choice {
 		width: 100%;
-		min-height: calc(100vh - 50px);
-		background: url(https://mp-public-test-1307117429.cos.ap-shanghai.myqcloud.com/background.png) center center;
-		padding-bottom: 150rpx;
+		min-height: calc(100vh - 44px - var(--status-bar-height));
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/background.png) center center;
 
 		&-title {
 			padding-top: 100rpx;
@@ -252,9 +247,9 @@
 					border: 2px solid rgba(187, 187, 187, 54);
 				}
 
-				.info {
+				.info-image {
 					width: 100%;
-					height: 75%;
+					min-height: 75%;
 					background-color: #F8F8F8;
 					border-top-left-radius: 10rpx;
 					border-top-right-radius: 10rpx;
@@ -286,11 +281,11 @@
 			.confirm {
 				width: 400rpx;
 				height: 80rpx;
+				font-size: 36rpx;
 				line-height: 80rpx;
-				border-radius: 8px;
+				border-radius: 20rpx;
 				background-color: rgba(235, 112, 9, 100);
 				color: rgba(255, 255, 255, 100);
-				font-size: 28rpx;
 				text-align: center;
 			}
 		}

+ 23 - 19
pages/core/index.vue

@@ -7,15 +7,15 @@
 		</u-navbar>
 		<view class="core">
 			<view class="flex core-list">
-				<navigator :url="`/pages/goods/detail?id=${ item.goodsId }`" class="core-list-item" hover-class="navigator-hover"
-					v-for="(item, index) in list" :key="index">
+				<navigator :url="`/pages/goods/detail?id=${ item.goodsId }`" class="core-list-item"
+					hover-class="navigator-hover" v-for="(item, index) in list" :key="index">
 					<view class="flex iamge-wrap">
-						<image :src="item.picUrl" mode="aspectFill"></image>
+						<image :src="item.picUrl" mode=""></image>
 					</view>
 					<view class="title">{{ item.title }}</view>
 					<view class="bean">
 						<image src="../../static/icon/bean.png" mode="aspectFill"></image>
-						<view>x{{ item.exchangePrice }}</view>
+						<view>× {{ item.exchangePrice }}</view>
 					</view>
 				</navigator>
 				<view class="core-list-item"></view>
@@ -43,7 +43,7 @@
 				list: [],
 			};
 		},
-		
+
 		onLoad() {
 			this.pageList()
 		},
@@ -71,15 +71,15 @@
 					uni.hideLoading();
 				})
 			},
-			
-			pageList(){
+
+			pageList() {
 				this.pageNum = 1
 				this.total = 0
 				this.list = []
 				this.getList()
 			}
 		},
-		
+
 		onReachBottom() {
 			// 判断是否有数据
 			if (this.total > this.pageNum * 20) {
@@ -102,28 +102,30 @@
 		margin: 20rpx 0;
 
 		&-list {
-			justify-content: space-around;
+			justify-content: space-evenly;
 			flex-wrap: wrap;
 
 			&-item {
-				width: 320rpx;
 				box-sizing: border-box;
-				padding: 0 14rpx;
+				width: 340rpx;
+				height: 502rpx;
 				background-color: #FFFFFF;
-				padding-bottom: 24rpx;
 				border-radius: 10rpx;
-				margin-bottom: 40rpx;
+				margin-bottom: 30rpx;
 
 				.iamge-wrap {
 					image {
-						width: 150rpx;
-						height: 200rpx;
-						padding: 50rpx 0;
+						border-top-left-radius: 10rpx;
+						border-top-right-radius: 10rpx;
+						width: 340rpx;
+						height: 340rpx;
+						margin-bottom: 6rpx;
 					}
 				}
 
 				.title {
-					font-size: 24rpx;
+					padding: 0 14rpx;
+					font-size: 28rpx;
 					line-height: 40rpx;
 					overflow: hidden;
 					text-overflow: ellipsis;
@@ -133,13 +135,14 @@
 				}
 
 				.bean {
+					padding: 0 14rpx;
 					display: flex;
 					align-items: center;
 					font-size: 32rpx;
 					line-height: 44rpx;
 					color: rgba(235, 112, 9, 100);
 					margin-top: 12rpx;
-					
+
 					image {
 						width: 42rpx;
 						height: 42rpx;
@@ -150,9 +153,10 @@
 
 			&-item:last-child {
 				padding: 0;
+				height: 0;
 			}
 		}
-		
+
 		.empty {
 			height: 60vh;
 		}

+ 16 - 17
pages/goods/detail.vue

@@ -3,13 +3,13 @@
 		<u-navbar title="商品详情" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" />
 		<view class="detail">
 			<view class="detail-top">
-				<u-swiper :list="picUrlArr" height="348" radius="0" :indicator="true" :circular="true"></u-swiper>
+				<u-swiper :list="picUrlArr" height="375" radius="0" :indicator="true" :circular="true"></u-swiper>
 			</view>
 			<view class="detail-title">
 				<view class="txt">{{ info.title }}</view>
 				<view class="coin">
 					<image src="../../static/icon/bean.png" mode=""></image>
-					<view>x {{ info.exchangePrice }}</view>
+					<view>× {{ info.exchangePrice }}</view>
 				</view>
 			</view>
 			<view class="detail-goods">商品详情</view>
@@ -34,7 +34,7 @@
 						<view class="info-title">{{ info.title }}</view>
 						<view class="info-coin">
 							<image src="../../static/icon/bean.png" mode=""></image>
-							<view>x {{ payInfo.exValue }}</view>
+							<view>× {{ payInfo.exValue }}</view>
 						</view>
 						<view class="info-stock">库存:{{ payInfo.quantity }}</view>
 					</view>
@@ -61,7 +61,7 @@
 						<view class="title">应付:</view>
 						<view class="flex coin">
 							<image src="../../static/icon/bean.png" mode=""></image>
-							<view>x {{ payInfo.exchangePrice }}</view>
+							<view>× {{ payInfo.exchangePrice }}</view>
 						</view>
 					</view>
 					<view class="btn-right">
@@ -284,7 +284,7 @@
 		padding-bottom: 100rpx;
 
 		&-top {
-			height: 696rpx;
+			height: 750rpx;
 			background-color: #FFFFFF;
 		}
 
@@ -448,13 +448,13 @@
 
 			&-right {
 				.confirm {
-					width: 250rpx;
-					height: 60rpx;
-					line-height: 60rpx;
-					border-radius: 8px;
+					width: 280rpx;
+					height: 90rpx;
+					font-size: 36rpx;
+					line-height: 90rpx;
+					border-radius: 10rpx;
 					background-color: rgba(235, 112, 9, 100);
 					color: rgba(255, 255, 255, 100);
-					font-size: 28rpx;
 					text-align: center;
 				}
 			}
@@ -516,17 +516,16 @@
 		padding-bottom: env(safe-area-inset-bottom);
 
 		.btn {
-			padding: 20rpx 40rpx;
-
+			padding: 20rpx 0;
 			/deep/ button {
-				width: 100%;
-				line-height: 60rpx;
-				font-size: 28rpx;
-				height: 60rpx;
+				width: 640rpx;
+				height: 90rpx;
+				line-height: 90rpx;
+				font-size: 36rpx;
 				color: #fff;
 				background-color: $uni-bg-color;
 				border: none;
-				border-radius: 100rpx;
+				border-radius: 20rpx;
 			}
 		}
 	}

+ 2 - 2
pages/index/index.vue

@@ -30,7 +30,7 @@
 			</view>
 			<view class="box-ticket-tip">超值保底100%中奖</view>
 			<view class="box-start flex">
-				<view class="flex box-start-action" @click="toProcess">
+				<view class="flex box-start-action" @click="exchange">
 					<text>立即</text>
 					<text>开刮</text>
 				</view>
@@ -185,7 +185,7 @@
 	.box {
 		width: 100%;
 		min-height: calc(100vh - 50px);
-		background: url(https://mp-public-test-1307117429.cos.ap-shanghai.myqcloud.com/background.png) center center;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/background.png) center center;
 
 		&-top {
 			display: flex;

+ 11 - 8
pages/lucky/index.vue

@@ -29,7 +29,8 @@
 			</view>
 		</u-popup>
 
-		<hch-poster ref="hchPoster" @cancel="handleCancel" :posterData.sync="posterData" @previewImage='previewImage' @canvasConfirm="toIndex" />
+		<hch-poster ref="hchPoster" @cancel="handleCancel" :posterData.sync="posterData" @previewImage='previewImage'
+			@canvasConfirm="toIndex" />
 	</view>
 </template>
 
@@ -233,7 +234,7 @@
 			handleCancel() {
 
 			},
-			
+
 			toIndex() {
 				uni.switchTab({
 					url: '/pages/index/index'
@@ -246,8 +247,8 @@
 <style lang="scss" scoped>
 	.lucky {
 		width: 100%;
-		min-height: calc(100vh - 50px);
-		background: url(https://mp-public-test-1307117429.cos.ap-shanghai.myqcloud.com/background.png) center center;
+		min-height: calc(100vh - 44px - var(--status-bar-height));
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/background.png) center center;
 
 		&-number {
 			padding-top: 300rpx;
@@ -295,12 +296,13 @@
 				color: #888787;
 			}
 		}
-		
-		&-tip{
+
+		&-tip {
 			padding: 0 40rpx;
 			color: #333;
 			width: 80vw;
-			height: 200rpx;;
+			height: 200rpx;
+			;
 			border-radius: 10rpx;
 			background-color: rgba(255, 255, 255, 20);
 			// opacity: .4;
@@ -312,8 +314,9 @@
 			.pay {
 				width: 400rpx;
 				height: 80rpx;
+				font-size: 36rpx;
 				line-height: 80rpx;
-				border-radius: 8rpx;
+				border-radius: 20rpx;
 				background-color: rgba(235, 112, 9, 100);
 				color: #FFFFFF;
 				text-align: center;

+ 119 - 8
pages/order/detail.vue

@@ -21,7 +21,11 @@
 							</view>
 							<view class="detail-info-content-goods__detail__right">
 								<view class="title">{{ item.title }}</view>
-								<view class="num">x {{ item.goodsNum }}</view>
+								<view class="flex num">
+									<view class="sku" v-if="!item.properties"></view>
+									<view class="sku" v-if="item.properties">规格:{{ item.properties }}</view>
+									<view class="">数量:{{ item.goodsNum }}</view>
+								</view>
 							</view>
 						</view>
 					</view>
@@ -61,20 +65,57 @@
 				</view>
 			</view>
 
-			<view class="detail-info" v-if="status.value == 2">
+			<view class="detail-info" v-if="(status.value == 2 || status.value == 4) && deliverList.length > 1">
 				<view class="detail-info-title">发货信息</view>
-				<view class="detail-info-content">
+				<view class="detail-info-content border" v-for="(item, index) in deliverList" :key="index">
+					<view class="detail-info-content-desc">
+						<view>快递公司:</view>
+						<view>{{ item.companyName || '-' }}</view>
+					</view>
+					<view class="detail-info-content-desc">
+						<view>物流单号:</view>
+						<view>{{ item.deliveryFlowId || '-' }}</view>
+					</view>
+					<view class="detail-info-content-desc">
+						<view>发货时间:</view>
+						<view>{{ $parseTime(item.deliveryTime) }}</view>
+					</view>
+					<view class="detail-info-content-deliver">
+						<view class="flex detail-info-content-deliver__detail" v-for="(items, indexs) in item.items"
+							:key="indexs">
+							<view class="detail-info-content-deliver__detail__left">
+								<view class="img">
+									<image class="img" :src="items.picUrl" mode="aspectFill">
+									</image>
+								</view>
+							</view>
+							<view class="detail-info-content-deliver__detail__right">
+								<view class="title">{{ items.title }}</view>
+								<view class="flex num">
+									<view class="sku" v-if="!items.properties"></view>
+									<view class="sku" v-if="items.properties">规格:{{ items.properties }}</view>
+									<view class="">数量:{{ items.goodsNum }}</view>
+								</view>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+			
+			<view class="detail-info" v-if="(status.value == 2 || status.value == 4) && deliverList.length == 1">
+				<view class="detail-info-title">发货信息</view>
+				<view class="detail-info-content" v-for="(item, index) in deliverList" :key="index">
 					<view class="detail-info-content-desc">
 						<view>快递公司:</view>
-						<view>-</view>
+						<view>{{ item.companyName || '-' }}</view>
 					</view>
 					<view class="detail-info-content-desc">
 						<view>物流单号:</view>
-						<view>-</view>
+						<view>{{ item.deliveryFlowId || '-' }}</view>
 					</view>
 					<view class="detail-info-content-desc">
 						<view>发货时间:</view>
-						<view>-</view>
+						<view>{{ $parseTime(item.deliveryTime) }}</view>
 					</view>
 				</view>
 			</view>
@@ -98,6 +139,7 @@
 				info: {},
 				addr: {},
 				list: [],
+				deliverList: []
 			};
 		},
 		onLoad(opthios) {
@@ -119,6 +161,13 @@
 						let picUrlArr = item.picUrl.split(',')
 						item.picUrl = env.filePublic + picUrlArr[0]
 					})
+					res.data.deliverList && res.data.deliverList.forEach((item) => {
+						item.items.forEach((ele) => {
+							let picUrlArr = ele.picUrl.split(",");
+							ele.picUrl = env.filePublic + picUrlArr[0];
+						});
+					});
+					this.deliverList = res.data.deliverList;
 					this.list = res.data.items
 				}).catch(() => {
 					uni.hideLoading();
@@ -225,7 +274,7 @@
 			}
 
 			&-content {
-
+				
 				&-goods {
 
 					&__detail {
@@ -240,7 +289,7 @@
 							.img {
 
 								image {
-									width: 134rpx;
+									width: 170rpx;
 									height: 170rpx;
 									margin-right: 20rpx;
 								}
@@ -254,6 +303,15 @@
 							flex-direction: column;
 							justify-content: space-between;
 							align-items: flex-end;
+
+							.num {
+								width: 100%;
+								justify-content: space-between;
+
+								.sku {
+									color: #8C8C8C;
+								}
+							}
 						}
 
 					}
@@ -301,6 +359,59 @@
 				&-desc:last-child {
 					margin-bottom: 0;
 				}
+
+				&-deliver {
+					&__detail {
+						padding: 20rpx 0;
+						justify-content: space-between;
+						border-bottom: 1px solid rgba(236, 236, 236, 100);
+
+						&__left {
+							display: flex;
+							height: 170rpx;
+
+							.img {
+
+								image {
+									width: 170rpx;
+									height: 170rpx;
+									margin-right: 20rpx;
+								}
+							}
+						}
+
+						&__right {
+							flex: 1;
+							display: flex;
+							height: 170rpx;
+							flex-direction: column;
+							justify-content: space-between;
+							align-items: flex-end;
+
+							.num {
+								width: 100%;
+								justify-content: space-between;
+
+								.sku {
+									color: #8C8C8C;
+								}
+							}
+						}
+
+					}
+
+					&__detail:last-child {
+						border: none;
+					}
+				}
+			}
+			
+			.border{
+				border-bottom: 1px solid rgba(236, 236, 236, 100);
+			}
+			
+			.border:last-child{
+				border: none;
 			}
 		}
 

+ 5 - 5
pages/order/index.vue

@@ -199,13 +199,13 @@
 				if (e.index == 0) {
 					this.status = null
 				} else if (e.index == 1) {
-					this.status = 0
+					this.status = '0'
 				} else if (e.index == 2) {
-					this.status = 1
+					this.status = '1,4'
 				} else if (e.index == 3) {
-					this.status = 2
+					this.status = '2'
 				} else if (e.index == 4) {
-					this.status = -1
+					this.status = '-1'
 				}
 				this.pageList()
 			},
@@ -287,7 +287,7 @@
 
 								.img {
 									image {
-										width: 134rpx;
+										width: 170rpx;
 										height: 170rpx;
 										margin-right: 20rpx;
 									}

+ 1 - 1
pages/order/settlement.vue

@@ -353,7 +353,7 @@
 					.img {
 
 						image {
-							width: 134rpx;
+							width: 170rpx;
 							height: 170rpx;
 							margin-right: 20rpx;
 						}

+ 6 - 2
pages/prize/detail.vue

@@ -73,8 +73,8 @@
 			border-bottom: 1px dashed rgba(236, 236, 236, 100);
 
 			image {
-				width: 94rpx;
-				height: 132rpx;
+				width: 128rpx;
+				height: 128rpx;
 			}
 
 			.info {
@@ -90,6 +90,10 @@
 				align-items: flex-start;
 				padding-left: 20rpx;
 			}
+			
+			.title{
+				font-weight: bold;
+			}
 
 			.txt {
 				font-size: 24rpx;

+ 33 - 22
pages/prize/index.vue

@@ -27,11 +27,8 @@
 						<image :src="item.picUrl" mode="aspectFill"></image>
 						<view class="flex desc">
 							<view class="content">{{ item.title }}</view>
-							<view class="flex num">
-								<view class="" v-if="!item.properties"></view>
-								<view class="" v-if="item.properties">规格:{{ item.properties }}</view>
-								<view class="">数量:{{ item.goodsNum }}</view>
-							</view>
+							<view class="sku" v-if="item.properties">规格:{{ item.properties }}</view>
+							<view class="">数量:{{ item.goodsNum }}</view>
 						</view>
 					</view>
 				</view>
@@ -67,6 +64,7 @@
 			<!-- 实物商品提货 -->
 			<view class="flex prize-action-goods" v-if="state == 0">
 				<view class="flex checkbox">
+					<view class="all">全选</view>
 					<u-checkbox-group>
 						<u-checkbox :value="checkedAll" shape="circle" :checked="checkedAll" activeColor="#E96737"
 							@change="changeCheckedAll($event)"></u-checkbox>
@@ -227,8 +225,8 @@
 	}
 
 	.prize-goods {
-		margin-top: 104rpx;
-		padding: 40rpx 30rpx 100rpx;
+		margin-top: 90rpx;
+		padding: 40rpx 20rpx 100rpx;
 
 		&-list {
 
@@ -237,7 +235,7 @@
 				padding: 36rpx 16rpx;
 				background-color: #fff;
 				border-radius: 10rpx;
-				margin-bottom: 40rpx;
+				margin-bottom: 30rpx;
 
 				.checkbox {}
 
@@ -247,27 +245,32 @@
 				}
 
 				image {
-					width: 122rpx;
-					height: 164rpx;
+					width: 200rpx;
+					height: 200rpx;
 				}
 
 				.desc {
-					height: 164rpx;
+					height: 200rpx;
 					padding-left: 22rpx;
 					flex: 1;
+					font-size: 30rpx;
 					flex-direction: column;
-					align-items: flex-end;
+					align-items: flex-start;
 					justify-content: space-between;
 				}
 
 				.content {
 					line-height: 40rpx;
+					font-weight: bold;
 					overflow: hidden;
 					text-overflow: ellipsis;
 					display: -webkit-box;
 					-webkit-box-orient: vertical;
 					-webkit-line-clamp: 2;
 				}
+				.sku{
+					color: #848484;
+				}
 
 				.num {
 					width: 100%;
@@ -283,8 +286,8 @@
 	}
 
 	.prize-coupon {
-		margin-top: 104rpx;
-		padding: 40rpx 30rpx 100rpx;
+		margin-top: 90rpx;
+		padding: 40rpx 20rpx 100rpx;
 
 		&-list {
 
@@ -293,11 +296,11 @@
 				background-color: #FFFFFF;
 				padding: 40rpx 20rpx;
 				border-radius: 10rpx;
-				margin-bottom: 40rpx;
+				margin-bottom: 30rpx;
 
 				image {
-					width: 94rpx;
-					height: 132rpx;
+					width: 128rpx;
+					height: 128rpx;
 				}
 
 				.info {
@@ -312,6 +315,10 @@
 					align-items: flex-start;
 					padding-left: 20rpx;
 				}
+				
+				.title{
+					font-weight: bold;
+				}
 
 				.txt {
 					font-size: 24rpx;
@@ -365,16 +372,20 @@
 
 		&-goods {
 			justify-content: space-between;
-			padding: 30rpx 40rpx;
+			padding: 20rpx 40rpx;
+			
+			.all{
+				margin-right: 10rpx;
+			}
 
 			.btn {
-				width: 250rpx;
-				height: 60rpx;
-				line-height: 60rpx;
+				width: 280rpx;
+				height: 90rpx;
+				font-size: 36rpx;
+				line-height: 90rpx;
 				border-radius: 10rpx;
 				background-color: rgba(235, 112, 9, 100);
 				color: rgba(255, 255, 255, 100);
-				font-size: 28rpx;
 				text-align: center;
 			}
 		}

+ 86 - 11
pages/process/index.vue

@@ -1,13 +1,20 @@
 <template>
 	<view>
-		<!-- <u-navbar title="兑奖" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" /> -->
+		<u-navbar title="兑奖" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" />
 		<view class="process">
 			<view class="flex box-wrap">
-				<view class="box">
-					
+				<view class="flex box">
+					<image :src="picUrlArr[0]" mode=""></image>
+					<view class="box-title">
+						<view class="txt">{{ info.title }}</view>
+						<view class="id">序列号:{{ info.serialNo }}</view>
+					</view>
 				</view>
 			</view>
-			<view class="btn" @click="put">立即刮开兑奖</view>
+			<view class="flex btn-wrap">
+				<view class="btn" @click="toChoice">立即刮开兑奖</view>
+				<view class="btn" @click="put">暂不兑奖</view>
+			</view>
 		</view>
 	</view>
 </template>
@@ -18,13 +25,36 @@
 	export default {
 		data() {
 			return {
-				id: ''
+				id: '',
+				info: {},
+				picUrlArr: []
 			};
 		},
 		onLoad(options) {
 			this.id = options.id
+			this.getDetail()
 		},
 		methods: {
+			getDetail() {
+				uni.showLoading({
+					title: '加载中'
+				});
+				$http.post('/api/v1/mp/user/ticket/query', {
+					orderId: this.id,
+				}).then(res => {
+					uni.hideLoading();
+					if (res.code == 0) {
+						this.info = res.data
+						let picUrlArr = res.data.picUrl.split(',')
+						picUrlArr.forEach(item => {
+							this.picUrlArr.push(env.filePublic + item)
+						})
+					}
+				}).catch(() => {
+					uni.hideLoading();
+				})
+			},
+
 			put() {
 				uni.navigateBack({
 					delta: 1
@@ -33,7 +63,7 @@
 
 			toChoice() {
 				uni.redirectTo({
-					url: `/pages/choice/index?orderId=${ this.id }`
+					url: `/pages/choice/index?id=${ this.info.ticketId }`
 				})
 			},
 		}
@@ -43,22 +73,67 @@
 <style lang="scss" scoped>
 	.process {
 		width: 100%;
-		min-height: calc(100vh - 50px);
-		background: url(https://mp-public-test-1307117429.cos.ap-shanghai.myqcloud.com/background.png) center center;
+		min-height: calc(100vh - 44px - var(--status-bar-height));
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/background.png) center center;
 	}
 
 	.box-wrap {
-		padding: 280rpx 0 120rpx;
+		padding: 140rpx 0 120rpx;
 
 		.box {
+			flex-direction: column;
+			justify-content: flex-start;
 			position: relative;
 			width: 540rpx;
 			height: 820rpx;
 			background-color: rgba(255, 255, 255, 0.75);
 			border-radius: 10rpx;
-		}
 
-		
+			image {
+				width: 480rpx;
+				height: 630rpx;
+				padding-top: 40rpx;
+			}
+
+			&-title {
+				margin-top: 20rpx;
+
+				.txt {
+					text-align: center;
+					font-size: 36rpx;
+					font-weight: bold;
+					line-height: 50rpx;
+					margin-bottom: 16rpx;
+				}
+
+				.id {
+					line-height: 40rpx;
+					text-align: center;
+					color: #888787;
+				}
+			}
+		}
 	}
 
+	.btn-wrap {
+		flex-direction: column;
+
+		.btn {
+			width: 400rpx;
+			height: 80rpx;
+			font-size: 36rpx;
+			line-height: 80rpx;
+			border-radius: 20rpx;
+			background-color: rgba(235, 112, 9, 100);
+			color: #FFFFFF;
+			text-align: center;
+			margin-bottom: 40rpx;
+		}
+
+		.btn:last-child {
+			background-color: #FFFFFF;
+			color: rgba(235, 112, 9, 100);
+			border: 1px solid rgba(235, 112, 9, 100);
+		}
+	}
 </style>

+ 30 - 32
pages/ticketBox/detail.vue

@@ -30,9 +30,9 @@
 								<image :src="item.picUrl" mode="scaleToFill"></image>
 							</view>
 							<view class="info">
-								<text>{{ item.title }}</text>
-								<text>价值:¥{{ $numberFormat(item.value) }}</text>
-								<text>概率:{{ item.hitRate }}%</text>
+								<text class="title">{{ item.title }}</text>
+								<text class="num">价值:¥{{ $numberFormat(item.value) }}</text>
+								<text class="num">概率:{{ item.hitRate }}%</text>
 							</view>
 							<view class="name">{{ item.name }}</view>
 						</view>
@@ -43,7 +43,7 @@
 		</view>
 		<view class="footer-fixed">
 			<view class="flex btn">
-				<button type="default" @click="exchange">10元 立即开刮</button>
+				<button type="default" @click="exchange">{{ info.salePrice / 100 }}元 立即开刮</button>
 			</view>
 		</view>
 
@@ -232,51 +232,49 @@
 			}
 
 			&-list {
+				padding-bottom: 100rpx;
 				&-item {
 					position: relative;
 					background-color: #FFFFFF;
-					margin-bottom: 40rpx;
+					margin-bottom: 30rpx;
 					border-radius: 10rpx;
-
+					padding: 30rpx 20rpx;
 
 					&__value {
 						display: flex;
 					}
 
-					.image-wrap {
-						width: 250rpx;
-						height: 250rpx;
-						margin-right: 30rpx;
-
-						image {
-							width: 180rpx;
-							height: 120rpx;
-						}
+					image {
+						width: 200rpx;
+						height: 200rpx;
 					}
 
 					.name {
 						position: absolute;
+						left: 0rpx;
+						top: 0rpx;
 						line-height: 28rpx;
-						padding: 6rpx 20rpx;
+						padding: 10rpx 40rpx;
 						color: #FFFFFF;
+						border-top-left-radius: 10rpx;
+						border-bottom-right-radius: 40rpx;
 						background-color: $uni-bg-color;
 					}
 
 					.info {
 						display: flex;
 						flex-direction: column;
-						font-size: 24rpx;
-
-						text {
-							margin-bottom: 10rpx;
-						}
-
-						text:first-child {
-							font-size: 28rpx;
-							margin-top: 24rpx;
-							margin-bottom: 55rpx;
+						justify-content: space-between;
+						font-size: 30rpx;
+						padding-left: 50rpx;
+						
+						.title{
 							font-weight: bold;
 						}
+						
+						.num{
+							color: #848484;
+						}
 					}
 				}
 
@@ -300,17 +298,17 @@
 		padding-bottom: env(safe-area-inset-bottom);
 
 		.btn {
-			padding: 20rpx 40rpx;
+			padding: 20rpx 0;
 
 			/deep/ button {
-				width: 100%;
-				line-height: 60rpx;
-				font-size: 28rpx;
-				height: 60rpx;
+				width: 640rpx;
+				height: 90rpx;
+				line-height: 90rpx;
+				font-size: 36rpx;
 				color: #fff;
 				background-color: $uni-bg-color;
 				border: none;
-				border-radius: 100rpx;
+				border-radius: 20rpx;
 			}
 		}
 	}

+ 7 - 7
pages/user/index.vue

@@ -46,7 +46,7 @@
 			<u-cell-group :border="false">
 				<u-cell icon="order" title="提货订单" :isLink="true" @click="toOrder"></u-cell>
 				<u-cell icon="map" title="我的地址" :isLink="true" @click="toAddress"></u-cell>
-				<u-cell icon="kefu-ermai" title="联系客服" :isLink="true"></u-cell>
+				<!-- <u-cell icon="kefu-ermai" title="联系客服" :isLink="true"></u-cell> -->
 				<u-cell icon="info-circle" title="关于我们" :border="false" :isLink="true" :url="'/pages/about/index'">
 				</u-cell>
 			</u-cell-group>
@@ -146,12 +146,12 @@
 			logout() {
 				let _this = this
 				if (!this.loginState) {
-					uni.$u.toast('已注销登录!');
+					uni.$u.toast('已退出登录!');
 					return
 				}
 				uni.showModal({
-					title: '注销登录',
-					content: '确定要注销登录吗?',
+					title: '退出登录',
+					content: '确定要退出登录吗?',
 					success(res) {
 						if (res.confirm) {
 							uni.clearStorage()
@@ -180,10 +180,10 @@
 	.user {
 		display: flex;
 		align-items: center;
-		height: 260rpx;
+		height: 300rpx;
 		padding: 0 36rpx;
 		// background: linear-gradient(to right, #a1c4fd 0%, #c2e9fb 100%);
-		background: url(https://mp-public-test-1307117429.cos.ap-shanghai.myqcloud.com/my-bkgd.png) center center;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/my-bkgd.png) center center;
 	}
 
 	.account {
@@ -191,7 +191,7 @@
 		padding: 34rpx;
 		background-color: #FFFFFF;
 		border-radius: 10rpx;
-		margin-top: -106rpx;
+		margin-top: -90rpx;
 		margin-bottom: 40rpx;
 
 		&-ava {

BIN
static/icon/goods_bg.png


Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels