Commit 64128ee33546daacf0fafd16c6c05475d8501167
1 parent
eef50d4a
会员权益免费领取
Showing
7 changed files
with
158 additions
and
116 deletions
components/qr_code/qr_code.js
pages/user/index/index.js
... | ... | @@ -652,7 +652,8 @@ Page({ |
652 | 652 | getApp().goto("/pages/user/user_fw/user_fw?gradeId=" + th.data.gradeId + "&FormId=" + item.Id); |
653 | 653 | break; |
654 | 654 | case "03": |
655 | - getApp().goto("/pages/user/user_spsy/user_spsy"); | |
655 | + getApp().goto("/pages/user/user_spsy/user_spsy?img=" + | |
656 | + url + "&gradeId=" + th.data.gradeId + "&FormId=" + item.Id); | |
656 | 657 | break; |
657 | 658 | case "10": |
658 | 659 | getApp().request.get("/api/weshop/users/grade/vipprivilegelist/other/get", { | ... | ... |
pages/user/user_spsy/user_spsy.js
1 | 1 | // pages/user/usersy/usersy.js |
2 | -var e = getApp(),os = e.globalData.setting; | |
3 | -var utils = require('../../../utils/util.js'); | |
2 | +var e = getApp(), | |
3 | + os = e.globalData.setting; | |
4 | +var ut = require('../../../utils/util'); | |
4 | 5 | var regeneratorRuntime = require('../../../utils/runtime.js'); |
5 | 6 | |
6 | 7 | Page({ |
... | ... | @@ -8,27 +9,100 @@ Page({ |
8 | 9 | * 页面的初始数据 |
9 | 10 | */ |
10 | 11 | data: { |
11 | - qr_code_object:{val:"12121",content:"请将二维码展示给核销员,取货更快捷!"}, | |
12 | - xp_list:null, | |
13 | - iurl:os.imghost, | |
12 | + qr_code_object: {}, | |
13 | + xp_list: null, | |
14 | + iurl: os.imghost, | |
15 | + page: 1, | |
16 | + isLoading: 0, | |
17 | + no_more: 0, | |
18 | + is_use:0 //领取状态 | |
14 | 19 | }, |
15 | 20 | /** |
16 | 21 | * 生命周期函数--监听页面加载 |
17 | 22 | */ |
18 | - onLoad: function (options) { }, | |
23 | + onLoad: function (options) { | |
24 | + var h_pic = options.img; | |
25 | + if (h_pic.indexOf("http") == -1) { | |
26 | + h_pic = os.imghost + h_pic; | |
27 | + } | |
28 | + var FormId = options.FormId; | |
29 | + var GradeId = options.gradeId; | |
30 | + var now = ut.gettimestamp(); | |
31 | + this.setData({ | |
32 | + h_pic, | |
33 | + GradeId, | |
34 | + FormId, | |
35 | + now, | |
36 | + }); | |
37 | + this.requestData() | |
38 | + this.getQrCode(FormId) | |
39 | + }, | |
19 | 40 | /** |
20 | 41 | * 生命周期函数--监听页面显示 |
21 | 42 | */ |
22 | - onShow:async function () { | |
23 | - var th = this; | |
24 | - var xp_list=null; | |
25 | - //--获取列表-- | |
26 | - await getApp().request.promiseGet("http://172.20.3.102:8080/api/user_qy/xp_list", { | |
27 | - 1: 1 | |
28 | - }).then(res => { | |
29 | - xp_list = res.data; | |
30 | - }) | |
31 | - th.setData({xp_list:xp_list}); | |
43 | + onShow: function () { | |
44 | + | |
45 | + | |
46 | + }, | |
47 | + async getQrCode(id) { | |
48 | + const res = await getApp().request.promiseGet("/api/weshop/users/grade/wares/code/get", { | |
49 | + data: { | |
50 | + privilegeId: id, | |
51 | + storeId: os.stoid, | |
52 | + userId: getApp().globalData.user_id, | |
53 | + }, | |
54 | + }); | |
55 | + if (res.data.code == 0 && res.data.data) { | |
56 | + if(res.data.data.VerifyDate || res.data.data.VerifyNo){ | |
57 | + this.setData({ | |
58 | + is_use:1 | |
59 | + }) | |
60 | + }else{ | |
61 | + this.setData({ | |
62 | + qr_code_object: res.data.data, | |
63 | + }) | |
64 | + } | |
65 | + } | |
66 | + }, | |
67 | + async requestData() { | |
68 | + if (this.data.no_more) return false; | |
69 | + if (this.data.isLoading) return false; | |
70 | + this.data.isLoading = 1; | |
71 | + let { | |
72 | + GradeId, | |
73 | + FormId, | |
74 | + page, | |
75 | + xp_list | |
76 | + } = this.data; | |
77 | + let req_data = { | |
78 | + page, | |
79 | + GradeId, | |
80 | + FormId, | |
81 | + storeId: os.stoid, | |
82 | + userId: getApp().globalData.user_id, | |
83 | + } | |
84 | + const res = await getApp().request.promiseGet("/api/weshop/users/grade/wechat/wares/page", { | |
85 | + data: req_data | |
86 | + }); | |
87 | + | |
88 | + if (ut.ajax_ok(res)) { | |
89 | + if (res.data.data.page > 1) { | |
90 | + xp_list = xp_list.concat(res.data.data.pageData); | |
91 | + } else { | |
92 | + xp_list = res.data.data.pageData; | |
93 | + } | |
94 | + this.setData({ | |
95 | + xp_list, | |
96 | + isLoading: 0, | |
97 | + no_more: 0, | |
98 | + }) | |
99 | + } else { | |
100 | + this.setData({ | |
101 | + xp_list: [], | |
102 | + isLoading: 0, | |
103 | + no_more: 0, | |
104 | + }) | |
105 | + } | |
32 | 106 | }, |
33 | 107 | /** |
34 | 108 | * 页面上拉触底事件的处理函数 |
... | ... | @@ -46,26 +120,36 @@ Page({ |
46 | 120 | |
47 | 121 | |
48 | 122 | /*-- 打开服务项目 --*/ |
49 | - open_xp:function (e) { | |
50 | - var th=this; | |
123 | + open_xp: function (e) { | |
124 | + var th = this; | |
51 | 125 | var qc_com = this.selectComponent("#qc_com"); //组件的id |
52 | 126 | qc_com.open(th.data.qr_code_object) |
53 | 127 | }, |
54 | 128 | |
55 | 129 | //--领取商品-- |
56 | - get_xp:function (e) { | |
57 | - var th=this,index=e.currentTarget.dataset.ind; | |
58 | - getApp().request.post("http://172.20.3.102:8080/api/user_qy/get_gd",{ | |
59 | - data:{}, | |
60 | - success:function (e) { | |
61 | - if(e.data.code==0){ | |
62 | - var txt="xp_list["+index+"].is_get" | |
63 | - var obj={};obj[txt]=1; | |
64 | - th.setData(obj); | |
65 | - } | |
66 | - } | |
130 | + async show_hxm(e) { | |
131 | + let qr_code_object = this.data.qr_code_object; | |
132 | + if (qr_code_object !== {}) { | |
133 | + let { Number: val, BeginDate, EndDate} = qr_code_object; | |
134 | + let qr_code = this.selectComponent("#qc_com"); | |
135 | + let obj = { | |
136 | + val, | |
137 | + content: "请将二维码展示给核销员,抵券更快捷", | |
138 | + now: BeginDate, | |
139 | + validay: EndDate, | |
140 | + is_quan: 1, | |
141 | + }; | |
142 | + qr_code.open(obj) | |
143 | + }else{ | |
144 | + wx.showToast({ | |
145 | + title: "获取失败", | |
146 | + icon: 'none', | |
147 | + duration: 1000 | |
67 | 148 | }) |
68 | - } | |
69 | - | |
149 | + } | |
150 | + }, | |
70 | 151 | |
152 | + close:function (){ | |
153 | + this.getQrCode(this.data.FormId) | |
154 | + } | |
71 | 155 | }) |
72 | 156 | \ No newline at end of file | ... | ... |
pages/user/user_spsy/user_spsy.json
pages/user/user_spsy/user_spsy.wxml
1 | -<view class="xc-page" > | |
2 | - <view class="items" wx:for="{{xp_list}}"> | |
3 | - <view class="rel"> | |
4 | - <image class="new-product" src="{{iurl+item.img}}"></image> | |
5 | - <image wx:if="{{item.is_get}}" class="abs zimg" src="{{iurl}}/miniapp//images/userqy/isgeted.png"></image> | |
6 | - </view> | |
7 | - | |
8 | - <view class="product-explain three-level-word">{{item.goods_name}}</view> | |
9 | - <view class="xc-bottom flex"> | |
10 | - <view class="xc-goods-money three-level-word ">¥ | |
11 | - </view> | |
12 | - <view class="xc-money"> | |
13 | - {{item.goods_price}} | |
14 | - </view> | |
15 | - <view class="xc-clike-get t-c white" data-ind="{{index}}" bindtap="open_xp" wx:if="{{item.is_get}}">立即使用</view> | |
16 | - <view class="xc-clike-get t-c white" data-ind="{{index}}" bindtap="get_xp" wx:else>免费领取</view> | |
17 | - </view> | |
18 | -</view> | |
1 | +<view> | |
2 | + <image class="xc-coupon-img" src="{{h_pic}}"></image> | |
3 | + <view class="flex pd20 jc_sb fs28"> | |
4 | + <view>单品名称</view> | |
5 | + <view>数量</view> | |
6 | + </view> | |
7 | + <view class="flex pd20 jc_sb fs26" wx:for="{{xp_list}}" wx:key="id"> | |
8 | + <view>{{item.PrivilegeName}}</view> | |
9 | + <view class="c-a4">x{{item.SecondNo}}</view> | |
10 | + </view> | |
11 | + <view class="btn-container"> | |
12 | + <!-- <view wx:if="{{details.isget}}" data-type="1" class="btn" style="background-color:#aaa;color: #fff"> | |
13 | + 已使用{{list[0].freebh}} | |
14 | + </view> --> | |
15 | + <view wx:if="{{is_use}}" class="btn">已使用</view> | |
16 | + <view wx:else bindtap="show_hxm" data-type="1" class="btn">立即使用</view> | |
17 | + <!-- <view bindtap="right_use" class="btn">立即使用</view></view> --> | |
18 | + </view> | |
19 | 19 | </view> |
20 | 20 | |
21 | 21 | <!-- 弹出框扫描 --> |
22 | -<qr_code id="qc_com"></qr_code> | |
23 | - | |
24 | - | |
25 | - | |
26 | - | |
27 | - | |
28 | - | |
22 | +<qr_code id="qc_com" bindclose="close"></qr_code> | |
29 | 23 | \ No newline at end of file | ... | ... |
pages/user/user_spsy/user_spsy.wxss
... | ... | @@ -3,66 +3,28 @@ page{ |
3 | 3 | height: 100%; |
4 | 4 | background:#f4f5fa; |
5 | 5 | } |
6 | -.xc-page{ | |
7 | - width: 100%; | |
8 | - height: 100%; | |
9 | - background: #f4f5fa; | |
10 | -} | |
11 | -.xc-page .items{ | |
12 | - display: inline-block; | |
13 | - width: 345rpx; | |
14 | - height:450rpx; | |
15 | - margin-left:20rpx; | |
16 | - margin-top: 25rpx; | |
17 | - border-radius: 15rpx; | |
18 | - background:#fff; | |
19 | -} | |
20 | - | |
21 | -.xc-page .items .zimg{ | |
22 | - width: 120rpx; | |
23 | - height: 120rpx; | |
24 | - left:50%; top:50%; | |
25 | - margin-left: -60rpx; margin-top: -60rpx; | |
26 | -} | |
27 | - | |
28 | 6 | |
29 | -.new-product{ | |
30 | - width:345rpx; | |
31 | - height:325rpx; | |
32 | - border-radius:15rpx 15rpx 0 0; | |
33 | -} | |
34 | -.product-explain{ | |
35 | - width: 90%; | |
36 | - word-break:break-all; | |
37 | - height: 40rpx; | |
38 | - margin-left:15rpx; | |
39 | - | |
40 | -} | |
41 | -.xc-bottom{ | |
42 | - margin-top: 13rpx; | |
7 | +.xc-coupon-img{ | |
43 | 8 | width: 100%; |
44 | - margin-left: 15rpx; | |
45 | -} | |
46 | - | |
47 | -.xc-bottom .xc-goods-money{ | |
48 | -color: #ca4e59; | |
49 | - padding-top: 12rpx; | |
50 | -} | |
51 | -.xc-bottom .xc-money{ | |
52 | - color: #ca4e59; | |
53 | - font-size: 40rpx; | |
54 | - height: 100%; | |
55 | - line-height:50rpx | |
9 | + height: 330rpx; | |
10 | +} | |
11 | +.btn-container { | |
12 | + position: fixed; | |
13 | + left: 0; | |
14 | + bottom: 0; | |
15 | + width: 100%; | |
16 | + /* padding: 20rpx 30rpx; */ | |
17 | + box-sizing: border-box; | |
18 | + background-color: white; | |
19 | + border-top: 2rpx solid #f2f2f2; | |
20 | + z-index: 1; | |
56 | 21 | } |
57 | 22 | |
58 | -.xc-clike-get{ | |
59 | - width: 120rpx; | |
60 | - height: 36rpx; | |
61 | - border-radius: 20rpx; | |
62 | - background: #ca4e59; | |
63 | - line-height:28rpx; | |
64 | - font-size:27rpx; | |
65 | - margin-left: 120rpx; | |
66 | -padding-top: 10rpx | |
23 | +.btn { | |
24 | + background-color: #FF6768; | |
25 | + color: white; | |
26 | + padding: 26rpx; | |
27 | + text-align: center; | |
28 | + /* border-radius: 8rpx; */ | |
67 | 29 | } |
68 | 30 | ... | ... |
pages/user/userqy/userqy.js
... | ... | @@ -197,7 +197,7 @@ Page({ |
197 | 197 | getApp().goto("/pages/user/user_fw/user_fw?gradeId="+th.data.gradeId+"&FormId="+item.Id); |
198 | 198 | break; |
199 | 199 | case "03": |
200 | - getApp().goto("/pages/user/user_spsy/user_spsy"); | |
200 | + getApp().goto("/pages/user/user_spsy/user_spsy?img="+url+"&gradeId="+th.data.gradeId+"&FormId="+item.Id); | |
201 | 201 | break; |
202 | 202 | case "10": |
203 | 203 | getApp().request.get("/api/weshop/users/grade/vipprivilegelist/other/get",{ | ... | ... |