浏览代码

页面调整

lsx 2 年之前
父节点
当前提交
99702f3a1b
共有 100 个文件被更改,包括 2939 次插入4123 次删除
  1. 5 0
      src/App.vue
  2. 3 3
      src/components/custom-tab-bar/custom-tab-bar.vue
  3. 31 31
      src/components/pay-popup/pay-popup.vue
  4. 9 9
      src/packageGoods/components/exchange-popup/exchange-popup.vue
  5. 9 9
      src/packageGoods/components/purchase-popup/purchase-popup.vue
  6. 5 5
      src/packageGoods/coupon/index.vue
  7. 51 34
      src/packageGoods/goods/detail.vue
  8. 3 5
      src/packageGoods/goods/list.vue
  9. 40 38
      src/packageGoods/order/detail.vue
  10. 481 463
      src/packageGoods/order/index.vue
  11. 5 5
      src/packageGoods/order/logistics.vue
  12. 7 7
      src/packageGoods/order/settlement.vue
  13. 35 35
      src/packageGoods/promoters/index.vue
  14. 6 6
      src/packageGoods/recovery/detail.vue
  15. 7 7
      src/packageGoods/recovery/index.vue
  16. 二进制
      src/packageGoods/static/list_down.png
  17. 二进制
      src/packageGoods/static/list_null.png
  18. 二进制
      src/packageGoods/static/list_up.png
  19. 二进制
      src/packageGoods/static/ordr/addr.png
  20. 二进制
      src/packageGoods/static/ordr/bg.png
  21. 5 4
      src/packageGoods/ticket/index.vue
  22. 122 109
      src/packageOperate/activity/index.vue
  23. 111 79
      src/packageOperate/activity/record.vue
  24. 1 1
      src/packageOperate/address/create.vue
  25. 6 7
      src/packageOperate/address/index.vue
  26. 26 33
      src/packageOperate/components/activity-help/activity-help.vue
  27. 1 1
      src/packageOperate/creator/index.vue
  28. 8 8
      src/packageOperate/exchange/index.vue
  29. 3 3
      src/packageOperate/process/index.vue
  30. 二进制
      src/packageOperate/static/activity/effectsfive.png
  31. 二进制
      src/packageOperate/static/activity/effectsone.png
  32. 二进制
      src/packageOperate/static/activity/effectssix.png
  33. 二进制
      src/packageOperate/static/activity/effectsthree.png
  34. 二进制
      src/packageOperate/static/activity/effectstwo.png
  35. 二进制
      src/packageOperate/static/activity/logo.png
  36. 二进制
      src/packageOperate/static/activity/rectangle.png
  37. 二进制
      src/packageOperate/static/image1.png
  38. 1 1
      src/packageOperate/store/index.vue
  39. 1 1
      src/packageOther/about/index.vue
  40. 1 1
      src/packagePrize/address/index.vue
  41. 3 2
      src/packagePrize/bean/components/transfer.vue
  42. 22 14
      src/packagePrize/bean/index.vue
  43. 79 99
      src/packagePrize/choice/index.vue
  44. 5 5
      src/packagePrize/components/sku-popup/sku-popup.vue
  45. 3 3
      src/packagePrize/coupon/detail.vue
  46. 6 6
      src/packagePrize/coupon/use.vue
  47. 2 2
      src/packagePrize/goods/detail.vue
  48. 11 11
      src/packagePrize/goods/index.vue
  49. 28 25
      src/packagePrize/prize/index.vue
  50. 1 1
      src/packagePrize/prize/redpkg.vue
  51. 26 18
      src/packagePrize/purchase/index.vue
  52. 44 39
      src/packagePrize/rolling/animation.vue
  53. 3 3
      src/packagePrize/rolling/index.vue
  54. 二进制
      src/packagePrize/static/prize_coupon.png
  55. 二进制
      src/packagePrize/static/prize_coupon_use.png
  56. 299 301
      src/packagePrize/ticket/index.vue
  57. 58 73
      src/pages/activity/index.vue
  58. 34 34
      src/pages/core/index.vue
  59. 0 1213
      src/pages/index/index -2022-7-15.vue
  60. 244 321
      src/pages/index/index.vue
  61. 265 253
      src/pages/login/code.vue
  62. 330 330
      src/pages/login/index.vue
  63. 44 39
      src/pages/lucky/index.vue
  64. 8 8
      src/pages/ticketBox/detail.vue
  65. 441 418
      src/pages/user/index.vue
  66. 二进制
      src/static/activity/beijing.png
  67. 二进制
      src/static/activity/beijingtwo.png
  68. 二进制
      src/static/activity/null.png
  69. 二进制
      src/static/activity/tupian.jpg
  70. 二进制
      src/static/activity/yuanjiao.png
  71. 二进制
      src/static/core/core_bg.png
  72. 二进制
      src/static/core/core_block.png
  73. 二进制
      src/static/core/core_right.png
  74. 二进制
      src/static/core/core_tag.png
  75. 二进制
      src/static/index/barrage_bgTwo.png
  76. 二进制
      src/static/index/games.png
  77. 二进制
      src/static/index/index_anniu.png
  78. 二进制
      src/static/index/index_beijing.png
  79. 二进制
      src/static/index/index_btn.png
  80. 二进制
      src/static/index/index_btn_left.png
  81. 二进制
      src/static/index/index_btn_right.png
  82. 二进制
      src/static/index/index_btn_shadow.png
  83. 二进制
      src/static/index/index_duihuandating.png
  84. 二进制
      src/static/index/index_rules.png
  85. 二进制
      src/static/index/index_service.png
  86. 二进制
      src/static/index/index_time_top.png
  87. 二进制
      src/static/index/index_tip.png
  88. 二进制
      src/static/index/index_tip_bgTwo.png
  89. 二进制
      src/static/index/index_tip_left.png
  90. 二进制
      src/static/lucky/lucky_bg.png
  91. 二进制
      src/static/lucky/lucky_gkmp.png
  92. 二进制
      src/static/lucky/lucky_gkmptwo.png
  93. 二进制
      src/static/lucky/lucky_guajiangqu.png
  94. 二进制
      src/static/lucky/lucky_piaohao.png
  95. 二进制
      src/static/lucky/lucky_tu.png
  96. 二进制
      src/static/lucky/lucky_yidong.png
  97. 二进制
      src/static/lucky/zioff.png
  98. 二进制
      src/static/public/logo.png
  99. 二进制
      src/static/public/promoter.png
  100. 二进制
      src/static/public/public_coupon.png

+ 5 - 0
src/App.vue

@@ -106,6 +106,11 @@
 		-webkit-line-clamp: 2;
 	}
 
+	::v-deep .u-tabs__wrapper__nav__line {
+		border-radius: 0!important;
+		bottom: 0px!important;
+	}
+
 	.ells-one {
 		overflow: hidden;
 		text-overflow: ellipsis;

+ 3 - 3
src/components/custom-tab-bar/custom-tab-bar.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<u-tabbar :value="activeValue" @change="changeTabbar" zIndex="999" :fixed="true" activeColor="#F9822C" :placeholder="true"
+		<u-tabbar :value="activeValue" @change="changeTabbar" zIndex="999" :fixed="true" activeColor="#CF59EB" :placeholder="true"
 			:safeAreaInsetBottom="true">
 			<u-tabbar-item :text="item.text" :name="item.name" v-for="(item, index) in list" :key="index">
 				<image class="icon" slot="active-icon" :src="item.selectedIconPath"></image>
@@ -81,7 +81,7 @@
 
 <style lang="scss" scoped>
 	.icon {
-		width: 45rpx;
-		height: 45rpx;
+		width: 40rpx;
+		height: 40rpx;
 	}
 </style>

+ 31 - 31
src/components/pay-popup/pay-popup.vue

@@ -44,7 +44,7 @@
 				<view class="flex agreement">
 					<view class="checked">
 						<u-checkbox-group>
-							<u-checkbox :value="checked" :checked="checked" shape="circle" activeColor="#F9822C"
+							<u-checkbox :value="checked" :checked="checked" shape="circle" activeColor="#8E51F7"
 								@change="changeChecked"></u-checkbox>
 						</u-checkbox-group>
 					</view>
@@ -61,18 +61,18 @@
 				</view>
 			</view>
 		</u-popup>
-		<auth :auth-show="authShow" @close="authShow = false" />
+		<auth :auth-show="authShow" @close="authShow = false" />
 	</view>
 </template>
 
 <script>
 	import $http from '@/utils/request.js'
 	import appId from '@/config/appId.js'
-	import Auth from '../../components/auth/auth.vue'
+	import Auth from '../../components/auth/auth.vue'
 	export default {
 		name: "pay-popup",
 		components: {
-			Auth,
+			Auth,
 		},
 		props: {
 			payShow: {
@@ -94,8 +94,8 @@
 					name: "", //名字
 					workNo: "" //工号
 				},
-				promoterNum: 0, //推广员
-				siteId: "", // 门店id
+				promoterNum: 0, //推广员
+				siteId: "", // 门店id
 			};
 		},
 		created() {
@@ -148,15 +148,15 @@
 				})
 			},
 
-			toCoupon() {
-				if(this.payInfo && this.payInfo.siteId){
-					uni.navigateTo({
-						url: `/packageGoods/coupon/index?channelId=${ this.payInfo.channelId }&couponId=${ this.payInfo.couponId }&boxId=${ this.payInfo.boxId }&ticketId=${ this.payInfo.ticketId }&siteId=${ this.payInfo.siteId }`
-					})
-				}else{
-					uni.navigateTo({
-						url: `/packageGoods/coupon/index?channelId=${ this.payInfo.channelId }&couponId=${ this.payInfo.couponId }&boxId=${ this.payInfo.boxId }&ticketId=${ this.payInfo.ticketId }`
-					})
+			toCoupon() {
+				if(this.payInfo && this.payInfo.siteId){
+					uni.navigateTo({
+						url: `/packageGoods/coupon/index?channelId=${ this.payInfo.channelId }&couponId=${ this.payInfo.couponId }&boxId=${ this.payInfo.boxId }&ticketId=${ this.payInfo.ticketId }&siteId=${ this.payInfo.siteId }`
+					})
+				}else{
+					uni.navigateTo({
+						url: `/packageGoods/coupon/index?channelId=${ this.payInfo.channelId }&couponId=${ this.payInfo.couponId }&boxId=${ this.payInfo.boxId }&ticketId=${ this.payInfo.ticketId }`
+					})
 				}
 			},
 
@@ -260,16 +260,16 @@
 										}
 									})
 									// #endif
-									// #ifdef H5
-									let data = ele.data
-									_this.close()
-									sessionStorage.setItem('viewUrlData', JSON.stringify(data))
-									uni.navigateTo({
-										url: `/pages/index/payExternal?orderId=${ res.data.orderId }`
-									})
-									// uni.navigateTo({
-									// 	url: `/pages/index/payExternal?viewUrl=${ encodeURIComponent(JSON.stringify(data)) }&orderId=${ res.data.orderId }`
-									// })
+									// #ifdef H5
+									let data = ele.data
+									_this.close()
+									sessionStorage.setItem('viewUrlData', JSON.stringify(data))
+									uni.navigateTo({
+										url: `/pages/index/payExternal?orderId=${ res.data.orderId }`
+									})
+									// uni.navigateTo({
+									// 	url: `/pages/index/payExternal?viewUrl=${ encodeURIComponent(JSON.stringify(data)) }&orderId=${ res.data.orderId }`
+									// })
 									// #endif
 
 								} else if (ele.code == 1005) {
@@ -318,7 +318,7 @@
 	.coupon-right-color {
 		font-size: 32rpx;
 		line-height: 44rpx;
-		color: rgba(235, 112, 9, 100);
+		color: $uni-bg-color;
 	}
 </style>
 <style lang="scss" scoped>
@@ -359,7 +359,7 @@
 
 				&-stock {
 					font-size: 26rpx;
-					color: #FF4208;
+					color: $uni-text-color;
 				}
 			}
 		}
@@ -424,7 +424,7 @@
 				.price {
 					font-size: 30rpx;
 					font-weight: bold;
-					color: #FF4208;
+					color: $uni-text-color;
 				}
 			}
 
@@ -433,8 +433,8 @@
 					width: 414rpx;
 					height: 88rpx;
 					line-height: 88rpx;
-					background: #FA822C;
-					border-radius: 44rpx;
+					background: $uni-btn-color;
+					border-radius: 6rpx;
 					font-size: 36rpx;
 					color: #fff;
 					text-align: center;
@@ -443,4 +443,4 @@
 			}
 		}
 	}
-</style>
+</style>

+ 9 - 9
src/packageGoods/components/exchange-popup/exchange-popup.vue

@@ -16,7 +16,7 @@
 						<!-- #endif -->
 						<view class="goods-left-content__coin flex">
 							<image class="image-coin" src="../../../static/public/goods_coin.png" mode="scaleToFill"></image>
-							<view>× {{ payInfo.exValue }}</view>
+							<view style="margin-left: 8rpx;">×{{ payInfo.exValue }}</view>
 						</view>
 					</view>
 				</view>
@@ -48,7 +48,7 @@
 					<view class="title">应付:</view>
 					<view class="flex coin">
 						<image src="../../../static/public/goods_coin.png" mode="scaleToFill"></image>
-						<view>× {{ payInfo.exchangePrice }}</view>
+						<view style="margin-left: 8rpx;">×{{ payInfo.exchangePrice }}</view>
 					</view>
 				</view>
 				<view class="btn-right">
@@ -226,7 +226,7 @@
 					}
 					
 					&__coin {
-						color: #FA822C;
+						color: $uni-btn-color;
 						
 						.image-coin {
 							width: 34rpx;
@@ -256,15 +256,15 @@
 	
 				&-item {
 					padding: 20rpx 66rpx;
-					border-radius: 36rpx;
+					border-radius: 2rpx;
 					margin-right: 18rpx;
 					background: #F5F6F8;
 					margin-bottom: 34rpx;
 				}
 	
 				.action {
-					background-color: rgba(250, 130, 44, .25);
-					color: #FA822C;
+					background-color: #E8DCFD;
+					color: $uni-btn-color;
 				}
 			}
 		}
@@ -293,7 +293,7 @@
 					align-items: center;
 					font-size: 26rpx;
 					line-height: 30rpx;
-					color: #FA822C;
+					// color: $uni-btn-color;
 	
 					image {
 						width: 34rpx;
@@ -307,8 +307,8 @@
 					width: 414rpx;
 					height: 88rpx;
 					line-height: 88rpx;
-					background: #FA822C;
-					border-radius: 44rpx;
+					background: $uni-btn-color;
+					border-radius: 4rpx;
 					font-size: 36rpx;
 					color: #fff;
 					text-align: center;

+ 9 - 9
src/packageGoods/components/purchase-popup/purchase-popup.vue

@@ -42,8 +42,8 @@
 			<!-- 按钮 -->
 			<view class="flex btn">
 				<view class="flex btn-left">
-					<view class="title">应付:</view>
-					<view class="price">¥{{ $numberFormat(payInfo.value) }}</view>
+					<view class="title">应付:¥{{ $numberFormat(payInfo.value) }}</view>
+					<!-- <view class="price">¥{{ $numberFormat(payInfo.value) }}</view> -->
 				</view>
 				<view class="btn-right">
 					<view class="confirm" @click="confirmPrize">立即购买</view>
@@ -216,7 +216,7 @@
 					}
 					
 					&__price {
-						color: #FA822C;
+						color: $uni-btn-color;
 						font-size: 26rpx;
 					}
 				}
@@ -242,15 +242,15 @@
 	
 				&-item {
 					padding: 20rpx 66rpx;
-					border-radius: 36rpx;
+					border-radius: 2rpx;
 					margin-right: 18rpx;
 					background: #F5F6F8;
 					margin-bottom: 34rpx;
 				}
 	
 				.action {
-					background-color: rgba(250, 130, 44, .25);
-					color: #FA822C;
+					background-color: #E8DCFD;
+					color: $uni-btn-color;
 				}
 			}
 		}
@@ -276,7 +276,7 @@
 			&-left {
 				.price {
 					font-size: 26rpx;
-					color: #FA822C;
+					color: $uni-btn-color;
 				}
 			}
 	
@@ -285,8 +285,8 @@
 					width: 414rpx;
 					height: 88rpx;
 					line-height: 88rpx;
-					background: #FA822C;
-					border-radius: 44rpx;
+					background: $uni-btn-color;
+					border-radius: 4rpx;
 					font-size: 36rpx;
 					color: #fff;
 					text-align: center;

+ 5 - 5
src/packageGoods/coupon/index.vue

@@ -42,7 +42,7 @@
 						</view>
 					</view>
 					<view class="uradio" @click="exclusive(index)">
-						<view class="" style="background-color: #F9822C;width: 24px;height: 24px;border-radius: 50%;" v-if="index == isActive">
+						<view class="" style="background-color: #8E51F7;width: 24px;height: 24px;border-radius: 50%;" v-if="index == isActive">
 							<div style="display: inline-block;margin: 4px;">
 								<u-icon name="checkbox-mark" color="#fff" size="16"></u-icon>
 							</div>
@@ -52,7 +52,7 @@
 								<u-icon name="checkbox-mark" color="#fff" size="16"></u-icon>
 							</div>
 						</view>
-						<!-- <u-radio :customStyle="{ marginBottom: '8px' }" :name="item.id" activeColor="#F9822C" size="24"
+						<!-- <u-radio :customStyle="{ marginBottom: '8px' }" :name="item.id" activeColor="#8E51F7" size="24"
 							@change="exclusive(index)">
 						</u-radio> -->
 					</view>
@@ -65,7 +65,7 @@
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
 				<image class="center-img"
-					src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_1.png" mode="scaleToFill">
+					src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill">
 				</image>
 				<view class="center-font">暂无优惠券</view>
 			</view>
@@ -364,9 +364,9 @@
 				line-height: 88rpx;
 				font-size: 36rpx;
 				color: #fff;
-				background-color: #F9822C;
+				background-color: $uni-btn-color;
 				border: none;
-				border-radius: 44rpx;
+				border-radius: 6rpx;
 			}
 		}
 	}

+ 51 - 34
src/packageGoods/goods/detail.vue

@@ -21,12 +21,11 @@
 		<view class="detail">
 			<!-- 商品轮播 -->
 			<view class="detail-swiper">
-				<u-swiper :list="picUrlArr" height="375" radius="0" :indicator="true" :circular="true" indicatorMode="dot" indicatorActiveColor="#FA822C"></u-swiper>
+				<u-swiper :list="picUrlArr" height="375" radius="0" :indicator="true" :circular="true" indicatorMode="dot" indicatorActiveColor="#8E51F7"></u-swiper>
 			</view>
 			<!-- 详情 -->
 			<view class="detail-info flex">
 				<view class="detail-info-left">
-					<view class="detail-info-left__title ells">{{ info.title }}</view>
 					<view class="detail-info-left__coin">
 						<view class="content flex">
 							<image src="../../static/public/goods_coin.png" mode="scaleToFill"></image>
@@ -35,6 +34,7 @@
 						<view class="txt" v-if="info.originPrice">原盲豆:<text>{{ info.originPrice }}</text></view>
 					</view>
 					<view class="detail-info-left__price">¥{{ $numberFormat(info.value) }}</view>
+					<view class="detail-info-left__title ells">{{ info.title }}</view>
 				</view>
 				<!-- <view class="detail-info-right" v-show="false">销量:30个</view> -->
 			</view>
@@ -56,12 +56,13 @@
 		<view class="footer-fixed">
 			<view class="footer-fixed-content flex">
 				<!-- <button type="default">立即兑换</button> -->
-				<view class="footer-fixed-content__coin flex">
-					<text>我的盲豆:</text>
-					<text>{{ initData.coinNum ? `${ initData.coinNum }个` : '--' }}</text>
+				<view class="footer-fixed-content__coin">
+					<div>我的盲豆:</div>
+					<div v-if="initData.coinNum"><image src="../../static/public/goods_coin.png" mode="scaleToFill"></image>x{{ initData.coinNum }}</div>
+					<div v-else>--</div>
 				</view>
 				<view class="footer-fixed-content__exchange flex" @click="exChange">
-					<text>{{ info.exchangePrice }}个</text>
+					<!-- <text>{{ info.exchangePrice }}个</text> -->
 					<text>盲豆兑换</text>
 				</view>
 				<!-- #ifndef MP-ALIPAY -->
@@ -80,7 +81,7 @@
 		<u-popup :show="tipShow" mode="center">
 			<view class="tip-show">
 				<view class="flex tip-show-title">
-					<u-icon name="checkmark-circle" color="#EB7009" size="24"></u-icon>
+					<u-icon name="checkmark-circle" color="#8E51F7" size="24"></u-icon>
 					<text>兑换成功,已放入仓库</text>
 				</view>
 				<view class="flex tip-show-btn">
@@ -297,20 +298,19 @@
 				
 				&__title {
 					width: 100%;
-					font-size: 34rpx;
+					font-size: 26rpx;
 					line-height: 40rpx;
-					margin-bottom: 26rpx;
-					font-weight: bold;
+					margin-top: 4rpx;
+					font-weight: 400;
 				}
 				
 				&__coin {
 					display: flex;
-					line-height: 30rpx;
-					margin-bottom: 26rpx;
-					font-size: 26rpx;
+					line-height: 38rpx;
+					margin-bottom: 6rpx;
+					color: #333;
 					
 					.content {
-						color: #FA822C;
 						margin-right: 34rpx;
 						font-weight: bold;
 						
@@ -324,7 +324,8 @@
 						}
 						
 						.coin {
-							font-size: 30rpx;
+							margin-left: 8rpx;
+							font-size: 32rpx;
 						}
 					}
 					
@@ -336,7 +337,9 @@
 				}
 				
 				&__price {
-					line-height: 24rpx;
+					margin-left: 38rpx;
+					font-size: 24rpx;
+					line-height: 28rpx;
 					color: #666666;
 				}
 			}
@@ -348,10 +351,11 @@
 
 		&-goods {
 			height: 90rpx;
-			text-align: center;
+			// text-align: center;
+			padding: 0 34rpx;
 			line-height: 90rpx;
-			font-weight: bold;
-			font-size: 30rpx;
+			font-weight: 400;
+			font-size: 24rpx;
 			background-color: #FFFFFF;
 		}
 
@@ -411,10 +415,10 @@
 				height: 60rpx;
 				line-height: 60rpx;
 				border-radius: 8rpx;
-				color: rgba(235, 112, 9, 100);
+				color: $uni-btn-color;
 				font-size: 28rpx;
 				text-align: center;
-				border: 1px solid rgba(235, 112, 9, 100);
+				border: 1px solid $uni-btn-color;
 			}
 
 			.prize {
@@ -422,10 +426,10 @@
 				height: 60rpx;
 				line-height: 60rpx;
 				border-radius: 8rpx;
-				color: rgba(235, 112, 9, 100);
+				color: $uni-btn-color;
 				font-size: 28rpx;
 				text-align: center;
-				background-color: rgba(235, 112, 9, 100);
+				background-color: $uni-btn-color;
 				color: rgba(255, 255, 255, 100);
 				font-size: 14px;
 			}
@@ -447,23 +451,34 @@
 		&-content {
 			justify-content: flex-start;
 			height: 132rpx;
+			margin: 0 34rpx;
 			background-color: #fff;
 			
 			&__coin {
-				height: 100%;
+				height: 78rpx;
 				flex: 1;
-				font-size: 30rpx;
+				font-size: 24rpx;
+				color: #666;
 				
-				text:first-child {
-					color: #999;
+				image {
+						width: 32rpx;
+						height: 32rpx;
+						vertical-align: top;
+						margin: 0rpx 8rpx 0 0;
+				}
+				div:first-child {
+					color: #333333;
+					vertical-align: top;
+					margin-bottom: 8rpx;
 				}
 			}
 			
 			&__exchange {
-				height: 100%;
+				height: 78rpx;
+				border-radius: 2rpx;
 				flex-direction: column;
-				padding: 0 50rpx;
-				background-color: #FA822C;
+				padding: 0 46rpx;
+				background-color: $uni-btn-color;
 				color: #fff;
 				
 				text {
@@ -480,12 +495,14 @@
 			}
 			
 			&__price {
+				border-radius: 4rpx;
+				margin-left: 34rpx;
 				font-size: 30rpx;
 				font-weight: bold;
-				height: 100%;
-				padding: 0 50rpx;
-				background-color: #FA362C;
-				color: #fff;
+				height: 78rpx;
+				padding: 0 46rpx;
+				color: $uni-text-color;
+				background-color: #E8DCFD;
 			}
 		}
 	}

+ 3 - 5
src/packageGoods/goods/list.vue

@@ -76,7 +76,7 @@
 		</view>
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
-				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png" mode="scaleToFill"></image>
+				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 				<view class="center-font">还没有商品</view>
 			</view>
 		</view>
@@ -222,7 +222,7 @@
 			}
 			
 			.action {
-				color: #FA822C;
+				color: $uni-btn-color;
 			}
 		}
 	}
@@ -246,8 +246,7 @@
 				width: 48%;
 				padding-bottom: 36rpx;
 				background: #FFFFFF;
-				box-shadow: 0px 0px 3px 0px rgba(100, 100, 100, 0.1);
-				border-radius: 16rpx;
+				box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.12);
 				margin-bottom: 32rpx;
 				
 				.image-wrap {
@@ -258,7 +257,6 @@
 					image {
 						width: 100%;
 						height: 100%;
-						border-radius: 16rpx 16rpx 0 0;
 					}
 				}
 				

+ 40 - 38
src/packageGoods/order/detail.vue

@@ -5,22 +5,22 @@
 		<!-- #endif -->
 		<!-- #ifdef MP-WEIXIN -->
 		<u-navbar title="订单详情" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" />
-		<!-- #endif -->
-		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
-		<view v-if="pagesNum > 1">
-			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="订单详情" />
-		</view>
-		<view v-else>
-			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="订单详情">
-				<view class="nav-left flex" slot="left" @click="$toIndex()">
-					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
-				</view>
-			</u-navbar>
-		</view>
+		<!-- #endif -->
+		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
+		<view v-if="pagesNum > 1">
+			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="订单详情" />
+		</view>
+		<view v-else>
+			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="订单详情">
+				<view class="nav-left flex" slot="left" @click="$toIndex()">
+					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
+				</view>
+			</u-navbar>
+		</view>
 		<!-- #endif -->
 		<!-- 订单状态 -->
 		<view class="status">
-			<image src="../../packageGoods/static/ordr/bg.png" mode="scaleToFill"></image>
+			<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/receive_background.png" mode="scaleToFill"></image>
 			<view class="status-info">
 				<image src="../../packageGoods/static/ordr/car.png" mode="scaleToFill"></image>
 				<view class="status-info-contet">
@@ -178,12 +178,12 @@
 				list: [],
 				deliverList: [],
 				autoConfirmTime: '',
-				authShow: false,
+				authShow: false,
 				pagesNum: '',
 			};
-		},
-		onShow() {
-			this.pagesNum = getCurrentPages().length
+		},
+		onShow() {
+			this.pagesNum = getCurrentPages().length
 		},
 		onLoad(opthios) {
 			this.orderId = opthios.id
@@ -216,12 +216,12 @@
 				}).catch(() => {
 					uni.hideLoading();
 				})
-			},
-			
-			toGoodsDetail(item) {
-				uni.navigateTo({
-					url: `/packagePrize/goods/detail?id=${ item.goodsId }`
-				})
+			},
+			
+			toGoodsDetail(item) {
+				uni.navigateTo({
+					url: `/packagePrize/goods/detail?id=${ item.goodsId }`
+				})
 			},
 
 			cancelOrder() {
@@ -548,7 +548,7 @@
 			image {
 				width: 176rpx;
 				height: 176rpx;
-				border-radius: 12rpx;
+				border-radius: 4rpx;
 				margin-right: 22rpx;
 			}
 
@@ -610,7 +610,7 @@
 
 			&-price {
 				font-size: 30rpx;
-				color: #F24E4E;
+				color: $uni-text-color;
 			}
 		}
 	}
@@ -642,18 +642,20 @@
 
 			&-content {
 				.copy {
-					height: 100%;
+					height: 40rpx;
 					margin-left: 8rpx;
 					text-align: center;
-					border-radius: 12rpx;
+					border-radius: 2rpx;
 					font-size: 24rpx;
 					line-height: 24rpx;
-					padding: 0 6rpx;
-					background-color: rgba(153, 153, 153, .1);
+					padding: 0rpx 10rpx;
+					background: rgba(142,81,247,0.3);
+					border: 2rpx solid $uni-bg-color;
 
 					text {
 						display: inline-block;
-						transform: scale(0.8);
+						// transform: scale(0.8);
+						color: $uni-bg-color;
 					}
 				}
 			}
@@ -682,7 +684,7 @@
 				image {
 					width: 176rpx;
 					height: 176rpx;
-					border-radius: 12rpx;
+					border-radius: 4rpx;
 					margin-right: 22rpx;
 				}
 
@@ -744,10 +746,10 @@
 						flex: 0.5;
 						text-align: center;
 						height: 40rpx;
-						background: #fff3eb;
-						border: 2rpx solid #FE8E3E;
+						background: rgba(142,81,247,0.3);
+						border: 2rpx solid $uni-btn-color;
 						border-radius: 2rpx;
-						color: #F9822C;
+						color: $uni-text-color;
 						line-height: 36rpx;
 						font-size: 24rpx;
 					}
@@ -788,7 +790,7 @@
 				width: 200rpx;
 				height: 66rpx;
 				font-size: 30rpx;
-				border-radius: 33rpx;
+				border-radius: 4rpx;
 				margin-left: 44rpx;
 
 				text {
@@ -797,12 +799,12 @@
 			}
 
 			.logistics {
-				border: 1px solid #F9822C;
-				color: #F9822C;
+				border: 1px solid $uni-btn-color;
+				color: $uni-btn-color;
 			}
 
 			.detail {
-				background-color: rgb(249, 130, 44);
+				background-color: $uni-btn-color;
 				color: #FFFFFF;
 			}
 

+ 481 - 463
src/packageGoods/order/index.vue

@@ -1,29 +1,28 @@
 <template>
-	<view>
-		<!-- #ifdef MP-ALIPAY -->
-		<u-navbar title="我的订单" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff"  leftIconSize="0"/>
-		<!-- #endif -->
-		<!-- #ifdef MP-WEIXIN -->
-		<u-navbar title="我的订单" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" />
-		<!-- #endif -->
-		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
-		<view v-if="pagesNum > 1">
-			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的订单" />
-		</view>
-		<view v-else>
-			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="我的订单">
-				<view class="nav-left flex" slot="left" @click="$toIndex()">
-					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
-				</view>
-			</u-navbar>
-		</view>
-		<!-- #endif -->
-		<view class="order">
-			<!-- 订单导航 -->
-			<view class="flex order-state-search">
-				<u-tabs @change="changeTab" :scrollable="false" :list="statusArr" lineWidth="20" lineHeight="4"
-					lineColor="#F9822C" :activeStyle="{
-										color: '#333',
+  <view>
+    <!-- #ifdef MP-ALIPAY -->
+    <u-navbar title="我的订单" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" leftIconSize="0" />
+    <!-- #endif -->
+    <!-- #ifdef MP-WEIXIN -->
+    <u-navbar title="我的订单" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" />
+    <!-- #endif -->
+    <!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
+    <view v-if="pagesNum > 1">
+      <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的订单" />
+    </view>
+    <view v-else>
+      <u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="我的订单">
+        <view class="nav-left flex" slot="left" @click="$toIndex()">
+          <u-icon name="arrow-left" size="20" color="#333"></u-icon>
+        </view>
+      </u-navbar>
+    </view>
+    <!-- #endif -->
+    <view class="order">
+      <!-- 订单导航 -->
+      <view class="flex order-state-search">
+        <u-tabs @change="changeTab" :list="statusArr" lineWidth="34" lineHeight="4" :current='currentIndex' lineColor="#8E51F7" :activeStyle="{
+										color: '#8E51F7',
 										transform: 'scale(1.1)',
 										width: '50px',
 										
@@ -32,448 +31,467 @@
 										transform: 'scale(1)',
 										width: '50px'
 									}" itemStyle="padding-left: 15px; padding-right: 15px; height: 44px;text-align: center;">
-				</u-tabs>
-			</view>
-			<!-- 订单列表 -->
-			<view class="order-list">
-				<view class="order-list-item" v-for="(item, index) in list" :key="index">
-					<view class="order-list-item__state">
-						<text class="success" v-if="item.status.value == -1 || item.status.value == 3">{{ item.status && item.status.desc }}</text>
-						<text v-else>{{ item.status && item.status.desc }}</text>
-					</view>
-					<view class="order-list-item__goods" @click="toDetail(item)">
-						<view class="order-list-item__goods-item" v-for="(items, indexs) in item.items" :key="indexs">
-							<image :src="items.picUrl" mode="aspectFit"></image>
-							<view class="info">
-								<view class="info-title ells">{{ items.title }}</view>
-								<view class="info-num flex">
-									<view class="info-num-price">¥{{ $numberFormat(items.price) }}</view>
-									<view class="info-num-goods">x{{ items.goodsNum }}</view>
-								</view>
-							</view>
-						</view>
-					</view>
-					<view class="order-list-item-price flex">
-						<view class="order-list-item-price__num">共计<text>{{ item.orderNum }}</text>商品,</view>
-						<view class="order-list-item-price__total">总金额:<text>¥</text><text>{{ $numberFormat(item.payAmt) }}</text></view>
-					</view>
-					<view class="order-list-item-btn flex">
-						<view class="order-list-item-btn-item flex logistics" v-if="item.status.value == 4 || item.status.value == 2 || item.status.value == 3 && item.type === 1" @click="toLogistics(item)"><text>查看物流</text></view>
-						<view class="order-list-item-btn-item flex cancel" v-if="item.status.value == 0" @click="cancelOrder(item.orderId)"><text>取消订单</text></view>
-						<view class="order-list-item-btn-item flex detail" @click="toDetail(item)"><text>查看详情</text></view>
-						<view class="order-list-item-btn-item flex pay"v-if="item.status.value == 0"  @click="payOrder(item)"><text>去支付</text></view>
-					</view>
-				</view>
-				<u-loadmore :line="true" v-if="list.length>3" :status="statusNomore" :loading-text="'努力加载中'" :nomore-text="'已经到底了'" />
-			</view>
-			<view class="flex empty" v-if="!list.length && !loading">
-				<view class="center">
-					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_4.png" mode="scaleToFill"></image>
-					<view class="center-font">暂无相关订单...</view>
-				</view>
-				<!-- <u-empty text="还没有订单" mode="order" /> -->
-			</view>
-		</view>
-		
-		<auth :auth-show="authShow" @close="authShow = false" />
-	</view>
+        </u-tabs>
+      </view>
+      <!-- 订单列表 -->
+      <view class="order-list">
+        <view class="order-list-item" v-for="(item, index) in list" :key="index">
+          <view class="order-list-item__state">
+            <text class="success" v-if="item.status.value == -1 || item.status.value == 3">{{ item.status && item.status.desc }}</text>
+            <text v-else>{{ item.status && item.status.desc }}</text>
+          </view>
+          <view class="order-list-item__goods" @click="toDetail(item)">
+            <view class="order-list-item__goods-item" v-for="(items, indexs) in item.items" :key="indexs">
+              <image :src="items.picUrl" mode="aspectFit"></image>
+              <view class="info">
+                <view class="info-title ells">{{ items.title }}</view>
+                <view class="info-num flex">
+                  <view class="info-num-price">¥{{ $numberFormat(items.price) }}</view>
+                  <view class="info-num-goods">x{{ items.goodsNum }}</view>
+                </view>
+              </view>
+            </view>
+          </view>
+          <view class="order-list-item-price flex">
+            <view class="order-list-item-price__num">共计<text>{{ item.orderNum }}</text>商品,</view>
+            <view class="order-list-item-price__total">总金额:<text>¥</text><text>{{ $numberFormat(item.payAmt) }}</text></view>
+          </view>
+          <view class="order-list-item-btn flex">
+            <view class="order-list-item-btn-item flex logistics" v-if="item.status.value == 4 || item.status.value == 2 || item.status.value == 3 && item.type === 1" @click="toLogistics(item)"><text>查看物流</text></view>
+            <view class="order-list-item-btn-item flex cancel" v-if="item.status.value == 0" @click="cancelOrder(item.orderId)"><text>取消订单</text></view>
+            <view class="order-list-item-btn-item flex detail" @click="toDetail(item)"><text>查看详情</text></view>
+            <view class="order-list-item-btn-item flex pay" v-if="item.status.value == 0" @click="payOrder(item)"><text>去支付</text></view>
+          </view>
+        </view>
+        <u-loadmore :line="true" v-if="list.length>3" :status="statusNomore" :loading-text="'努力加载中'" :nomore-text="'已经到底了'" />
+      </view>
+      <view class="flex empty" v-if="!list.length && !loading">
+        <view class="center">
+          <image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
+          <view class="center-font">暂无相关订单...</view>
+        </view>
+        <!-- <u-empty text="还没有订单" mode="order" /> -->
+      </view>
+    </view>
+
+    <auth :auth-show="authShow" @close="authShow = false" />
+  </view>
 </template>
 
 <script>
-	import env from '../../config/env.js'
-	import $http from '@/utils/request.js'
-	import appId from '@/config/appId.js'
-	import Auth from '../../components/auth/auth.vue'
-	export default {
-		components: {
-			Auth
-		},
-		data() {
-			return {
-				statusNomore: 'nomore',//上拉刷新状态
-				loading: false,
-				pageNum: 1,
-				total: 100,
-				list: [],
-				status: null,
-				statusArr: [{
-					name: '全部'
-				}, {
-					name: '待付款',
-				}, {
-					name: '待发货'
-				}, {
-					name: '待收货'
-				}, {
-					name: '已完成'
-				}, ],
-				authShow: false,
-				pagesNum: '',
-			};
-		},
-		onLoad(opthios) {},
-		onShow() {
-			this.pagesNum = getCurrentPages().length
-			this.pageList()
-		},
-		methods: {
-			getList() {
-				this.loading = true
-				$http.post(`/api/v1/mp/user/deliver/order/list?pageNum=${ this.pageNum }&pageSize=20`, {
-					status: this.status
-				}).then(res => {
-					this.loading = false
-					if (res.code == 0) {
-						res.rows.forEach(item => {
-							let items = item.items
-							items.forEach(item => {
-								let picUrlArr = item.picUrl.split(',')
-								item.picUrl = env.filePublic + picUrlArr[0] + '?imageView2/2/w/170'
-							})
-							item.status = JSON.parse(item.status)
-						})
-						this.total = res.total
-						this.list = this.list.concat(res.rows)
-					}
-				}).catch(() => {
-					this.loading = false
-				})
-			},
-
-			pageList() {
-				this.pageNum = 1
-				this.list = []
-				this.getList()
-			},
-
-			cancelOrder(id) {
-				let _this = this
-				uni.showModal({
-					title: '提示',
-					content: '您确认要取消订单吗?',
-					success(res) {
-						if (res.confirm) {
-							$http.post('/api/v1/mp/user/deliver/order/cancel', {
-								orderId: id
-							}).then(res => {
-								if (res.code == 0) {
-									uni.$u.toast('订单取消成功');
-									_this.pageList()
-								}
-							})
-						}
-					}
-				})
-			},
-			
-			toDetail(item) {
-				uni.navigateTo({
-					url: `/packageGoods/order/detail?id=${ item.orderId }`
-				})
-			},
-			
-			// 查看物流
-			toLogistics(item) {
-				uni.navigateTo({
-					url: `/packageGoods/order/logistics?id=${ item.orderId }`
-				});
-			},
-
-			payOrder(item) {
-				let _this = this
-				let payIng = false
-				if (payIng) return
-				uni.showLoading({
-					title: '加载中'
-				});
-				// #ifdef MP-ALIPAY
-				let data = {
-					orderId: item.orderId,
-					payType: 1,
-					appSource: appId 
-				}
-				// #endif
-				// #ifdef MP-WEIXIN
-				let data = {
-					orderId: item.orderId,
-					payType: 2,
-					appSource: appId
-				}
-				// #endif
-				// #ifdef H5
-				let data = {
-					orderId: item.orderId,
-					payType: 3,
-					appSource: appId
-				}
-				// #endif
-				$http.post('/api/v1/mp/user/deliver/order/pay', data).then(ele => {
-					uni.hideLoading();
-					payIng = true
-					if (ele.code == 0) {
-						// #ifdef MP-ALIPAY
-						my.tradePay({
-							tradeNO: ele.data.pay_info,
-							success(resu) {
-								if(resu.resultCode == '9000'){
-									uni.showToast({
-										title: '支付成功',
-										icon: 'success',
-										duration: 2000
-									})
-									_this.pageList()
-								}else {
-									payIng = false
-								}
-							},
-							fail() {
-								payIng = false
-							}
-						})
-						// #endif
-						// #ifdef MP-WEIXIN
-						uni.requestPayment({
-							timeStamp: ele.data.timeStamp,
-							nonceStr: ele.data.nonceStr,
-							package: ele.data.package,
-							signType: ele.data.signType,
-							paySign: ele.data.paySign,
-							success() {
-								uni.showToast({
-									title: '支付成功',
-									icon: 'success',
-									duration: 2000
-								})
-								_this.pageList()
-							},
-							fail() {
-								payIng = false
-							}
-						})
-						// #endif
-						// #ifdef H5
-						let data = ele.data
-						sessionStorage.setItem('viewUrlData', JSON.stringify(data))
-						uni.redirectTo({
-							url: `/packageGoods/order/payOrder?orderId=${ item.orderId }`
-						})
-						// uni.redirectTo({
-						// 	url: `/packageGoods/order/payOrder?viewUrl=${ encodeURIComponent(JSON.stringify(data)) }&orderId=${ item.orderId }`
-						// })
-						// #endif
-						
-					} else if (ele.code == 1005) {
-						_this.authShow = true
-					} else if (ele.code == 1026) {
-						_this.authShow = true
-					} else {
-						payIng = false
-						uni.$u.toast(res.msg);
-					}
-				}).catch(() => {
-					payIng = false
-					uni.$u.toast('订单创建失败');
-					uni.hideLoading();
-				})
-			},
-
-			changeTab(e) {
-				if (e.index == 0) {
-					this.status = null
-				} else if (e.index == 1) {
-					this.status = '0'
-				} else if (e.index == 2) {
-					this.status = '1,4'
-				} else if (e.index == 3) {
-					this.status = '2'
-				} else if (e.index == 4) {
-					this.status = '3'
-				}
-				this.pageList()
-			},
-		},
-
-		onReachBottom() {
-			if(this.total < this.pageNum * 20) return ;
-			this.statusNomore = 'loading';
-			++this.pageNum
-			if(this.total < this.pageNum * 20) this.statusNomore = 'nomore';
-				else this.statusNomore = 'loading';
-			this.getList()
-		},
-	}
+import env from '../../config/env.js'
+import $http from '@/utils/request.js'
+import appId from '@/config/appId.js'
+import Auth from '../../components/auth/auth.vue'
+export default {
+  components: {
+    Auth
+  },
+  data() {
+    return {
+      statusNomore: 'nomore',//上拉刷新状态
+      loading: false,
+      pageNum: 1,
+      total: 100,
+      list: [],
+      status: null,
+      currentIndex: 0,
+      statusArr: [{
+        name: '全部'
+      }, {
+        name: '待付款',
+      }, {
+        name: '待发货'
+      }, {
+        name: '待收货'
+      }, {
+        name: '已完成'
+      },],
+      authShow: false,
+      pagesNum: '',
+    };
+  },
+  onLoad(opthios) {
+    if (opthios && opthios.status) {
+      this.status = opthios.status
+
+      if (opthios.status == '0') {
+        this.currentIndex = 1
+      } else if (opthios.status == '1,4') {
+        this.currentIndex = 2
+      } else if (opthios.status == '2') {
+        this.currentIndex = 3
+      } else if (opthios.status == '3') {
+        this.currentIndex = 4
+      }
+    }
+  },
+  onShow() {
+    this.pagesNum = getCurrentPages().length
+    this.pageList()
+  },
+  methods: {
+    getList() {
+      this.loading = true
+      $http.post(`/api/v1/mp/user/deliver/order/list?pageNum=${this.pageNum}&pageSize=20`, {
+        status: this.status
+      }).then(res => {
+        this.loading = false
+        if (res.code == 0) {
+          res.rows.forEach(item => {
+            let items = item.items
+            items.forEach(item => {
+              let picUrlArr = item.picUrl.split(',')
+              item.picUrl = env.filePublic + picUrlArr[0] + '?imageView2/2/w/170'
+            })
+            item.status = JSON.parse(item.status)
+          })
+          this.total = res.total
+          this.list = this.list.concat(res.rows)
+        }
+      }).catch(() => {
+        this.loading = false
+      })
+    },
+
+    pageList() {
+      this.pageNum = 1
+      this.list = []
+      this.getList()
+    },
+
+    cancelOrder(id) {
+      let _this = this
+      uni.showModal({
+        title: '提示',
+        content: '您确认要取消订单吗?',
+        success(res) {
+          if (res.confirm) {
+            $http.post('/api/v1/mp/user/deliver/order/cancel', {
+              orderId: id
+            }).then(res => {
+              if (res.code == 0) {
+                uni.$u.toast('订单取消成功');
+                _this.pageList()
+              }
+            })
+          }
+        }
+      })
+    },
+
+    toDetail(item) {
+      uni.navigateTo({
+        url: `/packageGoods/order/detail?id=${item.orderId}`
+      })
+    },
+
+    // 查看物流
+    toLogistics(item) {
+      uni.navigateTo({
+        url: `/packageGoods/order/logistics?id=${item.orderId}`
+      });
+    },
+
+    payOrder(item) {
+      let _this = this
+      let payIng = false
+      if (payIng) return
+      uni.showLoading({
+        title: '加载中'
+      });
+      let data = {}
+      // #ifdef MP-ALIPAY
+      data = {
+        orderId: item.orderId,
+        payType: 1,
+        appSource: appId
+      }
+      // #endif
+      // #ifdef MP-WEIXIN
+      data = {
+        orderId: item.orderId,
+        payType: 2,
+        appSource: appId
+      }
+      // #endif
+      // #ifdef H5
+      data = {
+        orderId: item.orderId,
+        payType: 3,
+        appSource: appId
+      }
+      // #endif
+      $http.post('/api/v1/mp/user/deliver/order/pay', data).then(ele => {
+        uni.hideLoading();
+        payIng = true
+        if (ele.code == 0) {
+          // #ifdef MP-ALIPAY
+          my.tradePay({
+            tradeNO: ele.data.pay_info,
+            success(resu) {
+              if (resu.resultCode == '9000') {
+                uni.showToast({
+                  title: '支付成功',
+                  icon: 'success',
+                  duration: 2000
+                })
+                _this.pageList()
+              } else {
+                payIng = false
+              }
+            },
+            fail() {
+              payIng = false
+            }
+          })
+          // #endif
+          // #ifdef MP-WEIXIN
+          uni.requestPayment({
+            timeStamp: ele.data.timeStamp,
+            nonceStr: ele.data.nonceStr,
+            package: ele.data.package,
+            signType: ele.data.signType,
+            paySign: ele.data.paySign,
+            success() {
+              uni.showToast({
+                title: '支付成功',
+                icon: 'success',
+                duration: 2000
+              })
+              _this.pageList()
+            },
+            fail() {
+              payIng = false
+            }
+          })
+          // #endif
+          // #ifdef H5
+          let data = ele.data
+          sessionStorage.setItem('viewUrlData', JSON.stringify(data))
+          uni.redirectTo({
+            url: `/packageGoods/order/payOrder?orderId=${item.orderId}`
+          })
+          // uni.redirectTo({
+          // 	url: `/packageGoods/order/payOrder?viewUrl=${ encodeURIComponent(JSON.stringify(data)) }&orderId=${ item.orderId }`
+          // })
+          // #endif
+
+        } else if (ele.code == 1005) {
+          _this.authShow = true
+        } else if (ele.code == 1026) {
+          _this.authShow = true
+        } else {
+          payIng = false
+          uni.$u.toast(res.msg);
+        }
+      }).catch(() => {
+        payIng = false
+        uni.$u.toast('订单创建失败');
+        uni.hideLoading();
+      })
+    },
+
+    changeTab(e) {
+      if (e.index == 0) {
+        this.status = null
+      } else if (e.index == 1) {
+        this.status = '0'
+      } else if (e.index == 2) {
+        this.status = '1,4'
+      } else if (e.index == 3) {
+        this.status = '2'
+      } else if (e.index == 4) {
+        this.status = '3'
+      }
+      this.pageList()
+    },
+  },
+
+  onReachBottom() {
+    if (this.total < this.pageNum * 20) return;
+    this.statusNomore = 'loading';
+    ++this.pageNum
+    if (this.total < this.pageNum * 20) this.statusNomore = 'nomore';
+    else this.statusNomore = 'loading';
+    this.getList()
+  },
+}
 </script>
 
 <style lang="scss" scoped>
-	.order {
-		padding-bottom: 40rpx;
-		
-		// 订单导航
-		&-state-search {
-			position: relative;
-			width: 100%;
-			position: fixed;
-			z-index: 100;
-			background-color: #FFFFFF;
-			box-shadow: 0 5rpx 5rpx #ececec;
-		}
-
-		// 订单列表
-		&-list {
-			margin: 0rpx 34rpx 0;
-			padding-top: 110rpx;
-
-			&-item {
-				background: #FFFFFF;
-				border-radius: 6rpx;
-				margin-bottom: 22rpx;
-				padding: 20rpx 34rpx;
-				
-				// 订单状态
-				&__state {
-					font-size: 30rpx;
-					line-height: 30rpx;
-					margin-bottom: 22rpx;
-					color: #F9822C;
-					
-					.success {
-						color: #999;
-					}
-				}
-				
-				// 商品列表
-				&__goods {
-					&-item{
-						display: flex;
-						padding: 20rpx 20rpx;
-						border-radius: 4rpx;
-						border-bottom: 1px solid rgba(102, 102, 102, 0.12);
-						
-						image {
-							width: 220rpx;
-							height: 200rpx;
-							border-radius: 12rpx;
-							margin-right: 24rpx;
-						}
-						
-						.info {
-							display: flex;
-							flex-direction: column;
-							justify-content: space-between;
-							flex: 1;
-							padding-bottom: 34rpx;
-							
-							&-title {
-								font-weight: bold;
-								line-height: 40rpx;
-							}
-							
-							&-num {
-								justify-content: space-between;
-								
-								&-price {
-									font-size: 24rpx;
-								}
-								
-								&-goods {
-									color: #999999;
-								}
-							}
-						}
-					}
-					
-					&-item:last-child {
-						margin-bottom: 0;
-						border: none;
-					}
-				}
-				
-				// 订单价格
-				&-price {
-					justify-content: flex-end;
-					padding-bottom: 18rpx;
-					border-bottom: 1px solid #E5E5E5;
-					margin-bottom: 22rpx;
-					
-					&__total {
-						text:first-child {
-							font-size: 24rpx;
-							font-weight: normal;
-						}
-						
-						text {
-							font-size: 30rpx;
-							font-weight: bold;
-							color: #F9822C;
-						}
-					}
-				}
-				
-				// 操作按钮
-				&-btn {
-					justify-content: flex-end;
-					
-					&-item {
-						width: 200rpx;
-						height: 66rpx;
-						font-size: 30rpx;
-						border-radius: 33rpx;
-						margin-left: 44rpx;
-							
-						text {
-							line-height: 30rpx;
-						}
-					}
-					
-					.logistics {
-						border: 1px solid #F9822C;
-						color: #F9822C;
-					}
-					
-					.detail {
-						background-color: rgb(249, 130, 44);
-						color: #FFFFFF;
-					}
-					
-					.cancel {
-						border: 1px solid #c4c6c9;
-						color: #c4c6c9;
-					}
-					
-					.pay {
-						background-color: #5ac725;
-						color: #fff;
-					}
-					
-					&-item:first-child {
-						margin-left: 0;
-					}
-				}
-			}
-			
-			&-item:last-child {
-				margin-bottom: 0;
-			}
-		}
-
-		// 空状态
-		.empty {
-			height: 60vh;
-			.center {
-				text-align: center;
-			
-				&-img {
-					width: 228rpx;
-					height: 320rpx;
-				}
-			
-				&-font {
-					font-size: 30rpx;
-					font-weight: 400;
-					color: #999999;
-					margin-bottom: 250rpx;
-				}
-			}
-		}
-	}
+.order {
+  padding-bottom: 40rpx;
+
+  // 订单导航
+  &-state-search {
+    position: relative;
+    width: 100%;
+    position: fixed;
+    z-index: 100;
+    background-color: #ffffff;
+    box-shadow: 0 5rpx 5rpx #ececec;
+  }
+
+  // 订单列表
+  &-list {
+    margin: 0rpx 34rpx 0;
+    padding-top: 110rpx;
+
+    &-item {
+      background: #ffffff;
+      border-radius: 6rpx;
+      margin-bottom: 22rpx;
+      padding: 20rpx 34rpx;
+
+      // 订单状态
+      &__state {
+        text-align: right;
+        font-size: 26rpx;
+        line-height: 30rpx;
+        margin-bottom: 22rpx;
+        color: $uni-text-color;
+
+        .success {
+          color: #666;
+        }
+      }
+
+      // 商品列表
+      &__goods {
+        &-item {
+          display: flex;
+          padding: 20rpx 20rpx;
+          border-radius: 4rpx;
+          border-bottom: 1px solid rgba(102, 102, 102, 0.12);
+
+          image {
+            width: 220rpx;
+            height: 200rpx;
+            border-radius: 12rpx;
+            margin-right: 24rpx;
+          }
+
+          .info {
+            display: flex;
+            flex-direction: column;
+            justify-content: space-between;
+            flex: 1;
+            padding-bottom: 34rpx;
+
+            &-title {
+              font-size: 26rpx;
+              color: #333;
+              font-weight: 400;
+              line-height: 40rpx;
+            }
+
+            &-num {
+              justify-content: space-between;
+
+              &-price {
+                font-size: 24rpx;
+              }
+
+              &-goods {
+                color: #999999;
+              }
+            }
+          }
+        }
+
+        &-item:last-child {
+          margin-bottom: 0;
+          border: none;
+        }
+      }
+
+      // 订单价格
+      &-price {
+        justify-content: flex-end;
+        padding-bottom: 18rpx;
+        border-bottom: 1px solid #e5e5e5;
+        margin-bottom: 22rpx;
+        font-size: 24rpx;
+
+        &__total {
+          text:first-child {
+            font-weight: 500;
+          }
+
+          text {
+            font-size: 30rpx;
+            font-weight: bold;
+            color: #333333;
+          }
+        }
+      }
+
+      // 操作按钮
+      &-btn {
+        justify-content: flex-end;
+
+        &-item {
+          width: 196rpx;
+          height: 68rpx;
+          font-size: 30rpx;
+          border-radius: 4rpx;
+          margin-left: 44rpx;
+
+          text {
+            line-height: 30rpx;
+          }
+        }
+
+        .logistics {
+          border: 1px solid $uni-text-color;
+          color: $uni-text-color;
+        }
+
+        .detail {
+          background-color: $uni-bg-color;
+          color: #ffffff;
+        }
+
+        .cancel {
+          border: 1px solid #c4c6c9;
+          color: #c4c6c9;
+        }
+
+        .pay {
+          background-color: #5ac725;
+          color: #fff;
+        }
+
+        &-item:first-child {
+          margin-left: 0;
+        }
+      }
+    }
+
+    &-item:last-child {
+      margin-bottom: 0;
+    }
+  }
+
+  // 空状态
+  .empty {
+    height: 60vh;
+    .center {
+      text-align: center;
+
+      &-img {
+        width: 228rpx;
+        height: 320rpx;
+      }
+
+      &-font {
+        font-size: 30rpx;
+        font-weight: 400;
+        color: #999999;
+        margin-bottom: 250rpx;
+      }
+    }
+  }
+}
 </style>

+ 5 - 5
src/packageGoods/order/logistics.vue

@@ -20,9 +20,9 @@
 		<!-- #endif -->
 		<!-- 包裹 -->
 		<view class="pack" v-if="deliverList.length>1">
-			<u-tabs @change="changeTab" :scrollable="false" :list="packList" lineWidth="20" lineHeight="4"
-				lineColor="#F9822C" :activeStyle="{
-									color: '#333',
+			<u-tabs @change="changeTab" :scrollable="false" :list="packList" lineWidth="34" lineHeight="4"
+				lineColor="#8E51F7" :activeStyle="{
+									color: '#8E51F7',
 									transform: 'scale(1.1)',
 									width: '50px',
 									
@@ -69,10 +69,10 @@
 		<!-- 物流信息 -->
 		<view class="logistics" v-if="deliverListData[listIndex][0].companyName && logistics!==''">
 			<!-- #ifdef MP-ALIPAY -->
-			<uni-steps :options="logistics" active-color="#F9822C" :active="0" direction="column" />
+			<uni-steps :options="logistics" active-color="#8E51F7" :active="0" direction="column" />
 			<!-- #endif -->
 			<!-- #ifndef MP-ALIPAY -->
-			<u-steps current="0" direction="column" dot activeColor="#F9822C">
+			<u-steps current="0" direction="column" dot activeColor="#8E51F7">
 				<u-steps-item :desc="item.desc" :title="item.title" v-for="(item,index) in logistics" :key="index">
 				</u-steps-item>
 			</u-steps>

+ 7 - 7
src/packageGoods/order/settlement.vue

@@ -24,15 +24,15 @@
 				<view class="flex settlement-address-top" v-if="info.addr !== null">
 					<view class="settlement-address-top__left">配送地址</view>
 					<view class="flex settlement-address-top__right" @click="toAddress">
-						<view class="">更改地址</view>
-						<u-icon name="arrow-right" size="18" color="#237ED4 100%"></u-icon>
+						<view class="" style="color: #8E51F7;">更改地址</view>
+						<u-icon name="arrow-right" size="18" color="#8E51F7"></u-icon>
 					</view>
 				</view>
 				<view class="flex settlement-address-top" v-else>
 					<view class="settlement-address-top__left">配送地址</view>
 					<view class="flex settlement-address-top__right" @click="toWeixinAddress">
-						<view class="">微信地址</view>
-						<u-icon name="arrow-right" size="18" color="#237ED4 100%"></u-icon>
+						<view class="" style="color: #8E51F7;">微信地址</view>
+						<u-icon name="arrow-right" size="18" color="#8E51F7"></u-icon>
 					</view>
 				</view>
 				<!-- 收货人、地址 -->
@@ -109,8 +109,8 @@
 				<view class="content-btn flex">
 					<view class="content-btn-left">
 						<view class="money">
-							<text>合计:</text>
-							<text class="value">¥{{ $numberFormat(info.payAmt) }}</text>
+							<text>合计:¥{{ $numberFormat(info.payAmt) }}</text>
+							<!-- <text class="value">¥{{ $numberFormat(info.payAmt) }}</text> -->
 						</view>
 					</view>
 					<view class="content-btn-right">
@@ -670,7 +670,7 @@
 						width: 210rpx;
 						height: 82rpx;
 						line-height: 82rpx;
-						background: #F9822C;
+						background: $uni-text-color;
 						border-radius: 40rpx;
 						text-align: center;
 						color: #fff;

+ 35 - 35
src/packageGoods/promoters/index.vue

@@ -7,20 +7,20 @@
 		<!-- #ifdef MP-WEIXIN -->
 		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="选择盲票天使"></u-navbar>
 		<!-- #endif -->
-		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
-		<view v-if="pagesNum > 1">
-			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="选择盲票天使" />
-		</view>
-		<view v-else>
-			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="选择盲票天使">
-				<view class="nav-left flex" slot="left" @click="$toIndex()">
-					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
-				</view>
-			</u-navbar>
-		</view>
+		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
+		<view v-if="pagesNum > 1">
+			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="选择盲票天使" />
+		</view>
+		<view v-else>
+			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="选择盲票天使">
+				<view class="nav-left flex" slot="left" @click="$toIndex()">
+					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
+				</view>
+			</u-navbar>
+		</view>
 		<!-- #endif -->
-		<view class="coupon-title">
-			<u-search placeholder="请输入名字或工号" v-model="searchValue" @blur="pageList()" :showAction="false"></u-search>
+		<view class="coupon-title">
+			<u-search placeholder="请输入名字或工号" v-model="searchValue" @blur="pageList()" :showAction="false"></u-search>
 		</view>
 		<view class="coupon-list">
 			<u-radio-group v-model="radiovalue1" placement="column" @change="changeChechk()">
@@ -30,7 +30,7 @@
 						<text>工号:{{item.workNo}}</text>
 					</view>
 					<view class="uradio">
-						<u-radio :customStyle="{ marginBottom: '8px' }" :name="item.channelId" activeColor="#F9822C"
+						<u-radio :customStyle="{ marginBottom: '8px' }" :name="item.channelId" activeColor="#8E51F7"
 							size="24">
 						</u-radio>
 					</view>
@@ -60,26 +60,26 @@
 				radiovalue1: '', //选中项的下标
 				channelId: '', //选中项的id
 				id: '', //门店的channelId
-				status: 'nomore', //上拉刷新状态
-				searchValue: '', //搜索
+				status: 'nomore', //上拉刷新状态
+				searchValue: '', //搜索
 				pagesNum: '',
 			};
 		},
-		onShow() {
+		onShow() {
 			this.pagesNum = getCurrentPages().length
 			this.pageList()
 		},
-		onLoad(opthios) {
+		onLoad(opthios) {
 			if (opthios.channelId) {
 				this.id = opthios.channelId
-				this.channelId = opthios.index
+				this.channelId = opthios.index
 				this.radiovalue1 = Number(opthios.index) 
 			}
 
 		},
 		methods: {
 			pageList() {
-				this.list = []
+				this.list = []
 				this.pageNum = 1
 				this.getList()
 			},
@@ -87,7 +87,7 @@
 			getList() {
 				let _this = this
 				$http.post(`/api/v1/mp/channel/promoter/list?pageNum=${_this.pageNum}&pageSize=20`, {
-					channelId: this.id,
+					channelId: this.id,
 					searchValue: this.searchValue,
 				}).then(
 					res => {
@@ -112,17 +112,17 @@
 			},
 
 			// 点击确认事件
-			exchange() {
-				let promoters = {}
-				for (var i = 0; i < this.list.length; i++) {
-					if (this.list[i].channelId == this.channelId) {
-						promoters = {
-							channelId: this.channelId,
-							name: this.list[i].name,
-							workNo: this.list[i].workNo,
-						}
-					}
-				}
+			exchange() {
+				let promoters = {}
+				for (var i = 0; i < this.list.length; i++) {
+					if (this.list[i].channelId == this.channelId) {
+						promoters = {
+							channelId: this.channelId,
+							name: this.list[i].name,
+							workNo: this.list[i].workNo,
+						}
+					}
+				}
 				uni.$emit('promoters', promoters)
 
 				uni.navigateBack({
@@ -221,10 +221,10 @@
 				line-height: 88rpx;
 				font-size: 36rpx;
 				color: #fff;
-				background-color: #F9822C;
+				background-color: $uni-text-color;
 				border: none;
-				border-radius: 44rpx;
+				border-radius: 6rpx;
 			}
 		}
 	}
-</style>
+</style>

+ 6 - 6
src/packageGoods/recovery/detail.vue

@@ -58,7 +58,7 @@
 
 		&-one {
 			margin-top: 400rpx;
-			color: #F9822C;
+			color: $uni-text-color;
 			font-size: 40rpx;
 			line-height: 40rpx;
 			font-weight: bold;
@@ -86,8 +86,8 @@
 			height: 88rpx;
 			line-height: 88rpx;
 			text-align: center;
-			background: #F9822C;
-			border-radius: 44rpx;
+			background: $uni-btn-color;
+			border-radius: 6rpx;
 			color: #fff;
 			font-size: 34rpx;
 		}
@@ -98,10 +98,10 @@
 			height: 88rpx;
 			line-height: 88rpx;
 			text-align: center;
-			border: 1px solid #F9822C;
+			border: 1px solid $uni-btn-color;
 			background: #fff;
-			color: #F9822C;
-			border-radius: 44rpx;
+			color: $uni-text-color;
+			border-radius: 6rpx;
 			font-size: 34rpx;
 		}
 	}

+ 7 - 7
src/packageGoods/recovery/index.vue

@@ -151,7 +151,7 @@
 		&-goods {
 			margin-bottom: 34rpx;
 			background-color: #fff;
-			border-radius: 22rpx;
+			border-radius: 4rpx;
 			box-shadow: 0px 0px 8px 0px rgba(26, 35, 113, 0.08);
 
 			// 商品列表
@@ -162,7 +162,7 @@
 				image {
 					width: 176rpx;
 					height: 176rpx;
-					border-radius: 12rpx;
+					border-radius: 4rpx;
 					margin-right: 22rpx;
 				}
 
@@ -202,7 +202,7 @@
 			margin-bottom: 34rpx;
 			background-color: #EEEEEE;
 			padding: 34rpx;
-			border-radius: 22rpx;
+			border-radius: 4rpx;
 			color: #666666;
 		
 		}
@@ -238,7 +238,7 @@
 			&-not {
 				justify-content: flex-start;
 				font-size: 30rpx;
-				color: #F9832E;
+				color: $uni-text-color;
 				margin: 0 0 30rpx;
 				padding: 0 40rpx 24rpx;
 				border-bottom: 1px solid #eee;
@@ -251,7 +251,7 @@
 
 				&-left {
 					.value {
-						color: #FF4208;
+						color: $uni-text-color;
 					}
 				}
 
@@ -264,8 +264,8 @@
 						width: 210rpx;
 						height: 82rpx;
 						line-height: 82rpx;
-						background: #F9822C;
-						border-radius: 40rpx;
+						background: $uni-btn-color;
+						border-radius: 4rpx;
 						text-align: center;
 						color: #fff;
 					}

二进制
src/packageGoods/static/list_down.png


二进制
src/packageGoods/static/list_null.png


二进制
src/packageGoods/static/list_up.png


二进制
src/packageGoods/static/ordr/addr.png


二进制
src/packageGoods/static/ordr/bg.png


+ 5 - 4
src/packageGoods/ticket/index.vue

@@ -46,7 +46,7 @@
 			</view>
 			<view class="flex empty" v-if="!list.length">
 				<view class="center">
-					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png"
+					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png"
 						mode="scaleToFill"></image>
 					<view class="center-font">还没有商品</view>
 				</view>
@@ -157,8 +157,9 @@
 					width: 100%;
 					line-height: 40rpx;
 					height: 40rpx;
-					font-size: 36rpx;
-					font-weight: bold;
+					font-size: 26rpx;
+					font-weight: 400;
+					color: #666;
 					white-space: nowrap;
 					overflow: hidden;
 					text-overflow: ellipsis;
@@ -168,7 +169,7 @@
 					font-size: 26rpx;
 					font-weight: bold;
 					margin-top: 20rpx;
-					color: #FF4208;
+					color: #333;
 					line-height: 42rpx;
 					margin-bottom: 24rpx;
 				}

+ 122 - 109
src/packageOperate/activity/index.vue

@@ -1,5 +1,5 @@
 <template>
-	<view style="background-image: linear-gradient(#ff8e0c,#ffc555 80%,#ff8e0c); width: 100%; height: 100%;">
+	<view style="background-color: #3b05bb; width: 100%; height: 100%;">
 
 		<!-- #ifdef MP-ALIPAY -->
 		<u-navbar title="免费抽奖" :border="true" :placeholder="true" :autoBack="true" bgColor="#fff" leftIconSize="0" />
@@ -65,7 +65,7 @@
 								:url="itemTwo.prizeType && JSON.parse(itemTwo.prizeType).value == 'goods' ? `/packagePrize/goods/detail?id=${ itemTwo.refId }`:JSON.parse(itemTwo.prizeType).value == 'coin' ?`/packagePrize/goods/detail?id=424`:`/packagePrize/goods/detail?id=425`"
 								hover-class="none">
 								<view class="effectsthree-width">
-									<image src="../static/activity/effectsthree.png" mode="aspectFit"></image>
+									<image src="../static/activity/effectsthree.png" mode="scaleToFill"></image>
 									<view class="effectsthree-width-name">
 										{{item.name}}
 									</view>
@@ -75,6 +75,7 @@
 									<view>
 										<image :src="itemTwo.picUrl" mode="aspectFit"></image>
 									</view>
+									<view class="effectstwo1"></view>
 									<view class="textone ells-one"
 										v-if="itemTwo.prizeType && JSON.parse(itemTwo.prizeType).value == 'coin'">
 										{{itemTwo.title}}x{{itemTwo.value}}
@@ -86,7 +87,7 @@
 								</view>
 							</navigator>
 						</view>
-						<view class="effectstwo"></view>
+						
 					</view>
 				</view>
 			</view>
@@ -160,7 +161,7 @@
 			<!-- #ifdef MP-WEIXIN -->
 			<view class="wrap-account" @click="toWeixin">
 				<view class="wrap-account-view">
-					<image src="../static/activity/logo.png" mode=""></image>
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/logo.png" mode=""></image>
 					<text>关注码上快购公众号,获取中奖提醒</text>
 					<view>去关注</view>
 				</view>
@@ -222,13 +223,13 @@
 			@close="close" @exChange='exChange' @success="toActivity"
 			v-if="activityShow && info.status && JSON.parse(info.status).value == 3" />
 		<!-- 活动结束弹框 -->
-		<u-popup v-if="info.status && JSON.parse(info.status).value == 4 || info.isOn == -1" show="true" mode="center"
+		<u-popup v-if="info.status && JSON.parse(info.status).value == 4 || info.isOn == -1" show="true" mode="center"  bgColor='transparent'
 			@close="close" round="11">
-			<view style="text-align: center;width: 600rpx; height: 500rpx;">
+			<view style="text-align: center;width: 600rpx; height: 500rpx;background-color: #fff;">
 				<view style="color: #666;margin-top: 110rpx;font-size: 40rpx;">来晚了,活动已结束</view>
 				<view style="color: #666;margin-top: 50rpx;font-size: 36rpx;">点击前往查看新的免费抽奖活动</view>
 				<button @click="toActivity" type="default"
-					style="background-color: #FF8000;color: #fff; width: 300rpx;margin-top: 70rpx;">确定</button>
+					style="background-color: #A26BFF;color: #fff; width: 300rpx;margin-top: 70rpx;">确定</button>
 			</view>
 		</u-popup>
 	</view>
@@ -417,13 +418,13 @@
 			//跳转微信小程序
 			toWeChatProgram() {
 				// location.href = 'weixin://dl/business/?t=xxxxxx'
-			},
-			couponStorage(item) {
-				if (item.prizeType && JSON.parse(item.prizeType).value === 'coupon' || JSON.parse(item.prizeType).value === 'coupon_pkg') {
-					if (item.couponDetail) {
-						uni.setStorageSync('couponDetail', item.couponDetail);
-					}
-				}
+			},
+			couponStorage(item) {
+				if (item.prizeType && JSON.parse(item.prizeType).value === 'coupon' || JSON.parse(item.prizeType).value === 'coupon_pkg') {
+					if (item.couponDetail) {
+						uni.setStorageSync('couponDetail', item.couponDetail);
+					}
+				}
 			},
 
 			getBaseInfo() {
@@ -497,24 +498,23 @@
 		// 设置ios刘海屏底部横线安全区域
 		// padding-bottom: constant(safe-area-inset-bottom);
 		// padding-bottom: env(safe-area-inset-bottom);
-		padding-bottom: 200rpx;
-
-		background: url(../static/activity/effectsone.png) no-repeat 100% 0%;
+		padding-bottom: 250rpx;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/activityBackGround.png) no-repeat 100% 0%;
 		background-size: 100%;
 
 		&-fakeNum {
-			margin-top: 46rpx;
-
+			padding: 88rpx 0 20rpx 0;
+			text-align: center;
 			.fakeNum {
-				line-height: 66rpx;
+				display: inline-block;
+				line-height: 58rpx;
 				text-align: center;
-				width: 266rpx;
-				height: 76rpx;
-				background: url(../static/activity/rectangle.png) no-repeat center center;
-				background-size: 266rpx 76rpx;
-				margin: 0 auto;
-				color: #A13D01;
-				font-size: 30rpx;
+				width: 208rpx;
+				height: 58rpx;
+				background: linear-gradient(180deg, #FBB8B8 0%, #8E51F7 100%);
+				border-radius: 2rpx;
+				color: #fff;
+				font-size: 26rpx;
 			}
 		}
 
@@ -523,11 +523,11 @@
 			width: 100%;
 			font-family: YouSheBiaoTiHei;
 			color: #FFFFFF;
+			margin-bottom: 70rpx;
 
 			&-on {
 				display: inline-block;
 				font-size: 76rpx;
-				line-height: 68rpx;
 
 				&-line {
 					display: inline-block;
@@ -547,13 +547,12 @@
 
 		&-fixed {
 			height: 630rpx;
-			margin: 30rpx 30rpx;
+			margin: 46rpx 30rpx;
 
 			&-effectstwo {
-				border-radius: 20rpx;
 				width: 100%;
 				height: 100%;
-				background: url(../static/activity/effectstwo.png) no-repeat center center;
+				background-color: #fff;
 
 				.effectsthree {
 					position: relative;
@@ -574,74 +573,80 @@
 
 						&-name {
 							position: relative;
-							left: 10rpx;
-							top: -160rpx;
+							left: 2rpx;
+							top: -162rpx;
 							transform: rotateZ(-45deg);
+							font-family: YouSheBiaoTiHei-Regular, YouSheBiaoTiHei;
 							color: #fff;
-							font-size: 26rpx;
+							font-size: 36rpx;
 						}
 					}
 
 					&-position {
 						position: absolute;
-						// z-index: 1;
-						width: 180rpx;
-						height: 62rpx;
-						background-image: linear-gradient(to right, #FAE08A, #FFC45A);
-						border-radius: 17rpx;
-						line-height: 62rpx;
+						width: 148rpx;
+						height: 48rpx;
+						// background-image: linear-gradient(to right, #FAE08A, #FFC45A);
+						border-radius: 2rpx;
+						border: 2rpx solid $uni-text-color;
+						background-color: #fff;
+						line-height: 48rpx;
 						text-align: center;
-						color: #A13D01;
-						font-size: 30rpx;
-						top: 20rpx;
-						right: 20rpx;
+						color: $uni-text-color;
+						font-size: 24rpx;
+						top: 42rpx;
+						right: 42rpx;
 					}
 
 					&-positionTwo {
 						width: 100%;
 						height: 100%;
 						text-align: center;
-
+						
+						.effectstwo1 {
+							margin-top: 292rpx;
+							display: inline-block;
+							width: 420rpx;
+							height: 182rpx;
+							background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/activityPrizeplatform.png) no-repeat 100% center;
+							background-size: 100%;
+						}
+						
 						image {
-							width: 350rpx;
-							height: 350rpx;
-							margin-top: 70rpx;
+							position: absolute;
+							left: 28%;
+							top: 116rpx;
+							width: 310rpx;
+							height: 246rpx;
 						}
 
 						.textone {
 							width: 70%;
 							margin: 0 auto;
-							margin-top: 80rpx;
 							color: #333333;
-							font-size: 30rpx;
-							line-height: 40rpx;
+							font-size: 28rpx;
+							font-weight: 500;
+							line-height: 32rpx;
 						}
 
 						.texttwo {
-							color: #FC531E;
-							font-size: 30rpx;
-							line-height: 34rpx;
+							color: $uni-text-color;
+							margin-top: 20rpx;
+							font-size: 38rpx;
+							font-weight: 500;
+							line-height: 42rpx;
 						}
 					}
 				}
-
-				.effectstwo {
-					position: relative;
-					bottom: 120rpx;
-					margin-left: 17.5%;
-					width: 65%;
-					height: 65%;
-					background: url(../static/activity/effectssix.png) no-repeat 100% center;
-					background-size: 100%;
-				}
+				
+				
 			}
 		}
 
 		&-award {
 			padding-bottom: 50rpx;
 			// height: 2230rpx;
-			border-radius: 18rpx;
-			margin: 30rpx 30rpx;
+			margin: 46rpx 30rpx;
 			background-color: #fff;
 
 			.effectsthree {
@@ -663,35 +668,36 @@
 
 					&-name {
 						position: relative;
-						left: 10rpx;
-						top: -160rpx;
+						left: 2rpx;
+						top: -162rpx;
 						transform: rotateZ(-45deg);
+						font-family: YouSheBiaoTiHei-Regular, YouSheBiaoTiHei;
 						color: #fff;
-						font-size: 26rpx;
+						font-size: 36rpx;
 					}
 				}
 
 				&-position {
 					position: absolute;
-					z-index: 1;
-					width: 180rpx;
-					height: 62rpx;
-					background-image: linear-gradient(to right, #FAE08A, #FFC45A);
-					border-radius: 17rpx;
-					line-height: 62rpx;
+					width: 148rpx;
+					height: 48rpx;
+					// background-image: linear-gradient(to right, #FAE08A, #FFC45A);
+					border-radius: 2rpx;
+					border: 2rpx solid $uni-text-color;
+					background-color: #fff;
+					line-height: 48rpx;
 					text-align: center;
-					color: #A13D01;
-					font-size: 30rpx;
-					top: 20rpx;
-					right: 20rpx;
+					color: $uni-text-color;
+					font-size: 24rpx;
+					top: 42rpx;
+					right: 42rpx;
 				}
 
 				&-positionTwo {
-					width: 100%;
-					height: 220rpx;
-					// text-align: center;
-					padding: 0 62rpx;
+					padding: 34rpx 0;
+					margin: 0 62rpx;
 					justify-content: flex-start;
+					border-bottom: 2rpx solid rgba(51,51,51,0.12);
 					
 					.justify {
 						justify-content: left;
@@ -706,13 +712,15 @@
 					.textone {
 						color: #333333;
 						font-size: 30rpx;
+						font-weight: 500;
 						margin-left: 20rpx;
 						line-height: 75rpx;
 					}
 
 					.texttwo {
 						margin-left: 20rpx;
-						color: #FC531E;
+						color: $uni-text-color;
+						font-weight: 500;
 						font-size: 28rpx;
 						line-height: 75rpx;
 					}
@@ -729,6 +737,9 @@
 						// height: 45%;
 					}
 				}
+				&-positionTwo:last-child {
+					border: none;
+				}
 			}
 
 			&-explain {
@@ -742,13 +753,14 @@
 		&-description {
 			min-height: 200rpx;
 			background-color: #fff;
-			margin: 30rpx 30rpx;
-			border-radius: 18rpx;
+			margin: 46rpx 30rpx;
+			border-radius: 2rpx;
 			padding-bottom: 40rpx;
 
 			&-code {
 				font-size: 30rpx;
 				color: #333;
+				font-weight: 500;
 				padding: 36rpx 24rpx;
 			}
 
@@ -763,13 +775,14 @@
 
 					&-bottom {
 						margin: 0 auto;
-						width: 526rpx;
-						height: 70rpx;
-						background-color: #F8832C;
+						width: 460rpx;
+						height: 68rpx;
+						background-color: $uni-text-color;
 						color: #fff;
-						border-radius: 12rpx;
-						font-size: 36rpx;
-						line-height: 70rpx;
+						border-radius: 4rpx;
+						font-size: 28rpx;
+						font-weight: 500;
+						line-height: 68rpx;
 
 					}
 				}
@@ -789,7 +802,7 @@
 
 				.codesix {
 					line-height: 1rpx;
-					color: #F8832C;
+					color: $uni-text-color;
 					font-size: 30rpx;
 					display: inline-block;
 					margin-bottom: 80rpx;
@@ -807,7 +820,7 @@
 
 				.view {
 					font-size: 28rpx;
-					color: #F9822C;
+					color: $uni-text-color;
 					display: inline-block;
 				}
 			}
@@ -816,7 +829,7 @@
 				margin: 0 auto;
 				width: 600rpx;
 				font-size: 26rpx;
-				color: #999;
+				color: #333;
 				line-height: 40rpx;
 				// padding-bottom: 40rpx;
 				text-align: center;
@@ -825,14 +838,14 @@
 
 		&-descriptiontwo {
 			margin: 30rpx;
-			border-radius: 18rpx;
+			border-radius: 2rpx;
 			overflow: hidden;
 			background-color: #fff;
 		}
 
 		&-account {
 			height: 100rpx;
-			border-radius: 22rpx;
+			border-radius: 2rpx;
 			background-color: #fff;
 			margin: 30rpx 30rpx 0 30rpx;
 			text-align: center;
@@ -849,21 +862,21 @@
 				text {
 					line-height: 100rpx;
 					margin: 20rpx 15rpx;
-					font-size: 28rpx;
-					color: #333333;
+					font-size: 26rpx;
+					color: #666;
 				}
 
 				view {
 					text-align: center;
-					border-radius: 6rpx;
+					border-radius: 4rpx;
 					display: inline-block;
-					height: 40rpx;
-					line-height: 38rpx;
+					height: 46rpx;
+					line-height: 40rpx;
 					font-size: 24rpx;
 					width: 110rpx;
-					color: #f9822c;
+					color: $uni-text-color;
 					background-color: #fff;
-					border: 2rpx solid #f9822c;
+					border: 2rpx solid $uni-btn-color;
 				}
 
 			}
@@ -898,13 +911,13 @@
 
 			::v-deep button {
 				width: 640rpx;
-				height: 90rpx;
-				line-height: 90rpx;
-				font-size: 34rpx;
+				height: 78rpx;
+				line-height: 78rpx;
+				font-size: 30rpx;
 				color: #fff;
-				background-color: #f9822c;
+				background-color: $uni-btn-color;
 				border: none;
-				border-radius: 48rpx;
+				border-radius: 4rpx;
 			}
 		}
 

+ 111 - 79
src/packageOperate/activity/record.vue

@@ -58,20 +58,24 @@
 		</view>
 
 		<!-- 中奖 -->
-		<u-popup :show="activityShow" mode="center" round="11" @close="close" :closeable="true" overlayOpacity="0.5"
+		<u-popup :show="activityShow" bgColor='transparent' mode="center" round="11" @close="close" overlayOpacity="0.5"
 			@touchmove.prevent.stop>
 			<view class="activityShow-wrap">
+				<view class="img">
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/activityPrizeBackGround.png" mode="aspectFit"></image>
+				</view>
 				<view class="activityShow-wrap-award">
-					<view class="award">恭喜你 获得{{listData.awardName}}</view>
-					<view v-if="listData.prizeType && listData.prizeType =='COIN'"  class="award-name ells-one">盲豆 x{{listData.value}}</view>
-					<view v-else class="award-name ells-one">{{listData.prizeTitle}}</view>
+					<view class="award">恭喜你!获得{{listData.awardName}}</view>
+					<view v-if="listData.prizeType && listData.prizeType !='COIN'" class="award-name">
+						奖品已放入我的仓库</view>
+					<view v-else class="award-name">奖品已放入“我的盲豆”</view>
 				</view>
 				<view class="activityShow-wrap-rela">
 					<image :src="listData.prizePicUrl" mode="aspectFit" class="relaimg"></image>
 				</view>
-				<view v-if="listData.prizeType && listData.prizeType !='COIN'" class="activityShow-wrap-library">
-					奖品已放入我的仓库</view>
-				<view v-else class="activityShow-wrap-library">奖品已放入“我的盲豆”</view>
+				<view v-if="listData.prizeType && listData.prizeType =='COIN'"  class="activityShow-wrap-library ells-one">盲豆 x{{listData.value}}</view>
+				<view v-else class="activityShow-wrap-library ells-one">{{listData.prizeTitle}}</view>
+				
 				<view class="flex activityShow-wrap-btn">
 					<button @click="toPrize()" v-if="listData.prizeType && listData.prizeType !='COIN'" class="btnone"
 						style="">前往查看</button>
@@ -82,19 +86,20 @@
 		</u-popup>
 
 		<!-- 未中奖 -->
-		<u-popup :show="closeShow" mode="center" round="11" @close="close" :closeable="true" overlayOpacity="0.5"
+		<u-popup :show="closeShow" mode="center" bgColor='transparent' round="11" @close="close" overlayOpacity="0.5"
 			@touchmove.prevent.stop>
 			<view class="choiceShow-wrap">
+				<view class="img">
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/activityPrizeBackGround.png" mode="aspectFit"></image>
+				</view>
 				<view class="choiceShow-wrap-award">
-					<view></view>
-					<view class="awardone">
-						很遗憾, 您未中奖
-					</view>
-					<!-- <view  class="awardtwo">
-						欢迎继续参与其他抽奖, 好运就在你身边
-					</view> -->
+					<view class="award">很遗憾, 您未中奖</view>
+					<view class="award-name">别气馁,下次再试试~</view>
+				</view>
+				<view class="choiceShow-wrap-rela">
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/activityPrizeBox.png" mode="aspectFit" class="relaimg"></image>
 				</view>
-				<button @click="close()" class="btntwo">确定</button>
+				<button @click="close()" class="btntwo">知道了</button>
 			</view>
 		</u-popup>
 	</view>
@@ -296,114 +301,141 @@
 	}
 
 	.activityShow-wrap {
-		border-radius: 22rpx;
+		background: linear-gradient(130deg, #FFF9F5 0%, #F8DFEF 44%, #C1BDFF 100%);
+		border-radius: 10rpx;
 		overflow: hidden;
-		width: 550rpx;
-		height: 630rpx;
-
+		width: 510rpx;
+		> .img {
+			position: absolute;
+			width: 100%;
+			height: 150rpx;
+			text-align: center;
+			top: -86rpx;
+			image {
+				width: 372rpx;
+				height: 150rpx;
+			}
+		}
+		
 		&-rela {
-			position: relative;
-
+			margin-top: 42rpx;
+			width: 100%;
 			.relaimg {
-				margin-top: 130rpx;
-				height: 270rpx;
-				position: absolute;
-				top: -280rpx;
-				left: 102rpx;
-				width: 350rpx;
+				width: 100%;
+				height: 184rpx;
 			}
 		}
 
 		&-award {
 			width: 100%;
-			height: 320rpx;
-			text-align: center;
-			// background: linear-gradient(0deg, #FF866B, #FFAE64);
-			// box-shadow: 0px 6px 6px 0px rgba(26, 109, 190, 0.1);
-			background: linear-gradient(180deg, #FC981B, #F4641B);
-			box-shadow: 0px 6px 6px 0px rgba(26, 109, 190, 0.1);
 			text-align: center;
 
 			.award {
-				font-size: 40rpx;
-				color: #fff;
-				font-weight: bold;
-				line-height: 80rpx;
-				padding-top: 30rpx;
+				font-size: 30rpx;
+				color: #000;
+				font-weight: 500;
+				line-height: 34rpx;
+				padding-top: 94rpx;
 
 				&-name {
-					font-size: 30rpx;
-					color: #fff;
-					font-weight: bold;
-					padding: 0 34rpx;
+					font-size: 24rpx;
+					color: #666;
+					font-weight: 400;
+					line-height: 50rpx;
+					padding: 8rpx 34rpx;
 				}
 			}
 		}
 
 		&-library {
 			text-align: center;
-			margin-top: 110rpx;
+			margin-top: 18rpx;
 			font-size: 24rpx;
-			color: #999;
-			line-height: 80rpx;
+			color: #333;
+			line-height: 50rpx;
 		}
 
 		&-btn {
-			padding: 10rpx 50rpx 40rpx;
+			padding: 30rpx 50rpx 74rpx;
 			justify-content: space-between;
 			.btnone {
-				width: 200rpx;
-				height: 78rpx;
+				width: 176rpx;
+				height: 58rpx;
 				font-size: 26rpx;
-				line-height: 74rpx;
-				background-color: #fff;
-				color: #F8832C;
-				border: 2rpx solid #F8832C;
+				line-height: 56rpx;
+				background-color: transparent;
+				color: $uni-text-color;
+				border: 2rpx solid $uni-text-color;
 			}
 
 			.btntwo {
-				width: 200rpx;
-				height: 78rpx;
+				width: 176rpx;
+				height: 58rpx;
 				font-size: 26rpx;
-				line-height: 74rpx;
-				background-color: #F8832C;
+				line-height: 56rpx;
+				background-color: $uni-text-color;
 				color: #fff;
-				border: 2rpx solid #F8832C;
+				border: 2rpx solid $uni-text-color;
 			}
 		}
 	}
 
 	.choiceShow-wrap {
-		border-radius: 22rpx;
+		background: linear-gradient(130deg, #FFF9F5 0%, #F8DFEF 44%, #C1BDFF 100%);
+		border-radius: 4rpx;
 		overflow: hidden;
-		width: 550rpx;
-		height: 340rpx;
-		&-award {
+		width: 510rpx;
+		
+		> .img {
+			position: absolute;
 			width: 100%;
-			height: 190rpx;
+			height: 150rpx;
 			text-align: center;
-			font-weight: bold;
-			// background: linear-gradient(0deg, #FF866B, #FFAE64);
-			// box-shadow: 0px 6px 6px 0px rgba(26, 109, 190, 0.1);
-			background: linear-gradient(180deg, #FC981B, #F4641B);
-			box-shadow: 0px 6px 6px 0px rgba(26, 109, 190, 0.1);
-			text-align: center;
-			.awardone {
-				padding-top: 70rpx; color: #fff;font-size: 40rpx;
+			top: -86rpx;
+			image {
+				width: 372rpx;
+				height: 150rpx;
 			}
-			.awardtwo {
-				padding-top: 60rpx;color: #fff;font-size: 30rpx;
+		}
+		
+		&-rela {
+			margin-top: 42rpx;
+			width: 100%;
+			.relaimg {
+				width: 100%;
+				height: 184rpx;
 			}
 		}
+		
+		&-award {
+			width: 100%;
+			text-align: center;
+		
+			.award {
+				font-size: 30rpx;
+				color: #000;
+				font-weight: 500;
+				line-height: 34rpx;
+				padding-top: 94rpx;
+		
+				&-name {
+					font-size: 24rpx;
+					color: #666;
+					font-weight: 400;
+					line-height: 50rpx;
+					padding: 8rpx 34rpx;
+				}
+			}
+		}
+		
 		.btntwo {
-			margin: 0 auto;
-			width: 252rpx;
-			height: 82rpx;
+			margin: 30rpx auto 74rpx;
+			width: 244rpx;
+			height: 58rpx;
 			font-size: 26rpx;
-			line-height: 82rpx;
-			background-color: #F8832C;
+			line-height: 58rpx;
+			background-color: $uni-text-color;
 			color: #fff;
-			margin-top: 30rpx;
 		}
 
 	}

+ 1 - 1
src/packageOperate/address/create.vue

@@ -192,7 +192,7 @@
 			color: #fff;
 			background-color: $uni-bg-color;
 			border: none;
-			border-radius: 100rpx;
+			border-radius: 6rpx;
 		}
 	}
 </style>

+ 6 - 7
src/packageOperate/address/index.vue

@@ -53,7 +53,7 @@
 		</view>
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
-				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_5.png" mode="scaleToFill"></image>
+				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 				<view class="center-font">暂无收货地址</view>
 			</view>
 		</view>
@@ -248,7 +248,7 @@
 				vertical-align: middle;
 				height: 35rpx;
 				width: 35rpx;
-				background-color: red;
+				background-color: $uni-btn-color;
 				border-radius: 50%;
 				border: red;
 				font-size: 24rpx;
@@ -311,13 +311,12 @@
 
 		::v-deep button {
 			width: 441rpx;
-			height: 88rpx;
-			line-height: 88rpx;
-			font-size: 36rpx;
+			height: 72rpx;
+			line-height: 72rpx;
+			font-size: 32rpx;
 			color: #fff;
-			background-color: #F9822C;
+			background-color: $uni-btn-color;
 			border: none;
-			border-radius: 44rpx;
 			margin: 0 auto;
 		}
 	}

+ 26 - 33
src/packageOperate/components/activity-help/activity-help.vue

@@ -1,39 +1,37 @@
 <template>
 	<view>
 		<!-- 确认助力 -->
-		<u-popup :show="activityShowClose" mode="center" round="30" @close="close" :closeable="true" overlayOpacity="0.5"
+		<u-popup :show="activityShowClose" bgColor='transparent' mode="center" round="30" @close="close" :closeable="true" overlayOpacity="0.5"
 			@touchmove.prevent.stop>
 			<view class="activityShow">
 				<view class="activityShow-one">
 					<image :src="avatar" mode="scaleToFill" class="activityShow-one-img"></image>
 				</view>
 				<view class="activityShow-two">
-					<image src="../../../static/activity/beijingtwo.png" mode="scaleToFill" class="activityShow-two-img"></image>
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/helper.png" mode="scaleToFill" class="activityShow-two-img"></image>
 					<text class="activityShow-two-text ells-one">{{ nickName }}</text>
 				</view>
 				<view class="activityShow-three">邀请您一起免费抽奖</view>
-				<image class="activityShow-four" src="../../../static/activity/tupian.jpg" mode="scaleToFill"></image>
+				<image class="activityShow-four" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/assist.jpg" mode="scaleToFill"></image>
 				<view class="activityShow-five">一起免费抽奖</view>
 				<view class="activityShow-six">收下好意可以帮助好友完成抽奖助力</view>
 				<view class="activityShow-sixtwo">您也可以获得一个免费抽奖机会</view>
 				<view class="activityShow-seven" @click="activityHelp()">
-					<image src="../../../static/activity/yuanjiao.png" mode="scaleToFill" class="activityShow-seven-img"></image>
 					<view class="activityShow-seven-view">收下好意</view>
 				</view>
 			</view>
 		</u-popup>
 		<!-- 助力成功 -->
-		<u-popup :show="closeShow" mode="center" round="30" @close="close" :closeable="true" overlayOpacity="0.5"
+		<u-popup :show="closeShow" mode="center" bgColor='transparent' round="30" @close="close" overlayOpacity="0.5"
 			@touchmove.prevent.stop>
 			<view class="closeShow">
 				<view class="closeShow-one">
-					<image class="closeShow-one-imgone" src="../../../static/activity/beijing.png" mode="scaleToFill"></image>
-					<image class="closeShow-one-imgtwo" src="../../../static/activity/beijingtwo.png" mode="scaleToFill"></image>
+					<image class="closeShow-one-imgone" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/helper_success.png" mode="scaleToFill"></image>
+					<image class="closeShow-one-imgtwo" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/helper.png" mode="scaleToFill"></image>
 					<view class="closeShow-one-view">助力成功!</view>
 					<view class="closeShow-one-viewtwo">您已获得一个免费抽奖机会</view>
 				</view>
 				<view class="closeShow-two" @click="close();exChange()">
-					<image class="closeShow-two-img" src="../../../static/activity/yuanjiao.png" mode="scaleToFill"></image>
 					<view class="closeShow-two-view">确定</view>
 				</view>
 			</view>
@@ -120,6 +118,7 @@
 	.activityShow {
 		text-align: center;
 		width: 600rpx;
+		background-color: #fff;
 
 		&-one {
 			position: relative;
@@ -168,39 +167,33 @@
 		}
 
 		&-five {
-			color: #FF8B0A;
+			color: $uni-text-color;
 			font-size: 73rpx;
 			font-family: YouSheBiaoTiHei;
 			font-weight: 400;
 		}
 
 		&-six {
-			color: #F78B3C;
+			color: $uni-text-color;
 			font-size: 26rpx;
 			margin: 10rpx 0 4rpx 0;
 		}
 		&-sixtwo {
-			color: #F78B3C;
+			color: $uni-text-color;
 			font-size: 26rpx;
 			margin-bottom: 10rpx;
 		}
 
 		&-seven {
-			position: relative;
-
-			&-img {
+			&-view {
 				width: 340rpx;
 				height: 88rpx;
-				margin-top: 20rpx;
-				margin-bottom: 40rpx;
-			}
-
-			&-view {
+				line-height: 88rpx;
+				background-color: $uni-bg-color;
+				margin: 45rpx auto;
 				font-size: 34rpx;
 				color: #FDFBFB;
-				position: absolute;
-				top: 40rpx;
-				left: 235rpx;
+				border-radius: 6rpx;
 			}
 		}
 	}
@@ -209,6 +202,7 @@
 		text-align: center;
 		width: 570rpx;
 		height: 700rpx;
+		// background-color: #fff;
 
 		&-one {
 			&-imgone {
@@ -242,22 +236,21 @@
 		}
 
 		&-two {
-			position: relative;
+			position: absolute;
+			top: 0;
+    	margin-top: 510rpx;
+			left: 115rpx;
 
-			&-img {
+			&-view {
 				width: 340rpx;
 				height: 88rpx;
-				position: absolute;
-				left: 130rpx;
-				bottom: 70rpx;
-			}
-
-			&-view {
+				line-height: 88rpx;
+				background-color: $uni-bg-color;
+				margin: 45rpx auto;
 				font-size: 34rpx;
 				color: #FDFBFB;
-				position: absolute;
-				left: 260rpx;
-				bottom: 93rpx;
+				border-radius: 6rpx;
+				
 			}
 		}
 	}

+ 1 - 1
src/packageOperate/creator/index.vue

@@ -164,7 +164,7 @@
 			color: #fff;
 			background-color: $uni-bg-color;
 			border: none;
-			border-radius: 100rpx;
+			border-radius: 6rpx;
 		}
 	}
 	

+ 8 - 8
src/packageOperate/exchange/index.vue

@@ -27,7 +27,7 @@
 				<view class="rect-popup">
 					<view class="rect-popup-top">
 						<view class="image1">
-							<image src="../static/image1.png" mode="aspectFit"></image>
+							<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/activityPrizeBackGround.png" mode="aspectFit"></image>
 						</view>
 						<view class="text">~恭喜您得到奖品~</view>
 						<view class="title">{{ info.type == 'coin' ? (info.goodsName + ' x' + info.value): info.goodsName }}</view>
@@ -152,8 +152,8 @@
 			margin-top: 28rpx;
 			margin-bottom: 50rpx;
 			height: 88rpx;
-			border: 1px solid #FD7A21;
-			background-color: rgba(253,122,33,0.12);
+			border: 1px solid $uni-bg-color;
+			background-color: rgba(142,81,247,0.12);
 			display: flex;
 			flex-direction: row;
 			align-items: center;
@@ -174,8 +174,8 @@
 		width: 666rpx;
 		height: 98rpx;
 		line-height: 98rpx;
-		background: linear-gradient(180deg, #FEA052 0%, #FF8D2F 100%);
-		border-radius: 56rpx;
+		background: $uni-bg-color;
+		border-radius: 6rpx;
 		color: #fff;
 	}
 }
@@ -189,7 +189,7 @@
 		width: 85vw;
 		text-align: center;
 		&-top {
-			background-color: #fff;
+			background: linear-gradient(125deg, #FFF9F5 0%, #F8DFEF 44%, #C1BDFF 100%);
 			margin-bottom: 80rpx;
 			padding: 0 80rpx 40rpx;
 			.image1 {
@@ -207,7 +207,7 @@
 				font-size: 30rpx;
 				font-family: PingFang SC-Medium, PingFang SC;
 				font-weight: 500;
-				color: #FF9056;
+				color: $uni-text-color;
 				line-height: 36rpx;
 			}
 			.title {
@@ -232,7 +232,7 @@
 				button {
 					height: 68rpx;
 					line-height: 68rpx;
-					background: #FF9056;
+					background: $uni-bg-color;
 					border-radius: 50rpx;
 					color: #fff;
 					font-size: 26rpx;

+ 3 - 3
src/packageOperate/process/index.vue

@@ -164,7 +164,7 @@
 			font-size: 36rpx;
 			line-height: 80rpx;
 			border-radius: 20rpx;
-			background-color: rgba(235, 112, 9, 100);
+			background-color: $uni-bg-color;
 			color: #FFFFFF;
 			text-align: center;
 			margin-bottom: 40rpx;
@@ -172,8 +172,8 @@
 
 		.btn:last-child {
 			background-color: #FFFFFF;
-			color: rgba(235, 112, 9, 100);
-			border: 1px solid rgba(235, 112, 9, 100);
+			color: $uni-bg-color;
+			border: 1px solid $uni-bg-color;
 		}
 	}
 </style>

二进制
src/packageOperate/static/activity/effectsfive.png


二进制
src/packageOperate/static/activity/effectsone.png


二进制
src/packageOperate/static/activity/effectssix.png


二进制
src/packageOperate/static/activity/effectsthree.png


二进制
src/packageOperate/static/activity/effectstwo.png


二进制
src/packageOperate/static/activity/logo.png


二进制
src/packageOperate/static/activity/rectangle.png


二进制
src/packageOperate/static/image1.png


+ 1 - 1
src/packageOperate/store/index.vue

@@ -33,7 +33,7 @@
 		</view>
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
-				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png" mode="scaleToFill"></image>
+				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 				<view class="center-font">暂无盲票</view>
 			</view>
 		</view>

+ 1 - 1
src/packageOther/about/index.vue

@@ -22,7 +22,7 @@
 			<view class="flex about-logo">
 				<image src="../../static/public/logo.png" mode="scaleToFill"></image>
 				<!-- #ifndef MP-ALIPAY -->
-				<view class="edition">v 1.1.7</view>
+				<view class="edition">v 1.2.0</view>
 				<!-- #endif -->
 				<!-- #ifdef MP-ALIPAY -->
 				<view class="edition">v 2.2.6</view>

+ 1 - 1
src/packagePrize/address/index.vue

@@ -44,7 +44,7 @@
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
 				<image class="center-img"
-					src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_5.png" mode="scaleToFill">
+					src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill">
 				</image>
 				<view class="center-font">暂无门店</view>
 			</view>

+ 3 - 2
src/packagePrize/bean/components/transfer.vue

@@ -142,12 +142,13 @@
 				width: 160rpx;
 				height: 60rpx;
 				line-height: 60rpx;
-				border-radius: 8rpx;
+				border-radius: 4rpx;
 				text-align: center;
 			}
 			
 			.close {
-				border: 1px solid rgba(187, 187, 187, 100);
+				border: 1px solid $uni-bg-color;
+				color: $uni-bg-color;
 			}
 			
 			.confirm {

+ 22 - 14
src/packagePrize/bean/index.vue

@@ -40,7 +40,8 @@
 						<view class="beanNum" v-if="item.logText.split('|')[1]">{{ item.logText.split('|')[1] }}</view>
 					</view>
 					<view class="flex right">
-						<view class="amt">{{ item.logMoney > 0 ? '+' : '' }}{{ item.logMoney }}</view>
+						<view class="amt1" v-if="item.logMoney > 0">{{ '+' + item.logMoney }}</view>
+						<view class="amt" v-else>{{ item.logMoney }}</view>
 						<view class="balance">余额:{{ item.money }}</view>
 						<view class="beanNum" v-if="item.logText.split('|')[1]">-</view>
 					</view>
@@ -49,7 +50,7 @@
 			<u-loadmore :line="true" v-if="list.length>7" :status="status" :loading-text="'努力加载中'" :nomore-text="'已经到底了'" />
 			<view class="flex empty" v-if="!list.length">
 				<view class="center">
-					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_6.png"
+					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png"
 						mode="scaleToFill"></image>
 					<view class="center-font">还没有记录</view>
 				</view>
@@ -160,24 +161,24 @@
 
 		// 盲豆数
 		&-balance {
-			height: 264rpx;
+			height: 240rpx;
 			flex-direction: column;
 			justify-content: flex-start;
 			background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/coin_bkg.png) center center no-repeat;
-			background-size: calc(100vw - 68rpx) 264rpx;
+			background-size: calc(100vw - 68rpx) 240rpx;
 			margin-bottom: 34rpx;
 
 			&-num {
-				font-size: 52rpx;
-				line-height: 52rpx;
-				font-weight: bold;
+				font-size: 36rpx;
+				line-height: 36rpx;
+				font-weight: 500;
 				color: #FFFFFF;
 				margin: 36rpx 0 16rpx;
 			}
 
 			&-title {
-				font-size: 26rpx;
-				line-height: 26rpx;
+				font-size: 28rpx;
+				line-height: 28rpx;
 				margin-bottom: 24rpx;
 				font-weight: 500;
 				color: #FFFFFF;
@@ -187,13 +188,14 @@
 			&-btn {
 				display: inline-block;
 				margin: 0 20px;
-				width: 200rpx;
-				height: 70rpx;
-				line-height: 70rpx;
+				width: 182rpx;
+				height: 68rpx;
+				line-height: 68rpx;
 				font-size: 30rpx;
 				text-align: center;
 				background: #fff;
-				border-radius: 16rpx;
+				border-radius: 4rpx;
+				color: $uni-text-color;
 
 				image {
 					width: 56rpx;
@@ -243,10 +245,16 @@
 					align-items: flex-end;
 
 					.amt {
-						color: #FF4208;
+						color: #666;
 						font-size: 30rpx;
 						line-height: 30rpx;
 						margin-bottom: 28rpx;
+					}
+					.amt1 {
+						color: $uni-text-color;
+						font-size: 30rpx;
+						line-height: 30rpx;
+						margin-bottom: 28rpx;
 					}
 
 					.balance {

+ 79 - 99
src/packagePrize/choice/index.vue

@@ -18,14 +18,14 @@
 
 			<!-- 标题 -->
 			<view class="choice-title flex">
-				<image src="../../packagePrize/static/rolling_title.png" mode="scaleToFill" v-if="!comfirmShow">
+				<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/cash_prize.png" mode="scaleToFill" v-if="!comfirmShow">
 				</image>
-				<image src="../../packagePrize/static/choice_title.png" mode="scaleToFill" v-else></image>
+				<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/have_prize.png" mode="scaleToFill" v-else></image>
 			</view>
 			<!-- 提示 -->
-			<view class="choice-tip flex" v-if="!comfirmShow">
+			<!-- <view class="choice-tip flex" v-if="!comfirmShow">
 				<view class="choice-tip-content">以下奖品任选一件</view>
-			</view>
+			</view> -->
 			<!-- 奖品列表 -->
 			<view class="choice-list" v-if="!comfirmShow">
 				<view class="choice-list-item flex" v-for="(item, index) in prizeList" :key="index">
@@ -58,8 +58,7 @@
 			<!-- 按钮 -->
 			<view class="footer-fixed flex" v-if="!comfirmShow">
 				<view class="footer-fixed-btn flex" @click="confirmPrize">
-					<image src="../../packagePrize/static/rolling_btn.png" mode="aspectFit"></image>
-					<view class="footer-fixed-btn-txt">确认</view>
+					确认
 				</view>
 			</view>
 
@@ -68,22 +67,22 @@
 					<view class="choice-box-popup__image flex">
 						<image :src="actionInfo.picUrl" mode="aspectFit"></image>
 					</view>
-				</view>
-			</view>
-			<view class="choice-info flex" v-if="comfirmShow">
-				<view class="choice-info-content">
-					<view class="choice-info-content-price"
+					<view class="choice-box-popup-price"
 						v-if="actionInfo.prizeType && actionInfo.prizeType.value != 'coin'">
 						<text>¥</text>{{ $numberFormat(actionInfo.value) }}
 					</view>
-					<view class="choice-info-content-price" v-else>{{ actionInfo.value }}个</view>
-					<view class="choice-info-content-title ells"
+					<view class="choice-box-popup-price" v-else>{{ actionInfo.value }}个</view>
+					<view class="choice-box-popup-title ells"
 						v-if="actionInfo.prizeType && actionInfo.prizeType.value != 'coin'">{{ actionInfo.title }}
 					</view>
-					<view class="choice-info-content-title" v-else>盲豆</view>
+					<view class="choice-box-popup-title" v-else>盲豆</view>
+				</view>
+			</view>
+			<view class="choice-info flex" v-if="comfirmShow">
+				<view class="choice-info-content">
+					
 					<view class="choice-info-content-btn flex">
 						<view class="choice-info-content-btn-content flex" @click="toPrize(actionInfo.prizeType)">
-							<image src="../../packagePrize/static/rolling_btn.png" mode="aspectFit"></image>
 							<view class="choice-info-content-btn-content-txt"
 								v-if="actionInfo.prizeType && actionInfo.prizeType.value != 'coin'">去查看我的奖品</view>
 							<view class="choice-info-content-btn-content-txt" v-else>去商城兑换商品</view>
@@ -373,11 +372,11 @@
 					uni.switchTab({
 						url: '/pages/core/index'
 					})
-				}
-				if (data.value == 'red_pkg') {
-					uni.redirectTo({
-						url: '/packagePrize/prize/index?coupon=2'
-					})
+				}
+				if (data.value == 'red_pkg') {
+					uni.redirectTo({
+						url: '/packagePrize/prize/index?coupon=2'
+					})
 				}
 			},
 
@@ -524,7 +523,7 @@
 		position: relative;
 		width: 100%;
 		height: 100vh;
-		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/offline_prize_bkg.png) center center no-repeat;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background.png) center center no-repeat;
 		background-size: 100vw 100vh;
 		overflow: hidden;
 
@@ -541,11 +540,11 @@
 		// 标题
 		&-title {
 			padding-top: 12vh;
-			margin-bottom: 72rpx;
+			// margin-bottom: 72rpx;
 
 			image {
-				width: 484rpx;
-				height: 108rpx;
+				width: 482rpx;
+				height: 164rpx;
 			}
 		}
 
@@ -557,7 +556,7 @@
 				line-height: 56rpx;
 				background: rgba(255, 211, 157, .44);
 				border-radius: 24rpx;
-				color: #FB900B;
+				color: $uni-text-color;
 				font-size: 30rpx;
 				text-align: center;
 			}
@@ -574,7 +573,6 @@
 
 			>view {
 				font-size: 30rpx;
-				font-weight: 500;
 				color: #fff;
 			}
 		}
@@ -596,12 +594,12 @@
 				.checkbox {
 					width: 46rpx;
 					height: 46rpx;
-					border: 1px solid #F56D1B;
+					border: 1px solid $uni-text-color;
 					border-radius: 50%;
 				}
 
 				.checkbox-action {
-					background: #F56D1B;
+					background: $uni-text-color;
 				}
 
 				.info {
@@ -644,82 +642,72 @@
 				}
 
 				.detail {
-					color: #F56D1B;
+					color: $uni-text-color;
 				}
 			}
 		}
 
 		&-box {
-			margin-bottom: 34rpx;
+			margin-bottom: 80rpx;
+			margin-top: 20rpx;
 
 			&-popup {
 				flex-direction: column;
 				width: 75vw;
-				height: 38vh;
+				height: 43vh;
 				background-color: #FFFFFF;
-				border-radius: 22rpx;
+				border-radius: 20rpx;
 
 				&__image {
 					width: 65%;
 					height: 65%;
-
+					margin-bottom: 26rpx;
 					image {
 						width: 100%;
 						height: 100%;
 					}
 				}
-			}
-		}
-
-		&-info {
-			margin-bottom: 40rpx;
-
-			&-content {
-				width: 70vw;
-
 				&-price {
 					text-align: center;
-					font-size: 40rpx;
-					line-height: 40rpx;
-					font-family: PingFang SC;
-					font-weight: bold;
-					color: #FFFFFF;
-					margin-bottom: 20rpx;
+					font-size: 48rpx;
+					line-height: 62rpx;
+					font-family: YouSheBiaoTiHei-Regular, YouSheBiaoTiHei;
+					font-weight: 400;
+					color: #333;
+					margin-bottom: 22rpx;
 
 					text {
-						font-size: 28rpx;
+						font-size: 32rpx;
 					}
 				}
 
 				&-title {
-					height: 36rpx;
-					overflow: hidden;
 					text-align: center;
-					font-size: 36rpx;
-					line-height: 36rpx;
-					color: #FFFFFF;
-					margin-bottom: 40rpx;
+					font-size: 26rpx;
+					line-height: 26rpx;
+					color: #666;
+					margin-bottom: 22rpx;
 				}
+			}
+		}
+
+		&-info {
+			margin-bottom: 54rpx;
 
+			&-content {
+				width: 560rpx;
+				
 				&-btn {
 					&-content {
+						border: 1px solid #FFFFFF;
+						background-color: transparent;
 						position: relative;
-						width: 70vw;
-
-						image {
-							width: 70vw;
-							height: 112rpx;
-						}
-
-						&-txt {
-							position: absolute;
-							top: 0;
-							height: 112rpx;
-							line-height: 112rpx;
-							font-size: 30rpx;
-							text-align: center;
-							color: #FFFFFF;
-						}
+						width: 560rpx;
+						height: 86rpx;
+						line-height: 86rpx;
+						font-size: 30rpx;
+						text-align: center;
+						color: #FFFFFF;
 					}
 				}
 			}
@@ -727,15 +715,15 @@
 
 		&-tip {
 			.txt {
-				width: 332rpx;
-				height: 66rpx;
-				line-height: 66rpx;
+				width: 560rpx;
+				height: 86rpx;
+				line-height: 86rpx;
 				text-align: center;
-				background: rgba(255, 211, 157, .3);
-				border-radius: 34rpx;
-				font-size: 34rpx;
+				background: $uni-bg-color;
+				border-radius: 2rpx;
+				font-size: 32rpx;
 				font-weight: 500;
-				color: #FB930D;
+				color: #fff;
 			}
 		}
 	}
@@ -752,24 +740,16 @@
 		padding-bottom: env(safe-area-inset-bottom);
 
 		&-btn {
-			padding: 0 0 20rpx;
 			position: relative;
-			width: 70vw;
-
-			image {
-				width: 70vw;
-				height: 112rpx;
-			}
-
-			&-txt {
-				position: absolute;
-				top: 0;
-				height: 112rpx;
-				line-height: 112rpx;
-				font-size: 30rpx;
-				text-align: center;
-				color: #FFFFFF;
-			}
+			background: $uni-bg-color;
+			margin-bottom: 30rpx;
+			width: 560rpx;
+			height: 86rpx;
+			border-radius: 2rpx;
+			line-height: 86rpx;
+			font-size: 32rpx;
+			text-align: center;
+			color: #FFFFFF;
 		}
 
 		.btn {
@@ -823,7 +803,7 @@
 			height: 60rpx;
 			line-height: 60rpx;
 			border-radius: 8rpx;
-			background-color: rgba(235, 112, 9, 100);
+			background-color: $uni-bg-color;
 			color: rgba(255, 255, 255, 100);
 			font-size: 28rpx;
 			text-align: center;
@@ -873,11 +853,11 @@
 				height: 60rpx;
 				line-height: 60rpx;
 				border-radius: 8rpx;
-				color: rgba(235, 112, 9, 100);
+				color: $uni-bg-color;
 				font-size: 28rpx;
 				text-align: center;
 				font-family: Microsoft Yahei;
-				border: 1px solid rgba(235, 112, 9, 100);
+				border: 1px solid $uni-bg-color;
 			}
 
 			.confirm {
@@ -885,7 +865,7 @@
 				height: 60rpx;
 				line-height: 60rpx;
 				border-radius: 8rpx;
-				background-color: rgba(235, 112, 9, 100);
+				background-color: $uni-bg-color;
 				color: rgba(253, 253, 253, 100);
 				font-size: 28rpx;
 				text-align: center;

+ 5 - 5
src/packagePrize/components/sku-popup/sku-popup.vue

@@ -173,7 +173,7 @@
 						text-overflow: ellipsis;
 					}
 					&__coin {
-						color: #FA822C;
+						color: $uni-btn-color;
 						
 						.image-coin {
 							width: 34rpx;
@@ -210,8 +210,8 @@
 				}
 	
 				.action {
-					background-color: rgba(250, 130, 44, .25);
-					color: #FA822C;
+					background-color: #E8DCFD;
+					color: $uni-btn-color;
 				}
 			}
 		}
@@ -239,8 +239,8 @@
 					width: 414rpx;
 					height: 88rpx;
 					line-height: 88rpx;
-					background: #FA822C;
-					border-radius: 44rpx;
+					background: $uni-btn-color;
+					border-radius: 6rpx;
 					font-size: 36rpx;
 					color: #fff;
 					text-align: center;

+ 3 - 3
src/packagePrize/coupon/detail.vue

@@ -276,12 +276,12 @@
 					display: inline-block;
 					width: 150rpx;
 					height: 40rpx;
-					color: #FE9E48;
-					border: 2rpx solid #FE9E48;
+					color: $uni-text-color;
+					border: 2rpx solid $uni-text-color;
 					text-align: center;
 					line-height: 36rpx;
 					font-size: 24rpx;
-					border-radius: 8rpx;
+					border-radius: 4rpx;
 				}
 			}
 

+ 6 - 6
src/packagePrize/coupon/use.vue

@@ -20,9 +20,9 @@
 		<!-- #endif -->
 		<!-- 优惠券筛选 -->
 		<view class="prize-state">
-			<u-tabs @change="changeTab" :scrollable="false" :list="stateArr" lineWidth="20" lineHeight="4"
-				lineColor="#F9822C" :activeStyle="{
-									color: '#333',
+			<u-tabs @change="changeTab" :scrollable="false" :list="stateArr" lineWidth="34" lineHeight="4"
+				lineColor="#8E51F7" :activeStyle="{
+									color: '#8E51F7',
 									transform: 'scale(1.1)',
 									width: '50px',
 									
@@ -59,7 +59,7 @@
 		</view>
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
-				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_1.png" mode="scaleToFill"></image>
+				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 				<view class="center-font">暂无优惠券</view>
 			</view>
 			<!-- <u-empty text="数据为空" mode="order" /> -->
@@ -156,12 +156,12 @@
 
 	.prize-coupon {
 		margin-top: 104rpx;
-		padding: 30rpx 34rpx 100rpx;
+		padding: 20rpx 20rpx 100rpx;
 
 		&-list {
 			&-item {
 				position: relative;
-				padding-top: 30rpx;
+				padding: 29rpx 0;
 				margin-bottom: 30rpx;
 				background-color: #fff;
 				

+ 2 - 2
src/packagePrize/goods/detail.vue

@@ -23,7 +23,7 @@
 		<view class="detail">
 			<view class="detail-swiper">
 				<u-swiper :list="picUrlArr" height="375" radius="0" :indicator="true" :circular="true" indicatorMode="dot"
-					indicatorActiveColor="#FA822C"></u-swiper>
+					indicatorActiveColor="#8E51F7"></u-swiper>
 			</view>
 			<!-- 详情 -->
 			<view class="detail-info flex">
@@ -210,7 +210,7 @@
 					margin-bottom: 26rpx;
 
 					.content {
-						color: #FA822C;
+						color: $uni-btn-color;
 						margin-right: 34rpx;
 						font-weight: bold;
 						font-size: 30rpx;

+ 11 - 11
src/packagePrize/goods/index.vue

@@ -23,13 +23,10 @@
 		<view class="detail">
 			<view class="detail-swiper">
 				<u-swiper :list="picUrlArr" height="375" radius="0" :indicator="true" :circular="true"
-					indicatorMode="dot" indicatorActiveColor="#FA822C"></u-swiper>
+					indicatorMode="dot" indicatorActiveColor="#8E51F7"></u-swiper>
 			</view>
 			<!-- 详情 -->
 			<view class="detail-info">
-				<view class="detail-info-left">
-					<view class="detail-info-left__title ells">{{ info.title }}</view>
-				</view>
 				<view class="detail-infotwo flex">
 					<view class="detail-infotwo-num">
 						<view class="">¥{{ $numberFormat(info.value) }}</view>
@@ -37,7 +34,9 @@
 					</view>
 					<view class="detail-info-right"></view>
 				</view>
-
+				<view class="detail-info-left">
+					<view class="detail-info-left__title ells">{{ info.title }}</view>
+				</view>
 			</view>
 			<view class="detail-goods">产品介绍</view>
 			<view class="detail-description">
@@ -221,7 +220,7 @@
 			&-num {
 				view {
 					display: inline-block;
-					color: #F9822C;
+					color: #333;
 					line-height: 80rpx;
 					font-size: 32rpx;
 					font-weight: bold;
@@ -248,12 +247,13 @@
 				flex: 1;
 
 				&__title {
-					font-size: 34rpx;
+					font-size: 26rpx;
 					line-height: 40rpx;
 					max-height: 80rpx;
 					overflow: hidden;
+					color: #666;
 					// margin-bottom: 26rpx;
-					font-weight: bold;
+					font-weight: 400;
 				}
 
 				&__coin {
@@ -262,7 +262,7 @@
 					margin-bottom: 26rpx;
 
 					.content {
-						color: #FA822C;
+						color: #333;
 						margin-right: 34rpx;
 						font-weight: bold;
 						font-size: 30rpx;
@@ -363,8 +363,8 @@
 					width: 420rpx;
 					height: 82rpx;
 					font-size: 30rpx;
-					background: #F9822C;
-					border-radius: 20px;
+					background: $uni-btn-color;
+					border-radius: 4rpx;
 					color: #fff;
 					margin-right: 20rpx;
 				}

+ 28 - 25
src/packagePrize/prize/index.vue

@@ -28,16 +28,16 @@
 		<view class="prize-state">
 			<!-- 类型 -->
 			<view class="prize-state-tabs">
-				<u-tabs @change="changeTab" :scrollable="false" :list="stateArr" lineWidth="30" lineHeight="3"
-					:current='currentIndex' lineColor="#F9822C " :activeStyle="{
-										color: '#333 ',
+				<u-tabs @change="changeTab" :scrollable="false" :list="stateArr" lineWidth="34" lineHeight="3"
+					:current='currentIndex' lineColor="#8E51F7 " :activeStyle="{
+										color: '#8E51F7',
 										transform: 'scale(1.1)',
 										width: '100px'
 									}" :inactiveStyle="{
-										color: '#999',
+										color: '#666666',
 										transform: 'scale(1)',
 										width: '100px'
-									}" itemStyle="height: 44px; text-align: center;">
+									}" itemStyle="width: 35vw; height: 44px; text-align: center;">
 				</u-tabs>
 			</view>
 			<!-- 商品状态 -->
@@ -56,7 +56,7 @@
 						<view class="flex" v-if="item.status == 1">
 							<u-checkbox-group>
 								<u-checkbox size="24" :value="item.checked" shape="circle" :checked="item.checked"
-									activeColor="#F9822C" @change="changeChecked($event, item)"></u-checkbox>
+									activeColor="#8E51F7" @change="changeChecked($event, item)"></u-checkbox>
 							</u-checkbox-group>
 						</view>
 						<view class="info flex" @click="toPrizeGoods(item)">
@@ -86,7 +86,7 @@
 			</view>
 			<view class="flex empty" v-if="!list.length && !loading">
 				<view class="center">
-					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png" mode="scaleToFill"></image>
+					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 					<view class="center-font">还没有商品</view>
 				</view>
 			</view>
@@ -120,7 +120,7 @@
 			</view>
 			<view class="flex empty" v-if="!list.length && !loading">
 				<view class="center">
-					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_1.png" mode="scaleToFill"></image>
+					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 					<view class="center-font">还没有优惠券</view>
 				</view>
 			</view>
@@ -146,7 +146,7 @@
 			</view>
 			<view class="flex empty" v-if="!list.length && !loading">
 				<view class="center">
-					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_1.png" mode="scaleToFill"></image>
+					<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 					<view class="center-font">还没有红包</view>
 				</view>
 			</view>
@@ -157,7 +157,7 @@
 				<view class="flex checkbox">
 					<u-checkbox-group>
 						<u-checkbox v-model="checkedAll" shape="circle" size="24" :checked="checkedAll"
-							activeColor="#F9822C" @change="changeCheckedAll($event)"></u-checkbox>
+							activeColor="#8E51F7" @change="changeCheckedAll($event)"></u-checkbox>
 					</u-checkbox-group>
 					<view class="all">全选</view>
 				</view>
@@ -176,7 +176,7 @@
 		</view>
 		
 		<!-- 兑换成功 -->
-		<u-popup :show="tipShow" mode="center">
+		<u-popup :show="tipShow" mode="center" bgColor='transparent'>
 			<view class="tip-show">
 				<view class="tip-show-title">
 					<view>确认选择后,如需变更规格,请联系客服</view>
@@ -192,7 +192,7 @@
 		</u-popup>
 		
 		<!-- 红包领取 -->
-		<u-popup :show="drawShow" mode="center">
+		<u-popup :show="drawShow" mode="center" bgColor='transparent'>
 			<view class="tip-show">
 				<view class="tip-show-title" style="text-align: center;">
 					<view>确认领取该微信红包吗?</view>
@@ -363,6 +363,7 @@
 			},
 
 			pageList() {
+
 				this.typeIndex = 0
 				this.pageNum = 1
 				this.list = []
@@ -374,10 +375,13 @@
 				if (e.index == 0) {
 					this.state = 0
 					this.statusIndex = 1
+					this.status = 'nomore'
 				} else if (e.index == 1) {
 					this.state = 1
+					this.status = 'nomore'
 				} else if (e.index == 2) {
 					this.state = 2
+					this.status = 'nomore'
 				}
 				this.pageList()
 				this.checkedAll = false
@@ -782,16 +786,16 @@
 						height: 60rpx;
 						line-height: 60rpx;
 						text-align: center;
-						color: #F9822C;
-						border: 1px solid #F9822C;
-						border-radius: 30rpx;
+						color: $uni-text-color;
+						border: 1px solid $uni-btn-color;
+						border-radius: 4rpx;
 					}
 					.btnTwo {
 						width: 168rpx;
 						height: 60rpx;
 						line-height: 60rpx;
 						text-align: center;
-						border-radius: 30rpx;
+						border-radius: 4rpx;
 						background-color: #f1f1f1; 
 						color: #666;
 						border: 2rpx solid #999;
@@ -880,7 +884,7 @@
 						line-height: 30rpx;
 						height: 30rpx;
 						font-weight: bold;
-						color: #F9822C;
+						color: $uni-text-color;
 					}
 				}
 			}
@@ -955,7 +959,7 @@
 								padding: 0 36rpx;
 								display: inline-block;
 								height: 68rpx;
-								background: linear-gradient(270deg, #FF9056 0%, #FF5137 100%);
+								background: $uni-bg-color;
 								border-radius: 2px;
 								font-size: 30rpx;
 								line-height: 68rpx;
@@ -1000,8 +1004,8 @@
 				height: 82rpx;
 				font-size: 28rpx;
 				line-height: 82rpx;
-				border-radius: 40rpx;
-				background-color: #F9822C;
+				border-radius: 4rpx;
+				background-color: $uni-btn-color;
 				color: #fff;
 				text-align: center;
 			}
@@ -1068,10 +1072,10 @@
 				height: 60rpx;
 				line-height: 60rpx;
 				border-radius: 8rpx;
-				color: rgba(235, 112, 9, 100);
+				color: $uni-text-color;
 				font-size: 28rpx;
 				text-align: center;
-				border: 1px solid rgba(235, 112, 9, 100);
+				border: 1px solid $uni-bg-color;
 			}
 	
 			.prize {
@@ -1079,11 +1083,10 @@
 				height: 60rpx;
 				line-height: 60rpx;
 				border-radius: 8rpx;
-				color: rgba(235, 112, 9, 100);
 				font-size: 28rpx;
 				text-align: center;
-				background-color: rgba(235, 112, 9, 100);
-				color: rgba(255, 255, 255, 100);
+				background-color: $uni-bg-color;
+				color: rgb(255, 255, 255);
 				font-size: 14px;
 			}
 		}

+ 1 - 1
src/packagePrize/prize/redpkg.vue

@@ -41,7 +41,7 @@
 		</view>
 		<view class="flex empty" v-if="!list.length">
 			<view class="center">
-				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_1.png" mode="scaleToFill"></image>
+				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 				<view class="center-font">暂无红包</view>
 			</view>
 			<!-- <u-empty text="数据为空" mode="order" /> -->

+ 26 - 18
src/packagePrize/purchase/index.vue

@@ -1,5 +1,5 @@
 <template>
-	<view>
+	<view class="box">
 		<!-- #ifdef MP-ALIPAY -->
 		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="购买成功" leftIconSize="0">
 		</u-navbar>
@@ -20,9 +20,9 @@
 		</view>
 		<!-- #endif -->
 		<view class="purchase">
-			<image class="imgOne" src="https://mp-public-test-1309783959.cos.ap-shanghai.myqcloud.com/v2/buy_suc.png"
+			<image class="imgOne" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background2.png"
 				mode="scaleToFill"></image>
-			<image class="imgTwo" :src="picUrl" mode="aspectFit"></image>
+			<!-- <image class="imgTwo" :src="picUrl" mode="aspectFit"></image> -->
 		</view>
 
 		<view class="package">
@@ -80,11 +80,18 @@
 </script>
 
 <style lang="scss" scoped>
+	.box {
+		position: relative;
+		width: 100%;
+		height: 100vh;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background.png) center center no-repeat;
+		background-size: 100vw 100vh;
+	}
 	.purchase {
 		position: relative;
 		padding-top: 100rpx;
-		width: 592rpx;
-		height: 788rpx;
+		width: 86vw;
+		height: 120vw;
 		margin: 0 auto;
 
 		.imgOne {
@@ -92,15 +99,15 @@
 			height: 100%;
 		}
 
-		.imgTwo {
-			z-index: 10;
-			width: 100%;
-			width: 520rpx;
-			height: 430rpx;
-			position: absolute;
-			top: 320rpx;
-			left: 36rpx;
-		}
+		// .imgTwo {
+		// 	z-index: 10;
+		// 	width: 100%;
+		// 	width: 520rpx;
+		// 	height: 430rpx;
+		// 	position: absolute;
+		// 	top: 320rpx;
+		// 	left: 36rpx;
+		// }
 	}
 
 	.package {
@@ -109,10 +116,11 @@
 
 		button {
 			margin: 0 auto;
-			width: 666rpx;
-			height: 98rpx;
-			background: linear-gradient(180deg, #FEA052 0%, #FF8D2F 100%);
-			border-radius: 56rpx;
+			width: 560rpx;
+			height: 86rpx;
+			line-height: 86rpx;
+			background-color: $uni-bg-color;
+			border-radius: 2rpx;
 			color: #fff;
 		}
 

+ 44 - 39
src/packagePrize/rolling/animation.vue

@@ -1,11 +1,11 @@
 <template>
 	<view>
 		<view class="lucky"></view>
-		<u-overlay :show="luckyShow" :opacity="0.8" zIndex="100">
+		<u-overlay :show="luckyShow" :opacity="0.3" zIndex="100">
 			<view class="flex luck-warp" @touchmove.prevent.stop>
 				<view class="luck-info">
 					<view class="luck-info-bg">
-						<image src="../../static/lucky/lucky_bg.png" mode="scaleToFill"></image>
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_prize.png" mode="scaleToFill"></image>
 					</view>
 					<view class="luck-info-content flex">
 						<view class="luck-info-content-num">
@@ -22,21 +22,19 @@
 								<image class="imgtwo" src="../../static/lucky/lucky_xiaoguo.png" mode="scaleToFill"
 									v-if="infoimg">
 								</image>
-								<image class="img" src="../../static/lucky/lucky_guajiangqu.png" mode="scaleToFill"
-									v-if="info.status == 1">
-									<image class="imgone" src="../../static/lucky/lucky_yidong.png"
-										v-else-if="info.status == 2"></image>
+								<image class="img" src="../../static/lucky/lucky_guajiangqu.png" mode="scaleToFill" v-if="info.status == 1"></image>
+								<image class="imgone" src="../../static/lucky/lucky_yidong.png" mode="scaleToFill" v-else-if="info.status == 2"></image>
 							</view>
 						</view>
 						<view class="luck-info-content-ticket">
-							<image src="../../static/lucky/lucky_piaohao.png" mode="scaleToFill"></image>
+							<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background3.png" mode="scaleToFill"></image>
 							<view class="luck-info-content-ticket-info flex">
 								<view class="title" :class="{ 'action': info.status == 2 }">{{ info.title }}</view>
 								<view class="serialNo" :class="{ 'action': info.status == 2 }">序列号:{{ info.serialNo }}
 								</view>
 							</view>
 						</view>
-						<view class="luck-info-content-btn" style="width: 500rpx;" @click="toChoice" v-if="Choice">领取奖品</view>
+						<view class="luck-info-content-btn" style="width: 440rpx;" @click="toChoice" v-if="Choice">领取奖品</view>
 						<view class=" code" v-else>开奖啦!</view>
 					</view>
 				</view>
@@ -178,7 +176,7 @@
 
 				&-num {
 					position: relative;
-					width: 422rpx;
+					width: 480rpx;
 					height: 8vh;
 					margin-top: 16vh;
 					margin-bottom: 3vh;
@@ -196,28 +194,28 @@
 				&-img {
 					position: relative;
 					width: 73%;
-					height: 10vh;
-					background-color: #fff;
+					height: 8vh;
+					// background-color: #fff;
 					border-radius: 12rpx;
 
 					&-word {
 						position: absolute;
-						top: 15%;
-						left: 5%;
-						width: 90%;
-						height: 85%;
+						// top: 15%;
+						// left: 5%;
+						width: 100%;
+						height: 100%;
 						overflow: hidden;
 
 						.img {
 							position: absolute;
 							width: 100%;
-							height: 82.6%;
+							height: 100%;
 						}
 
 						.imgtwo {
 							position: absolute;
 							width: 20%;
-							height: 82%;
+							height: 100%;
 							left: -20%;
 							animation: shadowTwoMove 0.5s linear infinite;
 							animation-iteration-count: 1;
@@ -234,7 +232,8 @@
 
 						&__content {
 							position: absolute;
-							top: 25%;
+							// top: 25%;
+							line-height: 8vh;
 							text-align: center;
 							width: 100%;
 							height: 100%;
@@ -264,9 +263,9 @@
 
 				&-ticket {
 					position: relative;
-					width: 73%;
+					width: 80%;
 					height: 10vh;
-					margin-top: 2vh;
+					margin-top: 3vh;
 
 					image {
 						position: absolute;
@@ -276,19 +275,21 @@
 					}
 
 					&-info {
+						text-align: center;
 						width: 90%;
 						height: 75%;
 						left: 5%;
 						position: absolute;
 						top: 0;
 						z-index: 5;
-
+						margin-top: 10rpx;
 						flex-direction: column;
 
 						.title {
-							font-size: 30rpx;
-							line-height: 30rpx;
-							color: #FF6D2C;
+							font-size: 28rpx;
+							font-weight: 500;
+							line-height: 28rpx;
+							color: #fff;
 							margin-top: 1vh;
 							margin-bottom: 1vh;
 							width: 90%;
@@ -298,27 +299,31 @@
 						}
 
 						.serialNo {
-							font-size: 24rpx;
-							color: #FF6D2C;
+							font-size: 26rpx;
+							color: #fff;
+							font-weight: 400;
 						}
 
-						.action {
-							color: #FFCBAA;
-						}
+						// .action {
+						// 	color: #FFCBAA;
+						// }
 					}
 				}
 
 				&-btn {
 					padding: 0 8%;
-					height: 7vh;
+					height: 8vh;
 					line-height: 7vh;
-					background: linear-gradient(0deg, #FF4924, #F9D448);
-					box-shadow: 0px 6px 9px 0px rgba(135, 19, 3, 0.49);
-					border-radius: 4vh;
+					background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_button.png) no-repeat center center;
+					background-size: 100% 100%;
+					// background: linear-gradient(0deg, #FF4924, #F9D448);
+					// box-shadow: 0px 6px 9px 0px rgba(135, 19, 3, 0.49);
+					// border-radius: 4vh;
 					text-align: center;
-					color: #FEFEFE;
-					font-size: 40rpx;
-					margin-top: 1vh;
+					color: #721AC6;
+					font-size: 32rpx;
+					font-weight: 500;
+					margin-top: 2vh;
 				}
 
 				.code {
@@ -326,7 +331,7 @@
 					height: 7vh;
 					line-height: 10vh;
 					text-align: center;
-					color: #FEFEFE;
+					color: $uni-text-color;
 					font-family: YouSheBiaoTiHei;
 					font-size: 38rpx
 				}
@@ -350,7 +355,7 @@
 	.lucky {
 		width: 100%;
 		height: 100vh;
-		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/hit_bkg.png) center center no-repeat;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background.png) center center no-repeat;
 		background-size: 100vw 100vh;
 	}
 
@@ -370,7 +375,7 @@
 			height: 60rpx;
 			line-height: 60rpx;
 			border-radius: 8rpx;
-			background-color: rgba(235, 112, 9, 100);
+			background-color: $uni-bg-color;
 			color: rgba(255, 255, 255, 100);
 			font-size: 28rpx;
 			text-align: center;

+ 3 - 3
src/packagePrize/rolling/index.vue

@@ -61,7 +61,7 @@
 			<!-- 按钮 -->
 			<view class="rolling-btn flex">
 				<view class="rolling-btn-content flex" :class="{ 'btn-stop': btnIng }" @click="stop" v-show="btnShow">
-					<image src="../../static/ticketBox/ticket_btn_center.png" mode="scaleToFill"></image>
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/paybutton.png" mode="scaleToFill"></image>
 					<view class="rolling-btn-content-title">停止滚动</view>
 				</view>
 			</view>
@@ -80,7 +80,7 @@
 			<!-- #endif -->
 
 			<view class="prize-title flex">
-				<image src="../../packagePrize/static/rolling_title.png" mode="scaleToFill"></image>
+				<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/cash_prize.png" mode="scaleToFill"></image>
 			</view>
 			<view class="prize-box flex">
 				<view class="prize-box-popup flex">
@@ -640,7 +640,7 @@
 		position: relative;
 		width: 100%;
 		height: 100vh;
-		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/hit_bkg.png) center center no-repeat;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background.png) center center no-repeat;
 		background-size: 100vw 100vh;
 		overflow: hidden;
 

二进制
src/packagePrize/static/prize_coupon.png


二进制
src/packagePrize/static/prize_coupon_use.png


+ 299 - 301
src/packagePrize/ticket/index.vue

@@ -1,324 +1,322 @@
 <template>
-	<view>
-		<!-- #ifdef MP-ALIPAY -->
-		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的盲票" leftIconSize="0"></u-navbar>
-		<!-- #endif -->
-		<!-- #ifdef MP-WEIXIN -->
-		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的盲票"></u-navbar>
-		<!-- #endif -->
-		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
-		<view v-if="pagesNum > 1">
-			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的盲票" />
-		</view>
-		<view v-else>
-			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="我的盲票">
-				<view class="nav-left flex" slot="left" @click="$toIndex()">
-					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
-				</view>
-			</u-navbar>
-		</view>
-		<!-- #endif -->
-		
-		<!-- 状态 -->
-		<view class="state">
-			<u-tabs @change="changeTab" :scrollable="false" :list="stateArr" lineWidth="60" lineHeight="3"
-				lineColor="#F9822C" :activeStyle="{
-									color: '#F9822C',
+  <view>
+    <!-- #ifdef MP-ALIPAY -->
+    <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的盲票" leftIconSize="0"></u-navbar>
+    <!-- #endif -->
+    <!-- #ifdef MP-WEIXIN -->
+    <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的盲票"></u-navbar>
+    <!-- #endif -->
+    <!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
+    <view v-if="pagesNum > 1">
+      <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" :border="true" title="我的盲票" />
+    </view>
+    <view v-else>
+      <u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" :border="true" title="我的盲票">
+        <view class="nav-left flex" slot="left" @click="$toIndex()">
+          <u-icon name="arrow-left" size="20" color="#333"></u-icon>
+        </view>
+      </u-navbar>
+    </view>
+    <!-- #endif -->
+
+    <!-- 状态 -->
+    <view class="state">
+      <u-tabs @change="changeTab" :scrollable="false" :list="stateArr" lineWidth="34" lineHeight="3" lineColor="#8E51F7" :activeStyle="{
+									color: '#8E51F7',
 									transform: 'scale(1.1)',
 									width: '100px'
 								}" :inactiveStyle="{
-									color: '#999',
+									color: '#666',
 									transform: 'scale(1)',
 									width: '100px'
 								}" itemStyle="padding-left: 25px; padding-right: 25px; height: 44px; text-align: center;">
-			</u-tabs>
-		</view>
-		<!-- 列表 -->
-		<view class="list">
-			<view class="list-item" v-for="(item, index) in list" :key="index">
-				<image :src="item.picUrl" mode="aspectFit"></image>
-				<view class="list-item-content flex">
-					<view class="top">
-						<view class="top-title">{{ item.title }}</view>
-						<view class="top-num">序列号:{{ item.serialNo }}</view>
-						<view class="top-price" v-if="item.status != '2'">面值:¥{{ $numberFormat(item.facePrice) }}</view>
-					</view>
-					<view class="bottom flex" v-if="item.status == '2'">
-						<view class="bottom-price">面值:<text>¥{{ $numberFormat(item.facePrice) }}</text></view>
-						<view class="bottom-btn" @click="toChoice(item)">立即兑奖</view>
-					</view>
-					<view class="bottom" v-else>
-						<!-- #ifdef MP-ALIPAY -->
-						<view class="bottom-pricetwo">
-							<view>奖品:</view>
-							<text v-if="item.prizeType == 'red_pkg' ">{{ item.prizeInfo + $numberFormat(item.value) + '元' }}</text>
-							<text v-else>{{ item.prizeInfo || '-' }}</text>
-						</view>
-						<!-- #endif -->
-						<!-- #ifndef MP-ALIPAY -->
-						<view class="bottom-price ells-one">奖品:<text v-if="item.prizeType == 'red_pkg' ">{{ item.prizeInfo + $numberFormat(item.value) + '元' }}</text><text v-else>{{ item.prizeInfo || '-' }}</text></view>
-						<!-- #endif -->
-					</view>
-				</view>
-			</view>
-			<u-loadmore :line="true" v-if="list.length>5" :status="status" :loading-text="'努力加载中'" :nomore-text="'已经到底了'" />
-		</view>
-		<view class="flex empty" v-if="!list.length">
-			<view class="center">
-				<image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png" mode="scaleToFill"></image>
-				<view class="center-font">暂无盲票</view>
-			</view>
-			<!-- <u-empty text="数据为空" mode="order" /> -->
-		</view>
-		</view>
-	</view>
+      </u-tabs>
+    </view>
+    <!-- 列表 -->
+    <view class="list">
+      <view class="list-item" v-for="(item, index) in list" :key="index">
+        <view class="top">
+          <image :src="item.picUrl" mode="aspectFit"></image>
+          <view class="top-content flex">
+            <view class="right">
+              <view class="right-title">{{ item.title }}</view>
+              <view class="right-num">序列号:{{ item.serialNo }}</view>
+              <view class="right-price">面值:¥{{ $numberFormat(item.facePrice) }}</view>
+            </view>
+          </view>
+        </view>
+        <view class="bottom flex" v-if="item.status == '2'">
+          <view class="bottom-btn" @click="toChoice(item)">立即兑奖</view>
+        </view>
+        <view class="bottom" v-else>
+          <!-- #ifdef MP-ALIPAY -->
+          <view class="bottom-pricetwo">
+            <text>已兑奖品:</text>
+            <text v-if="item.prizeType == 'red_pkg' ">{{ item.prizeInfo + $numberFormat(item.value) + '元' }}</text>
+            <text v-else>{{ item.prizeInfo || '-' }}</text>
+          </view>
+          <!-- #endif -->
+          <!-- #ifndef MP-ALIPAY -->
+          <view class="bottom-price ells-one">已兑奖品:<text v-if="item.prizeType == 'red_pkg' ">{{ item.prizeInfo + $numberFormat(item.value) + '元' }}</text><text v-else>{{ item.prizeInfo || '-' }}</text></view>
+          <!-- #endif -->
+        </view>
+      </view>
+      <u-loadmore :line="true" v-if="list.length>5" :status="status" :loading-text="'努力加载中'" :nomore-text="'已经到底了'" />
+    </view>
+    <view class="flex empty" v-if="!list.length">
+      <view class="center">
+        <image class="center-img" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
+        <view class="center-font">暂无盲票</view>
+      </view>
+      <!-- <u-empty text="数据为空" mode="order" /> -->
+    </view>
+  </view>
+  </view>
 </template>
 
 <script>
-	import env from '../../config/env.js'
-	import $http from '@/utils/request.js'
-	export default {
-		data() {
-			return {
-				status: 'nomore',//上拉刷新状态
-				stateArr: [{
-					name: ' 待兑奖',
-				}, {
-					name: ' 已兑奖',
-				}],
-				state: 2,
-				pageNum: 1,
-				total: 0,
-				list: [],
-				pagesNum: '',
+import env from '../../config/env.js'
+import $http from '@/utils/request.js'
+export default {
+  data() {
+    return {
+      status: 'nomore',//上拉刷新状态
+      stateArr: [{
+        name: ' 待兑奖',
+      }, {
+        name: ' 已兑奖',
+      }],
+      state: 2,
+      pageNum: 1,
+      total: 0,
+      list: [],
+      pagesNum: '',
 
-			};
-		},
-		onShow() {
-			this.pagesNum = getCurrentPages().length
-			this.pageList()
-		},
-		onLoad(){
-			this.rewardNum()
-		},
-		methods: {
-			getList() {
-				$http.post(`/api/v1/mp/user/mine/ticket/list?pageNum=${this.pageNum}&pageSize=20`, {
-					status: this.state
-				}).then(res => {
-					if (res.code == 0) {
-						res.rows.forEach(item => {
-							item.picUrl = env.filePublic + item.picUrl.split(',')[0] + '?imageView2/2/w/170'
-						})
-						this.total = res.total
-						this.list = this.list.concat(res.rows)
-					}
-				}).catch(() => {
-				})
-			},
+    };
+  },
+  onShow() {
+    this.pagesNum = getCurrentPages().length
+    this.pageList()
+  },
+  onLoad() {
+    this.rewardNum()
+  },
+  methods: {
+    getList() {
+      $http.post(`/api/v1/mp/user/mine/ticket/list?pageNum=${this.pageNum}&pageSize=20`, {
+        status: this.state
+      }).then(res => {
+        if (res.code == 0) {
+          res.rows.forEach(item => {
+            item.picUrl = env.filePublic + item.picUrl.split(',')[0] + '?imageView2/2/w/170'
+          })
+          this.total = res.total
+          this.list = this.list.concat(res.rows)
+        }
+      }).catch(() => {
+      })
+    },
 
-			pageList() {
-				this.pageNum = 1
-				this.list = []
-				this.getList()
-			},
+    pageList() {
+      this.pageNum = 1
+      this.list = []
+      this.getList()
+    },
 
-			toChoice(item) {
-				uni.navigateTo({
-					url: `/packagePrize/choice/index?id=${ item.ticketId }`
-				})
-				// let type = item.type && JSON.parse(item.type).value
-				// if(type == 'offline') {
-				// 	uni.navigateTo({
-				// 		url: `/packagePrize/choice/index?id=${ item.ticketId }&type=offline`
-				// 	})
-				// } else if (type == 'online') {
-				// 	uni.navigateTo({
-				// 		url: `/packagePrize/rolling/index?ticketId=${ item.ticketId }&isTry=0`
-				// 	})
-				// } else {
-				// 	uni.$u.toast('请联系客服')
-				// }
-			},
+    toChoice(item) {
+      uni.navigateTo({
+        url: `/packagePrize/choice/index?id=${item.ticketId}`
+      })
+      // let type = item.type && JSON.parse(item.type).value
+      // if(type == 'offline') {
+      // 	uni.navigateTo({
+      // 		url: `/packagePrize/choice/index?id=${ item.ticketId }&type=offline`
+      // 	})
+      // } else if (type == 'online') {
+      // 	uni.navigateTo({
+      // 		url: `/packagePrize/rolling/index?ticketId=${ item.ticketId }&isTry=0`
+      // 	})
+      // } else {
+      // 	uni.$u.toast('请联系客服')
+      // }
+    },
 
-			changeTab(e) {
-				if (e.index == 0) {
-					this.state = 2
-					this.status = 'nomore'
-				} else if (e.index == 1) {
-					this.state = 3
-					this.status = 'nomore'
-				}
-				this.pageList()
-			},
+    changeTab(e) {
+      if (e.index == 0) {
+        this.state = 2
+        this.status = 'nomore'
+      } else if (e.index == 1) {
+        this.state = 3
+        this.status = 'nomore'
+      }
+      this.pageList()
+    },
 
 
-			rewardNum() {
-				$http.post(`/api/v1/mp/user/mine/ticket/list?pageNum=${this.pageNum}&pageSize=20`, {
-					status: 2
-				}).then(res => {
-					$http.post(`/api/v1/mp/user/mine/ticket/list?pageNum=${this.pageNum}&pageSize=20`, {
-						status: 3
-					}).then(data => {
-						if (res.code == 0) {
-							this.stateArr = [{
-									name: ' 待兑奖 (' + res.total + ') '
-								},
-								{
-									name: ' 已兑奖 (' + data.total + ') '
-								},
-							]
-						} else {
-							this.stateArr = [{
-								name: ' 待兑奖 (0)',
-							}, {
-								name: ' 已兑奖 (0)',
-							}, ]
-						}
-					})
-				})
-			}
-		},
+    rewardNum() {
+      $http.post(`/api/v1/mp/user/mine/ticket/list?pageNum=${this.pageNum}&pageSize=20`, {
+        status: 2
+      }).then(res => {
+        $http.post(`/api/v1/mp/user/mine/ticket/list?pageNum=${this.pageNum}&pageSize=20`, {
+          status: 3
+        }).then(data => {
+          if (res.code == 0) {
+            this.stateArr = [{
+              name: ' 待兑奖 (' + res.total + ') '
+            },
+            {
+              name: ' 已兑奖 (' + data.total + ') '
+            },
+            ]
+          } else {
+            this.stateArr = [{
+              name: ' 待兑奖 (0)',
+            }, {
+              name: ' 已兑奖 (0)',
+            },]
+          }
+        })
+      })
+    }
+  },
 
-		onReachBottom() {
-			if(this.total < this.pageNum * 20) return ;
-			this.status = 'loading';
-			++this.pageNum
-			if(this.total < this.pageNum * 20) this.status = 'nomore';
-				else this.status = 'loading';
-			this.getList()
-		},
-	}
+  onReachBottom() {
+    if (this.total < this.pageNum * 20) return;
+    this.status = 'loading';
+    ++this.pageNum
+    if (this.total < this.pageNum * 20) this.status = 'nomore';
+    else this.status = 'loading';
+    this.getList()
+  },
+}
 </script>
 
 <style lang="scss" scoped>
-	// 状态
-	.state {
-		display: flex;
-		position: fixed;
-		background-color: #FFFFFF;
-		width: 100%;
-		z-index: 10;
-		box-shadow: 0 5rpx 5rpx #ececec;
-	}
-	
-	// 列表
-	.list {
-		padding: 120rpx 0 100rpx;
-		margin: 0 20rpx 0;
-		
-		&-item {
-			display: flex;
-			background: #FFFFFF;
-			border-radius: 11px;
-			padding: 34rpx 10rpx;
-			margin-bottom: 34rpx;
-			
-			image {
-				width: 200rpx;
-				height: 270rpx;
-				border-radius: 22rpx;
-				margin-right: 15rpx;
-			}
-			
-			&-content {
-				flex: 1;
-				flex-direction: column;
-				justify-content: space-between;
-				padding: 16rpx 0;
-				
-				
-				.top {
-					width: 100%;
-					display: flex;
-					flex-direction: column;
-					
-					&-title {
-						font-size: 36rpx;
-						line-height: 36rpx;
-						font-weight: bold;
-						margin-bottom: 46rpx;
-					}
-					
-					&-num {
-						font-size: 26rpx;
-						line-height: 26rpx;
-					}
-					
-					&-price {
-						margin-top: 30rpx;
-						font-size: 26rpx;
-						line-height: 26rpx;
-					}
-				}
-				
-				.bottom {
-					width: 100%;
+// 状态
+.state {
+  display: flex;
+  position: fixed;
+  background-color: #ffffff;
+  width: 100%;
+  z-index: 10;
+  box-shadow: 0 5rpx 5rpx #ececec;
+}
+
+// 列表
+.list {
+  padding: 120rpx 0 100rpx;
+  margin: 0 20rpx 0;
+
+  &-item {
+    background: #ffffff;
+    border-radius: 6rpx;
+    padding: 34rpx 20rpx;
+    margin-bottom: 34rpx;
+
+    .top {
+      display: flex;
+			border-bottom: 2rpx solid rgba(51,51,51,0.12);
+			padding-bottom: 28rpx;
+
+      image {
+        width: 206rpx;
+        height: 166rpx;
+        margin-right: 28rpx;
+      }
+
+      &-content {
+        flex: 1;
+				height: 166rpx;
+        padding: 8rpx 0;
+
+        .right {
+          width: 100%;
+					height: 100%;
+          display: flex;
+          flex-direction: column;
 					justify-content: space-between;
-					
-					&-price {
-						height: 26rpx;
-						overflow: hidden;
-						font-size: 26rpx;
-						line-height: 26rpx;
-						
-						text {
-							color: #F9822C ;
-						}
-					}
-					&-pricetwo {
-						view {
-							display: inline-block;
-							height: 26rpx;
-							font-size: 26rpx;
-							line-height: 26rpx;
-							vertical-align: top;
-						}
-						text {
-							display: inline-block;
-							color: #F9822C ;
-							width: 350rpx;
-							height: 26rpx;
-							font-size: 26rpx;
-							line-height: 26rpx;
-							white-space: nowrap;
-							overflow: hidden;
-							text-overflow: ellipsis;
-						}
-					}
-					
-					&-btn {
-						width: 220rpx;
-						height: 72rpx;
-						line-height: 72rpx;
-						text-align: center;
-						background: #F9822C;
-						border-radius: 36rpx;
-						color: #FFFFFF;
-						font-size: 30rpx;
-					}
-				}
-			}
-		}
-	}
 
-	.empty {
-		height: 60vh;
-		
-		.center {
-			text-align: center;
-		
-			&-img {
-				width: 228rpx;
-				height: 320rpx;
-			}
-		
-			&-font {
-				font-size: 30rpx;
-				font-weight: 400;
-				color: #999999;
-				margin-bottom: 250rpx;
-			}
-		}
-	}
+          &-title {
+            font-size: 28rpx;
+            line-height: 32rpx;
+						color: #333;
+            font-weight: 500;
+            // margin-bottom: 46rpx;
+          }
+
+          &-num {
+            font-size: 24rpx;
+            line-height: 28rpx;
+						color: #666;
+          }
+
+          &-price {
+            font-size: 24rpx;
+            line-height: 28rpx;
+						color: #666;
+          }
+        }
+      }
+    }
+
+    .bottom {
+      width: 100%;
+      justify-content: space-between;
+
+      &-price {
+				text-align: center;
+    		width: 100%;
+        overflow: hidden;
+				margin: 32rpx auto 0;
+				color: $uni-text-color;
+				font-size: 28rpx;
+				line-height: 32rpx;
+				font-weight: 500;
+      }
+      &-pricetwo {
+				margin: 32rpx auto 0;
+				text-align: center;
+				color: $uni-text-color;
+				font-size: 28rpx;
+				line-height: 32rpx;
+				font-weight: 500;
+        white-space: nowrap;
+        overflow: hidden;
+        text-overflow: ellipsis;
+      }
+
+      &-btn {
+				margin: 32rpx auto 0;
+        width: 342rpx;
+        height: 68rpx;
+        line-height: 68rpx;
+        text-align: center;
+        background: $uni-btn-color;
+        border-radius: 4rpx;
+        color: #ffffff;
+        font-size: 30rpx;
+      }
+    }
+  }
+}
+
+.empty {
+  height: 60vh;
+
+  .center {
+    text-align: center;
+
+    &-img {
+      width: 228rpx;
+      height: 320rpx;
+    }
+
+    &-font {
+      font-size: 30rpx;
+      font-weight: 400;
+      color: #999999;
+      margin-bottom: 250rpx;
+    }
+  }
+}
 </style>

+ 58 - 73
src/pages/activity/index.vue

@@ -4,14 +4,14 @@
 			<view slot="left" style="font-size: 32rpx;">免费抽奖</view>
 		</u-navbar>
 		<view class="status">
-			<u-tabs @change="changeTab" :scrollable="false" :list="statusArr" lineWidth="30" lineHeight="3"
-				lineColor="#F9822C" :activeStyle="{
-									color: '#F9822C',
+			<u-tabs @change="changeTab" :scrollable="false" :list="statusArr" lineWidth="34" lineHeight="3"
+				lineColor="#8E51F7" :activeStyle="{
+									color: '#8E51F7',
 									transform: 'scale(1)',
 									width: '150rpx',
 									
 								}" :inactiveStyle="{
-									color: '#999999',
+									color: '#666',
 									transform: 'scale(1)',
 									width: '150rpx'
 								}" itemStyle="padding-left: 11px; padding-right: 11px; height: 44px;text-align: center;  ">
@@ -21,24 +21,19 @@
 			<view v-for="(item,index) in list" :key="index" class="list-view">
 				<view class="list-view-slot">
 					<view @click="toRecord(item)">
-						<view style="position: relative;">
-							<image :src="item.picUrl" mode="scaleToFill" class="list-view-slot-img"></image>
-							<span v-if="item.status.value == 3" style="position: absolute; right: 30rpx; top: 300rpx; border-radius: 6rpx; font-size: 24rpx; padding: 10rpx; color: #333333; background-color: rgba(255, 255, 255, 0.5);">{{item.fakeNum}}人已参与</span>
+						<view class="list-view-slot-img">
+							<image :src="item.picUrl" mode="aspectFill"></image>
 						</view>
 						<view class="list-view-slot-bor flex">
 							<view class="list-view-slot-bor-title">
-								<view class="time bor-title ells-one">{{item.title}}</view>
-								<!-- <view v-if="item.status.value == 2" class="time">
-									开始时间:{{ $parseTime(item.startTime, '{y}-{m}-{d} {h}:{i}:{s}')}}</view> -->
-								<!-- <view v-else class="time">开奖时间:{{ $parseTime(item.endTime, '{y}-{m}-{d} {h}:{i}:{s}')}} -->
-								<view v-if="item.status.value == 3" class="timetwo">开奖时间:{{ $parseTime(item.endTime, '{y}-{m}-{d} {h}:{i}:{s}')}}</view>
-								<view v-else class="time">开奖时间:{{ $parseTime(item.endTime, '{y}-{m}-{d} {h}:{i}:{s}')}}</view>
-							</view>
-							<view class="details">
-								<button class="details-button" v-if="item.status.value == 3">免费参与</button>
-								<button class="details-buttonTwo" v-else-if="item.isHit == 0">未中奖</button>
-								<button class="details-button" v-else-if="item.isHit == 1">已中奖</button>
-								<!-- <button class="details-buttonTwo" v-else>即将开始</button> -->
+								<div class="flex" style="justify-content: space-between;">
+									<view class="bor-title ells-one">活动名称:{{item.title}}</view>
+									<span v-if="item.status.value == 3" style="margin-left: 10rpx; font-size: 28rpx; color: #666666;">{{item.fakeNum}}人已参与</span>
+								</div>
+								<view class="time">开奖时间:{{ $parseTime(item.endTime, '{y}-{m}-{d} {h}:{i}:{s}')}}</view>
+								<view class="details-button" v-if="item.status.value == 3">免费参与</view>
+								<view class="details-buttonTwo" v-else-if="item.isHit == 0">未中奖</view>
+								<view class="details-button" v-else-if="item.isHit == 1">已中奖</view>
 							</view>
 						</view>
 					</view>
@@ -47,14 +42,14 @@
 			<view class="flex empty" v-if="!list.length && !loading && triggerStatus == 0">
 				<view class="center">
 					<image class="center-img"
-						src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png" mode="scaleToFill"></image>
+						src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 					<view class="center-font">新的活动正在准备中...</view>
 				</view>
 			</view>
 			<view class="flex empty" v-if="!list.length && !loading && triggerStatus != 0">
 				<view class="center">
 					<image class="center-img"
-						src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png" mode="scaleToFill"></image>
+						src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png" mode="scaleToFill"></image>
 					<view class="center-font">还没有已开奖活动</view>
 				</view>
 			</view>
@@ -225,79 +220,69 @@
 
 		&-view {
 			text-align: center;
-			height: 560rpx;
-
+			box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.12);
+			margin-bottom: 38rpx;
+			
 			&-slot {
 				background-color: #FFFFFF;
-				// margin-bottom: 20rpx;
-				border-radius: 22rpx;
-
+				
 				&-img {
+					position: relative;
 					width: 100%;
-					height: 370rpx;
-					border-radius: 22rpx 22rpx 0 0;
-
+					height: 316rpx;
+					border-radius: 10rpx 10rpx 0 0;
+					
+					image {
+						width: 100%;
+						height: 316rpx;
+					}
 				}
 
 				&-bor {
 					justify-content: space-between;
-					line-height: 50rpx;
-					width: 700rpx;
-					height: 140rpx;
 					margin: 0 auto;
-					padding: 10rpx 20rpx 0 20rpx;
-					border-radius: 0 0 22rpx 22rpx;
+					padding: 26rpx 20rpx;
 
 					&-title {
-						text-align: left;
-						float: left;
+						width: 100%;
 
 						.time {
-							font-size: 30rpx;
-							color: #333333;
+							font-size: 28rpx;
+							color: #666666;
+							margin-top: 16rpx;
+							text-align: left;
 						}
 
 						.bor-title {
-							font-size: 32rpx;
-							// width: 70%;
-						}
-
-						.timetwo {
-							width: 420rpx;
-							background: rgba(249, 130, 44, 0.08);
-							margin-top: 10rpx;
-							border: 2rpx solid #F9822C;
-							font-size: 24rpx;
-							border-radius: 6rpx;
-							color: #F9822C;
-							padding: 0 15rpx;
-							line-height: 40rpx;
+							flex: 1;
+							font-size: 30rpx;
+							color: #000000;
+							font-weight: 500;
+							text-align: left;
 						}
-					}
-
-					.details {
-						float: right;
-
+						
 						.details-button {
-							width: 200rpx;
-							height: 72rpx;
-							line-height: 70rpx;
-							background-color: #F9822C;
+							display: inline-block;
+							width: 342rpx;
+							height: 68rpx;
+							line-height: 68rpx;
+							background-color: $uni-btn-color;
 							color: #fff;
-							margin-top: 30rpx;
-							font-size: 30rpx;
-							border-radius: 20rpx;
+							margin-top: 34rpx;
+							font-size: 28rpx;
+							border-radius: 4rpx;
 						}
-
+						
 						.details-buttonTwo {
-							width: 200rpx;
-							height: 72rpx;
-							line-height: 70rpx;
-							background-color: #BBBBBB;
-							color: #fff;
-							margin-top: 30rpx;
-							font-size: 30rpx;
-							border-radius: 20rpx;
+							display: inline-block;
+							width: 342rpx;
+							height: 68rpx;
+							line-height: 68rpx;
+							background-color: #EDEDED;
+							color: #333;
+							margin-top: 34rpx;
+							font-size: 28rpx;
+							border-radius: 4rpx;
 						}
 					}
 

+ 34 - 34
src/pages/core/index.vue

@@ -13,12 +13,12 @@
 		<!-- 固定顶部搜索、分类 -->
 		<view class="fixed-top">
 			<view class="fixed-top-classify">
-				<u-tabs @change="changeClassify" :scrollable="true" :list="classifyList" lineWidth="20" lineHeight="2"
-					lineColor="#FF8D0B" :activeStyle="{
-										color: '#333',
+				<u-tabs @change="changeClassify" :scrollable="true" :list="classifyList" lineWidth="34" lineHeight="2"
+					lineColor="#8E51F7" :activeStyle="{
+										color: '#8E51F7',
 										transform: 'scale(1.1)'
 									}" :inactiveStyle="{
-										color: '#999',
+										color: '#666',
 										transform: 'scale(1.1)'
 									}" itemStyle="padding-left: 15px; padding-right: 15px; height: 44px; text-align: center;">
 				</u-tabs>
@@ -94,7 +94,7 @@
 
 		<!-- 标签商品 -->
 		<view class="tag-goods" v-for="(item, index) in exclusiveSingle" :key="index">
-			<image class="tag-goods-imgBg" src="../../static/core/core_bg.png" mode="scaleToFill"></image>
+			<image class="tag-goods-imgBg" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/mall_background.png" mode="scaleToFill"></image>
 			<view class="tag-goods-content">
 				<view class="tag-goods-content-nav flex">
 					<view class="tag-goods-content-nav__left flex">
@@ -103,8 +103,8 @@
 						<image src="../../static/core/core_tag.png" mode="scaleToFill"></image>
 					</view>
 					<view class="tag-goods-content-nav__right flex" @click="toTagGoods(item)">
-						<view class="title">更多</view>
-						<image src="../../static/core/core_right.png" mode="scaleToFill"></image>
+						<view class="title">更多></view>
+						<!-- <image src="../../static/core/core_right.png" mode="scaleToFill"></image> -->
 					</view>
 				</view>
 
@@ -151,7 +151,7 @@
 			<view class="flex empty" v-if="!list.length">
 				<view class="center">
 					<image class="center-img"
-						src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/nodata_3.png"
+						src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_empty_list.png"
 						mode="scaleToFill"></image>
 					<view class="center-font">还没有商品</view>
 				</view>
@@ -283,7 +283,7 @@
 			getClassify() {
 				$http.post('/api/v1/mp/user/exchange/category/listTree', {}).then(res => {
 					if (res.code == 0) {
-						let interval = 10
+						let interval = 8
 						this.classifyList = res && res.rows
 						this.classifyList.forEach(item => {
 							item.picUrl = env.filePublic + item.picUrl.split(',')[0] +
@@ -567,7 +567,7 @@
 				text-align: center;
 				font-weight: bold;
 				color: #fff;
-				background-color: #FF8D0B;
+				background-color: $uni-btn-color;
 				border-radius: 35rpx;
 			}
 		}
@@ -592,7 +592,7 @@
 				text-align: center;
 				font-weight: bold;
 				color: #fff;
-				background-color: #FF8D0B;
+				background-color: $uni-btn-color;
 				border-radius: 35rpx;
 			}
 		}
@@ -658,7 +658,7 @@
 				padding: 0 34rpx;
 				color: #fff;
 				height: 100%;
-				background: #F9822C;
+				background: $uni-btn-color;
 
 				&__item {
 					.title {
@@ -695,7 +695,7 @@
 						}
 
 						.action {
-							color: #F9822C;
+							color: $uni-text-color;
 						}
 					}
 				}
@@ -751,7 +751,7 @@
 						align-items: center;
 						flex-direction: column;
 						justify-content: space-between;
-						width: 20%;
+						width: 25%;
 						height: 50%;
 
 						image {
@@ -771,47 +771,49 @@
 		align-items: center;
 		position: relative;
 		margin: 0 34rpx 34rpx;
-		height: 350rpx;
+		height: 250rpx;
 
 		&-imgBg {
 			position: absolute;
 			top: 0;
 			width: 100%;
-			height: 350rpx;
+			height: 250rpx;
 		}
 
 		&-content {
 			width: 100%;
+			height: 100%;
 			position: absolute;
 			top: 0;
 			z-index: 5;
-			padding: 26rpx 22rpx;
+			padding: 10rpx 22rpx 22rpx;
 
 			&-nav {
 				justify-content: space-between;
-				height: 40rpx;
-				margin-bottom: 10rpx;
+				height: 36rpx;
+				margin-bottom: 24rpx;
 
 				&__left {
 					image {
-						width: 40rpx;
-						height: 30rpx;
+						width: 36rpx;
+						height: 20rpx;
 					}
 
 					.title {
 						font-family: YouSheBiaoTiHei;
 						font-weight: 400;
-						font-size: 40rpx;
-						color: #FFFFFF;
+						font-size: 34rpx;
+						color: $uni-text-color;
 						padding: 0 36rpx;
 					}
 				}
 
 				&__right {
 					.title {
+						font-size: 28rpx;
 						font-family: YouSheBiaoTiHei;
 						font-weight: 400;
-						color: #FFFFFF;
+						color: #666;
 						margin-right: 12rpx;
 					}
 
@@ -824,7 +826,6 @@
 
 			&-list {
 				display: flex;
-				height: 260rpx;
 				overflow-x: auto;
 
 				&-item {
@@ -832,12 +833,12 @@
 					margin-right: 14rpx;
 
 					.image {
-						width: 180rpx;
-						height: 180rpx;
-						background: #FFFFFF;
+						width: 150rpx;
+						height: 118rpx;
+						// background: #FFFFFF;
 						box-shadow: 0px 0px 4px 0px rgba(100, 100, 100, 0.13);
 						border-radius: 4rpx;
-						margin-bottom: 24rpx;
+						margin-bottom: 8rpx;
 
 						image {
 							width: 100%;
@@ -846,9 +847,10 @@
 					}
 
 					.title {
+						font-size: 22rpx;
 						text-align: center;
-						line-height: 28rpx;
-						color: #FFFFFF;
+						line-height: 26rpx;
+						color: #333;
 					}
 				}
 			}
@@ -870,8 +872,7 @@
 				width: 48%;
 				padding-bottom: 32rpx;
 				background: #FFFFFF;
-				box-shadow: 0px 0px 3px 0px rgba(100, 100, 100, 0.1);
-				border-radius: 16rpx;
+				box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.12);
 				margin-bottom: 30rpx;
 
 				.image-wrap {
@@ -882,7 +883,6 @@
 					image {
 						width: 100%;
 						height: 100%;
-						border-radius: 16rpx 16rpx 0 0;
 					}
 				}
 

+ 0 - 1213
src/pages/index/index -2022-7-15.vue

@@ -1,1213 +0,0 @@
-<template>
-	<view>
-		<view class="box">
-			<view class="index" :style="{ top: statusHeight + 'px' }">
-				<view class="barrage">
-					<!-- 背景 -->
-					<image class="barrage-bg" src="../../static/index/barrage_bgTwo.png" mode="scaleToFill"></image>
-					<!-- 中奖信息轮播 -->
-					<swiper class="barrage-swiper" :interval="2000" :autoplay="true" :vertical="true" :circular="true">
-						<swiper-item v-for="(item, index) in prizeNewsListOne" :key="index">
-							<view class="barrage-swiper-item flex">
-								<view class="barrage-swiper-item-content flex">
-									<image :src="item.avatar" mode="scaleToFill" />
-									<view class="title ells-one">{{ item.nickName }}
-										{{ item.type == 1 ? '刮出了' : '兑换了' }} {{ item.prizeInfo }}
-									</view>
-								</view>
-							</view>
-						</swiper-item>
-					</swiper>
-					<view class="barrage-none"></view>
-				</view>
-
-				<!-- 查看规则 -->
-				<view class="rule">
-					<!-- #ifndef MP-ALIPAY -->
-					<view class="rule-content flex" @click="toRule">
-						<image src="../../static/index/index_tip.png" mode="scaleToFill"></image>
-						<text>查看规则</text>
-					</view>
-					<!-- #endif -->
-				</view>
-
-				<!-- 盲票轮播 -->
-				<view class="ticket">
-					<swiper class="ticket-swiper" :current="ticketIndex" :autoplay="false" :circular="true"
-						:duration="200" @change="changeTicket">
-						<swiper-item v-for="(item, index) in ticketList" :key="index">
-							<view class="ticket-swiper-item flex" @click="toTicketBox(item)">
-								<image class="ticket-swiper-item-box" :src="item.picUrl[2]" mode="scaleToFill"></image>
-								<image class="ticket-swiper-item-prize" :src="item.picUrl[1]" mode="scaleToFill">
-								</image>
-							</view>
-						</swiper-item>
-					</swiper>
-					<view class="ticket-left" @click="ticketRight()">
-						<image src="../../static/index/index_tip_left.png" mode="scaleToFill"></image>
-					</view>
-					<view class="ticket-right" @click="ticketLeft()">
-						<image src="../../static/index/index_tip_left.png" mode="scaleToFill"></image>
-					</view>
-
-				</view>
-
-				<!-- 投诉建议 -->
-				<view class="proposal flex">
-					<view class="proposal-time flex" v-if="activityTime && activityTime > 0" @click="toActivity">
-						<image src="../../static/index/index_time_top.png" mode="scaleToFill"></image>
-						<view class="time">
-							<u-count-down :time="activityTime" format="HH:mm:ss:SSS" autoStart millisecond>
-							</u-count-down>
-						</view>
-					</view>
-					<view v-else></view>
-					<view class="proposal-progress">
-						<u-line-progress :percentage="percentage" height="3" :showText="false"
-							inactiveColor="rgba(255, 255, 255, .36)" activeColor="#fff" />
-					</view>
-					<!-- #ifdef MP-WEIXIN -->
-					<view class="proposal-tip" @click="contactService">
-						<image src="../../static/index/index_tip_bgTwo.png" mode="scaleToFill"></image>
-						<text>投诉建议</text>
-					</view>
-					<!-- #endif -->
-
-				</view>
-
-				<!-- 中奖概率 -->
-				<view class="chance flex">
-					<view class="chance-title">中奖概率:</view>
-					<view class="chance-hitRate flex">
-						<view class="chance-hitRate-content flex"
-							v-for="(item, index) in ticketInfo.ticketAwardsLabelList" :key="index">
-							<image :src="item.picUrl" mode="scaleToFill"></image>
-							<text>{{ item.hitRate }}%</text>
-						</view>
-					</view>
-				</view>
-
-				<!-- 盲票名称轮播 -->
-				<view class="ticket-title" flex>
-					<swiper class="ticket-title-swiper flex" :duration="0" :current="ticketTitleIndex"
-						previous-margin="110px" next-margin="110px" :autoplay="false" :circular="true"
-						@change="changeTicketTitle">
-						<swiper-item v-for="(item, index) in ticketList" :key="index">
-							<view class="ticket-title-swiper-item flex" @click="clickTicketTitle(index)"
-								:class="{ 'action': ticketTitleIndex == index }">
-								<text>{{ item.title }}</text>
-							</view>
-						</swiper-item>
-					</swiper>
-				</view>
-
-				<!-- 刮开盲票 -->
-				<view class="ticket-btn flex">
-					<view class="ticket-btn-left flex" @click="toRollingGame">
-						<image src="../../static/index/index_btn_left.png" mode="scaleToFill"></image>
-						<view class="ticket-btn-left__title">试玩</view>
-					</view>
-					<view class="ticket-btn-center flex" @click="payment">
-						<view class="image-wrap flex">
-							<image class="btn" src="../../static/index/index_btn.png" mode="scaleToFill"></image>
-							<image class="shadow" src="../../static/index/index_btn_shadow.png" mode="scaleToFill">
-							</image>
-						</view>
-						<view class="ticket-btn-center-wrap flex">
-							<view class="ticket-btn-center-wrap__title">刮开<br />盲票</view>
-						</view>
-					</view>
-					<view class="ticket-btn-right flex" @click="toTicket">
-						<image src="../../static/index/index_btn_right.png" mode="scaleToFill"></image>
-						<view class="ticket-btn-right__title">更多盲票</view>
-					</view>
-				</view>
-
-				<!-- 盲票价格 -->
-				<view class="ticket-price flex">
-					<view class="ticket-price-amt flex">
-						<view class="num">{{ $numberFormat(ticketInfo.salePrice) }}</view>
-						<view class="txt">元</view>
-					</view>
-					<view class="ticket-price-discount flex" v-if="ticketInfo.originPrice != 0">
-						<view class="num">原价¥{{ $numberFormat(ticketInfo.originPrice) }}</view>
-					</view>
-				</view>
-			</view>
-
-		</view>
-		<!-- 引导页面 -->
-		<u-modal :show="showMp" content='“盲票”已升级为“码上快购”' width='530rpx' confirmText='立即前往' @confirm='toAnotherApplet'></u-modal>
-		<!-- tabbar组件 -->
-		<custom-tab-bar :activeValue="'index'" />
-		<!-- 支付弹框组件 -->
-		<pay-popup :pay-show="payShow" :pay-info="payInfo" @close="close" @success="toProcess" v-if="payShow" />
-	</view>
-</template>
-
-<script>
-	import env from '../../config/env.js'
-	import $http from '@/utils/request.js'
-	import appId from '@/config/appId.js'
-	import CustomTabBar from '../../components/custom-tab-bar/custom-tab-bar.vue'
-	import PayPopup from '../../components/pay-popup/pay-popup.vue'
-	export default {
-		components: {
-			CustomTabBar,
-			PayPopup,
-		},
-		data() {
-			return {
-				loginState: false, // 登录状态
-				ticketList: [], // 盲票列表
-				prizeList: [], // 奖品列表
-				prizeNewsListOne: [], // 弹幕列表
-				prizeNewsListTwo: [], // 弹幕列表
-				payShow: false, // 支付弹框显示
-				payInfo: {}, // 支付详情
-				currentIndex: 0, // 盲票选中下标
-
-				statusHeight: 20,
-				ticketIndex: 0, // 盲票选中下标
-				ticketTitleIndex: 0, // 盲票标题选中下边
-				list: [1, 2, 3, 4, 5],
-				percentage: 0,
-				checkStatus: true,
-				filterActivityList: [],
-				activityTime: null,
-				ticketInfo: {},
-				clickLoading: true,
-				userInfo: '',
-				showMp: false,
-			};
-		},
-		onLoad(opthios) {
-			this.showMp = uni.getStorageSync('anotherApplet') ? true : false
-			
-			uni.hideTabBar()
-			if (opthios.userId) {
-				uni.setStorageSync('shareUid', opthios.userId != 'undefined' ? opthios.userId : null)
-				if (opthios.userId === undefined || opthios.userId === 'undefined') {
-					uni.getSystemInfo({
-						success(res) {
-							log.error(
-								`基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system },页面:/pages/index/index.vue.`
-							)
-						}
-					})
-				}
-			}
-			if (opthios.type) {
-				uni.setStorageSync('shareType', opthios.type)
-			}
-			/**
-			 * 票赢天下小程序分享盲票跳转接受的参数
-			 * shareUid: 用户ID
-			 * shareType: 分享类型
-			 * */
-			if (opthios.scene) {
-				let sceneStr = decodeURIComponent(opthios.scene)
-				this.sceneArr = sceneStr.split('&')
-				uni.setStorageSync('shareUid', this.sceneArr[0])
-				if (this.sceneArr[0] === undefined || this.sceneArr[0] === 'undefined') {
-					uni.getSystemInfo({
-						success(res) {
-							log.error(
-								`基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system },页面:/pages/index/index.vue,来源:票赢天下小程序分享盲票,`
-							)
-						}
-					})
-				}
-				uni.setStorageSync('shareType', this.sceneArr[1])
-			}
-			/**
-			 * 外部app跳转接受的参数
-			 * shareUid: 用户ID
-			 * shareType: 分享类型
-			 * */
-			if (opthios.uid) {
-				uni.setStorageSync('shareUid', opthios.uid != 'undefined' ? opthios.uid : null)
-				if (opthios.uid === undefined || opthios.uid === 'undefined') {
-					uni.getSystemInfo({
-						success(res) {
-							log.error(
-								`基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system },页面:/pages/index/index.vue,来源:外部app,`
-							)
-						}
-					})
-				}
-				uni.setStorageSync('shareType', opthios.t)
-			}
-			// #ifdef MP-WEIXIN
-			const res = uni.getMenuButtonBoundingClientRect()
-			this.statusHeight = res.top //胶囊距离顶部
-			// #endif
-
-			// #ifdef MP-ALIPAY
-			uni.getSystemInfo({
-				success: (res) => {
-					this.statusHeight = res.statusBarHeight + 7
-				}
-			})
-			// #endif
-
-			let num = Math.round(100 / this.list.length)
-			this.percentage = num
-
-
-			this.getList()
-		},
-		onShow() {
-			this.loginState = uni.getStorageSync('token') ? true : false
-			if (this.loginState) {
-				this.getBaseInfo()
-			}
-			this.getPrizeNews()
-			this.getActivityList()
-		},
-		methods: {
-			toAnotherApplet() {
-				/**
-				 * envVersion 类型为字符串
-				 * envVersion: 'develop', //开发版
-				 * envVersion: 'trial', //体验版
-				 * envVersion: 'release',//正式版
-				 */
-				uni.navigateToMiniProgram({
-				    appId:'wxffb4598e70b9f871',// appid
-				    path:'/pages/index/index',// 首页路径
-				    envVersion:"release",
-				    success: res => {
-				      // 打开成功
-				    },
-				})
-			},
-			// 切换盲票
-			changeTicket({
-				detail
-			}) {
-				if (this.clickLoading) {
-					this.clickLoading = false
-					this.ticketIndex = detail.current
-					this.ticketTitleIndex = detail.current
-					this.getTicketDetail(this.ticketList[detail.current].boxId)
-					this.setNum(detail.current)
-					setTimeout(() => {
-						this.clickLoading = true
-					}, 200)
-				}
-			},
-
-			// 切换盲票名称
-			changeTicketTitle({
-				detail
-			}) {
-				if (this.clickLoading) {
-					this.clickLoading = false
-					this.ticketIndex = detail.current
-					this.ticketTitleIndex = detail.current
-					this.getTicketDetail(this.ticketList[detail.current].boxId)
-					this.setNum(detail.current)
-					setTimeout(() => {
-						this.clickLoading = true
-					}, 200)
-				}
-			},
-
-			// 点击名称
-			clickTicketTitle(index) {
-				this.ticketIndex = index
-				this.ticketTitleIndex = index
-				this.getTicketDetail(this.ticketList[index].boxId)
-				this.setNum(index)
-			},
-
-			setNum(index) {
-				let num = Math.round(100 / this.list.length)
-				if (index == 0) {
-					this.percentage = uni.$u.range(0, 100, num)
-				} else if (index == this.list.length - 1) {
-					this.percentage = uni.$u.range(0, 100, 100)
-				} else {
-					this.percentage = uni.$u.range(0, 100, num * (index + 1))
-				}
-			},
-
-			// 投诉建议
-			contactService() {
-				// #ifdef MP-WEIXIN
-				if (appId == 1) {
-					// wx.openCustomerServiceChat({
-					// 	extInfo: {
-					// 		url: 'https://work.weixin.qq.com/kfid/kfc36c0d90028adbd24'
-					// 	},
-					// 	corpId: 'ww02da63d80c66284b',
-					// })
-					uni.navigateTo({
-						url: `/pages/index/wxofficial`
-					})
-				} else {
-					wx.openCustomerServiceChat({
-						extInfo: {
-							url: 'https://work.weixin.qq.com/kfid/kfcf9da505d4dc18c87'
-						},
-						corpId: 'ww8522e336cfe5045b',
-					})
-				}
-				// #endif
-			},
-
-			// 活动
-			getActivityList() {
-				$http.post(`/api/v1/mp/user/marketing/recent`, {}).then(res => {
-					if (res && res.data) {
-						let data = res && res.data
-						let timestamp = parseInt(new Date().getTime())
-						this.activityTime = data.endTime - timestamp
-					}
-				})
-			},
-
-			// 获取盲票列表
-			getList() {
-				uni.showLoading({
-					title: '加载中'
-				});
-				let data = {
-					categoryId: '',
-					tagId: '',
-					type: 'online',
-					noToken: true
-				}
-				$http.post(`/api/v1/mp/user/mall/ticket/list?pageNum=${this.pageNum}&pageSize=100`, data).then(
-					res => {
-						uni.hideLoading();
-						if (res.code == 0) {
-							res.rows.forEach(item => item.picUrl = item.picUrl.split(',').map(item => env.filePublic +
-								item + '?imageView2/2/w/750'))
-							this.ticketList = res.rows
-							this.getTicketDetail(this.ticketList[0].boxId)
-						}
-					}).catch(() => {
-					uni.hideLoading();
-				})
-			},
-
-			// 获取弹幕列表
-			getPrizeNews() {
-				$http.post('/api/v1/mp/user/ticket/hitPrizeBarrage', {}).then(res => {
-					const {
-						listOne,
-						listTwo
-					} = res && res.data
-					listOne.forEach(item => {
-						item.avatar = item.avatar ? env.filePublic + item.avatar : env.filePublic +
-							'70/EJ305PQR2IBE45O9AFAI'
-						item.prizeInfo = item.prizeInfo && (item.prizeInfo.length > 14) ? item.prizeInfo
-							.substring(0, 15) + '...' : item.prizeInfo
-					})
-
-					listTwo.forEach(item => {
-						item.avatar = item.avatar ? env.filePublic + item.avatar : env.filePublic +
-							'70/EJ305PQR2IBE45O9AFAI'
-						item.prizeInfo = item.prizeInfo && (item.prizeInfo.length > 14) ? item.prizeInfo
-							.substring(0, 15) + '...' : item.prizeInfo
-					})
-					this.prizeNewsListOne = listOne
-					this.prizeNewsListTwo = listTwo
-				})
-			},
-
-			// 获取当前盲票的详情
-			getTicketDetail(id) {
-				this.prizeList = []
-				$http.post('/api/v1/mp/user/mall/ticket/detail', {
-					boxId: id,
-					noToken: true
-				}).then(res => {
-					uni.hideLoading();
-					if (res.code == 0) {
-						this.ticketInfo = {
-							...res.data,
-							ticketAwardsLabelList: res.data.ticketAwardsLabelList.map(item => {
-								return {
-									...item,
-									picUrl: env.filePublic + item.picUrl
-								}
-							})
-						}
-						this.payInfo = this.ticketList[this.ticketIndex]
-					}
-				}).catch(() => {
-					uni.hideLoading();
-				})
-			},
-
-			// 立即开刮
-			payment() {
-				this.payInfo = this.ticketList[this.ticketIndex]
-				if (this.payInfo) {
-					let data = {
-						userCouponIds: [],
-						autoCoupon: 1,
-						boxId: this.payInfo.boxId,
-						orderNum: 1,
-						appSource: appId
-					}
-					$http.post('/api/v1/mp/user/ticket/order/settle', data).then(res => {
-						if (res.code == 0) {
-							let info = {
-								...res.data,
-								...this.payInfo,
-								picUrl: this.payInfo.picUrl[0],
-								couponTitle: res.data && res.data.couponList && res.data.couponList.length &&
-									res
-									.data.couponList[0].title,
-								couponId: res.data && res.data.couponList && res.data.couponList.length && res
-									.data
-									.couponList[0].id
-							}
-							this.payInfo = info
-							this.payShow = true
-						}
-					}).catch(() => {
-						uni.$u.toast('开刮失败,请重试!');
-					})
-				} else {
-					uni.$u.toast('盲票正在准备中');
-				}
-
-			},
-
-			// 关闭支付弹框
-			close() {
-				this.payShow = false
-			},
-
-			changeList() {
-				let data = {
-					categoryId: '',
-					tagId: '',
-					type: 'online',
-					noToken: true
-				}
-				$http.post(`/api/v1/mp/user/mall/ticket/list?pageNum=${this.pageNum}&pageSize=100`, data).then(
-					res => {
-						const boxIdStr = this.ticketList.map(item => item.boxId).join()
-						let boxIdStrNew = res && res.rows && res.rows.map(item => item.boxId).join()
-						if (boxIdStr != boxIdStrNew) {
-							this.currentIndex = 0
-							this.getList()
-						}
-					})
-			},
-
-			// 盲票向左箭头
-			ticketLeft() {
-				if ((this.ticketIndex >= 0) && (this.ticketIndex < (this.ticketList.length - 1))) {
-					this.ticketIndex++
-				} else if (this.ticketIndex == (this.ticketList.length - 1)) {
-					this.ticketIndex = 0
-				}
-				this.ticketTitleIndex = this.ticketIndex
-				this.getTicketDetail(this.ticketList[this.ticketTitleIndex].boxId)
-			},
-
-			// 盲票向右箭头
-			ticketRight() {
-				if (this.ticketIndex > 0) {
-					this.ticketIndex--
-				} else if (this.ticketIndex == 0) {
-					this.ticketIndex = this.ticketList.length - 1
-				}
-				this.ticketTitleIndex = this.ticketIndex
-				this.getTicketDetail(this.ticketList[this.ticketTitleIndex].boxId)
-			},
-
-			toRollingGame() {
-				if (!uni.getStorageSync('token')) {
-					uni.navigateTo({
-						url: '/pages/login/index'
-					})
-					return
-				}
-				if (this.ticketInfo && this.ticketInfo.boxId) {
-					uni.navigateTo({
-						url: `/packagePrize/rolling/index?boxId=${ this.ticketInfo.boxId }&isTry=1`
-					})
-				} else {
-					uni.$u.toast('盲票正在准备中');
-				}
-
-			},
-
-			// 线上立即刮票成功,跳转到刮奖过程
-			toProcess(id) {
-				this.payShow = false
-				uni.navigateTo({
-					url: `/packagePrize/rolling/index?boxId=${ this.ticketInfo.boxId }&orderId=${ id }&isTry=0`
-				})
-			},
-
-			// 点击盲票,跳转盲票详情
-			toTicketBox(item) {
-				uni.navigateTo({
-					url: `/pages/ticketBox/detail?boxId=${ item.boxId }`
-				})
-			},
-
-			// 点击奖品,跳转到奖品详情
-			toPrizeGoods(item) {
-				if (item.prizeType == "goods") {
-					uni.navigateTo({
-						url: `/packagePrize/goods/detail?id=${ item.refId }`
-					})
-				}
-				//门店优惠券
-				if (item.prizeType == "coupon") {
-					// if (item.couponType == "1") {
-					// 	uni.navigateTo({
-					// 		url: `/packagePrize/goods/detail?id=426`
-					// 	})
-					// }
-					// if (item.couponType == "2") {
-					// uni.navigateTo({
-					// 	url: `/packagePrize/goods/detail?id=425`
-					// })
-					// }
-					uni.navigateTo({
-						url: `/packagePrize/goods/detail?id=425`
-					})
-				}
-				// 盲豆
-				if (item.prizeType == "coin") {
-					uni.navigateTo({
-						url: `/packagePrize/goods/detail?id=424`
-					})
-				}
-			},
-
-			toActivity() {
-				uni.switchTab({
-					url: '/pages/activity/index'
-				})
-			},
-
-			// 点击所有盲票
-			toTicket() {
-				uni.navigateTo({
-					url: '/packageGoods/ticket/index'
-				})
-			},
-
-			// 点击仓库
-			toPrize() {
-				if (!this.loginState) {
-					uni.navigateTo({
-						url: "/pages/login/index"
-					})
-					return
-				}
-				uni.navigateTo({
-					url: '/packagePrize/prize/index'
-				})
-			},
-
-			// 点击规则说明
-			toRule() {
-				uni.navigateTo({
-					url: '/packageOther/rule/index'
-				})
-			},
-
-			getBaseInfo() {
-				$http.post('/api/v1/mp/user/getLoginUserinfo', {
-					appSource: appId
-				}).then(res => {
-					uni.hideLoading();
-					if (res.code == 0) {
-						this.userInfo = res.data
-					}
-				})
-			},
-		},
-		//分享好友
-		onShareAppMessage(res) {
-			return {
-				title: '盲票,玩的就是有趣',
-				path: '/pages/index/index'
-			}
-		},
-		//分享朋友圈
-		onShareTimeline() {
-			return {
-				title: '盲票,玩的就是有趣',
-				// query: { userId: this.userInfo.userId,
-				// 		type: 1, },
-				query: `userId=${ this.userInfo.userId?this.userInfo.userId:null }&type=1`
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.status_bar {
-		width: 100%;
-		height: var(--status-bar-height);
-	}
-
-	::v-deep .u-tabbar__placeholder {
-		display: none;
-	}
-</style>
-
-<style lang="scss" scoped>
-	.box {
-		position: relative;
-		width: 100%;
-		height: calc(100vh - 50px);
-		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/front_bk.png) center center no-repeat;
-		background-size: 100vw calc(100vh - 50px);
-
-		.index {
-			position: absolute;
-			width: 100%;
-		}
-	}
-
-	// 中奖信息
-	.barrage {
-		position: relative;
-		width: 518rpx;
-		height: 70rpx;
-
-		border-radius: 42rpx;
-		margin-bottom: 16rpx;
-		margin-left: 34rpx;
-
-		&-bg {
-			position: absolute;
-			width: 518rpx;
-			height: 70rpx;
-		}
-
-		&-swiper {
-			position: absolute;
-			z-index: 10;
-			width: 100%;
-			height: 100%;
-			border-radius: 42rpx;
-			overflow: hidden;
-
-			&-item {
-				width: 100%;
-				height: 100%;
-
-				&-content {
-					display: flex;
-					align-items: center;
-					width: 510rpx;
-					height: 70rpx;
-
-					image {
-						width: 58rpx;
-						height: 58rpx;
-						border-radius: 50%;
-						margin-right: 14rpx;
-						border: 1px solid #fff;
-						margin-left: 8rpx;
-					}
-
-					.title {
-						flex: 1;
-						font-size: 26rpx;
-						font-weight: 500;
-						color: #fff;
-					}
-				}
-			}
-		}
-
-		&-none {
-			position: absolute;
-			width: 518rpx;
-			height: 70rpx;
-			z-index: 20;
-		}
-	}
-
-	// 查看规则
-	.rule {
-		display: flex;
-		align-items: center;
-		justify-content: flex-end;
-		height: 34rpx;
-		padding-right: 34rpx;
-		margin-bottom: 24rpx;
-
-		&-content {
-			image {
-				width: 34rpx;
-				height: 34rpx;
-				margin-right: 14rpx;
-			}
-
-			text {
-				font-size: 40rpx;
-				font-family: 'YouSheBiaoTiHei';
-				font-weight: 400;
-				color: #FFFFFF;
-			}
-		}
-	}
-
-	// 盲票
-	.ticket {
-		height: 36vh;
-		position: relative;
-
-		&-swiper {
-			height: 100%;
-
-			&-item {
-				position: relative;
-				height: 100%;
-
-				&-box {
-					position: absolute;
-					bottom: 0;
-					width: 75vw;
-					height: 75%;
-				}
-
-				&-prize {
-					position: absolute;
-					top: 0;
-					width: 85vw;
-					height: 75%;
-					animation: movePrize 2s linear infinite;
-				}
-			}
-		}
-
-		&-left {
-			width: 100rpx;
-			height: 100rpx;
-			position: absolute;
-			top: 45%;
-			left: 0;
-			display: table-cell;
-			vertical-align: middle;
-
-			image {
-				display: block;
-				margin: 25rpx auto;
-				width: 45rpx;
-				height: 40rpx;
-			}
-		}
-
-		&-right {
-			width: 100rpx;
-			height: 100rpx;
-			position: absolute;
-			top: 45%;
-			right: 0;
-			display: table-cell;
-			vertical-align: middle;
-
-			image {
-				display: block;
-				margin: 25rpx auto;
-				width: 45rpx;
-				height: 40rpx;
-				transform: rotate(180deg);
-			}
-		}
-	}
-
-	// 投诉建议
-	.proposal {
-		position: relative;
-		height: 66rpx;
-		margin-bottom: 30rpx;
-
-		&-time {
-			position: absolute;
-			left: 30rpx;
-			bottom: 0;
-			flex-direction: column;
-			align-items: flex-start;
-
-			image {
-				width: 140rpx;
-				height: 78rpx;
-				margin-bottom: 12rpx;
-				animation: scaleTime 3s linear infinite;
-			}
-
-			.time {
-				animation: moveTime 0.5s linear infinite;
-
-				::v-deep .u-count-down__text {
-					line-height: 30rpx;
-					font-size: 30rpx;
-					font-family: YouSheBiaoTiHei;
-					font-weight: 400;
-					color: #FFFFFF;
-				}
-			}
-		}
-
-		&-progress {
-			position: absolute;
-			bottom: 0;
-			width: 140rpx;
-		}
-
-		&-tip {
-			display: flex;
-			align-items: center;
-			position: absolute;
-			right: 0;
-			bottom: 0;
-			width: 212rpx;
-			height: 66rpx;
-
-			image {
-				position: absolute;
-				right: 0;
-				bottom: 0;
-				width: 212rpx;
-				height: 66rpx;
-			}
-
-			text {
-				position: absolute;
-				right: 16rpx;
-				font-size: 40rpx;
-				font-family: YouSheBiaoTiHei;
-				font-weight: 400;
-				color: #FFFFFF;
-			}
-		}
-	}
-
-	// 中奖概率
-	.chance {
-		justify-content: flex-start;
-		height: 44rpx;
-		margin: 0 34rpx 26rpx;
-		background-color: rgba(000, 000, 000, .36);
-		border-radius: 22rpx;
-		color: #FFFFFF;
-		font-family: YouSheBiaoTiHei;
-		font-size: 14px;
-
-		&-title {
-			margin-left: 8rpx;
-		}
-
-		&-hitRate {
-			flex: 1;
-			justify-content: space-evenly;
-
-			&-content {
-
-				image {
-					width: 56rpx;
-					height: 50rpx;
-				}
-			}
-		}
-	}
-
-	// 盲票名称轮播
-	.ticket-title {
-		height: 66rpx;
-		padding: 0 34rpx;
-
-		&-swiper {
-			width: calc(100vw - 34px);
-			height: 100%;
-
-			&-item {
-				height: 100%;
-				background: rgba(255, 255, 255, .16);
-				margin: 0 17rpx;
-				color: #fff;
-				font-size: 34rpx;
-			}
-
-			.action {
-				background: #FFAE00;
-				box-shadow: 0px 3px 3px 0px rgba(220, 145, 107, 0.57);
-			}
-		}
-	}
-
-	// 刮开盲票
-	.ticket-btn {
-		justify-content: space-between;
-		height: 20vh;
-		padding: 0 30rpx;
-
-		&-left {
-			flex-direction: column;
-
-			image {
-				width: 142rpx;
-				height: 142rpx;
-				margin-bottom: 16rpx;
-			}
-
-			&__title {
-				line-height: 30rpx;
-				font-size: 30rpx;
-				font-family: YouSheBiaoTiHei;
-				font-weight: 400;
-				color: #FFFFFF;
-			}
-		}
-
-		&-center {
-			position: relative;
-			flex-direction: column;
-			height: 100%;
-
-			.image-wrap {
-				position: absolute;
-				width: 310rpx;
-				height: 90%;
-				border-radius: 50%;
-				overflow: hidden;
-				box-shadow: 2px 2px 10px rgba(255, 189, 24, .8), -2px -2px 10px rgba(255, 189, 24, .8), 2px -2px 10px rgba(255, 189, 24, .8), -2px 2px 10px rgba(255, 189, 24, .8);
-
-				.btn {
-					width: 310rpx;
-					height: 100%;
-				}
-
-				.shadow {
-					position: absolute;
-					width: 310rpx;
-					height: 130%;
-					left: 0;
-					animation: shadowMove 1.5s linear infinite;
-				}
-			}
-
-			&-wrap {
-				width: 300rpx;
-				position: absolute;
-				animation: scaleBtn 1.5s linear infinite;
-
-				&__title {
-					width: 300rpx;
-					text-align: center;
-					font-size: 84rpx;
-					font-family: YouSheBiaoTiHei;
-					font-weight: 400;
-					color: #FFFFFF;
-					line-height: 72rpx;
-					animation: shadowBtn 1.5s linear infinite;
-				}
-			}
-		}
-
-		&-right {
-			flex-direction: column;
-
-			image {
-				width: 142rpx;
-				height: 142rpx;
-				margin-bottom: 16rpx;
-			}
-
-			&__title {
-				line-height: 30rpx;
-				font-size: 30rpx;
-				font-family: YouSheBiaoTiHei;
-				font-weight: 400;
-				color: #FFFFFF;
-			}
-		}
-	}
-
-	// 盲票价格
-	.ticket-price {
-		height: 44rpx;
-
-		&-checkbox {
-			width: 44rpx;
-			height: 44rpx;
-			background-color: #fff;
-			border-radius: 50%;
-			overflow: hidden;
-			margin-right: 20rpx;
-
-			image {
-				width: 44rpx;
-				height: 44rpx;
-			}
-		}
-
-		&-amt {
-			height: 44rpx;
-			font-family: YouSheBiaoTiHei;
-			font-weight: 400;
-			align-items: flex-end;
-			color: #FFFFFF;
-			margin-right: 20rpx;
-
-			.num {
-				font-size: 56rpx;
-				line-height: 40rpx;
-			}
-
-			.txt {
-				line-height: 36rpx;
-				font-size: 40rpx;
-			}
-		}
-
-		&-discount {
-			height: 44rpx;
-			align-items: flex-end;
-
-			.num {
-				line-height: 26rpx;
-				font-size: 26rpx;
-				text-decoration: line-through;
-				font-style: italic;
-				color: #FFFEFE;
-			}
-		}
-	}
-
-	// 奖品移动动画
-	@keyframes movePrize {
-		0% {
-			transform: translate(0, 10px)
-		}
-
-		25% {
-			transform: translate(0, 5px)
-		}
-
-		50% {
-			transform: translate(0, 0px)
-		}
-
-		75% {
-			transform: translate(0, 5px)
-		}
-
-		100% {
-			transform: translate(0, 10px)
-		}
-	}
-
-	// 倒计时移动动画
-	@keyframes moveTime {
-		0% {
-			transform: translate(2px, 0)
-		}
-
-		25% {
-			transform: translate(0, 0)
-		}
-
-		50% {
-			transform: translate(1px, 0)
-		}
-
-		75% {
-			transform: translate(0, 0)
-		}
-
-		100% {
-			transform: translate(2px, 0)
-		}
-	}
-
-	// 放大缩小动画
-	@keyframes scaleTime {
-		0% {
-			transform: scale(1.05)
-		}
-
-		25% {
-			transform: scale(1.02)
-		}
-
-		50% {
-			transform: scale(0.9)
-		}
-
-		75% {
-			transform: scale(1.02)
-		}
-
-		100% {
-			transform: scale(1.05)
-		}
-	}
-
-	// 刮开刮票呼吸动画
-	@keyframes scaleBtn {
-		0% {
-			transform: scale(1.04)
-		}
-
-		25% {
-			transform: scale(1.02)
-		}
-
-		50% {
-			transform: scale(1)
-		}
-
-		75% {
-			transform: scale(1.02)
-		}
-
-		100% {
-			transform: scale(1.04)
-		}
-	}
-
-	// 刮开刮票阴影动画
-	@keyframes shadowBtn {
-		0% {
-			text-shadow: 2px -2px 3px #fff;
-		}
-
-		25% {
-			text-shadow: none;
-		}
-
-		50% {
-			text-shadow: none;
-		}
-
-		75% {
-			text-shadow: none;
-		}
-
-		100% {
-			text-shadow: 2px -2px 3px #fff;
-		}
-	}
-
-	// 刮开盲票光影移动动画
-	@keyframes shadowMove {
-		0% {
-			left: -100%;
-		}
-
-		100% {
-			left: 110%;
-		}
-	}
-</style>

+ 244 - 321
src/pages/index/index.vue

@@ -18,33 +18,51 @@
 							</view>
 						</swiper-item>
 					</swiper>
-					<view class="barrage-none"></view>
 				</view>
 
 				<!-- 查看规则 -->
 				<view class="rule">
+					<!-- 游戏专区 -->
 					<!-- #ifdef MP-WEIXIN -->
 					<view class="rule-gameimg flex">
-						<image src="../../static/index/games.png" @click="toExternalGames" mode="scaleToFill"></image>
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexButtonGame.png" @click="toExternalGames" mode="scaleToFill"></image>
 					</view>
 					<!-- #endif -->
+					<!-- 活动倒计时 -->
+					<view class="rule-time flex" v-if="activityTime && activityTime > 0" @click="toActivity">
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexPrizeBox.png" mode="scaleToFill"></image>
+						<view class="time">
+							<u-count-down :time="activityTime" format="HH:mm:ss:SSS" autoStart millisecond>
+							</u-count-down>
+						</view>
+					</view>
+					<!-- 规则 -->
 					<!-- #ifndef MP-ALIPAY -->
-					<!-- <view class="rule-content flex" @click="contactService">
-						<image src="../../static/index/index_tip_bgTwo.png" mode="scaleToFill"></image>
-						<text>投诉建议</text>
-					</view> -->
 					<view class="rule-content flex" @click="toRule">
-						<image src="../../static/index/index_tip.png" mode="scaleToFill"></image>
-						<text>查看规则</text>
+						<image src="../../static/index/index_rules.png" mode="scaleToFill"></image>
 					</view>
 					<!-- #endif -->
 				</view>
+				
+				<!-- 盲票名称轮播 -->
+				<view class="ticket-title" flex>
+					<swiper class="ticket-title-swiper flex" :duration="0" :current="ticketTitleIndex" previous-margin="80px"
+						next-margin="80px" :autoplay="false" :circular="true" @change="changeTicketTitle">
+						<swiper-item v-for="(item, index) in ticketList" :key="index">
+							<view class="ticket-title-swiper-item flex" @click="clickTicketTitle(index)"
+								:class="{ 'action': ticketTitleIndex == index }">
+								<text class="ells-one">{{ item.title }}</text>
+							</view>
+						</swiper-item>
+					</swiper>
+				</view>
+				
 				<!-- <view @click="toLucky">这是测试盲票开奖入口</view> -->
 				<!-- <view @click="toStore">这是测试门店盲票列表入口</view> -->
 				<!-- 盲票轮播 -->
 				<view class="ticket">
 					<view class="ticket-bgc" @click="ticketLeft()">
-						<image src="../../static/index/index_anniu.png" mode="scaleToFill"></image>
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexPrizeplatform.png" mode="scaleToFill"></image>
 					</view>
 					<swiper class="ticket-swiper" :current="ticketIndex" :autoplay="false" :circular="true" :duration="200"
 						@change="changeTicket">
@@ -63,73 +81,44 @@
 					</view>
 				</view>
 
-				<!-- 投诉建议 -->
-				<view class="proposal flex">
-					<view class="proposal-time flex" v-if="activityTime && activityTime > 0" @click="toActivity">
-						<image src="../../static/index/index_time_top.png" mode="scaleToFill"></image>
-						<view class="time">
-							<u-count-down :time="activityTime" format="HH:mm:ss:SSS" autoStart millisecond>
-							</u-count-down>
-						</view>
+				<!-- 盲票价格 -->
+				<view class="ticket-price flex">
+					<view class="ticket-price-amt flex">
+						<view class="txt">¥</view>
+						<view class="num">{{ $numberFormat(ticketInfo.salePrice) }}</view>
 					</view>
-					<view v-else></view>
-					<view class="proposal-progress">
-						<u-line-progress :percentage="percentage" height="3" :showText="false"
-							inactiveColor="rgba(255, 255, 255, .36)" activeColor="#fff" />
+					<view class="ticket-price-discount flex" v-if="ticketInfo.originPrice != 0">
+						<view class="num">原价¥{{ $numberFormat(ticketInfo.originPrice) }}</view>
 					</view>
 				</view>
 
-				<!-- 盲票名称轮播 -->
-				<view class="ticket-title" flex>
-					<swiper class="ticket-title-swiper flex" :duration="0" :current="ticketTitleIndex" previous-margin="80px"
-						next-margin="80px" :autoplay="false" :circular="true" @change="changeTicketTitle">
-						<swiper-item v-for="(item, index) in ticketList" :key="index">
-							<view class="ticket-title-swiper-item flex" @click="clickTicketTitle(index)"
-								:class="{ 'action': ticketTitleIndex == index }">
-								<text class="ells-one">{{ item.title }}</text>
-							</view>
-						</swiper-item>
-					</swiper>
-				</view>
-
 				<!-- 刮开盲票 -->
 				<view class="ticket-btn flex">
 					<view class="ticket-btn-left flex" @click="toRollingGame">
-						<image src="../../static/index/index_duihuandating.png" mode="scaleToFill"></image>
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexButtonLeft.png" mode="scaleToFill"></image>
 						<view class="ticket-btn-left__title">兑换大厅</view>
 					</view>
 					<view class="ticket-btn-center flex" @click="payment">
 						<view class="image-wrap flex">
-							<image class="btn" src="../../static/index/index_btn.png" mode="scaleToFill"></image>
-							<image class="shadow" src="../../static/index/index_btn_shadow.png" mode="scaleToFill">
-							</image>
+							<image class="btn" src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexButtonBuy.png" mode="scaleToFill"></image>
+							<div class="shadow"><image src="../../static/index/index_btn_shadow.png" mode="scaleToFill"></image></div>
 						</view>
 						<view class="ticket-btn-center-wrap flex">
-							<view class="ticket-btn-center-wrap__title">购买<br />有礼</view>
+							<view class="ticket-btn-center-wrap__title">购买有礼</view>
 						</view>
 					</view>
 					<view class="ticket-btn-right flex" @click="toTicket">
-						<image src="../../static/index/index_btn_right.png" mode="scaleToFill"></image>
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexButtonRight.png" mode="scaleToFill"></image>
 						<view class="ticket-btn-right__title">更多商品</view>
 					</view>
 				</view>
 
-				<!-- 盲票价格 -->
-				<view class="ticket-price flex">
-					<view class="ticket-price-amt flex">
-						<view class="num">{{ $numberFormat(ticketInfo.salePrice) }}</view>
-						<view class="txt">元</view>
-					</view>
-					<view class="ticket-price-discount flex" v-if="ticketInfo.originPrice != 0">
-						<view class="num">原价¥{{ $numberFormat(ticketInfo.originPrice) }}</view>
-					</view>
-				</view>
+				
 			</view>
 
 		</view>
 		<!-- 引导页面 -->
-		<!-- <u-modal :show="showMp" content='“盲票”已升级为“码上快购”' width='530rpx' confirmText='立即前往' @confirm='toAnotherApplet'> -->
-		</u-modal>
+		<!-- <u-modal :show="showMp" content='“盲票”已升级为“码上快购”' width='530rpx' confirmText='立即前往' @confirm='toAnotherApplet'></u-modal> -->
 		<!-- tabbar组件 -->
 		<custom-tab-bar :activeValue="'index'" />
 		<!-- 支付弹框组件 -->
@@ -328,7 +317,7 @@
 
 			toLucky() {
 				uni.navigateTo({
-					url: `/pages/lucky/index?id=ffe7fab722472a6fd5692a38287366aa0a0a812329c145e1280edaf54b1840c7`
+					url: `/pages/lucky/index?id=ffe7fab722472a6fd5692a38287366aac7d09e371bf7e7940a7ea7e3351c74e8`
 				})
 			},
 			toStore() {
@@ -392,9 +381,9 @@
 				let data = {
 					type: 'online',
 					noToken: true
-				}
-				// #ifdef MP-WEIXIN
-				data.appSource = 1
+				}
+				// #ifdef MP-WEIXIN
+				data.appSource = 1
 				// #endif
 				$http.post(`/api/v1/mp/user/mall/ticket/goods/list?pageNum=${this.pageNum}&pageSize=100`, data).then(
 					res => {
@@ -403,7 +392,7 @@
 							res.rows.forEach(item => item.picUrl = item.picUrl.split(',').map(item => env.filePublic +
 								item + '?imageView2/2/w/750'))
 							this.ticketList = res.rows
-							this.getTicketDetail(this.ticketList[0].boxId)
+							this.getTicketDetail(this.ticketList && this.ticketList[0].boxId)
 						}
 					}).catch(() => {
 					uni.hideLoading();
@@ -446,7 +435,7 @@
 					if (res.code == 0) {
 						this.ticketInfo = {
 							...res.data,
-							ticketAwardsLabelList: res.data.ticketAwardsLabelList.map(item => {
+							ticketAwardsLabelList: res.data && res.data.ticketAwardsLabelList.map(item => {
 								return {
 									...item,
 									picUrl: env.filePublic + item.picUrl
@@ -467,7 +456,7 @@
 					let data = {
 						userCouponIds: [],
 						autoCoupon: 1,
-						boxId: this.payInfo.boxId,
+						boxId: this.payInfo && this.payInfo.boxId,
 						orderNum: 1,
 						appSource: appId
 					}
@@ -505,9 +494,9 @@
 				let data = {
 					type: 'online',
 					noToken: true
-				}
-				// #ifdef MP-WEIXIN
-				data.appSource = 1
+				}
+				// #ifdef MP-WEIXIN
+				data.appSource = 1
 				// #endif
 				$http.post(`/api/v1/mp/user/mall/ticket/goods/list?pageNum=${this.pageNum}&pageSize=100`, data).then(
 					res => {
@@ -552,7 +541,7 @@
 			toProcess(id) {
 				this.payShow = false
 				uni.navigateTo({
-					url: `/packagePrize/purchase/index?boxId=${ this.ticketInfo.boxId }&orderId=${ id }&isTry=0`
+					url: `/packagePrize/purchase/index?boxId=${ this.ticketInfo && this.ticketInfo.boxId }&orderId=${ id }&isTry=0`
 				})
 			},
 
@@ -654,7 +643,7 @@
 		position: relative;
 		width: 100%;
 		height: calc(100vh - 50px);
-		background: url(https://mp-public-test-1309783959.cos.ap-shanghai.myqcloud.com/v2/bkg1.png) center center no-repeat;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/indexBackground.png) center center no-repeat;
 		background-size: 100vw calc(100vh - 50px);
 
 		.index {
@@ -666,17 +655,16 @@
 	// 中奖信息
 	.barrage {
 		position: relative;
-		width: 518rpx;
-		height: 70rpx;
-
+		width: 642rpx;
+		height: 64rpx;
+		margin-top: 106rpx;
 		border-radius: 42rpx;
-		margin-bottom: 16rpx;
 		margin-left: 34rpx;
 
 		&-bg {
 			position: absolute;
-			width: 518rpx;
-			height: 70rpx;
+			width: 642rpx;
+			height: 64rpx;
 		}
 
 		&-swiper {
@@ -694,12 +682,12 @@
 				&-content {
 					display: flex;
 					align-items: center;
-					width: 510rpx;
-					height: 70rpx;
+					width: 632rpx;
+					height: 64rpx;
 
 					image {
-						width: 58rpx;
-						height: 58rpx;
+						width: 52rpx;
+						height: 52rpx;
 						border-radius: 50%;
 						margin-right: 14rpx;
 						border: 1px solid #fff;
@@ -708,20 +696,14 @@
 
 					.title {
 						flex: 1;
-						font-size: 26rpx;
-						font-weight: 500;
+						font-size: 24rpx;
+						font-family: PingFang SC-Regular, PingFang SC;
+						font-weight: 400;
 						color: #fff;
 					}
 				}
 			}
 		}
-
-		&-none {
-			position: absolute;
-			width: 518rpx;
-			height: 70rpx;
-			z-index: 20;
-		}
 	}
 
 	// 查看规则
@@ -734,55 +716,109 @@
 		/* #ifdef MP-WEIXIN */
 		justify-content: space-between;
 		/* #endif */
-		height: 34rpx;
 		padding: 0 34rpx; //
-		margin-bottom: 24rpx;
 
-		&-content {
+		&-gameimg {
+			width: 120rpx;
+			height: 108rpx;
+			margin-top: 22rpx;
+			z-index: 20;
+			
 			image {
-				width: 34rpx; // 210rpx
-				height: 34rpx; // 50rpx
-				margin-right: 14rpx; //
+				width: 120rpx;
+				height: 108rpx;
 			}
-
-			text {
-				// position: absolute;
-				// right: 20rpx;
-				font-size: 40rpx;
-				font-family: 'YouSheBiaoTiHei';
-				font-weight: 400;
-				color: #FFFFFF;
+		}
+		
+		&-time {
+			flex-direction: column;
+			margin-left: 18rpx;
+			z-index: 20;
+			
+			image {
+				width: 84rpx;
+				height: 84rpx;
+				animation: scaleTime 3s linear infinite;
+			}
+		
+			.time {
+				animation: moveTime 0.5s linear infinite;
+		
+				::v-deep .u-count-down__text {
+					margin-top: -6rpx;
+					line-height: 30rpx;
+					font-size: 26rpx;
+					font-family: YouSheBiaoTiHei-Regular, YouSheBiaoTiHei;
+					font-weight: 400;
+					color: #222;
+				}
 			}
 		}
 
-		&-gameimg {
-			width: 165rpx;
-			height: 155rpx;
-
+		&-content {
+			flex: 1;
+			justify-content: flex-end;
 			image {
-				width: 165rpx;
-				height: 155rpx;
-				margin-top: 64px;
-				z-index: 100000;
+				width: 78rpx; // 210rpx
+				height: 78rpx; // 50rpx
+				margin-right: 14rpx; //
 			}
 		}
+
 	}
 
+	// 盲票名称轮播
+	.ticket-title {
+		height: 80rpx;
+		// padding: 0 34rpx;
+		margin: 50rpx 0 26rpx 0;
+		overflow: hidden;
+	
+		&-swiper {
+			// width: calc(100vw - 34px);
+			height: 100%;
+	
+			&-item {
+				border-radius: 6rpx;
+				margin: 11rpx 17rpx;
+				height: 58rpx;
+				background-color: rgba(255,255,255,0.4);
+				color: #CF59EB;
+				font-size: 24rpx;
+				transition: 0.1s;
+				text {
+					padding: 0 20rpx;
+				}
+			}
+	
+			.action {
+				border-radius: 6rpx;
+				transition: 0.1s;
+				margin: 0 17rpx;
+				height: 80rpx;
+				font-size: 26rpx;
+				color: #fff;
+				background: linear-gradient(122deg, #906FED 0%, #76ABFC 100%);
+				box-shadow: 0px 2px 5px 0px rgba(87,96,205,1);
+			}
+		}
+	}
+	
 	// 盲票
 	.ticket {
-		height: 37vh;
+		height: 36.6vh;
 		position: relative;
 
 		&-bgc {
 			position: absolute;
-			top: 77%;
+			top: 22vh;
 			width: 100%;
 			text-align: center;
 
 			image {
 				margin: 0 auto;
-				height: 156rpx;
-				width: 570rpx;
+				height: 216rpx;
+				width: 100%;
 			}
 
 		}
@@ -796,177 +832,102 @@
 
 				&-box {
 					position: absolute;
-					// bottom: 100rpx;
-					bottom: 20%;
-					width: 380rpx;
-					height: 380rpx;
+					top: 0;
+					width: 404rpx;
+					height: 63%;
 					animation: movePrize 2s linear infinite;
 				}
 			}
 		}
 
 		&-left {
-			width: 100rpx;
-			height: 100rpx;
+			margin: 0 0 0 32rpx;
+			width: 118rpx;
+			height: 118rpx;
 			position: absolute;
-			top: 45%;
+			top: 28%;
 			left: 0;
 			display: table-cell;
 			vertical-align: middle;
 
 			image {
 				display: block;
-				margin: 25rpx auto;
-				width: 45rpx;
-				height: 40rpx;
+				margin: 0 auto;
+				width: 118rpx;
+				height: 118rpx;
 			}
 		}
 
 		&-right {
-			width: 100rpx;
-			height: 100rpx;
+			margin: 0 32rpx 0 0;
+			width: 118rpx;
+			height: 118rpx;
 			position: absolute;
-			top: 45%;
+			top: 28%;
 			right: 0;
 			display: table-cell;
 			vertical-align: middle;
 
 			image {
 				display: block;
-				margin: 25rpx auto;
-				width: 45rpx;
-				height: 40rpx;
+				margin: 0 auto;
+				width: 118rpx;
+				height: 118rpx;
 				transform: rotate(180deg);
 			}
 		}
 	}
 
-	// 投诉建议
-	.proposal {
-		position: relative;
-		height: 66rpx;
-		margin-bottom: 30rpx;
-
-		&-time {
-			position: absolute;
-			left: 30rpx;
-			bottom: 0;
-			flex-direction: column;
-			align-items: flex-start;
-
+	// 盲票价格
+	.ticket-price {
+		height: 44rpx;
+	
+		&-checkbox {
+			width: 44rpx;
+			height: 44rpx;
+			background-color: #fff;
+			border-radius: 50%;
+			overflow: hidden;
+			margin-right: 20rpx;
+	
 			image {
-				width: 140rpx;
-				height: 78rpx;
-				margin-bottom: 12rpx;
-				animation: scaleTime 3s linear infinite;
-			}
-
-			.time {
-				animation: moveTime 0.5s linear infinite;
-
-				::v-deep .u-count-down__text {
-					line-height: 30rpx;
-					font-size: 30rpx;
-					font-family: YouSheBiaoTiHei;
-					font-weight: 400;
-					color: #FFFFFF;
-				}
+				width: 44rpx;
+				height: 44rpx;
 			}
 		}
-
-		&-progress {
-			position: absolute;
-			bottom: 0;
-			width: 140rpx;
-		}
-
-		&-tip {
-			display: flex;
-			align-items: center;
-			position: absolute;
-			right: 0;
-			bottom: 0;
-			width: 212rpx;
-			height: 66rpx;
-
-			image {
-				position: absolute;
-				right: 0;
-				bottom: 0;
-				width: 212rpx;
-				height: 66rpx;
-			}
-
-			text {
-				position: absolute;
-				right: 16rpx;
-				font-size: 40rpx;
-				font-family: YouSheBiaoTiHei;
-				font-weight: 400;
-				color: #FFFFFF;
+	
+		&-amt {
+			font-family: YouSheBiaoTiHei-Regular, YouSheBiaoTiHei;
+			// font-weight: 400;
+			// align-items: flex-end;
+			color: $uni-text-color;
+			margin-right: 20rpx;
+			-webkit-text-stroke: 2px #FFFFFF;
+			text-stroke: 2px #FFFFFF;
+			letter-spacing: -4rpx;
+	
+			.num {
+				font-size: 56rpx;
+				line-height: 56rpx;
 			}
-		}
-	}
-
-	// 中奖概率
-	.chance {
-		justify-content: flex-start;
-		height: 44rpx;
-		margin: 0 34rpx 26rpx;
-		background-color: rgba(000, 000, 000, .36);
-		border-radius: 22rpx;
-		color: #FFFFFF;
-		font-family: YouSheBiaoTiHei;
-		font-size: 14px;
-
-		&-title {
-			margin-left: 8rpx;
-		}
-
-		&-hitRate {
-			flex: 1;
-			justify-content: space-evenly;
-
-			&-content {
-
-				image {
-					width: 56rpx;
-					height: 50rpx;
-				}
+	
+			.txt {
+				font-size: 36rpx;
+				line-height: 42rpx;
+				-webkit-text-stroke: 1px #FFFFFF;
+				letter-spacing: -10rpx;
 			}
 		}
-	}
-
-	// 盲票名称轮播
-	.ticket-title {
-		height: 66rpx;
-		padding: 0 34rpx;
-		margin: 30rpx 0;
-		overflow: hidden;
-		// margin: 0 34rpx;
-
-		&-swiper {
-			width: calc(100vw - 34px);
-			height: 100%;
-
-			&-item {
-				height: 100%;
-				transform: skew(20deg);
-				background: rgba(255, 169, 0, 0.16);
-
-				margin: 0 17rpx;
+	
+		&-discount {
+			align-items: flex-end;
+	
+			.num {
+				line-height: 26rpx;
+				font-size: 26rpx;
+				font-weight: 400;
+				text-decoration: line-through;
 				color: #fff;
-				font-size: 34rpx;
-
-				text {
-					// padding: 0 20rpx;
-					transform: skew(-20deg);
-				}
-			}
-
-			.action {
-				background: #FFAE00;
-				box-shadow: 0px 3px 3px 0px rgba(220, 145, 107, 0.57);
 			}
 		}
 	}
@@ -974,67 +935,79 @@
 	// 刮开盲票
 	.ticket-btn {
 		justify-content: space-between;
-		height: 20vh;
-		padding: 0 30rpx;
+		// height: 20vh;
+		width: 100vw;
+		padding: 0 46rpx;
+		position: fixed;
+    bottom: 110rpx;
+		padding-bottom: constant(safe-area-inset-bottom);
+		padding-bottom: env(safe-area-inset-bottom);
 
 		&-left {
 			flex-direction: column;
 
 			image {
-				width: 142rpx;
-				height: 142rpx;
+				width: 94rpx;
+				height: 90rpx;
 				margin-bottom: 16rpx;
 			}
 
 			&__title {
 				line-height: 30rpx;
-				font-size: 30rpx;
+				font-size: 26rpx;
 				font-family: YouSheBiaoTiHei;
 				font-weight: 400;
-				color: #666;
+				color: #555;
 			}
 		}
 
 		&-center {
 			position: relative;
-			flex-direction: column;
+			// flex-direction: column;
 			height: 100%;
 
 			.image-wrap {
-				position: absolute;
-				width: 310rpx;
-				height: 90%;
-				border-radius: 50%;
-				overflow: hidden;
-				box-shadow: 2px 2px 10px rgba(255, 189, 24, .8), -2px -2px 10px rgba(255, 189, 24, .8), 2px -2px 10px rgba(255, 189, 24, .8), -2px 2px 10px rgba(255, 189, 24, .8);
+				// position: absolute;
+				// width: 400rpx;
+				height: 194rpx;
 
 				.btn {
-					width: 310rpx;
+					width: 400rpx;
 					height: 100%;
 				}
 
 				.shadow {
 					position: absolute;
-					width: 310rpx;
-					height: 130%;
-					left: 0;
-					animation: shadowMove 1.5s linear infinite;
+					overflow: hidden;
+					width: 324rpx;
+					height: 50%;
+					margin-bottom: 24rpx;
+					
+					
+					image {
+						position: absolute;
+						width: 324rpx;
+						height: 130%;
+						left: 0;
+						animation: shadowMove 1.5s linear infinite;
+					}
 				}
 			}
 
 			&-wrap {
-				width: 300rpx;
+				// width: 400rpx;
 				position: absolute;
 				animation: scaleBtn 1.5s linear infinite;
+				padding-bottom: 24rpx;
 
 				&__title {
-					width: 300rpx;
-					text-align: center;
-					font-size: 84rpx;
+					// width: 400rpx;
+					// text-align: center;
+					font-size: 64rpx;
 					font-family: YouSheBiaoTiHei;
 					font-weight: 400;
 					color: #FFFFFF;
-					line-height: 72rpx;
+					line-height: 74rpx;
 					animation: shadowBtn 1.5s linear infinite;
 				}
 			}
@@ -1044,71 +1017,21 @@
 			flex-direction: column;
 
 			image {
-				width: 142rpx;
-				height: 142rpx;
+				width: 94rpx;
+				height: 90rpx;
 				margin-bottom: 16rpx;
 			}
 
 			&__title {
 				line-height: 30rpx;
-				font-size: 30rpx;
+				font-size: 26rpx;
 				font-family: YouSheBiaoTiHei;
 				font-weight: 400;
-				color: #666;
+				color: #555;
 			}
 		}
 	}
 
-	// 盲票价格
-	.ticket-price {
-		height: 44rpx;
-
-		&-checkbox {
-			width: 44rpx;
-			height: 44rpx;
-			background-color: #fff;
-			border-radius: 50%;
-			overflow: hidden;
-			margin-right: 20rpx;
-
-			image {
-				width: 44rpx;
-				height: 44rpx;
-			}
-		}
-
-		&-amt {
-			height: 44rpx;
-			font-family: YouSheBiaoTiHei;
-			font-weight: 400;
-			align-items: flex-end;
-			color: #FE9E48;
-			margin-right: 20rpx;
-
-			.num {
-				font-size: 56rpx;
-				line-height: 40rpx;
-			}
-
-			.txt {
-				line-height: 36rpx;
-				font-size: 40rpx;
-			}
-		}
-
-		&-discount {
-			height: 44rpx;
-			align-items: flex-end;
-
-			.num {
-				line-height: 26rpx;
-				font-size: 26rpx;
-				text-decoration: line-through;
-				font-style: italic;
-				color: #FFAE00;
-			}
-		}
-	}
 
 	// 奖品移动动画
 	@keyframes movePrize {

+ 265 - 253
src/pages/login/code.vue

@@ -1,275 +1,287 @@
 <template>
-	<view class="container">
-		<!-- #ifdef MP-ALIPAY -->
-		<u-navbar title="手机验证码登录" :border="true" :placeholder="true" :autoBack="true" leftIconSize="0" />
-		<!-- #endif -->
-		<!-- #ifdef MP-WEIXIN -->
-		<u-navbar title="手机验证码登录" :border="true" :placeholder="true" :autoBack="true" />
-		<!-- #endif -->
-		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
-		<view v-if="pagesNum > 1">
-			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="手机验证码登录" />
-		</view>
-		<view v-else>
-			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" title="手机验证码登录">
-				<view class="nav-left flex" slot="left" @click="$toIndex()">
-					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
-				</view>
-			</u-navbar>
-		</view>
-		<!-- #endif -->
-		<view class="container">
-			<view class="login">
-				<view class="login-title">验证码登录</view>
-				<view class="login-input pat">
-					<u-input placeholder="请输入手机号" type="number" v-model="mobile" border="none" clearable
-						@blur="changeNumber" />
-				</view>
-				<view class="login-input">
-					<u-input placeholder="请输入短信验证码" type="number" v-model="code" clearable @blur="changeCode">
-						<template slot="suffix">
-							<u-code ref="uCode" @change="codeChange" seconds="60" changeText="Xs"></u-code>
-							<u-button @click="getCode" :text="tips" type="default" size="mini"></u-button>
-						</template>
-					</u-input>
-				</view>
-				<u-button @click="login" text="登录" shape="circle" :loading="loading"></u-button>
-			</view>
-		</view>
-		<auth :auth-show="authShow" @close="authClose" />
-	</view>
+  <view class="container">
+    <!-- #ifdef MP-ALIPAY -->
+    <u-navbar title="手机验证码登录" :border="true" :placeholder="true" :autoBack="true" leftIconSize="0" />
+    <!-- #endif -->
+    <!-- #ifdef MP-WEIXIN -->
+    <u-navbar title="手机验证码登录" :border="true" :placeholder="true" :autoBack="true" />
+    <!-- #endif -->
+    <!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
+    <view v-if="pagesNum > 1">
+      <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="手机验证码登录" />
+    </view>
+    <view v-else>
+      <u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" title="手机验证码登录">
+        <view class="nav-left flex" slot="left" @click="$toIndex()">
+          <u-icon name="arrow-left" size="20" color="#333"></u-icon>
+        </view>
+      </u-navbar>
+    </view>
+    <!-- #endif -->
+    <view class="bg"></view>
+
+    <view class="wrap">
+      <view class="login">
+        <view class="login-title">验证码登录</view>
+        <view class="login-input pat">
+          <u-input placeholder="请输入手机号" type="number" prefixIcon="account" prefixIconStyle="font-size: 22px;color: #999" v-model="mobile" clearable @blur="changeNumber" />
+        </view>
+        <view class="login-input" style="margin-bottom: 90rpx;">
+          <u-input placeholder="请输入短信验证码" type="number" prefixIcon="lock-open" prefixIconStyle="font-size: 22px;color: #999"  v-model="code" clearable @blur="changeCode">
+            <template slot="suffix">
+              <u-code ref="uCode" @change="codeChange" seconds="60" changeText="Xs"></u-code>
+              <u-button @click="getCode" :text="tips" type="default" size="mini"></u-button>
+            </template>
+          </u-input>
+        </view>
+        <u-button @click="login" text="登录" shape="circle" :loading="loading"></u-button>
+      </view>
+    </view>
+
+    <auth :auth-show="authShow" @close="authClose" />
+  </view>
 </template>
 
 <script>
-	import $http from '@/utils/request.js'
-	import appId from '@/config/appId.js'
-	import Auth from '../../components/auth/auth.vue'
-	export default {
-		components: {
-			Auth
-		},
-		data() {
-			return {
-				loading: false,
-				mobile: '',
-				codeId: '',
-				code: '',
-				tips: '',
-				authShow: false,
-				pagesNum: "",
-			};
-		},
-		onShow() {
-			this.pagesNum = getCurrentPages().length
-		},
-		methods: {
-			toIndex() {
-				uni.switchTab({
-					url: `/pages/index/index`
-				})
-			},
-			codeChange(text) {
-				this.tips = text;
-			},
+import $http from '@/utils/request.js'
+import appId from '@/config/appId.js'
+import Auth from '../../components/auth/auth.vue'
+export default {
+  components: {
+    Auth
+  },
+  data() {
+    return {
+      loading: false,
+      mobile: '',
+      codeId: '',
+      code: '',
+      tips: '',
+      authShow: false,
+      pagesNum: "",
+    };
+  },
+  onShow() {
+    this.pagesNum = getCurrentPages().length
+  },
+  methods: {
+    toIndex() {
+      uni.switchTab({
+        url: `/pages/index/index`
+      })
+    },
+    codeChange(text) {
+      this.tips = text;
+    },
 
-			getCode() {
-				const rule = /^[1][0-9][0-9]{9}$/
-				if (!this.mobile) {
-					uni.$u.toast('请输入手机号');
-					return
-				}
-				if (!rule.test(this.mobile)) {
-					uni.$u.toast('请输入正确的手机号');
-					return
-				}
-				if (this.$refs.uCode.canGetCode) {
+    getCode() {
+      const rule = /^[1][0-9][0-9]{9}$/
+      if (!this.mobile) {
+        uni.$u.toast('请输入手机号');
+        return
+      }
+      if (!rule.test(this.mobile)) {
+        uni.$u.toast('请输入正确的手机号');
+        return
+      }
+      if (this.$refs.uCode.canGetCode) {
 
-					// 这里此提示会被this.start()方法中的提示覆盖
-					uni.$u.toast('验证码已发送');
-					// 通知验证码组件内部开始倒计时
-					this.$refs.uCode.start();
-					$http.post('/api/v1/mp/sms/sendSmsCode', {
-						mobile: this.mobile,
-						noToken: true
-					}).then(res => {
-						if (res.code === 0 && res.data) {
-							this.codeId = res.data
-						}
-					})
-				} else {
-					uni.$u.toast('倒计时结束后再发送');
-				}
-			},
+        // 这里此提示会被this.start()方法中的提示覆盖
+        uni.$u.toast('验证码已发送');
+        // 通知验证码组件内部开始倒计时
+        this.$refs.uCode.start();
+        $http.post('/api/v1/mp/sms/sendSmsCode', {
+          mobile: this.mobile,
+          noToken: true
+        }).then(res => {
+          if (res.code === 0 && res.data) {
+            this.codeId = res.data
+          }
+        })
+      } else {
+        uni.$u.toast('倒计时结束后再发送');
+      }
+    },
 
-			changeNumber(e) {
-				this.mobile = e
-			},
-			changeCode(e) {
-				this.code = e
-			},
+    changeNumber(e) {
+      this.mobile = e
+    },
+    changeCode(e) {
+      this.code = e
+    },
 
-			login() {
-				let _this = this
-				if (!_this.mobile) {
-					uni.$u.toast('请输入手机号');
-					return
-				}
-				const rule = /^[1][0-9][0-9]{9}$/
-				if (!rule.test(_this.mobile)) {
-					uni.$u.toast('请输入正确的手机号');
-					return
-				}
-				if (!_this.code) {
-					uni.$u.toast('请输入验证码');
-					return
-				}
-				_this.loading = true
-				$http.post('/auth/mobile', {
-					mobile: _this.mobile,
-					messageId: _this.codeId,
-					code: _this.code,
-					identity: 1,
-					noToken: true
-				}).then(res => {
-					_this.loading = false
-					if (res.code === 0 && res.token) {
-						// #ifdef MP-WEIXIN || MP-ALIPAY
-						uni.setStorageSync('token', res.token)
-						_this.getBaseInfo()
-						// #endif
-						// #ifdef H5 
-						uni.$u.toast('登录成功');
-						uni.setStorageSync('token', res.token)
-						_this.getInfoAvatar()
-						// #endif
-					}
-				}).catch(() => {
-					_this.loading = false
-				})
-			},
-			
-			getInfoAvatar() {
-				$http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
-					if(res.code == 0) {
-						//判断有没有头像
-						// if(res.data.avatar) {
-							let Pages = getCurrentPages()
-							setTimeout(() => {
-								if(this.pagesNum > 2 && (Pages[this.pagesNum-3].route != "pages/login/index")) {
-									uni.navigateBack({
-										delta: 2
-									})
-								}else {
-									this.toIndex()
-								}
-							}, 500)
-						// }else{
-						// 	uni.reLaunch({
-						// 		url: '/packageOther/avatar/index'
-						// 	})
-						// }
-					}
-				})
-			},
+    login() {
+      let _this = this
+      if (!_this.mobile) {
+        uni.$u.toast('请输入手机号');
+        return
+      }
+      const rule = /^[1][0-9][0-9]{9}$/
+      if (!rule.test(_this.mobile)) {
+        uni.$u.toast('请输入正确的手机号');
+        return
+      }
+      if (!_this.code) {
+        uni.$u.toast('请输入验证码');
+        return
+      }
+      _this.loading = true
+      $http.post('/auth/mobile', {
+        mobile: _this.mobile,
+        messageId: _this.codeId,
+        code: _this.code,
+        identity: 1,
+        noToken: true
+      }).then(res => {
+        _this.loading = false
+        if (res.code === 0 && res.token) {
+          // #ifdef MP-WEIXIN || MP-ALIPAY
+          uni.setStorageSync('token', res.token)
+          _this.getBaseInfo()
+          // #endif
+          // #ifdef H5 
+          uni.$u.toast('登录成功');
+          uni.setStorageSync('token', res.token)
+          _this.getInfoAvatar()
+          // #endif
+        }
+      }).catch(() => {
+        _this.loading = false
+      })
+    },
 
-			getBaseInfo() {
-				$http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
-					uni.hideLoading();
-					if (res.code == 0) {
-						uni.setStorageSync('userInfo', res.data)
-						// #ifdef MP-ALIPAY
-						if (res.data.aliuserId) {
-							uni.$u.toast('登录成功');
-							setTimeout(() => {
-								uni.navigateBack({
-									delta: 2
-								})
-							}, 500)
-						} else {
-							this.authShow = true
-						}
-						// #endif
-						// #ifndef MP-ALIPAY
-						if (res.data.openId) {
-							uni.$u.toast('登录成功');
-							setTimeout(() => {
-								uni.navigateBack({
-									delta: 2
-								})
-							}, 500)
-						} else {
-							this.authShow = true
-						}
-						// #endif
-					}
-				}).catch(() => {
-					uni.hideLoading();
-				})
-			},
+    getInfoAvatar() {
+      $http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
+        if (res.code == 0) {
+          //判断有没有头像
+          // if(res.data.avatar) {
+          let Pages = getCurrentPages()
+          setTimeout(() => {
+            if (this.pagesNum > 2 && (Pages[this.pagesNum - 3].route != "pages/login/index")) {
+              uni.navigateBack({
+                delta: 2
+              })
+            } else {
+              this.toIndex()
+            }
+          }, 500)
+          // }else{
+          // 	uni.reLaunch({
+          // 		url: '/packageOther/avatar/index'
+          // 	})
+          // }
+        }
+      })
+    },
 
-			authClose() {
-				this.authShow = false
-				setTimeout(() => {
-					uni.navigateBack({
-						delta: 2
-					})
-					// uni.reLaunch({
-					// 	url: '/packageOther/avatar/index'
-					// })
-				}, 500)
-			},
-		}
-	}
+    getBaseInfo() {
+      $http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
+        uni.hideLoading();
+        if (res.code == 0) {
+          uni.setStorageSync('userInfo', res.data)
+          // #ifdef MP-ALIPAY
+          if (res.data.aliuserId) {
+            uni.$u.toast('登录成功');
+            setTimeout(() => {
+              uni.navigateBack({
+                delta: 2
+              })
+            }, 500)
+          } else {
+            this.authShow = true
+          }
+          // #endif
+          // #ifndef MP-ALIPAY
+          if (res.data.openId) {
+            uni.$u.toast('登录成功');
+            setTimeout(() => {
+              uni.navigateBack({
+                delta: 2
+              })
+            }, 500)
+          } else {
+            this.authShow = true
+          }
+          // #endif
+        }
+      }).catch(() => {
+        uni.hideLoading();
+      })
+    },
+
+    authClose() {
+      this.authShow = false
+      setTimeout(() => {
+        uni.navigateBack({
+          delta: 2
+        })
+        // uni.reLaunch({
+        // 	url: '/packageOther/avatar/index'
+        // })
+      }, 500)
+    },
+  }
+}
 </script>
 
 <style lang="scss" scoped>
-	.container {
-		height: 100vh;
-		width: 100%;
-		overflow: hidden;
-	}
+.bg {
+  height: 842rpx;
+  background: linear-gradient(180deg, #8e51f7 0%, rgba(142, 81, 247, 0) 100%);
+}
+
+.container {
+  height: 100vh;
+  width: 100%;
+  overflow: hidden;
+  padding: 0;
+}
 
-	.login {
-		padding: 70rpx 70rpx 0;
+.wrap {
+  margin: 70rpx 30rpx;
+  background: #ffffff;
+  box-shadow: 0px 4rpx 50rpx 0px rgba(0, 0, 0, 0.12);
+  border-radius: 20rpx;
+	margin-top: -772rpx;
 
-		&-title {
-			font-size: 56rpx;
-			color: #333;
-			line-height: 80rpx;
-			margin-bottom: 60rpx;
-		}
+  .login {
+    padding: 70rpx 70rpx 398rpx;
 
-		&-input {
-			display: flex;
-			align-items: center;
-			margin-bottom: 50rpx;
-			height: 80rpx;
-			background-color: #EDEDED !important;
-			border-radius: 100rpx;
-			padding: 10rpx 48rpx;
+    &-title {
+      font-size: 32rpx;
+      color: #333;
+      line-height: 80rpx;
+      margin-bottom: 60rpx;
+    }
 
-			::v-deep .u-input__content__field-wrapper__field {
-				background: none;
-			}
+    &-input {
+      display: flex;
+      align-items: center;
+			margin-bottom: 32rpx;
+      height: 80rpx;
+			border-bottom: 2rpx solid rgba(51,51,51,0.12);
 
-			::v-deep .u-border {
-				border: none;
-			}
-		}
+      ::v-deep .u-input__content__field-wrapper__field {
+        background: none;
+				border-radius: 0px;
+      }
 
-		.pat {
-			padding: 10rpx 66rpx;
-		}
+      ::v-deep .u-border {
+        border: none;
+      }
+    }
+		
 
-		::v-deep .u-button {
-			width: 100%;
-			background-color: $uni-bg-color;
-			color: #fff;
-			border-radius: 32px;
-		}
+    ::v-deep .u-button {
+      width: 100%;
+      background-color: $uni-bg-color;
+      color: #fff;
+      border-radius: 4px;
+    }
 
-		::v-deep .u-button--success {
-			background-color: none;
-		}
-	}
+    ::v-deep .u-button--success {
+      background-color: none;
+    }
+  }
+}
 </style>

+ 330 - 330
src/pages/login/index.vue

@@ -1,356 +1,356 @@
 <template>
-	<view class="container">
-		<!-- #ifdef MP-ALIPAY -->
-		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="登录" leftIconSize="0"></u-navbar>
-		<!-- #endif -->
-		<!-- #ifdef MP-WEIXIN -->
-		<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="登录"></u-navbar>
-		<!-- #endif -->
-		<!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
-		<view v-if="pagesNum > 1">
-			<u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="登录" />
-		</view>
-		<view v-else>
-			<u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" title="登录">
-				<view class="nav-left flex" slot="left" @click="$toIndex()">
-					<u-icon name="arrow-left" size="20" color="#333"></u-icon>
-				</view>
-			</u-navbar>
-		</view>
-		<!-- #endif -->
+  <view class="container">
+    <!-- #ifdef MP-ALIPAY -->
+    <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="登录" leftIconSize="0"></u-navbar>
+    <!-- #endif -->
+    <!-- #ifdef MP-WEIXIN -->
+    <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="登录"></u-navbar>
+    <!-- #endif -->
+    <!-- #ifndef MP-WEIXIN || MP-ALIPAY -->
+    <view v-if="pagesNum > 1">
+      <u-navbar :placeholder="true" bgColor="#fff" :autoBack="true" title="登录" />
+    </view>
+    <view v-else>
+      <u-navbar leftIconSize="0" :placeholder="true" bgColor="#fff" title="登录">
+        <view class="nav-left flex" slot="left" @click="$toIndex()">
+          <u-icon name="arrow-left" size="20" color="#333"></u-icon>
+        </view>
+      </u-navbar>
+    </view>
+    <!-- #endif -->
+    <view class="bg">
+    </view>
+    <view class="wrap">
 
-		<view class="flex login">
-			<view class="flex login-image">
-				<image src="../../static/public/logo.png" mode="scaleToFill"></image>
-				<view class="login-image-txt" v-if="appId == 2">码上快购</view>
-				<view class="login-image-txt" v-else>盲票</view>
-			</view>
-			
-			<!-- #ifdef MP-ALIPAY -->
-			<view class="login-btn">
-				<button open-type="getAuthorize" @getAuthorize="onGetAuthorize" scope='phoneNumber'>支付宝登录</button>
-			</view>
-			<view class="flex login-code" @click="toCode">手机号登录/注册</view>
-			<!-- #endif -->
-			<!-- #ifdef MP-WEIXIN -->
-			<view class="login-btn">
-				<button open-type="getPhoneNumber" @getphonenumber="getPhoneNumber" v-if="checked">微信登录</button>
-				<button @click="getPhoneNumber" v-else>微信登录</button>
-			</view>
-			<view class="flex login-code" @click="toCode">手机号登录/注册</view>
-			<!-- #endif -->
-			<!-- #ifdef H5 -->
-			<view class="login-btn">
-				<button type="button" @click="toCode">手机号登录/注册</button>
-			</view>
-			<!-- #endif -->
-		</view>
+      <view class="flex login">
+        <view class="flex login-image">
+          <image src="../../static/public/logo.png" mode="scaleToFill"></image>
+          <view class="login-image-txt" v-if="appId == 2">码上快购</view>
+          <view class="login-image-txt" v-else>盲票</view>
+        </view>
 
-		<view class="footer-fixed">
-			<view class="flex about">
-				<view class="checked">
-					<u-checkbox-group>
-						<u-checkbox :value="checked" :checked="checked" size="20" shape="circle" activeColor="#F9822C"
-							@change="changeChecked"></u-checkbox>
-					</u-checkbox-group>
-				</view>
-				<view class="txt">登录代表您已同意</view>
-				<navigator hover-class="none" class="txt-about" url="/packageOther/about/protect">《用户使用协议》</navigator>
-				<navigator hover-class="none" class="txt-about" url="/packageOther/about/conceal">、《隐私保护声明》</navigator>
-			</view>
-		</view>
+        <!-- #ifdef MP-ALIPAY -->
+        <view class="login-btn">
+          <button open-type="getAuthorize" @getAuthorize="onGetAuthorize" scope='phoneNumber'>支付宝登录</button>
+        </view>
+        <view class="flex login-code" @click="toCode">手机号登录/注册</view>
+        <!-- #endif -->
+        <!-- #ifdef MP-WEIXIN -->
+        <view class="login-btn">
+          <button open-type="getPhoneNumber" @getphonenumber="getPhoneNumber" v-if="checked">微信登录</button>
+          <button @click="getPhoneNumber" v-else>微信登录</button>
+        </view>
+        <view class="flex login-code" @click="toCode">手机号登录/注册</view>
+        <!-- #endif -->
+        <!-- #ifdef H5 -->
+        <view class="login-btn">
+          <button type="button" @click="toCode">手机号登录/注册</button>
+        </view>
+        <!-- #endif -->
+      </view>
+      <view class="flex about">
+        <view class="checked">
+          <u-checkbox-group>
+            <u-checkbox :value="checked" :checked="checked" size="20" shape="circle" activeColor="#8E51F7" @change="changeChecked"></u-checkbox>
+          </u-checkbox-group>
+        </view>
+        <view class="txt">登录表示同意</view>
+        <navigator hover-class="none" class="txt-about" url="/packageOther/about/protect">《用户使用协议》</navigator>
+        <navigator hover-class="none" class="txt-about" url="/packageOther/about/conceal">、《隐私保护声明》</navigator>
+      </view>
+    </view>
 
-		<auth :auth-show="authShow" :auth-token="token" @close="authClose" @fail="fail" />
-	</view>
+    <auth :auth-show="authShow" :auth-token="token" @close="authClose" @fail="fail" />
+  </view>
 </template>
 
 <script>
-	import $http from '@/utils/request.js'
-	import log from '@/common/log.js'
-	import appId from '@/config/appId.js'
-	import Auth from '../../components/auth/auth.vue'
-	export default {
-		components: {
-			Auth
-		},
-		data() {
-			return {
-				authShow: false,
-				token: '',
-				checked: false,
-				appId: 1,
-				pagesNum: '',
-			};
-		},
-		onShow() {
-			this.pagesNum = getCurrentPages().length
-		},
-		created() {
-			this.appId = appId
-		},
-		methods: {
-			getPhoneNumber(e) {
-				let _this = this
-				if (!_this.checked) {
-					uni.$u.toast('请阅读并勾选底部协议');
-					return
-				}
-				if (e.detail.errMsg == 'getPhoneNumber:ok') {
-					uni.showLoading({
-						title: '登录中'
-					});
-					if (e.detail & e.detail.code) {
-						$http.post('/api/v1/mp/user/wxauth/mobile', {
-							...e.detail,
-							identity: 1,
-							noToken: true,
-							appSource: appId,
-						}).then(res => {
-							uni.hideLoading();
-							if (res.code == 0) {
-								uni.setStorageSync('token', res.token)
-								_this.getBaseInfo()
-							} else {
-								uni.getSystemInfo({
-									success(res) {
-										log.info(
-											`错误信息:===基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system }.===`
-										)
-									}
-								})
-							}
-						}).catch(() => {
-							uni.hideLoading();
-							uni.getSystemInfo({
-								success(res) {
-									log.info(
-										`错误信息:===基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system }.===`
-									)
-								}
-							})
-						})
-					} else {
-						uni.login({
-							success(res) {
-								$http.post('/api/v1/mp/user/wxauth/mobile', {
-									...e.detail,
-									loginCode: res.code,
-									identity: 1,
-									noToken: true,
-									appSource: appId,
-								}).then(res => {
-									uni.hideLoading();
-									if (res.code == 0) {
-										uni.setStorageSync('token', res.token)
-										_this.getBaseInfo()
-									} else {
-										uni.getSystemInfo({
-											success(res) {
-												log.info(
-													`错误信息:===基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system }.===`
-												)
-											}
-										})
-									}
-								}).catch(() => {
-									uni.hideLoading();
-									uni.getSystemInfo({
-										success(res) {
-											log.info(
-												`错误信息:===基础库:${ res.SDKVersion },设备:${ res.model }-${ res.system }.===`
-											)
-										}
-									})
-								})
-							}
-						})
-					}
-				}
-			},
-			//拒绝授权
-			fail() {
-				this.authShow = false
-			},
-			// 关闭授权
-			authClose() {
-				this.authShow = false
-				setTimeout(() => {
-					uni.navigateBack({
-						delta: 1
-					})
-					// uni.reLaunch({
-					// 	url: '/packageOther/avatar/index'
-					// })
-				}, 500)
-			},
+import $http from '@/utils/request.js'
+import log from '@/common/log.js'
+import appId from '@/config/appId.js'
+import Auth from '../../components/auth/auth.vue'
+export default {
+  components: {
+    Auth
+  },
+  data() {
+    return {
+      authShow: false,
+      token: '',
+      checked: false,
+      appId: 1,
+      pagesNum: '',
+    };
+  },
+  onShow() {
+    this.pagesNum = getCurrentPages().length
+  },
+  created() {
+    this.appId = appId
+  },
+  methods: {
+    getPhoneNumber(e) {
+      let _this = this
+      if (!_this.checked) {
+        uni.$u.toast('请阅读并勾选底部协议');
+        return
+      }
+      if (e.detail.errMsg == 'getPhoneNumber:ok') {
+        uni.showLoading({
+          title: '登录中'
+        });
+        if (e.detail & e.detail.code) {
+          $http.post('/api/v1/mp/user/wxauth/mobile', {
+            ...e.detail,
+            identity: 1,
+            noToken: true,
+            appSource: appId,
+          }).then(res => {
+            uni.hideLoading();
+            if (res.code == 0) {
+              uni.setStorageSync('token', res.token)
+              _this.getBaseInfo()
+            } else {
+              uni.getSystemInfo({
+                success(res) {
+                  log.info(
+                    `错误信息:===基础库:${res.SDKVersion},设备:${res.model}-${res.system}.===`
+                  )
+                }
+              })
+            }
+          }).catch(() => {
+            uni.hideLoading();
+            uni.getSystemInfo({
+              success(res) {
+                log.info(
+                  `错误信息:===基础库:${res.SDKVersion},设备:${res.model}-${res.system}.===`
+                )
+              }
+            })
+          })
+        } else {
+          uni.login({
+            success(res) {
+              $http.post('/api/v1/mp/user/wxauth/mobile', {
+                ...e.detail,
+                loginCode: res.code,
+                identity: 1,
+                noToken: true,
+                appSource: appId,
+              }).then(res => {
+                uni.hideLoading();
+                if (res.code == 0) {
+                  uni.setStorageSync('token', res.token)
+                  _this.getBaseInfo()
+                } else {
+                  uni.getSystemInfo({
+                    success(res) {
+                      log.info(
+                        `错误信息:===基础库:${res.SDKVersion},设备:${res.model}-${res.system}.===`
+                      )
+                    }
+                  })
+                }
+              }).catch(() => {
+                uni.hideLoading();
+                uni.getSystemInfo({
+                  success(res) {
+                    log.info(
+                      `错误信息:===基础库:${res.SDKVersion},设备:${res.model}-${res.system}.===`
+                    )
+                  }
+                })
+              })
+            }
+          })
+        }
+      }
+    },
+    //拒绝授权
+    fail() {
+      this.authShow = false
+    },
+    // 关闭授权
+    authClose() {
+      this.authShow = false
+      setTimeout(() => {
+        uni.navigateBack({
+          delta: 1
+        })
+        // uni.reLaunch({
+        // 	url: '/packageOther/avatar/index'
+        // })
+      }, 500)
+    },
 
-			changeChecked(e) {
-				this.checked = e
-			},
+    changeChecked(e) {
+      this.checked = e
+    },
 
-			toCode() {
-				if (!this.checked) {
-					uni.$u.toast('请阅读并勾选底部协议');
-					return
-				}
-				uni.navigateTo({
-					url: '/pages/login/code'
-				})
-			},
+    toCode() {
+      if (!this.checked) {
+        uni.$u.toast('请阅读并勾选底部协议');
+        return
+      }
+      uni.navigateTo({
+        url: '/pages/login/code'
+      })
+    },
 
-			getBaseInfo() {
-				$http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
-					uni.hideLoading();
-					if (res.code == 0) {
-						uni.setStorageSync('userInfo', res.data)
-						if (res.data.openId) {
-							uni.$u.toast('登录成功');
-							setTimeout(() => {
-								uni.navigateBack({
-									delta: 1
-								})
-							}, 500)
-						} else {
-							this.authShow = true
-						}
-					}
-				}).catch(() => {
-					uni.hideLoading();
-				})
-			},
-			getBaseInfoAli() {
-				$http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
-					uni.hideLoading();
-					if (res.code == 0) {
-						uni.setStorageSync('userInfo', res.data)
-						if (res.data.aliuserId) {
-							uni.$u.toast('登录成功');
-							setTimeout(() => {
-								uni.navigateBack({
-									delta: 1
-								})
-							}, 500)
-						} else {
-							this.authShow = true
-						}
-					}
-				}).catch(() => {
-					uni.hideLoading();
-				})
-			},
-			onGetAuthorize(e) {
-				let _this = this
-				if (!_this.checked) {
-					uni.$u.toast('请阅读并勾选底部协议');
-					return
-				}
-				my.getPhoneNumber({
-					success: (res) => {
-						uni.showLoading({
-							title: '登录中'
-						});
-						$http.post('/api/v1/mp/user/aliAuth/mobile', {
-							encryptedData: res.response,
-							identity: 1,
-							noToken: true
-						}).then(res => {
-							if (res.code == 0) {
-								uni.setStorageSync('token', res.token)
-								_this.getBaseInfoAli()
-							} else {
-								uni.hideLoading();
+    getBaseInfo() {
+      $http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
+        uni.hideLoading();
+        if (res.code == 0) {
+          uni.setStorageSync('userInfo', res.data)
+          if (res.data.openId) {
+            uni.$u.toast('登录成功');
+            setTimeout(() => {
+              uni.navigateBack({
+                delta: 1
+              })
+            }, 500)
+          } else {
+            this.authShow = true
+          }
+        }
+      }).catch(() => {
+        uni.hideLoading();
+      })
+    },
+    getBaseInfoAli() {
+      $http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
+        uni.hideLoading();
+        if (res.code == 0) {
+          uni.setStorageSync('userInfo', res.data)
+          if (res.data.aliuserId) {
+            uni.$u.toast('登录成功');
+            setTimeout(() => {
+              uni.navigateBack({
+                delta: 1
+              })
+            }, 500)
+          } else {
+            this.authShow = true
+          }
+        }
+      }).catch(() => {
+        uni.hideLoading();
+      })
+    },
+    onGetAuthorize(e) {
+      let _this = this
+      if (!_this.checked) {
+        uni.$u.toast('请阅读并勾选底部协议');
+        return
+      }
+      my.getPhoneNumber({
+        success: (res) => {
+          uni.showLoading({
+            title: '登录中'
+          });
+          $http.post('/api/v1/mp/user/aliAuth/mobile', {
+            encryptedData: res.response,
+            identity: 1,
+            noToken: true
+          }).then(res => {
+            if (res.code == 0) {
+              uni.setStorageSync('token', res.token)
+              _this.getBaseInfoAli()
+            } else {
+              uni.hideLoading();
 
-							}
-						})
-					},
-				})
-			},
-		}
-	}
+            }
+          })
+        },
+      })
+    },
+  }
+}
 </script>
 
 <style lang="scss" scoped>
-	.container {
-		height: 100vh;
-		width: 100%;
-	}
+.container {
+  padding: 0;
+  height: 100vh;
+  width: 100%;
+}
 
-	.login {
-		flex-direction: column;
+.bg {
+  height: 842rpx;
+  background: linear-gradient(180deg, #8e51f7 0%, rgba(142, 81, 247, 0) 100%);
+}
 
-		&-image {
-			flex-direction: column;
-			padding: 128rpx 0 200rpx;
+.wrap {
+  margin: 70rpx 30rpx;
+  background: #ffffff;
+  box-shadow: 0px 4rpx 50rpx 0px rgba(0, 0, 0, 0.12);
+  border-radius: 20rpx;
+  margin-top: -772rpx;
 
-			image {
-				width: 296rpx;
-				height: 296rpx;
-				margin-bottom: 28rpx;
-			}
+  .login {
+    flex-direction: column;
 
-			&-txt {
-				text-align: center;
-				line-height: 40rpx;
-				font-weight: bold;
-				margin-bottom: 20rpx;
-				font-size: 28rpx;
-			}
+    &-image {
+      flex-direction: column;
+      padding: 93rpx 0 84rpx;
 
-		}
+      image {
+        width: 184rpx;
+        height: 184rpx;
+        margin-bottom: 34rpx;
+      }
 
-		&-txt {
-			text-align: center;
-			line-height: 40rpx;
-			font-weight: bold;
-			margin-bottom: 20rpx;
-		}
+      &-txt {
+        text-align: center;
+        line-height: 38rpx;
+        font-weight: 500;
+        margin-bottom: 20rpx;
+        font-size: 32rpx;
+        color: #333;
+      }
+    }
 
-		&-title {
-			text-align: center;
-			font-size: 24rpx;
-			font-weight: normal;
-			margin-bottom: 50rpx;
-		}
+    &-btn {
+      margin-bottom: 58rpx;
 
-		&-btn {
-			margin-bottom: 44rpx;
+      button {
+        width: 550rpx;
+        height: 86rpx;
+        line-height: 86rpx;
+        border-radius: 10rpx;
+        background-color: $uni-btn-color;
+        color: #fff;
+        font-weight: 500;
+        text-align: center;
+        font-size: 30rpx;
+      }
+    }
 
-			button {
-				width: 600rpx;
-				height: 80rpx;
-				line-height: 80rpx;
-				border-radius: 40rpx;
-				background-color: rgba(235, 112, 9, 100);
-				color: rgba(255, 255, 255, 100);
-				text-align: center;
-				font-size: 28rpx;
-			}
-		}
+    &-code {
+      margin-bottom: 150rpx;
+      width: 550rpx;
+      height: 82rpx;
+      line-height: 82rpx;
+      border: 2rpx solid $uni-bg-color;
+      text-align: center;
+      border-radius: 10rpx;
+      font-weight: 500;
+      font-size: 30rpx;
+      color: $uni-btn-color;
+    }
+  }
 
-		&-code {
-			text-align: center;
-			color: rgba(242, 113, 32, 100);
-		}
-	}
+	.about {
+			padding-bottom: 76rpx;
+      font-size: 24rpx;
+			font-weight: 500;
+			color: #999999;
+			line-height: 14px;
 
-	.footer-fixed {
-		position: fixed;
-		bottom: var(--window-bottom);
-		left: 0;
-		right: 0;
-		z-index: 11;
-		background: #fff;
-		// 设置ios刘海屏底部横线安全区域
-		padding-bottom: constant(safe-area-inset-bottom);
-		padding-bottom: env(safe-area-inset-bottom);
-
-		.about {
-			padding: 60rpx 0;
-			font-size: 24rpx;
-
-			.txt-about {
-				color: #007aff;
-			}
-		}
-	}
+      .txt-about {
+        color: $uni-text-color;
+      }
+    }
+}
 </style>

+ 44 - 39
src/pages/lucky/index.vue

@@ -1,11 +1,11 @@
 <template>
 	<view>
 		<view class="lucky"></view>
-		<u-overlay :show="luckyShow" :opacity="0.8" zIndex="100">
+		<u-overlay :show="luckyShow" :opacity="0.3" zIndex="100">
 			<view class="flex luck-warp" @touchmove.prevent.stop>
 				<view class="luck-info">
 					<view class="luck-info-bg">
-						<image src="../../static/lucky/lucky_bg.png" mode="scaleToFill"></image>
+						<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_prize.png" mode="scaleToFill"></image>
 					</view>
 					<view class="luck-info-content flex">
 						<view class="luck-info-content-num">
@@ -23,13 +23,13 @@
 									v-if="infoimg">
 								</image>
 								<image class="img" src="../../static/lucky/lucky_guajiangqu.png" mode="scaleToFill"
-									v-if="info.status == 1">
+									v-if="info.status == 1"></image>
 									<image class="imgone" src="../../static/lucky/lucky_yidong.png"
 										v-else-if="info.status == 2"></image>
 							</view>
 						</view>
 						<view class="luck-info-content-ticket">
-							<image src="../../static/lucky/lucky_piaohao.png" mode="scaleToFill"></image>
+							<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background3.png" mode="scaleToFill"></image>
 							<view class="luck-info-content-ticket-info flex">
 								<view class="title" :class="{ 'action': info.status == 2 }">{{ info.title }}</view>
 								<view class="serialNo" :class="{ 'action': info.status == 2 }">序列号:{{ info.serialNo }}
@@ -416,16 +416,16 @@
 
 				&-num {
 					position: relative;
-					width: 73%;
+					width: 480rpx;
 					height: 8vh;
 					margin-top: 16vh;
 					margin-bottom: 3vh;
 
 					image {
 						position: absolute;
-						top: 4rpx;
+						top: 0rpx;
 						width: 100%;
-						height: 110%;
+						height: 100%;
 					}
 
 
@@ -434,28 +434,28 @@
 				&-img {
 					position: relative;
 					width: 73%;
-					height: 10vh;
+					height: 8vh;
 					background-color: #fff;
 					border-radius: 12rpx;
 
 					&-word {
 						position: absolute;
-						top: 15%;
-						left: 5%;
-						width: 90%;
-						height: 85%;
+						// top: 15%;
+						// left: 5%;
+						width: 100%;
+						height: 100%;
 						overflow: hidden;
 
 						.img {
 							position: absolute;
 							width: 100%;
-							height: 82.6%;
+							height: 100%;
 						}
 
 						.imgtwo {
 							position: absolute;
 							width: 20%;
-							height: 82%;
+							height: 100%;
 							left: -20%;
 							animation: shadowTwoMove 0.5s linear infinite;
 							animation-iteration-count: 1;
@@ -466,13 +466,14 @@
 							left: 100%;
 							width: 100%;
 							height: 100%;
-							// animation: shadowMove 0.5s linear infinite;
-							// animation-iteration-count: 1;
+							animation: shadowMove 0.5s linear infinite;
+							animation-iteration-count: 1;
 						}
 
 						&__content {
 							position: absolute;
-							top: 25%;
+							// top: 25%;
+							line-height: 8vh;
 							text-align: center;
 							width: 100%;
 							height: 100%;
@@ -502,9 +503,9 @@
 
 				&-ticket {
 					position: relative;
-					width: 73%;
+					width: 80%;
 					height: 10vh;
-					margin-top: 2vh;
+					margin-top: 3vh;
 
 					image {
 						position: absolute;
@@ -521,13 +522,14 @@
 						position: absolute;
 						top: 0;
 						z-index: 5;
-
+						margin-top: 10rpx;
 						flex-direction: column;
 
 						.title {
-							font-size: 30rpx;
-							line-height: 30rpx;
-							color: #FF6D2C;
+							font-size: 28rpx;
+							font-weight: 500;
+							line-height: 28rpx;
+							color: #fff;
 							margin-top: 1vh;
 							margin-bottom: 1vh;
 							width: 90%;
@@ -537,13 +539,14 @@
 						}
 
 						.serialNo {
-							font-size: 24rpx;
-							color: #FF6D2C;
+							font-size: 26rpx;
+							color: #fff;
+							font-weight: 400;
 						}
 
-						.action {
-							color: #FFCBAA;
-						}
+						// .action {
+						// 	color: #FFCBAA;
+						// }
 					}
 				}
 				
@@ -551,10 +554,10 @@
 					position: relative;
 					text-align: center;
 					width: 73%;
-					height: 6vh;
+					// height: 6vh;
 					margin-top: 4vh;
 					font-size: 30rpx;
-					color: #fff;
+					color: #666;
 					
 					.num {
 						font-size: 46rpx;
@@ -581,15 +584,17 @@
 
 				&-btn {
 					padding: 0 8%;
-					height: 7vh;
+					height: 8vh;
 					line-height: 7vh;
-					background: linear-gradient(0deg, #FF4924, #F9D448);
-					box-shadow: 0px 6px 9px 0px rgba(135, 19, 3, 0.49);
-					border-radius: 4vh;
+					background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_button.png) no-repeat center center;
+					background-size: 100% 100%;
+					// background: linear-gradient(0deg, #FF4924, #F9D448);
+					// box-shadow: 0px 6px 9px 0px rgba(135, 19, 3, 0.49);
+					// border-radius: 4vh;
 					text-align: center;
-					color: #FEFEFE;
-					font-size: 40rpx;
-					margin-top: 1vh;
+					font-size: 32rpx;
+					font-weight: 500;
+					margin-top: 2vh;
 				}
 
 				.code {
@@ -621,7 +626,7 @@
 	.lucky {
 		width: 100%;
 		height: 100vh;
-		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/hit_bkg.png) center center no-repeat;
+		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/lucky_background.png) center center no-repeat;
 		background-size: 100vw 100vh;
 	}
 
@@ -641,7 +646,7 @@
 			height: 60rpx;
 			line-height: 60rpx;
 			border-radius: 8rpx;
-			background-color: rgba(235, 112, 9, 100);
+			background-color: $uni-bg-color;
 			color: rgba(255, 255, 255, 100);
 			font-size: 28rpx;
 			text-align: center;

+ 8 - 8
src/pages/ticketBox/detail.vue

@@ -69,7 +69,7 @@
 				<!-- <image class="ticket-btn-game" src="../../static/ticketBox/ticket_game.png" mode="scaleToFill" @click="toRollingGame"></image> -->
 				<image class="ticket-btn-game" src="" mode="scaleToFill"></image>
 				<view class="ticket-btn-center flex" @click="exchange">
-					<image src="../../static/ticketBox/ticket_btn_center.png" mode="scaleToFill"></image>
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/paybutton.png" mode="scaleToFill"></image>
 					<view class="ticket-btn-center-txt">刮开盲票</view>
 				</view>
 				<view class="ticket-btn-share flex">
@@ -83,7 +83,7 @@
 
 		<!-- 盲票奖品说明 -->
 		<view class="explain flex">
-			<image class="image-left" src="../../static/ticketBox/ticket_explain_left.png" mode="aspectFit"></image>
+			<image class="image-left" src="../../static/ticketBox/ticket_explain_right.png" mode="aspectFit" style="transform: rotate(180deg);"></image>
 			<view class="explain-title">刮开必出以下宝贝之一</view>
 			<image class="image-right" src="../../static/ticketBox/ticket_explain_right.png" mode="aspectFit"></image>
 		</view>
@@ -122,7 +122,7 @@
 		<view class="footer-fixed" v-if="btnFixed">
 			<view class="footer-fixed-btn flex">
 				<view class="footer-fixed-btn-center flex" @click="exchange">
-					<image src="../../static/ticketBox/ticket_btn_center.png" mode="scaleToFill"></image>
+					<image src="https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/paybutton.png" mode="scaleToFill"></image>
 					<view class="footer-fixed-btn-center-txt">刮开盲票</view>
 				</view>
 			</view>
@@ -441,7 +441,7 @@
 
 <style lang="scss" scoped>
 	.ticket-wrap {
-		background: #FFF3EB;
+		background: #efedfb;
 		padding-bottom: 100rpx;
 	}
 
@@ -576,7 +576,7 @@
 
 			&-center {
 				position: relative;
-				height: 100%;
+				height: 86%;
 
 				image {
 					height: 100%;
@@ -692,7 +692,7 @@
 			padding: 0 100rpx;
 			font-size: 26rpx;
 			font-weight: 500;
-			color: #956B33;
+			color: $uni-text-color;
 			line-height: 42rpx;
 			text-align: center;
 		}
@@ -733,7 +733,7 @@
 				.price {
 					font-size: 36rpx;
 					font-weight: bold;
-					color: #FF4208;
+					color: $uni-text-color;
 					line-height: 42rpx;
 				}
 			}
@@ -763,7 +763,7 @@
 
 			&-center {
 				position: relative;
-				height: 100%;
+				height: 86%;
 
 				image {
 					height: 100%;

+ 441 - 418
src/pages/user/index.vue

@@ -1,429 +1,452 @@
 <template>
-	<view class="wrap">
-		<!-- 非H5撑高元素 -->
-		<!-- <view class="status_bar"></view> -->
-		<!-- 头部背景 -->
-		<view class="user"></view>
-		<!-- 账户信息 -->
-		<view class="account">
-			<view class="flex account-ava">
-				<image :src="avatar + '?imageView2/2/w/150'" mode="aspectFill" v-if="loginState" @click="toSetAvatar()"></image>
-				<view class="no-ava" v-else @click="toLogin"></view>
-				<view class="account-ava-name" v-if="loginState" @click="toSetAvatar()">{{ userInfo.nickName }}</view>
-				<view class="account-ava-no" @click="toLogin" v-else>登录</view>
-			</view>
-			<view class="flex account-info" v-if="loginState">
-				<navigator url="/packagePrize/prize/index" class="flex account-info-item" hover-class="navigator-hover">
-					<view>{{ initData.prizeNum }}</view>
-					<view>我的仓库</view>
-				</navigator>
-				<navigator url="/packagePrize/ticket/index" class="flex account-info-item" hover-class="navigator-hover">
-					<view>{{ initData.ticketNum }}</view>
-					<view>我的盲票</view>
-				</navigator>
-				<navigator url="/packagePrize/bean/index" class="flex account-info-item" hover-class="navigator-hover">
-					<view>{{ initData.coinNum }}</view>
-					<view>我的盲豆</view>
-				</navigator>
-			</view>
-			<view class="flex account-info" v-else @click="notLogin">
-				<view class="flex account-info-item">
-					<view>-</view>
-					<view>我的仓库</view>
-				</view>
-				<view class="flex account-info-item">
-					<view>-</view>
-					<view>我的盲票</view>
-				</view>
-				<view class="flex account-info-item">
-					<view>-</view>
-					<view>我的盲豆</view>
-				</view>
-			</view>
-		</view>
-		<!-- 操作项 -->
-		<view class="action">
-			<!-- <u-cell-group :border="false">
-				<u-cell icon="order" title="我的订单" :isLink="true" @click="toOrder" />
-				<u-cell icon="map" title="我的地址" :isLink="true" @click="toAddress" />
-				<u-cell icon="kefu-ermai" title="联系我们" :isLink="true" @click="contactService" />
-				<u-cell icon="info-circle" title="关于我们" :border="false" :isLink="true" :url="'/packageOther/about/index'" />
-			</u-cell-group> -->
-			<view class="action-item flex" @click="toOrder">
-				<view class="action-item-left flex">
-					<image src="../../static/user/user_order.png" mode="scaleToFill"></image>
-					<view class="title">我的订单</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-			<view class="action-item flex" @click="toExchange">
-				<view class="action-item-left flex">
-					<image src="../../static/user/user_exchange.png" mode="scaleToFill"></image>
-					<view class="title">兑换码</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-			<view class="action-item flex" @click="toAddress">
-				<view class="action-item-left flex">
-					<image src="../../static/user/user_addr.png" mode="scaleToFill"></image>
-					<view class="title">我的地址</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-			<view class="action-item flex" @click="toCreator">
-				<view class="action-item-left flex">
-					<image src="../../static/user/user_slice.png" mode="scaleToFill"></image>
-					<view class="title">申请创客</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-			<!-- #ifdef MP-WEIXIN -->
-			<view class="action-item flex" @click="contactService">
-				<view class="action-item-left flex">
-					<image src="../../static/user/user_kefu.png" mode="scaleToFill"></image>
-					<view class="title">联系客服</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-			<!-- #endif -->
-			
-			<view class="action-item flex" @click="toAbout">
-				<view class="action-item-left flex">
-					<image src="../../static/user/user_about.png" mode="scaleToFill"></image>
-					<view class="title">关于我们</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-		</view>
-		<view class="action">
-			<!-- <u-cell icon="close-circle" title="退出登录" :isLink="true" :border="false" @click="logout" /> -->
-			<view class="action-item flex" @click="logout">
-				<view class="action-item-left flex">
-					<image class="close" src="../../static/user/user_close.png" mode="scaleToFill"></image>
-					<view class="title">退出登录</view>
-				</view>
-				<u-icon name="arrow-right" color="#666" size="16"></u-icon>
-			</view>
-		</view>
-		
-		<custom-tab-bar :activeValue="'user'" />
-	</view>
+  <view class="wrap">
+    <!-- 非H5撑高元素 -->
+    <!-- <view class="status_bar"></view> -->
+    <!-- 头部背景 -->
+    <view class="user"></view>
+    <!-- 账户信息 -->
+    <view class="account">
+      <view class="flex account-ava">
+        <image :src="avatar + '?imageView2/2/w/150'" mode="aspectFill" v-if="loginState" @click="toSetAvatar()"></image>
+        <view class="no-ava" v-else @click="toLogin"></view>
+        <view class="account-ava-name" v-if="loginState" @click="toSetAvatar()">{{ userInfo.nickName }}</view>
+        <view class="account-ava-no" @click="toLogin" v-else>登录</view>
+      </view>
+      <view class="flex account-info" v-if="loginState">
+        <navigator url="/packagePrize/bean/index" class="flex account-info-item" hover-class="navigator-hover">
+          <view>{{ initData.coinNum }}</view>
+          <view>我的盲豆</view>
+        </navigator>
+        <navigator url="/packagePrize/ticket/index" class="flex account-info-item" hover-class="navigator-hover">
+          <view>{{ initData.ticketNum }}</view>
+          <view>我的盲票</view>
+        </navigator>
+        <navigator url="/packagePrize/prize/index" class="flex account-info-item" hover-class="navigator-hover">
+          <view>{{ initData.prizeNum }}</view>
+          <view>我的仓库</view>
+        </navigator>
+      </view>
+      <view class="flex account-info" v-else @click="notLogin">
+        <view class="flex account-info-item">
+          <view>-</view>
+          <view>我的盲豆</view>
+        </view>
+        <view class="flex account-info-item">
+          <view>-</view>
+          <view>我的盲票</view>
+        </view>
+        <view class="flex account-info-item">
+          <view>-</view>
+          <view>我的仓库</view>
+        </view>
+      </view>
+    </view>
+    <!-- 操作项 -->
+    <view class="mass">
+      <view class="mass-title flex">
+        <view>我的订单</view>
+        <view @click="toOrder()">全部订单></view>
+      </view>
+      <view class="action">
+        <view class="action-item flex" @click="toOrder('0')">
+          <image class="image2" src="../../static/user/user_order1.png" mode="scaleToFill"></image>
+          <view class="title">待付款</view>
+        </view>
+        <view class="action-item flex" @click="toOrder('1,4')">
+          <image class="image2" src="../../static/user/user_order2.png" mode="scaleToFill"></image>
+          <view class="title">待发货</view>
+        </view>
+        <view class="action-item flex" @click="toOrder('2')">
+          <image class="image2" src="../../static/user/user_order3.png" mode="scaleToFill"></image>
+          <view class="title">待收货</view>
+        </view>
+        <view class="action-item flex" @click="toOrder('3')">
+          <image class="image2" src="../../static/user/user_order4.png" mode="scaleToFill"></image>
+          <view class="title">已完成</view>
+        </view>
+      </view>
+    </view>
+    <view class="mass">
+      <view class="mass-title flex">
+        <view>常用功能</view>
+        <view></view>
+      </view>
+      <view class="action">
+        <view class="action-item flex" @click="toExchange">
+          <image class="image1" src="../../static/user/user_exchange.png" mode="scaleToFill"></image>
+          <view class="title">兑换码</view>
+        </view>
+        <view class="action-item flex" @click="toAddress">
+          <image class="image1" src="../../static/user/user_addr.png" mode="scaleToFill"></image>
+          <view class="title">我的地址</view>
+        </view>
+        <view class="action-item flex" @click="toCreator">
+          <image class="image1" src="../../static/user/user_slice.png" mode="scaleToFill"></image>
+          <view class="title">申请创客</view>
+        </view>
+        <!-- #ifdef MP-WEIXIN -->
+        <view class="action-item flex" @click="contactService">
+          <image class="image1" src="../../static/user/user_kefu.png" mode="scaleToFill"></image>
+          <view class="title">联系客服</view>
+        </view>
+        <!-- #endif -->
+        <view class="action-item flex" @click="toAbout">
+          <image class="image1" src="../../static/user/user_about.png" mode="scaleToFill"></image>
+          <view class="title">关于我们</view>
+        </view>
+        <view class="action-item flex" @click="logout">
+          <image class="image1" src="../../static/user/user_close.png" mode="scaleToFill"></image>
+          <view class="title">退出登录</view>
+        </view>
+      </view>
+    </view>
+    <custom-tab-bar :activeValue="'user'" />
+  </view>
 </template>
 
 <script>
-	import env from '../../config/env.js'
-	import $http from '@/utils/request.js'
-	import appId from '@/config/appId.js'
-	import CustomTabBar from '../../components/custom-tab-bar/custom-tab-bar.vue'
-	import Auth from '../../components/auth/auth.vue'
-	export default {
-		components: {
-			CustomTabBar,
-			Auth,
-		},
-		data() {
-			return {
-				loginState: false, // 判断是否登录
-				authState: false,
-				userInfo: {}, //
-				avatar: '',
-				certifyStatus: {},
-				info: {},
-				authShow: false,
-				initData: {},
-				userInfo: '',
-			};
-		},
-
-		onShow() {
-			this.loginState = uni.getStorageSync('token') ? true : false
-			if (this.loginState) {
-				this.getInit()
-				this.getBaseInfo()
-			}
-		},
-
-		methods: {
-			// 我的数据
-			getInit() {
-				uni.showLoading({
-					title: '加载中'
-				});
-				$http.post('/api/v1/mp/user/mine/init', {}).then(res => {
-					uni.hideLoading();
-					if (res.code == 0) {
-						this.initData = res.data
-					}
-				}).catch(() => {
-					uni.hideLoading();
-				})
-			},
-
-			getBaseInfo() {
-				$http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
-					if (res.code == 0) {
-						this.userInfo = res.data
-						this.avatar = env.filePublic + res.data.avatar
-					}
-				}).catch(() => {
-
-				})
-			},
-			
-			// 跳转编辑头像与昵称页面
-			toSetAvatar() {
-				uni.navigateTo({
-					url: "/packageOther/avatar/index"
-				})
-			},
-
-			// 跳转登录
-			toLogin() {
-				uni.navigateTo({
-					url: "/pages/login/index"
-				})
-			},
-
-			// 我的订单
-			toOrder() {
-				if (!this.loginState) {
-					uni.$u.toast('请登录');
-					return
-				}
-				uni.navigateTo({
-					url: '/packageGoods/order/index'
-				})
-			},
-			
-			//兑换专区
-			toExchange() {
-				if (!this.loginState) {
-					uni.$u.toast('请登录');
-					return
-				}
-				uni.navigateTo({
-					url: '/packageOperate/exchange/index'
-				})
-			},
-
-			// 我的地址
-			toAddress() {
-				if (!this.loginState) {
-					uni.$u.toast('请登录');
-					return
-				}
-				uni.navigateTo({
-					url: '/packageOperate/address/index'
-				})
-			},
-			
-			//申请创客
-			toCreator() {
-				if (!this.loginState) {
-					uni.$u.toast('请登录');
-					return
-				}
-				uni.navigateTo({
-					url: '/packageOperate/creator/index'
-				})
-			},
-			
-			// 关于我们
-			toAbout() {
-				uni.navigateTo({
-					url: '/packageOther/about/index'
-				})
-			},
-
-			// 没有登录
-			notLogin() {
-				uni.$u.toast('请登录');
-			},
-
-			// 注销登录
-			logout() {
-				let _this = this
-				if (!this.loginState) {
-					uni.$u.toast('已退出登录');
-					return
-				}
-				uni.showModal({
-					title: '退出登录',
-					content: '确定要退出登录吗?',
-					success(res) {
-						if (res.confirm) {
-							uni.clearStorage()
-							_this.loginState = false
-							_this.authState = false
-						}
-					}
-				})
-			},
-
-			// 联系客服
-			contactService() {
-				// #ifdef MP-WEIXIN
-				if(appId == 1) {
-					// wx.openCustomerServiceChat({
-					// 	extInfo: {
-					// 		url: 'https://work.weixin.qq.com/kfid/kfc36c0d90028adbd24'
-					// 	},
-					// 	corpId: 'ww02da63d80c66284b',
-					// })
-					uni.navigateTo({
-						url: `/pages/index/wxofficial`
-					})
-				}else {
-					wx.openCustomerServiceChat({
-						extInfo: {
-							url: 'https://work.weixin.qq.com/kfid/kfcf9da505d4dc18c87'
-						},
-						corpId: 'ww8522e336cfe5045b',
-					})
-				}
-				// #endif
-			},
-		},
-		//分享好友
-		onShareAppMessage(res) {
-			return {
-				title: '盲票,玩的就是有趣',
-				path: '/pages/index/index'
-			}
-		},
-		//分享朋友圈
-		onShareTimeline() {
-			return {
-				title: '盲票,玩的就是有趣',
-				// query: { userId: this.userInfo.userId,
-				// 		type: 1, },
-				query: `userId=${ this.userInfo.userId?this.userInfo.userId:null }&type=1`
-			}
-		}
-	}
+import env from '../../config/env.js'
+import $http from '@/utils/request.js'
+import appId from '@/config/appId.js'
+import CustomTabBar from '../../components/custom-tab-bar/custom-tab-bar.vue'
+import Auth from '../../components/auth/auth.vue'
+export default {
+  components: {
+    CustomTabBar,
+    Auth,
+  },
+  data() {
+    return {
+      loginState: false, // 判断是否登录
+      authState: false,
+      userInfo: {}, //
+      avatar: '',
+      certifyStatus: {},
+      info: {},
+      authShow: false,
+      initData: {},
+      userInfo: '',
+    };
+  },
+
+  onShow() {
+    this.loginState = uni.getStorageSync('token') ? true : false
+    if (this.loginState) {
+      this.getInit()
+      this.getBaseInfo()
+    }
+  },
+
+  methods: {
+    // 我的数据
+    getInit() {
+      uni.showLoading({
+        title: '加载中'
+      });
+      $http.post('/api/v1/mp/user/mine/init', {}).then(res => {
+        uni.hideLoading();
+        if (res.code == 0) {
+          this.initData = res.data
+        }
+      }).catch(() => {
+        uni.hideLoading();
+      })
+    },
+
+    getBaseInfo() {
+      $http.post('/api/v1/mp/user/getLoginUserinfo', { appSource: appId }).then(res => {
+        if (res.code == 0) {
+          this.userInfo = res.data
+          this.avatar = env.filePublic + res.data.avatar
+        }
+      }).catch(() => {
+
+      })
+    },
+
+    // 跳转编辑头像与昵称页面
+    toSetAvatar() {
+      uni.navigateTo({
+        url: "/packageOther/avatar/index"
+      })
+    },
+
+    // 跳转登录
+    toLogin() {
+      uni.navigateTo({
+        url: "/pages/login/index"
+      })
+    },
+
+    // 我的订单
+    toOrder(e) {
+      if (!this.loginState) {
+        uni.$u.toast('请登录');
+        return
+      }
+      if (e) {
+        uni.navigateTo({
+          url: `/packageGoods/order/index?status=${e}`
+        })
+      } else {
+        uni.navigateTo({
+          url: `/packageGoods/order/index`
+        })
+      }
+    },
+
+    //兑换专区
+    toExchange() {
+      if (!this.loginState) {
+        uni.$u.toast('请登录');
+        return
+      }
+      uni.navigateTo({
+        url: '/packageOperate/exchange/index'
+      })
+    },
+
+    // 我的地址
+    toAddress() {
+      if (!this.loginState) {
+        uni.$u.toast('请登录');
+        return
+      }
+      uni.navigateTo({
+        url: '/packageOperate/address/index'
+      })
+    },
+
+    //申请创客
+    toCreator() {
+      if (!this.loginState) {
+        uni.$u.toast('请登录');
+        return
+      }
+      uni.navigateTo({
+        url: '/packageOperate/creator/index'
+      })
+    },
+
+    // 关于我们
+    toAbout() {
+      uni.navigateTo({
+        url: '/packageOther/about/index'
+      })
+    },
+
+    // 没有登录
+    notLogin() {
+      uni.$u.toast('请登录');
+    },
+
+    // 注销登录
+    logout() {
+      let _this = this
+      if (!this.loginState) {
+        uni.$u.toast('已退出登录');
+        return
+      }
+      uni.showModal({
+        title: '退出登录',
+        content: '确定要退出登录吗?',
+        success(res) {
+          if (res.confirm) {
+            uni.clearStorage()
+            _this.loginState = false
+            _this.authState = false
+          }
+        }
+      })
+    },
+
+    // 联系客服
+    contactService() {
+      // #ifdef MP-WEIXIN
+      if (appId == 1) {
+        // wx.openCustomerServiceChat({
+        // 	extInfo: {
+        // 		url: 'https://work.weixin.qq.com/kfid/kfc36c0d90028adbd24'
+        // 	},
+        // 	corpId: 'ww02da63d80c66284b',
+        // })
+        uni.navigateTo({
+          url: `/pages/index/wxofficial`
+        })
+      } else {
+        wx.openCustomerServiceChat({
+          extInfo: {
+            url: 'https://work.weixin.qq.com/kfid/kfcf9da505d4dc18c87'
+          },
+          corpId: 'ww8522e336cfe5045b',
+        })
+      }
+      // #endif
+    },
+  },
+  //分享好友
+  onShareAppMessage(res) {
+    return {
+      title: '盲票,玩的就是有趣',
+      path: '/pages/index/index'
+    }
+  },
+  //分享朋友圈
+  onShareTimeline() {
+    return {
+      title: '盲票,玩的就是有趣',
+      // query: { userId: this.userInfo.userId,
+      // 		type: 1, },
+      query: `userId=${this.userInfo.userId ? this.userInfo.userId : null}&type=1`
+    }
+  }
+}
 </script>
 
 <style lang="scss" scoped>
-	::v-deep .u-cell__body {
-		padding: 20rpx 0;
-	}
-
-	.status_bar {
-		width: 100%;
-		height: var(--status-bar-height);
-	}
+::v-deep .u-cell__body {
+  padding: 20rpx 0;
+}
+
+.status_bar {
+  width: 100%;
+  height: var(--status-bar-height);
+}
 </style>
 
 <style lang="scss" scoped>
-	.wrap {
-		padding-bottom: 200rpx;
-	}
-	.user {
-		display: flex;
-		align-items: center;
-		height: 560rpx;
-		background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/v2/mine_bkg.png) center center no-repeat;
-		background-size: 100vw 560rpx;
-	}
-
-	.account {
-		margin-top: -350rpx;
-		margin-bottom: 34rpx;
-
-		// 头像
-		&-ava {
-			justify-content: flex-start;
-			margin-bottom: 34rpx;
-			padding: 0 30rpx;
-
-			image {
-				width: 170rpx;
-				height: 170rpx;
-				border-radius: 50%;
-				border: 2px solid #FFFFFF;
-				overflow: hidden;
-			}
-
-			.no-ava {
-				width: 170rpx;
-				height: 170rpx;
-				border-radius: 50%;
-				overflow: hidden;
-				background: #fff;
-			}
-
-			&-name {
-				margin-left: 20rpx;
-				font-size: 34rpx;
-				color: #FFFFFF;
-			}
-
-			&-no {
-				margin-left: 20rpx;
-				color: #FFFFFF;
-				font-size: 34rpx;
-			}
-		}
-
-		// 信息
-		&-info {
-			height: 216rpx;
-			justify-content: space-around;
-			background-color: #FFFFFF;
-			border-radius: 18rpx;
-
-			&-item {
-				flex-direction: column;
-				font-size: 34rpx;
-				
-				view {
-					line-height: 52rpx;
-				}
-
-				view:first-child {
-					color: #FD7B24;
-					line-height: 60rpx;
-					font-size: 52rpx;
-				}
-			}
-		}
-	}
-
-	.action {
-		margin: 0 34rpx;
-		padding: 0 34rpx;
-		background-color: #FFFFFF;
-		border-radius: 18rpx;
-		margin-bottom: 34rpx;
-		
-		&-item {
-			justify-content: space-between;
-			padding: 36rpx 0;
-			border-bottom: 1px solid #eee;
-			
-			&-left {
-				color: #666;
-				
-				image {
-					width: 52rpx;
-					height: 52rpx;
-					margin-right: 20rpx;
-				}
-				
-				.title {
-					font-size: 30rpx;
-					line-height: 30rpx;
-				}
-				
-				.close {
-					width: 62rpx;
-					height: 62rpx;
-				}
-			}
-		}
-		
-		&-item:last-child {
-			border-bottom: none;
-		}
-	}
+.wrap {
+  padding-bottom: 200rpx;
+}
+.user {
+  display: flex;
+  align-items: center;
+  height: 520rpx;
+  background: url(https://mp-public-1310078123.cos.ap-shanghai.myqcloud.com/static/mine_bkg.png)
+    center center no-repeat;
+  background-size: 100vw 520rpx;
+}
+
+.account {
+  margin-top: -350rpx;
+  margin-bottom: 34rpx;
+
+  // 头像
+  &-ava {
+    justify-content: flex-start;
+    margin-top: 34rpx;
+    padding: 0 30rpx;
+
+    image {
+      width: 106rpx;
+      height: 106rpx;
+      border-radius: 50%;
+      border: 2px solid #ffffff;
+      overflow: hidden;
+    }
+
+    .no-ava {
+      width: 106rpx;
+      height: 106rpx;
+      border-radius: 50%;
+      overflow: hidden;
+      background: #fff;
+    }
+
+    &-name {
+      margin-left: 20rpx;
+      font-size: 32rpx;
+      color: #333;
+    }
+
+    &-no {
+      margin-left: 20rpx;
+      color: #ffffff;
+      font-size: 34rpx;
+    }
+  }
+
+  // 信息
+  &-info {
+    height: 200rpx;
+    justify-content: space-between;
+    padding: 0 28rpx;
+    border-radius: 18rpx;
+
+    &-item {
+      flex-direction: column;
+      background: linear-gradient(
+        90deg,
+        #faf8fe 0%,
+        rgba(255, 255, 255, 0) 100%
+      );
+      box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.12);
+      border-radius: 6rpx;
+      width: 31%;
+      font-size: 28rpx;
+      height: 124rpx;
+
+      view {
+        line-height: 50rpx;
+      }
+
+      view:first-child {
+        color: $uni-text-color;
+        font-size: 36rpx;
+      }
+    }
+  }
+}
+
+.mass {
+  margin: 0 28rpx;
+  padding: 40rpx 30rpx;
+  background-color: #ffffff;
+  box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.12);
+  border-radius: 10rpx;
+  margin-bottom: 34rpx;
+
+  &-title {
+    justify-content: space-between;
+
+    view:first-child {
+      font-size: 32rpx;
+      font-weight: 500;
+      color: #000033;
+      line-height: 19px;
+    }
+    view:last-child {
+      font-size: 28rpx;
+      font-weight: 400;
+      color: #999999;
+    }
+  }
+  .action {
+    display: flex;
+    flex-wrap: wrap;
+
+    &-item {
+      width: 25%;
+      flex-direction: column;
+      margin-top: 40rpx;
+
+      .image1 {
+        width: 56rpx;
+        height: 56rpx;
+      }
+
+      .image2 {
+        width: 68rpx;
+        height: 68rpx;
+      }
+
+      .title {
+        margin-top: 20rpx;
+        font-size: 28rpx;
+        color: #666666;
+        line-height: 32rpx;
+      }
+    }
+  }
+}
 </style>

二进制
src/static/activity/beijing.png


二进制
src/static/activity/beijingtwo.png


二进制
src/static/activity/null.png


二进制
src/static/activity/tupian.jpg


二进制
src/static/activity/yuanjiao.png


二进制
src/static/core/core_bg.png


二进制
src/static/core/core_block.png


二进制
src/static/core/core_right.png


二进制
src/static/core/core_tag.png


二进制
src/static/index/barrage_bgTwo.png


二进制
src/static/index/games.png


二进制
src/static/index/index_anniu.png


二进制
src/static/index/index_beijing.png


二进制
src/static/index/index_btn.png


二进制
src/static/index/index_btn_left.png


二进制
src/static/index/index_btn_right.png


二进制
src/static/index/index_btn_shadow.png


二进制
src/static/index/index_duihuandating.png


二进制
src/static/index/index_rules.png


二进制
src/static/index/index_service.png


二进制
src/static/index/index_time_top.png


二进制
src/static/index/index_tip.png


二进制
src/static/index/index_tip_bgTwo.png


二进制
src/static/index/index_tip_left.png


二进制
src/static/lucky/lucky_bg.png


二进制
src/static/lucky/lucky_gkmp.png


二进制
src/static/lucky/lucky_gkmptwo.png


二进制
src/static/lucky/lucky_guajiangqu.png


二进制
src/static/lucky/lucky_piaohao.png


二进制
src/static/lucky/lucky_tu.png


二进制
src/static/lucky/lucky_yidong.png


二进制
src/static/lucky/zioff.png


二进制
src/static/public/logo.png


二进制
src/static/public/promoter.png


二进制
src/static/public/public_coupon.png


部分文件因为文件数量过多而无法显示