Commit 426e029f0e03babdb5de5b07c4416450d4cd5d54

Authored by vking
1 parent 279a8bd6

商家红包活动

@@ -54,7 +54,8 @@ @@ -54,7 +54,8 @@
54 "pages/qiye", 54 "pages/qiye",
55 "pages/rule", 55 "pages/rule",
56 "pages/yuding", 56 "pages/yuding",
57 - "pack/pack" 57 + "pack/pack",
  58 + "pack/list"
58 ] 59 ]
59 }, 60 },
60 { 61 {
@@ -5,6 +5,7 @@ Component({ @@ -5,6 +5,7 @@ Component({
5 */ 5 */
6 properties: { 6 properties: {
7 quan:Object, 7 quan:Object,
  8 + cla:String,
8 }, 9 },
9 10
10 /** 11 /**
1 <!--components/reserve/seller/quan.wxml--> 1 <!--components/reserve/seller/quan.wxml-->
2 <wxs src="../../../utils/util.wxs" module="util" /> 2 <wxs src="../../../utils/util.wxs" module="util" />
3 -<view class="quan flex-lr"> 3 +<view class="quan flex-lr {{cla}}">
4 <view class="money flex-ll" style="align-items: flex-end"> 4 <view class="money flex-ll" style="align-items: flex-end">
5 <view class="dot">¥</view> 5 <view class="dot">¥</view>
6 <view class="number">{{util.toFixed(quan.price,0)}}</view> 6 <view class="number">{{util.toFixed(quan.price,0)}}</view>
@@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
6 background:rgba(255,239,223,1); 6 background:rgba(255,239,223,1);
7 box-sizing: border-box; 7 box-sizing: border-box;
8 padding: 36rpx; 8 padding: 36rpx;
  9 + padding-right: 22rpx;
9 border-radius:10rpx 10rpx 0rpx 0rpx; 10 border-radius:10rpx 10rpx 0rpx 0rpx;
10 border-right: 14rpx solid #fefefe; 11 border-right: 14rpx solid #fefefe;
11 position: relative; 12 position: relative;
@@ -20,6 +21,7 @@ @@ -20,6 +21,7 @@
20 height: 170rpx; 21 height: 170rpx;
21 content: ""; 22 content: "";
22 } 23 }
  24 +
23 .dot{ 25 .dot{
24 width:22rpx; 26 width:22rpx;
25 height:50rpx; 27 height:50rpx;
@@ -63,3 +65,23 @@ @@ -63,3 +65,23 @@
63 line-height:32rpx; 65 line-height:32rpx;
64 margin-top: 10rpx; 66 margin-top: 10rpx;
65 } 67 }
  68 +
  69 +.quan-pt{
  70 + background:rgba(255,227,227,1);
  71 +}
  72 +.quan-pt:after{
  73 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/rs2.png");
  74 +}
  75 +.quan-pt .dot,.quan-pt .number{
  76 + color:rgba(204,17,17,1);
  77 +}
  78 +.quan-pt .line{
  79 + border-right-color:#BB5032;
  80 +}
  81 +.quan-pt .card_title,.quan-pt .card-date{
  82 + color:rgba(187,80,50,1);
  83 +}
  84 +
  85 +.quan.bg-f5f5f5{
  86 + border-right: 14rpx solid #f5f5f5;
  87 +}
  1 +// pack-activity/pages/money.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + list:[],
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 + this.GetUserCard()
  18 + },
  19 +
  20 + /**
  21 + * 生命周期函数--监听页面初次渲染完成
  22 + */
  23 + onReady: function () {
  24 +
  25 + },
  26 +
  27 + /**
  28 + * 生命周期函数--监听页面显示
  29 + */
  30 + onShow: function () {
  31 +
  32 + },
  33 +
  34 + /**
  35 + * 生命周期函数--监听页面隐藏
  36 + */
  37 + onHide: function () {
  38 +
  39 + },
  40 +
  41 + /**
  42 + * 生命周期函数--监听页面卸载
  43 + */
  44 + onUnload: function () {
  45 +
  46 + },
  47 +
  48 + /**
  49 + * 页面相关事件处理函数--监听用户下拉动作
  50 + */
  51 + onPullDownRefresh: function () {
  52 +
  53 + },
  54 +
  55 + /**
  56 + * 页面上拉触底事件的处理函数
  57 + */
  58 + onReachBottom: function () {
  59 +
  60 + },
  61 + GetUserCard(){
  62 + App.Customer.GetUserCard({
  63 + status:0,
  64 + }).then(res=> {
  65 + this.setData({
  66 + list: res.data
  67 + })
  68 + })
  69 + },
  70 + useCard(e){
  71 + let sid=util.attr(e,'sid')
  72 + if(sid>0) {
  73 + wx.navigateTo({
  74 + url: '/pages/reserve/detail?id=' + sid + '&activeTab=reserve'
  75 + })
  76 + }else{
  77 + //lat=39.62420161&lng=118.1174469&multiIndex=0&centre_pos=39.62420161,118.1174469&hasSuggestion=
  78 + wx.navigateTo({
  79 + url: util.http_build_query({
  80 + lat:34.216529,
  81 + lng:108.894677,
  82 + centre_pos:'34.216529,108.894677',
  83 + keyword:' ',
  84 + isopen_md:1,
  85 + multiIndex:0,
  86 + },'/pages/reserve/indexList'),
  87 + })
  88 + }
  89 + },
  90 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav",
  7 + "quan":"/components/reserve/seller/quan"
  8 + }
  9 +}
  1 +<!--pack-activity/pages/money.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<nav hasHome>我的红包</nav>
  4 +<view class="tabs flex-lr">
  5 + <view class="tabs-item flex-vc active">
  6 + <view class="tabs-txt">已使用</view>
  7 + </view>
  8 + <view class="tabs-item flex-vc">
  9 + <view class="tabs-txt">已失效</view>
  10 + </view>
  11 +</view>
  12 +<view class="pages" wx:if="{{list.length>0}}">
  13 + <view class="list-view list-view-{{item.sid}}" wx:for="{{list}}" wx:key="list">
  14 + <view class="quan" wx:for="{{item.card_list}}" wx:key="card_list" wx:for-item="quan">
  15 + <quan quan="{{quan}}" cla="{{item.sid==0?'quan-pt bg-f5f5f5':''}}">
  16 + <view class="button-use" bindtap="useCard" data-sid="{{item.sid}}">立即使用</view>
  17 + </quan>
  18 + <view class="quan-tips pingtai" wx:if="{{item.sid==0}}">适用于平台所有商家,预订包间、在线买单时使用</view>
  19 + <view class="quan-tips" wx:else="">仅可在“{{seller.sellername}}”预订包间、在线买单时使用</view>
  20 + </view>
  21 + </view>
  22 +</view>
  23 +<view class="flex-vc" wx:else="">
  24 + <view class="empty-img"></view>
  25 + <view class="empty-txt">哎呀一个红包都没有呢</view>
  26 +</view>
  1 +/* pack-activity/pages/money.wxss */
  2 +.list-view{
  3 + width: calc(100% - 40rpx);
  4 + margin-left: 20rpx;
  5 + background:rgba(255,255,255,1);
  6 + border-radius:20rpx;
  7 + box-sizing: border-box;
  8 + padding: 20rpx 20rpx 40rpx;
  9 + margin-bottom: 20rpx;
  10 +}
  11 +.list-view-0{
  12 + background: none;
  13 + margin-top: 0rpx;
  14 + padding-bottom: 20rpx;
  15 +}
  16 +.sellername{
  17 + height:40rpx;
  18 + font-size:28rpx;
  19 + font-family:PingFangSC-Regular,PingFang SC;
  20 + font-weight:400;
  21 + color:rgba(53,53,53,1);
  22 + line-height:40rpx;
  23 +}
  24 +.more{
  25 + margin-left: 10rpx;
  26 +}
  27 +.quan{
  28 + margin-top: 20rpx;
  29 +}
  30 +.quan-tips{
  31 + height:50rpx;
  32 + background:rgba(245,245,245,1);
  33 + border-radius:0rpx 0rpx 10rpx 10rpx;
  34 + font-size:22rpx;
  35 + font-family:PingFangSC-Regular,PingFang SC;
  36 + font-weight:400;
  37 + color:rgba(136,136,136,1);
  38 + line-height:50rpx;
  39 + padding-left: 36rpx;
  40 + width: 100%;
  41 + box-sizing: border-box;
  42 +}
  43 +.pingtai{
  44 + background:rgba(255,255,255,1);
  45 + color:rgba(136,136,136,1);
  46 +}
  47 +
  48 +.button-use{
  49 + width:120rpx;
  50 + height:44rpx;
  51 + background:linear-gradient(180deg,rgba(231,66,88,1) 0%,rgba(243,53,78,1) 100%);
  52 + border-radius:6rpx;
  53 + font-size:24rpx;
  54 + font-family:PingFangSC-Medium,PingFang SC;
  55 + font-weight:500;
  56 + color:rgba(255,227,192,1);
  57 + line-height:44rpx;
  58 + text-align: center;
  59 +}
  60 +.empty-img{
  61 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/empty.png");
  62 + background-size: 100% 100%;
  63 + width:302rpx;
  64 + height:408rpx;
  65 + margin-top: 300rpx;
  66 +}
  67 +.empty-txt{
  68 + height:44rpx;
  69 + font-size:32rpx;
  70 + font-family:PingFangSC-Regular,PingFang SC;
  71 + font-weight:400;
  72 + color:rgba(53,53,53,1);
  73 + line-height:44rpx;
  74 + margin-top: 40rpx;
  75 +}
  76 +
  77 +.tabs{
  78 + height: 80rpx;
  79 + line-height: 80rpx;
  80 + border-bottom: 2rpx solid #F5F5F5;
  81 + box-sizing: border-box;
  82 + width: 100%;
  83 +}
  84 +.tabs-item{
  85 + width: 50%;
  86 + height: 80rpx;
  87 +}
  88 +.tabs-txt{
  89 + height: 80rpx;
  90 + width: 120rpx;
  91 + box-sizing: border-box;
  92 + text-align: center;
  93 +}
  94 +.active .tabs-txt{
  95 + border-bottom: 4rpx solid #C0A369;
  96 +
  97 +}
@@ -59,10 +59,32 @@ Page({ @@ -59,10 +59,32 @@ Page({
59 59
60 }, 60 },
61 GetUserCard(){ 61 GetUserCard(){
62 - App.Customer.GetUserCard().then(res=> { 62 + App.Customer.GetUserCard({
  63 + status:0,
  64 + }).then(res=> {
63 this.setData({ 65 this.setData({
64 list: res.data 66 list: res.data
65 }) 67 })
66 }) 68 })
67 }, 69 },
  70 + useCard(e){
  71 + let sid=util.attr(e,'sid')
  72 + if(sid>0) {
  73 + wx.navigateTo({
  74 + url: '/pages/reserve/detail?id=' + sid + '&activeTab=reserve'
  75 + })
  76 + }else{
  77 + //lat=39.62420161&lng=118.1174469&multiIndex=0&centre_pos=39.62420161,118.1174469&hasSuggestion=
  78 + wx.navigateTo({
  79 + url: util.http_build_query({
  80 + lat:34.216529,
  81 + lng:108.894677,
  82 + centre_pos:'34.216529,108.894677',
  83 + keyword:' ',
  84 + isopen_md:1,
  85 + multiIndex:0,
  86 + },'/pages/reserve/indexList'),
  87 + })
  88 + }
  89 + },
68 }) 90 })
@@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
3 "navigationBarBackgroundColor": "#fff", 3 "navigationBarBackgroundColor": "#fff",
4 "navigationBarTextStyle":"black", 4 "navigationBarTextStyle":"black",
5 "usingComponents": { 5 "usingComponents": {
6 - "nav":"/components/nav/nav" 6 + "nav":"/components/nav/nav",
  7 + "quan":"/components/reserve/seller/quan"
7 } 8 }
8 } 9 }
1 <!--pack-activity/pages/money.wxml--> 1 <!--pack-activity/pages/money.wxml-->
2 <wxs src="../../utils/util.wxs" module="util" /> 2 <wxs src="../../utils/util.wxs" module="util" />
3 -<nav hasHome>我的余额</nav>  
4 -<view class="pages">  
5 - <view class="pages-view">  
6 - <view class="money-block">  
7 - <view class="money-views-top">  
8 - <view class="txt">我的余额</view>  
9 - </view>  
10 - <view class="money-views flex-bc">  
11 - <view class="money-number">{{user.price}}</view>  
12 - <view class="money-dw">元</view>  
13 - </view>  
14 - <navigator url="/pages/reserve/index" open-type="switchTab" hover-class="other-navigator-hover">  
15 - <view class="yuding flex-cc">  
16 - <view class="icon"></view>  
17 - 去订包间 3 +<nav hasHome>我的红包</nav>
  4 +<view class="pages" wx:if="{{list.length>0}}">
  5 + <view class="list-view list-view-{{item.sid}}" wx:for="{{list}}" wx:key="list">
  6 + <navigator url="/pages/reserve/detail?id={{item.sid}}" hover-class="navigator-hover" wx:if="{{item.sid>0}}">
  7 + <view class="sellername flex-lr">
  8 + <view>{{item.sellername}}</view>
  9 + <view class="flex-rr">
  10 + 点击进店
  11 + <view class="more"></view>
18 </view> 12 </view>
19 - </navigator>  
20 - </view>  
21 - </view>  
22 - <view class="list-view" wx:if="{{list.length>0}}">  
23 - <view class="item" wx:for="{{list}}" wx:key="list">  
24 - <view class="flex-lr name">  
25 - <view>{{item.remark}}</view>  
26 - <view>{{item.type==1?'+':'-'}}{{item.consumeprice}}</view>  
27 - </view>  
28 - <view class="flex-lr date">  
29 - <view>{{util.unixtoTime(item.createtime,"MM-DD HH:II")}}</view>  
30 - <view>余额 {{item.currprice}}</view>  
31 </view> 13 </view>
  14 + </navigator>
  15 + <view class="quan" wx:for="{{item.card_list}}" wx:key="card_list" wx:for-item="quan">
  16 + <quan quan="{{quan}}" cla="{{item.sid==0?'quan-pt bg-f5f5f5':''}}">
  17 + <view class="button-use" bindtap="useCard" data-sid="{{item.sid}}">立即使用</view>
  18 + </quan>
  19 + <view class="quan-tips pingtai" wx:if="{{item.sid==0}}">适用于平台所有商家,预订包间、在线买单时使用</view>
  20 + <view class="quan-tips" wx:else="">仅可在“{{seller.sellername}}”预订包间、在线买单时使用</view>
32 </view> 21 </view>
33 </view> 22 </view>
34 </view> 23 </view>
  24 +<view class="flex-vc" wx:else="">
  25 + <view class="empty-img"></view>
  26 + <view class="empty-txt">哎呀一个红包都没有呢</view>
  27 +</view>
  28 +<navigator url="./list" hover-class="navigator-hover">
  29 + <view class="more-link flex-cc">
  30 + <view>查看红包历史记录</view>
  31 + <view class="more"></view>
  32 + </view>
  33 +</navigator>
@@ -3,127 +3,97 @@ page{ @@ -3,127 +3,97 @@ page{
3 background-color: #F5F5F5; 3 background-color: #F5F5F5;
4 } 4 }
5 .pages{ 5 .pages{
6 - /*background-image: url("http://nosqn.colorcun.com/activity/images/money-header.png");*/  
7 - background-image: url("http://nosqn.colorcun.com/activity/images/bg-black.png");  
8 - background-size: 100% auto;  
9 - background-repeat: no-repeat;  
10 - min-height: 500rpx;  
11 - padding-top: 80rpx; 6 + padding-bottom: 150rpx;
12 } 7 }
13 -.pages-view{ 8 +.list-view{
14 width: calc(100% - 40rpx); 9 width: calc(100% - 40rpx);
15 margin-left: 20rpx; 10 margin-left: 20rpx;
16 - height:340rpx;  
17 - background:#ffffff;  
18 - border-radius:20rpx;  
19 - box-sizing: border-box;  
20 - padding: 20rpx;  
21 -}  
22 -.money-block{  
23 - height:300rpx;  
24 background:rgba(255,255,255,1); 11 background:rgba(255,255,255,1);
25 border-radius:20rpx; 12 border-radius:20rpx;
26 - padding-top: 40rpx;  
27 box-sizing: border-box; 13 box-sizing: border-box;
  14 + padding: 20rpx 20rpx 40rpx;
  15 + margin-bottom: 20rpx;
  16 +}
  17 +.list-view-0{
  18 + background: none;
  19 + margin-top: 0rpx;
  20 + padding-bottom: 20rpx;
28 } 21 }
29 -.money-views-top{  
30 - width: 258rpx;  
31 - height: 40rpx; 22 +.sellername{
  23 + height:40rpx;
32 font-size:28rpx; 24 font-size:28rpx;
33 - margin-left: calc(50% - 126rpx);  
34 - text-align: center;  
35 - font-weight:500;  
36 - color:rgba(153,153,153,1); 25 + font-family:PingFangSC-Regular,PingFang SC;
  26 + font-weight:400;
  27 + color:rgba(53,53,53,1);
37 line-height:40rpx; 28 line-height:40rpx;
38 - position: relative;  
39 } 29 }
40 -.money-views-top:before{  
41 - position: absolute;  
42 - display: block;  
43 - content: ""; 30 +.more{
  31 + margin-left: 10rpx;
  32 +}
  33 +.quan{
  34 + margin-top: 20rpx;
  35 +}
  36 +.quan-tips{
  37 + height:50rpx;
  38 + background:rgba(245,245,245,1);
  39 + border-radius:0rpx 0rpx 10rpx 10rpx;
  40 + font-size:22rpx;
  41 + font-family:PingFangSC-Regular,PingFang SC;
  42 + font-weight:400;
  43 + color:rgba(136,136,136,1);
  44 + line-height:50rpx;
  45 + padding-left: 36rpx;
44 width: 100%; 46 width: 100%;
45 - height: 2rpx;  
46 - left:0;  
47 - top:19rpx;  
48 - background-color: #E0E0E0; 47 + box-sizing: border-box;
49 } 48 }
50 -.money-views-top .txt{  
51 - width: 138rpx;  
52 - background-color: #ffffff;  
53 - left:60rpx;  
54 - position: absolute; 49 +.pingtai{
  50 + background:rgba(255,255,255,1);
  51 + color:rgba(136,136,136,1);
55 } 52 }
56 53
57 -.money-views{  
58 - height:100rpx;  
59 - font-size:72rpx;  
60 - font-weight:600;  
61 - color:#353535;  
62 - line-height:100rpx;  
63 - margin-top: 10rpx;  
64 -}  
65 -.money-dw{  
66 - width:32rpx; 54 +.button-use{
  55 + width:120rpx;
67 height:44rpx; 56 height:44rpx;
68 - font-size:32rpx;  
69 - font-weight:600;  
70 - color:#353535; 57 + background:linear-gradient(180deg,rgba(231,66,88,1) 0%,rgba(243,53,78,1) 100%);
  58 + border-radius:6rpx;
  59 + font-size:24rpx;
  60 + font-family:PingFangSC-Medium,PingFang SC;
  61 + font-weight:500;
  62 + color:rgba(255,227,192,1);
71 line-height:44rpx; 63 line-height:44rpx;
72 - margin-left: 20rpx; 64 + text-align: center;
73 } 65 }
74 -.list-view{  
75 - width: calc(100% - 40rpx);  
76 - margin-left: 20rpx; 66 +.more-link{
  67 + height:120rpx;
77 background:rgba(255,255,255,1); 68 background:rgba(255,255,255,1);
78 - border-radius:20rpx;  
79 - box-sizing: border-box;  
80 - padding: 2rpx 40rpx 0;  
81 - margin-top: 20rpx; 69 + box-shadow:0rpx -4rpx 10rpx 0rpx rgba(219,219,219,1);
  70 + position: fixed;
  71 + bottom:0;
  72 + left:0;
  73 + width: 100%;
  74 + line-height: 120rpx;
  75 +
  76 + font-size:30rpx;
  77 + font-family:PingFangSC-Regular,PingFang SC;
  78 + font-weight:400;
  79 + color:rgba(153,153,153,1);
82 } 80 }
83 -.item{  
84 - height: 166rpx;  
85 - box-sizing: border-box;  
86 - border-bottom: 2rpx solid #F5F5F5;  
87 - line-height: 166rpx;  
88 - padding-top: 40rpx; 81 +.more-link .more{
  82 + margin-left: 20rpx;
89 } 83 }
90 -.item:last-child{  
91 - border-bottom-width: 0; 84 +.empty-img{
  85 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/empty.png");
  86 + background-size: 100% 100%;
  87 + width:302rpx;
  88 + height:408rpx;
  89 + margin-top: 300rpx;
92 } 90 }
93 -.item .name{ 91 +.empty-txt{
94 height:44rpx; 92 height:44rpx;
95 font-size:32rpx; 93 font-size:32rpx;
96 - font-weight:500; 94 + font-family:PingFangSC-Regular,PingFang SC;
  95 + font-weight:400;
97 color:rgba(53,53,53,1); 96 color:rgba(53,53,53,1);
98 line-height:44rpx; 97 line-height:44rpx;
99 - box-sizing: border-box;  
100 -}  
101 -.item .date{  
102 - height:34rpx;  
103 - font-size:24rpx;  
104 - font-weight:500;  
105 - color:rgba(153,153,153,1);  
106 - line-height:34rpx;  
107 - margin-top: 10rpx;  
108 -}  
109 -  
110 -.yuding{  
111 - width:320rpx;  
112 - height:70rpx;  
113 - background:linear-gradient(360deg,rgba(192,163,105,1) 0%,rgba(252,210,167,1) 100%);  
114 - border-radius:35rpx;  
115 - font-size:32rpx;  
116 - font-family:PingFangSC-Semibold,PingFang SC;  
117 - font-weight:600;  
118 - color:rgba(123,81,42,1);  
119 - line-height:70rpx;  
120 - margin-left: calc(50% - 160rpx);  
121 margin-top: 40rpx; 98 margin-top: 40rpx;
122 -}  
123 -.yuding .icon{  
124 - background-size: 100% 100%;  
125 - width: 30rpx;  
126 - height: 30rpx;  
127 - background-image: url("http://nosqn.colorcun.com/activity/images/addr.png");  
128 - margin-right: 20rpx;  
129 } 99 }
@@ -128,6 +128,12 @@ Page({ @@ -128,6 +128,12 @@ Page({
128 if(mapParam.lat){ 128 if(mapParam.lat){
129 this.param.centre_pos=`${mapParam.lat},${mapParam.lng}` 129 this.param.centre_pos=`${mapParam.lat},${mapParam.lng}`
130 } 130 }
  131 + if(this.param.keyword=" "){
  132 + delete this.param.keyword
  133 + }
  134 + if(mapParam.isopen_md){
  135 + this.param.isopen_md=1
  136 + }
131 }else{ 137 }else{
132 //计算视窗中心 138 //计算视窗中心
133 let map=JSON.parse(mapParam.map); 139 let map=JSON.parse(mapParam.map);
@@ -660,6 +660,19 @@ @@ -660,6 +660,19 @@
660 "pathName": "pack-book/pages/checkout/invoice", 660 "pathName": "pack-book/pages/checkout/invoice",
661 "query": "rid=62346", 661 "query": "rid=62346",
662 "scene": null 662 "scene": null
  663 + },
  664 + {
  665 + "id": -1,
  666 + "name": "pack-activity/pack/pack",
  667 + "pathName": "pack-activity/pack/pack",
  668 + "query": "",
  669 + "scene": null
  670 + },
  671 + {
  672 + "id": -1,
  673 + "name": "pack-activity/pack/list",
  674 + "pathName": "pack-activity/pack/list",
  675 + "scene": null
663 } 676 }
664 ] 677 ]
665 } 678 }