Authored by Rock Zhang

Merge branch 'develop' of git.dev.yoho.cn:web/yohobuy into develop

Conflicts:
	framework
@@ -45,16 +45,17 @@ class GradeData @@ -45,16 +45,17 @@ class GradeData
45 } 45 }
46 46
47 /** 47 /**
48 - * 获取用户基本信息数据??获取不到 48 + * 获取用户基本信息数据
49 */ 49 */
50 -// public function getUserProfileData($gender, $uid, $channel) {  
51 -// $param = Yohobuy::param();  
52 -// $param['gender'] = $gender;  
53 -// $param['uid'] = $uid;  
54 -// $param['yh_channel'] = $channel;  
55 -// $param['method'] = 'app.passport.profile';  
56 -// $param['client_secret'] = Sign::getSign($param);  
57 -// var_dump(Yohobuy::post(Yohobuy::API_URL,$param));  
58 -// } 50 + public function getUserProfileData($gender, $uid, $channel) {
  51 + $param = Yohobuy::param();
  52 + $param['gender'] = $gender;
  53 + $param['uid'] = $uid;
  54 + $param['yh_channel'] = $channel;
  55 + $param['method'] = 'app.passport.profile';
  56 + $param['client_secret'] = Sign::getSign($param);
  57 +
  58 + return Yohobuy::get("http://api.open.yohobuy.com/",$param);
  59 + }
59 60
60 } 61 }
@@ -4,6 +4,7 @@ @@ -4,6 +4,7 @@
4 * @date: 2015/11/10 4 * @date: 2015/11/10
5 */ 5 */
6 6
7 -require('./index');  
8 require('./order'); 7 require('./order');
9 -require('./coupons'); 8 +require('./fav');
  9 +require('./index');
  10 +require('./coupons');
  1 +/**
  2 + * 个人中心--收藏
  3 + * @author: chenglong<chenglong.wang@yoho.cn>
  4 + * @date: 2015/11/12
  5 + */
  6 +
  7 +var $ = require('jquery'),
  8 + Hammer = require('yoho.hammer'),
  9 + lazyLoad = require('yoho.lazyload');
  10 +
  11 +var $navLi = $('#fav-tab > li'),
  12 + $favContainer = $('.fav-content');
  13 +
  14 +var $curContainer = $favContainer.children('.fav-type').first();//保存当前显示的$favContainer
  15 +
  16 +var favTabHammer;
  17 +
  18 +//lazyLoad();
  19 +
  20 +favTabHammer = new Hammer(document.getElementById('fav-tab'));
  21 +favTabHammer.on('tap', function(e) {
  22 + console.log(1);
  23 + var $cur = $(e.target).closest('li'),
  24 + index;
  25 +
  26 + if ($cur.length === 0 || $cur.hasClass('active')) {
  27 + return;
  28 + }
  29 +
  30 + index = $cur.index();
  31 +
  32 + $navLi.filter('.active').removeClass('active');
  33 + $cur.addClass('active');
  34 +
  35 + $curContainer.addClass('hide');
  36 + $curContainer = $favContainer.children(':eq(' + index + ')').removeClass('hide');
  37 +});
  1 +/**
  2 + * 个人中心--意见反馈
  3 + * @author: chenglong<chenglong.wang@yoho.cn>
  4 + * @date: 2015/11/12
  5 + */
  6 +
  7 +var $ = require('jquery'),
  8 + Hammer = require('yoho.hammer'),
  9 + lazyLoad = require('yoho.lazyload');
  10 +
  11 +var $navLi = $('#fav-tab > li'),
  12 + $favContainer = $('.fav-content');
  13 +
  14 +var $curContainer = $favContainer.children('.fav-type').first();//保存当前显示的$favContainer
  15 +
  16 +var favTabHammer;
  17 +
  18 +//lazyLoad();
  19 +
  20 +favTabHammer = new Hammer(document.getElementById('fav-tab'));
  21 +favTabHammer.on('tap', function(e) {
  22 + console.log(1);
  23 + var $cur = $(e.target).closest('li'),
  24 + index;
  25 +
  26 + if ($cur.length === 0 || $cur.hasClass('active')) {
  27 + return;
  28 + }
  29 +
  30 + index = $cur.index();
  31 +
  32 + $navLi.filter('.active').removeClass('active');
  33 + $cur.addClass('active');
  34 +
  35 + $curContainer.addClass('hide');
  36 + $curContainer = $favContainer.children(':eq(' + index + ')').removeClass('hide');
  37 +});
1 var $ = require('jquery'); 1 var $ = require('jquery');
2 2
3 $.ajax({ 3 $.ajax({
4 - type: 'POST',  
5 - url: 'http://m.dev.yohobuy.com/product/newsale/selectHotrank', 4 + type: 'GET',
  5 + url: '/product/newsale/selectHotrank',
6 dataType: 'html', 6 dataType: 'html',
7 success: function(date) { 7 success: function(date) {
8 $('#hotRank').append(date); 8 $('#hotRank').append(date);
  1 +@charset "utf-8";
  2 +
1 @import "compass", "compass/reset"; 3 @import "compass", "compass/reset";
2 $pxConvertRem: 40; 4 $pxConvertRem: 40;
3 5
@@ -61,6 +63,9 @@ a { @@ -61,6 +63,9 @@ a {
61 .hide { 63 .hide {
62 display: none; 64 display: none;
63 } 65 }
  66 +#show {
  67 + display: block;
  68 +}
64 69
65 .overflow-hidden { 70 .overflow-hidden {
66 overflow: hidden; 71 overflow: hidden;
@@ -122,4 +127,17 @@ a { @@ -122,4 +127,17 @@ a {
122 background-size: pxToRem(sprite-width($map)) pxToRem(sprite-height($map)); 127 background-size: pxToRem(sprite-width($map)) pxToRem(sprite-height($map));
123 } 128 }
124 129
125 -@import "layout/header", "layout/footer", "layout/footer_tab", "good", "filter", "loading", "passport/index", "guang/index", "home/index", "category/index", "product/index", "index/index", "shopping-cart/index", "me/index"; 130 +@import "layout/header";
  131 +@import "layout/footer";
  132 +@import "layout/footer_tab";
  133 +@import "good";
  134 +@import "filter";
  135 +@import "loading";
  136 +@import "passport/index";
  137 +@import "guang/index";
  138 +@import "home/index";
  139 +@import "category/index";
  140 +@import "product/index";
  141 +@import "index/index";
  142 +@import "shopping-cart/index";
  143 +@import "me/index"; //个人中心
  1 +$fav: sprite-map("me/fav/*.png",$spacing: 5px);
  2 +
  3 +.yoho-favorite-page {
  4 + width: 100%;
  5 + height: auto;
  6 +
  7 + // 选项卡切换
  8 + .fav-tab {
  9 + width: 100%;
  10 + height: pxToRem(88px);
  11 + line-height: pxToRem(88px);
  12 + border-bottom: 1px solid #e0e0e0;
  13 + color: #b0b0b0;
  14 + font-size: pxToRem(26px);
  15 +
  16 + li {
  17 + width: 50%;
  18 + height: 100%;
  19 + float: left;
  20 + text-align: center;
  21 +
  22 + &.active {
  23 + color: #444;
  24 + }
  25 +
  26 + &:nth-last-of-type(1) {
  27 + float: right;
  28 + position: relative;
  29 +
  30 + &:after {
  31 + content: '';
  32 + display: block;
  33 + width: 1px;
  34 + height: pxToRem(44px);
  35 + position: absolute;
  36 + left: 0;
  37 + top: pxToRem(22px);
  38 + background: #b0b0b0;
  39 + }
  40 + }
  41 + }
  42 + }
  43 +
  44 + //收藏主体
  45 + .fav-content {
  46 + padding: 0 pxToRem(30px);
  47 +
  48 + .fav-null {
  49 + font-size: pxToRem(22px);
  50 + color: #444;
  51 + display: block;
  52 + margin-top: pxToRem(100px);
  53 + text-align: center;
  54 +
  55 + &:before {
  56 + content: '';
  57 + display: block;
  58 + @include rem-sprite($fav, fav-null);
  59 + width: pxToRem(image_width(sprite-file($fav, fav-null)));
  60 + height: pxToRem(image_height(sprite-file($fav, fav-null)));
  61 +
  62 + margin: 0 auto pxToRem(45px) auto;
  63 + }
  64 + }
  65 +
  66 + .go-shopping {
  67 + width: pxToRem(472px);
  68 + height: pxToRem(88px);
  69 + line-height: pxToRem(88px);
  70 + margin: pxToRem(125px) auto 0 auto;
  71 + background: #444;
  72 + text-align: center;
  73 + color: #fff;
  74 + display: block;
  75 + font-size: pxToRem(26px);
  76 + }
  77 + }
  78 +}
1 -@import "home", "vip-grade", "order", "coupons", "personal-details", "yoho-coin", "recommend-for-you";  
  1 +@import "home", "vip-grade", "order", "coupons", "personal-details", "yoho-coin", "recommend-for-you", "fav", "suggest";
  1 +$suggest: sprite-map("me/suggest/*.png",$spacing: 5px);
  2 +
  3 +.yoho-suggest-page {
  4 + width: 100%;
  5 + height: auto;
  6 +
  7 + // 意见反馈头部
  8 + .suggest-header {
  9 + text-align: center;
  10 + color: #fff;
  11 + font-size: pxToRem(26px);
  12 + line-height: pxToRem(46px);
  13 + overflow: hidden;
  14 + padding-bottom: pxToRem(20px);
  15 +
  16 + @include background-image(linear-gradient(#383838, #505050));
  17 +
  18 + &:before {
  19 + content: '';
  20 + display: block;
  21 +
  22 + @include rem-sprite($suggest, suggest-logo);
  23 + width: pxToRem(image_width(sprite-file($suggest, suggest-logo)));
  24 + height: pxToRem(image_height(sprite-file($suggest, suggest-logo)));
  25 +
  26 + margin: pxToRem(10px) auto pxToRem(15px) auto;
  27 + }
  28 + }
  29 +
  30 + //意见反馈主体
  31 + .suggest-content {
  32 + border-top: pxToRem(30px) solid #fff;
  33 +
  34 + .suggest-item {
  35 + width: 100%;
  36 + color: #444;
  37 + border-top: 1px solid #e0e0e0;
  38 + border-bottom: pxToRem(30px) solid #f0f0f0;
  39 +
  40 + > img {
  41 + display: block;
  42 + overflow: hidden;
  43 + width: 100%;
  44 + }
  45 +
  46 + > h2 {
  47 + font-size: pxToRem(38px);
  48 + margin: pxToRem(30px) 0 pxToRem(42px - 11px) 0;
  49 + padding: 0 pxToRem(35px);
  50 + }
  51 +
  52 + > p {
  53 + font-size: pxToRem(26px);
  54 + line-height: pxToRem(48px);
  55 + padding: 0 pxToRem(35px);
  56 + }
  57 +
  58 + .suggest-type {
  59 + margin-top: pxToRem(29px - 11px);
  60 + height: pxToRem(88px);
  61 + line-height: pxToRem(88px);
  62 + border-top: 1px solid #e0e0e0;
  63 + border-bottom: 1px solid #e0e0e0;
  64 + color: #b0b0b0;
  65 + font-size: pxToRem(26px);
  66 + display: none;
  67 +
  68 + > div {
  69 + width: 50%;
  70 + float: left;
  71 + text-align: left;
  72 + padding-left: pxToRem(128px);
  73 + @include box-sizing();
  74 +
  75 + &.active {
  76 + color: #444;
  77 +
  78 + > span {
  79 + display: inline-block;
  80 + height: 100%;
  81 + overflow: hidden;
  82 +
  83 + &:nth-of-type(1) {
  84 + @include rotate(180deg);
  85 + @include transition(transform .5);
  86 + }
  87 + }
  88 + }
  89 +
  90 + &:nth-last-of-type(1) {
  91 + padding-left: pxToRem(0);
  92 + padding-right: pxToRem(128px);
  93 + text-align: right;
  94 + float: right;
  95 + }
  96 + }
  97 +
  98 + &.active {
  99 + text-align: center;
  100 + color: #444;
  101 + }
  102 + }
  103 + }
  104 + }
  105 +}
1 -$vip: sprite-map("me/vip/*.png"); 1 +$vip: sprite-map("me/vip/*.png", $spacing: 10px);
2 2
3 .vip-grade-page { 3 .vip-grade-page {
4 background: #f0f0f0; 4 background: #f0f0f0;
@@ -22,8 +22,9 @@ $vip: sprite-map("me/vip/*.png"); @@ -22,8 +22,9 @@ $vip: sprite-map("me/vip/*.png");
22 22
23 .vip-icon { 23 .vip-icon {
24 display: inline-block; 24 display: inline-block;
25 - width: pxToRem(70px);  
26 - height: pxToRem(30px); 25 + width: pxToRem(72px);
  26 + height: pxToRem(32px);
  27 + vertical-align: sub;
27 } 28 }
28 29
29 .vip-3 { 30 .vip-3 {
@@ -39,7 +40,7 @@ $vip: sprite-map("me/vip/*.png"); @@ -39,7 +40,7 @@ $vip: sprite-map("me/vip/*.png");
39 } 40 }
40 41
41 .grade-desc { 42 .grade-desc {
42 - padding: 20rem / $pxConvertRem 0; 43 + margin-top: 20rem / $pxConvertRem;
43 font-size: 22rem / $pxConvertRem; 44 font-size: 22rem / $pxConvertRem;
44 color: #b0b0b0; 45 color: #b0b0b0;
45 } 46 }
@@ -49,6 +50,7 @@ $vip: sprite-map("me/vip/*.png"); @@ -49,6 +50,7 @@ $vip: sprite-map("me/vip/*.png");
49 50
50 > span { 51 > span {
51 font-style: italic; 52 font-style: italic;
  53 + font-size: 28rem / $pxConvertRem;
52 color: #d1021c; 54 color: #d1021c;
53 } 55 }
54 } 56 }
@@ -125,29 +127,6 @@ $vip: sprite-map("me/vip/*.png"); @@ -125,29 +127,6 @@ $vip: sprite-map("me/vip/*.png");
125 font-size: 30rem / $pxConvertRem; 127 font-size: 30rem / $pxConvertRem;
126 border-bottom: 1px solid #e0e0e0; 128 border-bottom: 1px solid #e0e0e0;
127 } 129 }
128 -  
129 - .icon {  
130 - float: left;  
131 - display: block;  
132 - width: pxToRem(70px);  
133 - height: pxToRem(70px);  
134 - }  
135 -  
136 - li {  
137 - height: 70rem / $pxConvertRem;  
138 - padding: 25rem / $pxConvertRem 0;  
139 - }  
140 -  
141 - P {  
142 - font-size: 28rem / $pxConvertRem;  
143 - margin-left: 100rem / $pxConvertRem;  
144 - }  
145 -  
146 - span {  
147 - display: block;  
148 - color: #b0b0b0;  
149 - font-size: 22rem / $pxConvertRem;  
150 - }  
151 } 130 }
152 131
153 .all-privilege { 132 .all-privilege {
@@ -163,4 +142,36 @@ $vip: sprite-map("me/vip/*.png"); @@ -163,4 +142,36 @@ $vip: sprite-map("me/vip/*.png");
163 } 142 }
164 143
165 } 144 }
  145 +
  146 +}
  147 +
  148 +.vip-privilege-page {
  149 + padding: 0 20rem / $pxConvertRem;
  150 +}
  151 +
  152 +.privilege-list {
  153 + background: #fff;
  154 +
  155 + .icon {
  156 + float: left;
  157 + display: block;
  158 + width: pxToRem(70px);
  159 + height: pxToRem(70px);
  160 + }
  161 +
  162 + li {
  163 + height: 70rem / $pxConvertRem;
  164 + padding: 25rem / $pxConvertRem 0;
  165 + }
  166 +
  167 + P {
  168 + font-size: 28rem / $pxConvertRem;
  169 + margin-left: 100rem / $pxConvertRem;
  170 + }
  171 +
  172 + span {
  173 + display: block;
  174 + color: #b0b0b0;
  175 + font-size: 22rem / $pxConvertRem;
  176 + }
166 } 177 }
  1 +{{> layout/header}}
  2 +<div class="yoho-favorite-page yoho-page">
  3 + {{# favorite}}
  4 + <ul id="fav-tab" class="fav-tab">
  5 + <li class="active">收藏的商品</li>
  6 + <li>收藏的品牌</li>
  7 + </ul>
  8 + <div class="fav-content">
  9 + <div class="fav-type">
  10 + {{# hasFavProduct}}
  11 +
  12 + {{/ hasFavProduct}}
  13 +
  14 + {{^ hasFavProduct}}
  15 + <span class="fav-null">您暂无收藏任何商品</span>
  16 + <a class="go-shopping" href="#">随便逛逛</a>
  17 + {{/ hasFavProduct}}
  18 + </div>
  19 + <div class="fav-type hide">
  20 + {{# hasFavBrand}}
  21 +
  22 + {{/ hasFavBrand}}
  23 +
  24 + {{^ hasFavBrand}}
  25 + <span class="fav-null">您暂无收藏任何品牌</span>
  26 + <a class="go-shopping" href="#">随便逛逛</a>
  27 + {{/ hasFavBrand}}
  28 + </div>
  29 + </div>
  30 + {{/ favorite}}
  31 +</div>
  32 +{{> layout/footer}}
1 {{> layout/header}} 1 {{> layout/header}}
2 -<div class="vip-grade-page yoho-page"> 2 +<div class="vip-privilege-page yoho-page">
3 {{# vipGrade}} 3 {{# vipGrade}}
4 {{> me/vip-grade/privilege}} 4 {{> me/vip-grade/privilege}}
5 {{/ vipGrade}} 5 {{/ vipGrade}}
  1 +{{> layout/header}}
  2 +<div class="yoho-suggest-page yoho-page">
  3 + {{# suggest}}
  4 + <h2 class="suggest-header">
  5 + 为了更好的改进我们的服务,提升用户体验,<br />
  6 + 我们希望了解您的意见和建议
  7 + </h2>
  8 +
  9 + <div class="suggest-content" id="suggest-content">
  10 + {{# suggestContent}}
  11 + <div class="suggest-item">
  12 + <img src="{{imgUrl}}" alt=""/>
  13 + <h2>{{title}}</h2>
  14 + <p>{{content}}</p>
  15 +
  16 + <!--bad传true表示点了不靠谱,false表示没有任何动作-->
  17 + <!--good传true表示点了靠谱,false表示没有任何动作-->
  18 + <div id="{{^ good}}show{{/ good}}" class="suggest-type">
  19 + <div>
  20 + <span class="iconfont">&#xe601;</span>
  21 + <span>靠谱</span>
  22 + </div>
  23 + <div class="{{# bad}}active{{/ bad}}">
  24 + <span class="iconfont">&#xe601;</span>
  25 + <span>不靠谱</span>
  26 + </div>
  27 + </div>
  28 +
  29 + <div id="{{# good}}show{{/ good}}" class="suggest-type active">
  30 + <span class="iconfont">&#xe601;</span>
  31 + <span>靠谱,谢谢您的反馈</span>
  32 + </div>
  33 + </div>
  34 + {{/ suggestContent}}
  35 + </div>
  36 + {{/ suggest}}
  37 +</div>
  38 +{{> layout/footer}}
@@ -23,9 +23,9 @@ @@ -23,9 +23,9 @@
23 </div> 23 </div>
24 {{/unless}} 24 {{/unless}}
25 25
26 - <a class="all-privilege block" href="{{allUrl}}" > 26 + <a class="all-privilege block" href="{{allUrl}}">
27 查看全部VIP特权 27 查看全部VIP特权
28 - <span class="iconfont>&#xe604;</span> 28 + <span class="iconfont">&#xe604;</span>
29 </a> 29 </a>
30 {{/ vipGrade}} 30 {{/ vipGrade}}
31 </div> 31 </div>
@@ -212,8 +212,16 @@ @@ -212,8 +212,16 @@
212 seajs.use('js/me/order'); 212 seajs.use('js/me/order');
213 </script> 213 </script>
214 {{/if}} 214 {{/if}}
  215 +
  216 +{{!-- 个人中心: 商品收藏&品牌收藏 --}}
  217 +{{#if favPage}}
  218 +<script>
  219 + seajs.use('js/me/fav');
  220 +</script>
  221 +{{/if}}
  222 +
215 {{#if couponsPage}} 223 {{#if couponsPage}}
216 <script> 224 <script>
217 seajs.use('js/me/coupons'); 225 seajs.use('js/me/coupons');
218 </script> 226 </script>
219 -{{/if}} 227 +{{/if}}
@@ -7,7 +7,7 @@ @@ -7,7 +7,7 @@
7 您已升级至最高的等级啦! 7 您已升级至最高的等级啦!
8 </p> 8 </p>
9 <p class="sum-cost"> 9 <p class="sum-cost">
10 - 年度累计金额<span>¥{{costOfThisYear}}</span> 10 + 年度累计金额<span> ¥ {{costOfThisYear}}</span>
11 </p> 11 </p>
12 <div class="progresser"> 12 <div class="progresser">
13 <div class="outer"></div> 13 <div class="outer"></div>
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 <span class="sub-desc">(VIP金额累计需订单成功签收满15天并无退换货)</span> 28 <span class="sub-desc">(VIP金额累计需订单成功签收满15天并无退换货)</span>
29 </p> 29 </p>
30 <p class="sum-cost"> 30 <p class="sum-cost">
31 - 年度累计金额<span>¥{{costOfThisYear}}</span> 31 + 年度累计金额<span> ¥ {{costOfThisYear}}</span>
32 </p> 32 </p>
33 <div class="progresser"> 33 <div class="progresser">
34 <div class="outer"></div> 34 <div class="outer"></div>
@@ -51,7 +51,7 @@ @@ -51,7 +51,7 @@
51 <span class="sub-desc">(VIP金额累计需订单成功签收满15天并无退换货)</span> 51 <span class="sub-desc">(VIP金额累计需订单成功签收满15天并无退换货)</span>
52 </p> 52 </p>
53 <p class="sum-cost"> 53 <p class="sum-cost">
54 - 年度累计金额<span>¥{{costOfThisYear}}</span> 54 + 年度累计金额<span> ¥ {{costOfThisYear}}</span>
55 </p> 55 </p>
56 <div class="progresser"> 56 <div class="progresser">
57 <div class="outer"></div> 57 <div class="outer"></div>
@@ -73,7 +73,7 @@ @@ -73,7 +73,7 @@
73 <span class="sub-desc">(VIP金额累计需订单成功签收满15天并无退换货)</span> 73 <span class="sub-desc">(VIP金额累计需订单成功签收满15天并无退换货)</span>
74 </p> 74 </p>
75 <p class="sum-cost"> 75 <p class="sum-cost">
76 - 年度累计金额<span>¥{{costOfThisYear}}</span> 76 + 年度累计金额<span> ¥ {{costOfThisYear}}</span>
77 </p> 77 </p>
78 <div class="progresser"> 78 <div class="progresser">
79 <div class="outer"></div> 79 <div class="outer"></div>
1 -<ul> 1 +<ul class="privilege-list">
2 {{#each privilege}} 2 {{#each privilege}}
3 <li> 3 <li>
4 <img class="icon" src="{{pic}}"> 4 <img class="icon" src="{{pic}}">
@@ -150,7 +150,20 @@ class HomeController extends AbstractAction @@ -150,7 +150,20 @@ class HomeController extends AbstractAction
150 150
151 $favProducts = \Index\UserModel::getFavProductData($uid); 151 $favProducts = \Index\UserModel::getFavProductData($uid);
152 152
153 - print_r($favProducts); 153 + //print_r($favProducts);
  154 +
  155 + $this->_view->display('favorite', array(
  156 + 'favPage' => true,
  157 + 'pageHeader' => array(
  158 + 'navBack' => true,
  159 + 'navTitle' => '我的收藏',
  160 + 'navHome' => true
  161 + ),
  162 + 'pageFooter' => true,
  163 + 'favorite' => true,
  164 + 'hasFavProduct' => false,
  165 + 'hasFavBrand' => false
  166 + ));
154 } 167 }
155 168
156 /** 169 /**
@@ -268,7 +281,37 @@ class HomeController extends AbstractAction @@ -268,7 +281,37 @@ class HomeController extends AbstractAction
268 281
269 $suggest = \Index\UserModel::getSuggestData($udid, $page, $limit); 282 $suggest = \Index\UserModel::getSuggestData($udid, $page, $limit);
270 283
271 - print_r($suggest); 284 + //print_r($suggest);
  285 + $this->_view->display('suggest', array(
  286 + 'suggestPage' => true,
  287 + 'pageHeader' => array(
  288 + 'navBack' => true,
  289 + 'navTitle' => '意见反馈'
  290 + ),
  291 + 'pageFooter' => true,
  292 + 'suggest' => true,
  293 + 'suggestContent' => array(
  294 + 0 => array(
  295 + 'imgUrl' => 'http://img11.static.yhbimg.com/yhb-img01/2015/09/12/06/0115bdfeb4a7dca4b4bfdf0e850f82f2a1.jpg?imageView/2/w/640/h/240',
  296 + 'title' => '为什么手机不能退换货?',
  297 + 'content' => 'YOHO!有货的退换货承诺:自您签收商品7日内可以退货,15日内可以换货,在商品吊牌、标签、包装完整,不影响二次销售的情况下,YOHO!有货将为您办理退换货服务。',
  298 + 'good' => true,
  299 + 'bad' => false),
  300 + 1 => array(
  301 + 'imgUrl' => 'http://img11.static.yhbimg.com/yhb-img01/2015/09/12/06/0115bdfeb4a7dca4b4bfdf0e850f82f2a1.jpg?imageView/2/w/640/h/240',
  302 + 'title' => '为什么手机不能退换货?',
  303 + 'content' => 'YOHO!有货的退换货承诺:自您签收商品7日内可以退货,15日内可以换货,在商品吊牌、标签、包装完整,不影响二次销售的情况下,YOHO!有货将为您办理退换货服务。',
  304 + 'good' => false,
  305 + 'bad' => true),
  306 + 2 => array(
  307 + 'imgUrl' => 'http://img11.static.yhbimg.com/yhb-img01/2015/09/12/06/0115bdfeb4a7dca4b4bfdf0e850f82f2a1.jpg?imageView/2/w/640/h/240',
  308 + 'title' => '为什么手机不能退换货?',
  309 + 'content' => 'YOHO!有货的退换货承诺:自您签收商品7日内可以退货,15日内可以换货,在商品吊牌、标签、包装完整,不影响二次销售的情况下,YOHO!有货将为您办理退换货服务。',
  310 + 'good' => false,
  311 + 'bad' => false)
  312 + )
  313 + ));
  314 +
272 } 315 }
273 316
274 /** 317 /**
@@ -300,8 +343,9 @@ class HomeController extends AbstractAction @@ -300,8 +343,9 @@ class HomeController extends AbstractAction
300 $gender = Helpers::getGenderByCookie(); 343 $gender = Helpers::getGenderByCookie();
301 $channel = Helpers::getChannelByCookie(); 344 $channel = Helpers::getChannelByCookie();
302 $uid = $this -> getUid(); 345 $uid = $this -> getUid();
303 - $uid = '10267443';//临时测试用 346 + $uid = '7566245';//临时测试用
304 $data = GradeModel::getGrade($gender,$channel,$uid); 347 $data = GradeModel::getGrade($gender,$channel,$uid);
  348 + $data['pageFooter'] = true;
305 $this -> _view -> display('vip-grade',$data); 349 $this -> _view -> display('vip-grade',$data);
306 } 350 }
307 /* 351 /*
@@ -316,6 +360,7 @@ class HomeController extends AbstractAction @@ -316,6 +360,7 @@ class HomeController extends AbstractAction
316 $channel = Helpers::getChannelByCookie(); 360 $channel = Helpers::getChannelByCookie();
317 $uid = $this -> getUid(); 361 $uid = $this -> getUid();
318 $data = GradeModel::getPreferential($channel,$uid); 362 $data = GradeModel::getPreferential($channel,$uid);
  363 + $data['pageFooter'] = true;
319 $this -> _view -> display('privilege',$data); 364 $this -> _view -> display('privilege',$data);
320 } 365 }
321 366
@@ -259,7 +259,7 @@ class UserModel @@ -259,7 +259,7 @@ class UserModel
259 259
260 // 调用接口获取地址数据 260 // 调用接口获取地址数据
261 $suggest = UserData::suggestData($udid, $page, $limit); 261 $suggest = UserData::suggestData($udid, $page, $limit);
262 - print_r($suggest); 262 + //print_r($suggest);
263 263
264 // 处理意见反馈数据 264 // 处理意见反馈数据
265 if (isset($suggest['data']) && !empty($suggest['data'])) { 265 if (isset($suggest['data']) && !empty($suggest['data'])) {
@@ -27,6 +27,7 @@ class GradeModel @@ -27,6 +27,7 @@ class GradeModel
27 } 27 }
28 //调用接口获取数据 28 //调用接口获取数据
29 $data = GradeData::getGradeData($channel, $uid); 29 $data = GradeData::getGradeData($channel, $uid);
  30 +
30 if (isset($data['code']) && $data['code'] === 200 && isset($data['data'])) { 31 if (isset($data['code']) && $data['code'] === 200 && isset($data['data'])) {
31 switch (intval($data['data']['current_vip_level'])) { 32 switch (intval($data['data']['current_vip_level'])) {
32 case 0://普通会员 33 case 0://普通会员
@@ -42,19 +43,25 @@ class GradeModel @@ -42,19 +43,25 @@ class GradeModel
42 $result['vipGrade']['vip3'] = true; 43 $result['vipGrade']['vip3'] = true;
43 break; 44 break;
44 } 45 }
  46 +
45 //今年总消费 47 //今年总消费
46 $result['vipGrade']['costOfThisYear'] = $data['data']['current_year_cost']; 48 $result['vipGrade']['costOfThisYear'] = $data['data']['current_year_cost'];
47 //升级下一等级会员的进度; 49 //升级下一等级会员的进度;
48 - $result['vipGrade']['percent'] = 100*(round(round($data['data']['current_total_cost'], 2) / round($data['data']['next_need_cost'], 2), 2)); 50 + $result['vipGrade']['percent'] = 100*(round($data['data']['current_total_cost'] / $data['data']['next_need_cost'], 2));
49 //距离升级所需消费金额 51 //距离升级所需消费金额
  52 +
50 if ($data['data']['current_vip_level'] != 3) { 53 if ($data['data']['current_vip_level'] != 3) {
51 $result['vipGrade']['costGap'] = $data['data']['upgrade_need_cost']; 54 $result['vipGrade']['costGap'] = $data['data']['upgrade_need_cost'];
52 } 55 }
53 //消费总计 56 //消费总计
54 $result['vipGrade']['sumCost'] = $data['data']['current_total_cost']; 57 $result['vipGrade']['sumCost'] = $data['data']['current_total_cost'];
55 - //username 接口问题取不到,暂时写uid  
56 - $result['vipGrade']['name'] = $uid; 58 + //username 调用获取用户基本信息数据,获得username;
  59 + $userProfile = GradeData::getUserProfileData($gender,$uid,$channel);
  60 + $result['vipGrade']['name'] = $userProfile['data']['username'];
  61 + //跳转url(会员特权详情)
57 $result['vipGrade']['allUrl'] = Helpers::url('/Home/preferential',null); 62 $result['vipGrade']['allUrl'] = Helpers::url('/Home/preferential',null);
  63 + //当前vip等级享受的特权
  64 + $result['vipGrade']['privilege'] = $data['data']['enjoy_preferential'];
58 } 65 }
59 66
60 if (USE_CACHE) { 67 if (USE_CACHE) {
@@ -119,7 +119,7 @@ class NewsaleController extends AbstractAction @@ -119,7 +119,7 @@ class NewsaleController extends AbstractAction
119 if (empty($result)) { 119 if (empty($result)) {
120 echo ' '; 120 echo ' ';
121 } else { 121 } else {
122 - $this->_view->display('product', $result); 122 + $this->_view->display('hotList', $result);
123 } 123 }
124 } 124 }
125 125