Commit a9f0884b860dffc00a49efd2f5dd2c758674fbab
1 parent
d7548408
充值有礼
Showing
6 changed files
with
239 additions
and
84 deletions
packageA/pages/chongzhi/chongzhi.js
1 | // packageA//pages/chongzhi/chongzhi.js | 1 | // packageA//pages/chongzhi/chongzhi.js |
2 | +const app = getApp(); | ||
3 | + | ||
4 | +// var e = function(e) { | ||
5 | +// return e && e.__esModule ? e : { | ||
6 | +// default: e | ||
7 | +// }; | ||
8 | +// }(require("../../../utils/LoadMore.js")); | ||
9 | + | ||
10 | + | ||
2 | Page({ | 11 | Page({ |
3 | 12 | ||
4 | /** | 13 | /** |
5 | * 页面的初始数据 | 14 | * 页面的初始数据 |
6 | */ | 15 | */ |
7 | data: { | 16 | data: { |
17 | + url: app.globalData.setting.imghost, | ||
18 | + imgAd: '', | ||
19 | + | ||
8 | currentIndex: 0, | 20 | currentIndex: 0, |
21 | + list: null, | ||
22 | + | ||
23 | + // 检测是否已经发送请求,防止重复发送请求 | ||
24 | + isLoading: false, | ||
25 | + // 检测是否有更多数据,true为没有更多数据,false为还有数据 | ||
26 | + noMore: false, | ||
27 | + // 当前页数 | ||
28 | + pageNum: 1, | ||
29 | + | ||
9 | }, | 30 | }, |
10 | 31 | ||
11 | /** | 32 | /** |
12 | * 生命周期函数--监听页面加载 | 33 | * 生命周期函数--监听页面加载 |
13 | */ | 34 | */ |
14 | onLoad: function (options) { | 35 | onLoad: function (options) { |
15 | - | 36 | + |
37 | + console.log('userInfo',app.globalData.userInfo); | ||
38 | + var self = this; | ||
39 | + this.getData(true,'/api/weshop/users/pageNewVIPAddMoney',{ | ||
40 | + store_id: app.globalData.userInfo.store_id, | ||
41 | + user_id: app.globalData.userInfo.user_id, | ||
42 | + IsPos: 0, | ||
43 | + }); | ||
44 | + | ||
45 | + app.request.get('/api/weshop/ad/list', { | ||
46 | + data: { | ||
47 | + pid: 601, | ||
48 | + store_id: app.globalData.userInfo.store_id, | ||
49 | + enabled: 1, | ||
50 | + }, | ||
51 | + success: function (res) { | ||
52 | + // console.log('604',res.data.data[0].ad_code); | ||
53 | + self.setData({ | ||
54 | + imgAd: res.data.data[0].ad_code | ||
55 | + }); | ||
56 | + }, | ||
57 | + }); | ||
16 | }, | 58 | }, |
17 | 59 | ||
18 | /** | 60 | /** |
@@ -54,7 +96,29 @@ Page({ | @@ -54,7 +96,29 @@ Page({ | ||
54 | * 页面上拉触底事件的处理函数 | 96 | * 页面上拉触底事件的处理函数 |
55 | */ | 97 | */ |
56 | onReachBottom: function () { | 98 | onReachBottom: function () { |
57 | - | 99 | + console.log('上拉加载'); |
100 | + var data = this.data.saveData; | ||
101 | + // 数据总量 | ||
102 | + var total = this.data.result.total; | ||
103 | + // 单页最大数据量 | ||
104 | + var pageSize = this.data.result.pageSize; | ||
105 | + | ||
106 | + if((total !== 0)&&(total <= pageSize)) { | ||
107 | + this.setData({ | ||
108 | + noMore: true | ||
109 | + }); | ||
110 | + }; | ||
111 | + | ||
112 | + if(!this.data.isLoading && !this.data.noMore) { | ||
113 | + this.setData({ | ||
114 | + isLoading: true, | ||
115 | + pageNum: this.data.pageNum + 1 | ||
116 | + }); | ||
117 | + | ||
118 | + data.page = this.data.pageNum; | ||
119 | + | ||
120 | + this.getData(false,'/api/weshop/users/pageNewVIPAddMoney',data); | ||
121 | + }; | ||
58 | }, | 122 | }, |
59 | 123 | ||
60 | /** | 124 | /** |
@@ -64,9 +128,104 @@ Page({ | @@ -64,9 +128,104 @@ Page({ | ||
64 | 128 | ||
65 | }, | 129 | }, |
66 | 130 | ||
131 | + | ||
67 | onClickTab(e) { | 132 | onClickTab(e) { |
133 | + var data = { | ||
134 | + store_id: app.globalData.userInfo.store_id, | ||
135 | + user_id: app.globalData.userInfo.user_id, | ||
136 | + page: 1, | ||
137 | + }; | ||
138 | + | ||
68 | this.setData({ | 139 | this.setData({ |
69 | - currentIndex: e.target.dataset.index | 140 | + currentIndex: e.target.dataset.index, |
141 | + list: [], | ||
142 | + }); | ||
143 | + | ||
144 | + if(e.target.dataset.index == 0) { | ||
145 | + data.IsPos = 0; | ||
146 | + | ||
147 | + } else { | ||
148 | + data.IsPos = 1; | ||
149 | + | ||
150 | + this.setData({ | ||
151 | + saveData: data | ||
152 | + }); | ||
153 | + } | ||
154 | + | ||
155 | + this.getData(true,'/api/weshop/users/pageNewVIPAddMoney',data); | ||
156 | + }, | ||
157 | + | ||
158 | + | ||
159 | + // 请求数据 | ||
160 | + getData(isInit, url, data, callback) { | ||
161 | + var self = this; | ||
162 | + // 请求数据 | ||
163 | + app.request.get(url, { | ||
164 | + data: data, | ||
165 | + success: function (res) { | ||
166 | + console.log('res-->', res); | ||
167 | + // 请求成功后,把正在请求加载状态置为false | ||
168 | + self.setData({ | ||
169 | + isLoading: false, | ||
170 | + }); | ||
171 | + // 检测是否是初始化第一次加载 | ||
172 | + if(isInit) { | ||
173 | + //第一页数据直接赋值 | ||
174 | + self.setData({ | ||
175 | + list: res.data.data.pageData, | ||
176 | + // 这里保存了一份完整的响应数据 | ||
177 | + result: res.data.data, | ||
178 | + }); | ||
179 | + } else { | ||
180 | + // 下一页的数据拼接在原有数据后面 | ||
181 | + self.setData({ | ||
182 | + list: self.data.list.concat(res.data.data.pageData) | ||
183 | + }); | ||
184 | + }; | ||
185 | + console.log('result', self.data.list); | ||
186 | + // 回调函数 | ||
187 | + if(callback) callback(); | ||
188 | + // 1、第一次请求返回的数据为空,显示‘没有更多了’; | ||
189 | + // 2、后面的请求,如果返回的数据为空,就表示没有下一页了,noMore置为true,这样上拉加载scrollToLower不再发起请求; | ||
190 | + if((res.data.data.pageData.length === 0) || (res.data.data.total <= res.data.data.pageSize)) { | ||
191 | + self.setData({ | ||
192 | + noMore: true | ||
193 | + }); | ||
194 | + }; | ||
195 | + }, | ||
70 | }); | 196 | }); |
71 | }, | 197 | }, |
198 | + | ||
199 | + | ||
200 | + viewDetails(e) { | ||
201 | + let id = e.target.dataset.id; | ||
202 | + // console.log('eeeeeeeeeee', id); | ||
203 | + app.goto('../chongzhiDetails/chongzhiDetails?id=' + id); | ||
204 | + }, | ||
205 | + | ||
206 | + | ||
207 | + // 检测上拉滚动到底部 | ||
208 | + // scrollToLower: function (requestData, callback) { | ||
209 | + // // 数据总量 | ||
210 | + // var total = this.data.result.total; | ||
211 | + // // 单页最大数据量 | ||
212 | + // var pageSize = this.data.result.pageSize; | ||
213 | + | ||
214 | + // if((total !== 0)&&(total <= pageSize)) { | ||
215 | + // this.setData({ | ||
216 | + // noMore: true | ||
217 | + // }); | ||
218 | + // }; | ||
219 | + | ||
220 | + // if(!this.data.isLoading && !this.data.noMore) { | ||
221 | + // this.setData({ | ||
222 | + // isLoading: true, | ||
223 | + // pageNum: this.data.pageNum + 1 | ||
224 | + // }); | ||
225 | + | ||
226 | + // requestData.data.page = this.data.pageNum; | ||
227 | + | ||
228 | + // this.getData(false, requestData, callback); | ||
229 | + // }; | ||
230 | + // }, | ||
72 | }) | 231 | }) |
73 | \ No newline at end of file | 232 | \ No newline at end of file |
packageA/pages/chongzhi/chongzhi.wxml
1 | <view class="container"> | 1 | <view class="container"> |
2 | <!-- 封面 --> | 2 | <!-- 封面 --> |
3 | - <view class="banner-container"><image class="img-block"></image></view> | 3 | + <view class="banner-container"><image class="img-block" src="{{url + imgAd}}"></image></view> |
4 | <!-- 列表 --> | 4 | <!-- 列表 --> |
5 | <view> | 5 | <view> |
6 | <!-- 标题 --> | 6 | <!-- 标题 --> |
@@ -11,31 +11,34 @@ | @@ -11,31 +11,34 @@ | ||
11 | <!-- 内容 --> | 11 | <!-- 内容 --> |
12 | <view class="list"> | 12 | <view class="list"> |
13 | 13 | ||
14 | - <view class="l-item"> | ||
15 | - <!-- 上 --> | ||
16 | - <view class="top flex"> | ||
17 | - <!-- 左 --> | ||
18 | - <view class="left"> | ||
19 | - <image class="img-block"></image> | ||
20 | - </view> | ||
21 | - <!-- 右 --> | ||
22 | - <view class="right"> | ||
23 | - <view class="fs28 ellipsis-2 txt-justify">充值方案名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称</view> | ||
24 | - <view> | ||
25 | - <view class="price fs24">零售价:<text>¥</text>100.00</view> | ||
26 | - <view class="date fs24">兑换截止日期:2020-09-17 17:00:00</view> | 14 | + |
15 | + <view class="l-item" wx:for="{{list}}"> | ||
16 | + <!-- 上 --> | ||
17 | + <view class="{{currentIndex == 0 ? 'top flex':'flex'}}"> | ||
18 | + <!-- 左 --> | ||
19 | + <!-- <view class="left"> | ||
20 | + <image class="img-block"></image> | ||
21 | + </view> --> | ||
22 | + <!-- 右 --> | ||
23 | + <view class="right"> | ||
24 | + <view class="fs28 ellipsis-2 txt-justify">{{item.ActName}}</view> | ||
25 | + <view> | ||
26 | + <view class="price fs24">零售价:¥{{item.PosPrice}}</view> | ||
27 | + <view class="date fs24">{{(currentIndex == 0 ? '兑换截止日期': '核销时间') + ':' + item.BeginDate + '至' + item.EndDate}}</view> | ||
28 | + </view> | ||
27 | </view> | 29 | </view> |
28 | </view> | 30 | </view> |
31 | + <!-- 下 --> | ||
32 | + <view class="bottom" wx:if="{{currentIndex == 0}}" bindtap="viewDetails"> | ||
33 | + <text class="btn" data-id="{{item.ID}}">立即使用</text> | ||
34 | + </view> | ||
29 | </view> | 35 | </view> |
30 | - <!-- 下 --> | ||
31 | - <view class="bottom"> | ||
32 | - <text class="btn">立即使用</text> | ||
33 | - </view> | ||
34 | - </view> | 36 | + |
37 | + | ||
35 | 38 | ||
36 | 39 | ||
37 | - <nodata nodataContainer="nodata">暂无数据</nodata> | ||
38 | - <view class="no-more t-c">- 已全部加载 -</view> | 40 | + <nodata nodataContainer="nodata" wx:if="{{list.length === 0}}">暂无数据</nodata> |
41 | + <view hidden="{{!noMore}}" class="no-more t-c" wx:if="{{list.length !== 0}}">- 已全部加载 -</view> | ||
39 | 42 | ||
40 | 43 | ||
41 | </view> | 44 | </view> |
packageA/pages/chongzhi/chongzhi.wxss
@@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
2 | @charset "utf-8"; | 2 | @charset "utf-8"; |
3 | 3 | ||
4 | page { | 4 | page { |
5 | - background-color: #f2f2f2; | 5 | + background-color: #FA437E; |
6 | } | 6 | } |
7 | 7 | ||
8 | .banner-container { | 8 | .banner-container { |
@@ -69,7 +69,7 @@ page { | @@ -69,7 +69,7 @@ page { | ||
69 | display: block; | 69 | display: block; |
70 | width: 100%; | 70 | width: 100%; |
71 | height: 100%; | 71 | height: 100%; |
72 | - background-color: gray; | 72 | + background-color: #ccc; |
73 | } | 73 | } |
74 | 74 | ||
75 | 75 | ||
@@ -114,11 +114,15 @@ page { | @@ -114,11 +114,15 @@ page { | ||
114 | 114 | ||
115 | .nodata { | 115 | .nodata { |
116 | text-align: center; | 116 | text-align: center; |
117 | - background-color: #f2f2f2; | 117 | + /* background-color: #f2f2f2; */ |
118 | } | 118 | } |
119 | 119 | ||
120 | .no-more { | 120 | .no-more { |
121 | line-height: 3; | 121 | line-height: 3; |
122 | color: #ccc; | 122 | color: #ccc; |
123 | font-size: 26rpx; | 123 | font-size: 26rpx; |
124 | +} | ||
125 | + | ||
126 | +.t-c { | ||
127 | + text-align: center; | ||
124 | } | 128 | } |
125 | \ No newline at end of file | 129 | \ No newline at end of file |
packageA/pages/chongzhiDetails/chongzhiDetails.js
1 | // packageA//pages/chongzhiDetails/chongzhiDetails.js | 1 | // packageA//pages/chongzhiDetails/chongzhiDetails.js |
2 | +var util = require('../../../utils/util.js'); | ||
3 | + | ||
4 | +const app = getApp(); | ||
5 | + | ||
2 | Page({ | 6 | Page({ |
3 | 7 | ||
4 | /** | 8 | /** |
@@ -6,13 +10,31 @@ Page({ | @@ -6,13 +10,31 @@ Page({ | ||
6 | */ | 10 | */ |
7 | data: { | 11 | data: { |
8 | showCode: false, | 12 | showCode: false, |
13 | + result: null, | ||
9 | }, | 14 | }, |
10 | 15 | ||
11 | /** | 16 | /** |
12 | * 生命周期函数--监听页面加载 | 17 | * 生命周期函数--监听页面加载 |
13 | */ | 18 | */ |
14 | onLoad: function (options) { | 19 | onLoad: function (options) { |
15 | - | 20 | + const self = this; |
21 | + app.request.get('/api/weshop/users/getBuyaddmoneyactDetails', { | ||
22 | + data: { | ||
23 | + Id:options.id, | ||
24 | + store_id:1, | ||
25 | + user_id:6519826, | ||
26 | + }, | ||
27 | + success: function (res) { | ||
28 | + self.setData({ | ||
29 | + result: res.data.data | ||
30 | + }); | ||
31 | + | ||
32 | + console.log('33333333--->', ); | ||
33 | + }, | ||
34 | + }); | ||
35 | + | ||
36 | + | ||
37 | + // this.data.result.WriteOffCode | ||
16 | }, | 38 | }, |
17 | 39 | ||
18 | /** | 40 | /** |
@@ -65,6 +87,8 @@ Page({ | @@ -65,6 +87,8 @@ Page({ | ||
65 | }, | 87 | }, |
66 | 88 | ||
67 | onUse() { | 89 | onUse() { |
90 | + | ||
91 | + | ||
68 | if(this.data.showCode) { | 92 | if(this.data.showCode) { |
69 | this.setData({ | 93 | this.setData({ |
70 | showCode: false | 94 | showCode: false |
@@ -73,6 +97,9 @@ Page({ | @@ -73,6 +97,9 @@ Page({ | ||
73 | this.setData({ | 97 | this.setData({ |
74 | showCode: true | 98 | showCode: true |
75 | }); | 99 | }); |
100 | + | ||
101 | + var qrcode = this.selectComponent("#qrcode"); //组件的id | ||
102 | + qrcode.open(util.base64_encode(this.data.result.WriteOffCode + '|' + util.formatTime())); | ||
76 | }; | 103 | }; |
77 | } | 104 | } |
78 | }) | 105 | }) |
79 | \ No newline at end of file | 106 | \ No newline at end of file |
packageA/pages/chongzhiDetails/chongzhiDetails.json
1 | { | 1 | { |
2 | "navigationBarTitleText": "充值有礼", | 2 | "navigationBarTitleText": "充值有礼", |
3 | "enablePullDownRefresh": false, | 3 | "enablePullDownRefresh": false, |
4 | - "usingComponents": {} | 4 | + "usingComponents": { |
5 | + "qrcode":"/components/qr_code/qr_code" | ||
6 | + } | ||
5 | } | 7 | } |
6 | \ No newline at end of file | 8 | \ No newline at end of file |
packageA/pages/chongzhiDetails/chongzhiDetails.wxml
@@ -12,61 +12,20 @@ | @@ -12,61 +12,20 @@ | ||
12 | <view>你的美丽我来缔造</view> | 12 | <view>你的美丽我来缔造</view> |
13 | </view> | 13 | </view> |
14 | </view> | 14 | </view> |
15 | - | ||
16 | - <view class="list-item flex"> | ||
17 | - <!-- 左 --> | ||
18 | - <view class="avatar"><text class="iconfont icon-meirong2"></text></view> | ||
19 | - <!-- 右 --> | ||
20 | - <view class="info"> | ||
21 | - <view class="c-y">美甲</view> | ||
22 | - <view class="fs28 pdv10 txt-justify">节日可免费享受专业美甲,可以享受1次。</view> | ||
23 | - <view class="t-r fs24 c-y">数量:1</view> | ||
24 | - </view> | ||
25 | - </view> | ||
26 | - | ||
27 | - <view class="list-item flex"> | ||
28 | - <!-- 左 --> | ||
29 | - <view class="avatar"><text class="iconfont icon-meirong2"></text></view> | ||
30 | - <!-- 右 --> | ||
31 | - <view class="info"> | ||
32 | - <view class="c-y">美甲</view> | ||
33 | - <view class="fs28 pdv10 txt-justify">节日可免费享受专业美甲,可以享受1次。</view> | ||
34 | - <view class="t-r fs24 c-y">数量:1</view> | ||
35 | - </view> | ||
36 | - </view> | ||
37 | - | ||
38 | - <view class="list-item flex"> | ||
39 | - <!-- 左 --> | ||
40 | - <view class="avatar"><text class="iconfont icon-meirong2"></text></view> | ||
41 | - <!-- 右 --> | ||
42 | - <view class="info"> | ||
43 | - <view class="c-y">美甲</view> | ||
44 | - <view class="fs28 pdv10 txt-justify">节日可免费享受专业美甲,可以享受1次。</view> | ||
45 | - <view class="t-r fs24 c-y">数量:1</view> | 15 | +<!-- <block wx:for="{{list}}"> --> |
16 | + <view class="list-item flex" wx:for="{{result.givelist}}"> | ||
17 | + <!-- 左 --> | ||
18 | + <view class="avatar"><text class="iconfont icon-meirong2"></text></view> | ||
19 | + <!-- 右 --> | ||
20 | + <view class="info"> | ||
21 | + <view class="">{{item.GiveName}}</view> | ||
22 | + <!-- <view class="fs28 pdv10 txt-justify">节日可免费享受专业美甲,可以享受1次。</view> --> | ||
23 | + <view class="t-r fs24 c-y">数量:{{item.Qty}}</view> | ||
24 | + </view> | ||
46 | </view> | 25 | </view> |
47 | - </view> | ||
48 | - | ||
49 | - <view class="list-item flex"> | ||
50 | - <!-- 左 --> | ||
51 | - <view class="avatar"><text class="iconfont icon-meirong2"></text></view> | ||
52 | - <!-- 右 --> | ||
53 | - <view class="info"> | ||
54 | - <view class="c-y">美甲</view> | ||
55 | - <view class="fs28 pdv10 txt-justify">节日可免费享受专业美甲,可以享受1次。</view> | ||
56 | - <view class="t-r fs24 c-y">数量:1</view> | ||
57 | - </view> | ||
58 | - </view> | 26 | + <!-- </block> --> |
59 | 27 | ||
60 | - <view class="list-item flex"> | ||
61 | - <!-- 左 --> | ||
62 | - <view class="avatar"><text class="iconfont icon-meirong2"></text></view> | ||
63 | - <!-- 右 --> | ||
64 | - <view class="info"> | ||
65 | - <view class="c-y">美甲</view> | ||
66 | - <view class="fs28 pdv10 txt-justify">节日可免费享受专业美甲,可以享受1次。</view> | ||
67 | - <view class="t-r fs24 c-y">数量:1</view> | ||
68 | - </view> | ||
69 | - </view> | 28 | + |
70 | </view> | 29 | </view> |
71 | 30 | ||
72 | </view> | 31 | </view> |
@@ -77,8 +36,9 @@ | @@ -77,8 +36,9 @@ | ||
77 | 36 | ||
78 | <view class="qr-container" wx:if="{{showCode}}" bindtap="onUse"> | 37 | <view class="qr-container" wx:if="{{showCode}}" bindtap="onUse"> |
79 | <view class="qr"> | 38 | <view class="qr"> |
80 | - <view class="qr-img"><image class="img-block" src="../../../images/123456.jpg"></image></view> | ||
81 | - <view>核销码:123456456</view> | 39 | + <!-- <view class="qr-img"><image class="img-block" src="../../../images/123456.jpg"></image></view> --> |
40 | + <qrcode id="qrcode" ></qrcode> | ||
41 | + <view>核销码:{{result.WriteOffCode}}</view> | ||
82 | </view> | 42 | </view> |
83 | </view> | 43 | </view> |
84 | 44 |