Authored by zhangxiaoru

分享优化

@@ -17,9 +17,10 @@ let channels = { @@ -17,9 +17,10 @@ let channels = {
17 17
18 exports.promotion = (req, res, next) => { 18 exports.promotion = (req, res, next) => {
19 let uid = req.user.uid, 19 let uid = req.user.uid,
20 - isApp = req.yoho.isApp; 20 + isApp = req.yoho.isApp,
  21 + contentCode = 'fa046a09b7c2c0e06927162404d95111';
21 22
22 - req.ctx(expandModel).promotionData(uid, isApp).then(result => { 23 + req.ctx(expandModel).promotionData(uid, isApp, contentCode).then(result => {
23 res.render('expand-new/my-promotion', { 24 res.render('expand-new/my-promotion', {
24 pageHeader: headerModel.setNav({ 25 pageHeader: headerModel.setNav({
25 navTitle: '邀请好友', 26 navTitle: '邀请好友',
@@ -96,14 +97,11 @@ exports.friendInvite = (req, res, next) => { @@ -96,14 +97,11 @@ exports.friendInvite = (req, res, next) => {
96 (req.cookies._Channel && channels[req.cookies._Channel]) || 1; 97 (req.cookies._Channel && channels[req.cookies._Channel]) || 1;
97 let limit = 10; 98 let limit = 10;
98 let page = req.query.page || 1; 99 let page = req.query.page || 1;
99 - let uid = req.user.uid;  
100 let isApp = req.yoho.isApp; 100 let isApp = req.yoho.isApp;
101 - let name = req.query.friend; 101 + let inciteCode = req.query.inviteCode;
  102 + let contentCode = 'bc31b5d58b5af4e3999e8b994fb2bbc1';
102 103
103 - req.ctx(expandModel).friendInvite(uid, yhChannel, limit, page).then(result => {  
104 - if (name) {  
105 - result.name = '“' + name + '”';  
106 - } 104 + req.ctx(expandModel).friendInvite(inciteCode, yhChannel, limit, page, contentCode).then(result => {
107 res.render('expand-new/friend-invite', { 105 res.render('expand-new/friend-invite', {
108 pageHeader: headerModel.setNav({ 106 pageHeader: headerModel.setNav({
109 navTitle: '好友邀请' 107 navTitle: '好友邀请'
@@ -40,9 +40,9 @@ module.exports = class extends global.yoho.BaseModel { @@ -40,9 +40,9 @@ module.exports = class extends global.yoho.BaseModel {
40 /** 40 /**
41 * 资源位 41 * 资源位
42 */ 42 */
43 - _getTrendPop() { 43 + _getTrendPop(contentCode) {
44 return service.get('operations/api/v5/resource/get', { 44 return service.get('operations/api/v5/resource/get', {
45 - content_code: 'fa046a09b7c2c0e06927162404d95111', 45 + content_code: contentCode,
46 }).then(result => { 46 }).then(result => {
47 if (result && result.code === 200 && result.data) { 47 if (result && result.code === 200 && result.data) {
48 return result.data[0]; 48 return result.data[0];
@@ -52,12 +52,12 @@ module.exports = class extends global.yoho.BaseModel { @@ -52,12 +52,12 @@ module.exports = class extends global.yoho.BaseModel {
52 }); 52 });
53 } 53 }
54 54
55 - promotionData(uid, isApp) {  
56 - return api.all([this._getPromotionData(uid, isApp), this._getTrendPop()]).then(result => { 55 + promotionData(uid, isApp, contentCode) {
  56 + return api.all([this._getPromotionData(uid, isApp), this._getTrendPop(contentCode)]).then(result => {
57 let friendPromotionData = {}; 57 let friendPromotionData = {};
58 58
59 friendPromotionData = Object.assign(friendPromotionData, result[0]); 59 friendPromotionData = Object.assign(friendPromotionData, result[0]);
60 - friendPromotionData.bannerSrc = _.get(result[7], 'data[0].src', ''); 60 + friendPromotionData.bannerSrc = _.get(result[1], 'data[0].src', '');
61 61
62 return friendPromotionData; 62 return friendPromotionData;
63 }); 63 });
@@ -159,21 +159,6 @@ module.exports = class extends global.yoho.BaseModel { @@ -159,21 +159,6 @@ module.exports = class extends global.yoho.BaseModel {
159 } 159 }
160 160
161 /** 161 /**
162 - * 好友邀请页  
163 - */  
164 - friendInvite(uid, yhChannel, limit, page) {  
165 - return api.all([this._getPromotionData(uid), this._hotGoods(yhChannel, limit, page)]).then(result => {  
166 - let friendInviteData = {};  
167 -  
168 - friendInviteData.hotGoods = result[1];  
169 -  
170 - friendInviteData = Object.assign(friendInviteData, result[0]);  
171 -  
172 - return friendInviteData;  
173 - });  
174 - }  
175 -  
176 - /**  
177 * 好友邀请信息 162 * 好友邀请信息
178 */ 163 */
179 inviteUserInfo(inviteCode) { 164 inviteUserInfo(inviteCode) {
@@ -185,4 +170,23 @@ module.exports = class extends global.yoho.BaseModel { @@ -185,4 +170,23 @@ module.exports = class extends global.yoho.BaseModel {
185 return result; 170 return result;
186 }); 171 });
187 } 172 }
  173 +
  174 + /**
  175 + * 好友邀请页
  176 + */
  177 + friendInvite(inciteCode, yhChannel, limit, page, contentCode) {
  178 + return api.all([this.inviteUserInfo(inciteCode), this._hotGoods(yhChannel, limit, page),
  179 + this._getTrendPop(contentCode)]).then(result => {
  180 +
  181 + let friendInviteData = {};
  182 +
  183 + friendInviteData.hotGoods = result[1];
  184 +
  185 + friendInviteData = Object.assign(friendInviteData, result[0].data);
  186 +
  187 + friendInviteData.imgSrc = _.get(result[2], 'data[0].src', '');
  188 +
  189 + return friendInviteData;
  190 + });
  191 + }
188 }; 192 };
1 <div class="friend-invite-page yoho-page"> 1 <div class="friend-invite-page yoho-page">
2 {{# friendInviteData}} 2 {{# friendInviteData}}
3 <div class="banner"> 3 <div class="banner">
4 - <span class="title">您的好友{{name}}<br><b>邀请您来有货玩潮流</b></span>  
5 - <div class="tip-text">{{{invitedFriendWelfare}}}</div> 4 + <span class="title">您的好友{{nickname}}<br><b>邀请您来有货玩潮流</b></span>
  5 + <div class="tip-text">
  6 + <img src="{{image imgSrc 636 311}}">
  7 + </div>
6 <a class="btn"></a> 8 <a class="btn"></a>
7 </div> 9 </div>
8 <div class="recommend-goods"> 10 <div class="recommend-goods">
@@ -3,8 +3,9 @@ @@ -3,8 +3,9 @@
3 <span class="close-invite">×</span> 3 <span class="close-invite">×</span>
4 <img class="head-ico" src="{{headIco}}http://img11.static.yhbimg.com/yhb-img01/2016/07/05/13/017ec560b82c132ab2fdb22f7cf6f42b83.png"> 4 <img class="head-ico" src="{{headIco}}http://img11.static.yhbimg.com/yhb-img01/2016/07/05/13/017ec560b82c132ab2fdb22f7cf6f42b83.png">
5 <span class="invite-name">"{{nickname}}"邀请你来有货玩潮流</span> 5 <span class="invite-name">"{{nickname}}"邀请你来有货玩潮流</span>
6 - <p class="invite-trend">#{{trendWord}}#</p>  
7 - <a href="//m.yohobuy.com/activity/friend-invite?friend={{nickname}}" class="invite-go">现在就去</a> 6 + <p class="invite-trend"># {{trendWord}} #</p>
  7 + <a href="//m.yohobuy.com/activity/friend-invite?inviteCode={{inviteCode}}" class="invite-go">现在就去</a>
8 </div> 8 </div>
9 <div id="no-download"></div> 9 <div id="no-download"></div>
  10 +<a class="share-packet" href="//m.yohobuy.com/activity/friend-invite?inviteCode={{inviteCode}}"></a>
10 {{/inviteShare}} 11 {{/inviteShare}}
1 /** 1 /**
2 * 邀请码分享头部 2 * 邀请码分享头部
3 */ 3 */
  4 +require('common/_invite-share.css');
4 require('common'); 5 require('common');
5 let $ = require('yoho-jquery'); 6 let $ = require('yoho-jquery');
6 let inviteCode = window.queryString.inviteCode; 7 let inviteCode = window.queryString.inviteCode;
1 require('layout/_swiper.css'); 1 require('layout/_swiper.css');
2 require('product/search/list.page.css'); 2 require('product/search/list.page.css');
3 require('product/shop/redshop.page.css'); 3 require('product/shop/redshop.page.css');
4 -require('common/_invite-share.css');  
5 4
6 const $ = require('yoho-jquery'); 5 const $ = require('yoho-jquery');
7 const allProduct = require('./shop/all-product'); 6 const allProduct = require('./shop/all-product');
@@ -3,7 +3,6 @@ @@ -3,7 +3,6 @@
3 */ 3 */
4 4
5 require('product/shop/shop.page.css'); 5 require('product/shop/shop.page.css');
6 -require('common/_invite-share.css');  
7 require('./shop/coupon'); 6 require('./shop/coupon');
8 7
9 let $ = require('yoho-jquery'), 8 let $ = require('yoho-jquery'),
@@ -27,11 +27,8 @@ @@ -27,11 +27,8 @@
27 } 27 }
28 28
29 .tip-text { 29 .tip-text {
30 - margin: 56px 56px 0;  
31 - line-height: 49px;  
32 - font-size: 24px;  
33 - text-align: left;  
34 - font-weight: 700; 30 + width: 628px;
  31 + margin: 10px;
35 } 32 }
36 33
37 .btn { 34 .btn {
@@ -63,3 +63,17 @@ @@ -63,3 +63,17 @@
63 color: #fff; 63 color: #fff;
64 } 64 }
65 } 65 }
  66 +
  67 +.share-packet {
  68 + display: block;
  69 + width: 181px;
  70 + height: 246px;
  71 + background-image: resolve("activity/expand-new/share-packet.gif");
  72 + background-size: 100%;
  73 + background-repeat: no-repeat;
  74 + position: absolute;
  75 + z-index: 100;
  76 + right: 0;
  77 + top: 50%;
  78 + margin-top: -120px;
  79 +}
@@ -9,4 +9,3 @@ @@ -9,4 +9,3 @@
9 @import "cart/chose-panel"; 9 @import "cart/chose-panel";
10 @import "common/suspend-home"; 10 @import "common/suspend-home";
11 @import "bundle"; 11 @import "bundle";
12 -@import "common/invite-share";