Showing
3 changed files
with
24 additions
and
10 deletions
@@ -77,26 +77,27 @@ const component = { | @@ -77,26 +77,27 @@ const component = { | ||
77 | uid: req.user.uid || 0 | 77 | uid: req.user.uid || 0 |
78 | }; | 78 | }; |
79 | 79 | ||
80 | - model.product(params).then(result => { | 80 | + Promise.all([model.product(params), model.getVipData(params)]).then((result) => { |
81 | let vipPrice = []; | 81 | let vipPrice = []; |
82 | 82 | ||
83 | // 最近浏览存储cookies | 83 | // 最近浏览存储cookies |
84 | - if (_.has(result.data, 'product_skn') && !req.user.uid) { | ||
85 | - saveRecentGoodInCookies(req.cookies._browseskn_h5, res, result.data.product_skn); | 84 | + if (_.has(result[0].data, 'product_skn') && !req.user.uid) { |
85 | + saveRecentGoodInCookies(req.cookies._browseskn_h5, res, result[0].data.product_skn); | ||
86 | } | 86 | } |
87 | 87 | ||
88 | - if (result.data.vip) { | ||
89 | - for (let val of result.data.vip) { | 88 | + if (result[0].data.vip) { |
89 | + for (let val of result[0].data.vip) { | ||
90 | vipPrice.push({ | 90 | vipPrice.push({ |
91 | level: vipLe(val.caption), | 91 | level: vipLe(val.caption), |
92 | - price: val.price | 92 | + price: val.price, |
93 | + currentVip: req.user.uid && parseInt(result[1].data.current_vip_level, 10) === vipLe(val.caption) ? 'active' : '' | ||
93 | }); | 94 | }); |
94 | } | 95 | } |
95 | 96 | ||
96 | - result.data.vipPrice = vipPrice; | 97 | + result[0].data.vipPrice = vipPrice; |
97 | } | 98 | } |
98 | 99 | ||
99 | - res.json(result); | 100 | + res.json(result[0]); |
100 | }).catch(next); | 101 | }).catch(next); |
101 | }, | 102 | }, |
102 | intro(req, res, next) { | 103 | intro(req, res, next) { |
@@ -82,6 +82,14 @@ const model = { | @@ -82,6 +82,14 @@ const model = { | ||
82 | return result; | 82 | return result; |
83 | }); | 83 | }); |
84 | }, | 84 | }, |
85 | + getVipData(params) { | ||
86 | + return api.get('', { | ||
87 | + method: 'app.passport.vip', | ||
88 | + uid: params.uid | ||
89 | + }, { | ||
90 | + code: 200 | ||
91 | + }); | ||
92 | + }, | ||
85 | intro(params) { | 93 | intro(params) { |
86 | return api.get('', Object.assign({ | 94 | return api.get('', Object.assign({ |
87 | method: 'h5.product.intro' | 95 | method: 'h5.product.intro' |
@@ -14,7 +14,7 @@ | @@ -14,7 +14,7 @@ | ||
14 | <ul class="vip-level" v-if="entity.vipPrice"> | 14 | <ul class="vip-level" v-if="entity.vipPrice"> |
15 | <li class="icons-item" v-for="vip in entity.vipPrice"> | 15 | <li class="icons-item" v-for="vip in entity.vipPrice"> |
16 | <span class="vip-img vip-{{vip.level}}"></span> | 16 | <span class="vip-img vip-{{vip.level}}"></span> |
17 | - <span class="vip-price">{{vip.price}}</span> | 17 | + <span class="vip-price {{vip.currentVip}}">{{vip.price}}</span> |
18 | </li> | 18 | </li> |
19 | </ul> | 19 | </ul> |
20 | </div> | 20 | </div> |
@@ -369,13 +369,18 @@ | @@ -369,13 +369,18 @@ | ||
369 | width: 33.3%; | 369 | width: 33.3%; |
370 | height: 90px; | 370 | height: 90px; |
371 | font-size: 22px; | 371 | font-size: 22px; |
372 | - line-height: 90px; | 372 | + line-height: 95px; |
373 | + color: #b0b0b0; | ||
373 | 374 | ||
374 | span { | 375 | span { |
375 | display: inline-block; | 376 | display: inline-block; |
376 | padding-left: 8px; | 377 | padding-left: 8px; |
377 | vertical-align: middle; | 378 | vertical-align: middle; |
378 | } | 379 | } |
380 | + | ||
381 | + .active { | ||
382 | + color: #000; | ||
383 | + } | ||
379 | } | 384 | } |
380 | 385 | ||
381 | .vip-img { | 386 | .vip-img { |
-
Please register or login to post a comment