Authored by Lynnic

update

@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 "disallowSpaceBeforePostfixUnaryOperators": true, 15 "disallowSpaceBeforePostfixUnaryOperators": true,
16 "disallowSpaceBeforeSemicolon": true, 16 "disallowSpaceBeforeSemicolon": true,
17 "disallowSpacesInCallExpression": true, 17 "disallowSpacesInCallExpression": true,
18 - "disallowSpacesInFunctionDeclaration": { 18 + "disallowSpacesInFunction": {
19 "beforeOpeningRoundBrace": true 19 "beforeOpeningRoundBrace": true
20 }, 20 },
21 "disallowSpacesInsideArrayBrackets": true, 21 "disallowSpacesInsideArrayBrackets": true,
@@ -322,6 +322,25 @@ class UserData @@ -322,6 +322,25 @@ class UserData
322 } 322 }
323 323
324 /** 324 /**
  325 + * 意见靠谱,不靠谱接口
  326 + *
  327 + * @param int $uid 用户ID
  328 + * @param string $udid 客户端唯一标识
  329 + * @param int $suggest_id 意见id
  330 + * @return array 接口返回的数据
  331 + */
  332 + public static function upAndDown($uid, $udid, $suggest_id)
  333 + {
  334 + $param = Yohobuy::param();
  335 + $param['uid'] = $uid;
  336 + $param['udid'] = $udid;
  337 + $param['content'] = $suggest_id;
  338 + $param['client_secret'] = Sign::getSign($param);
  339 +
  340 + return Yohobuy::get(Yohobuy::SERVICE_URL . 'suggest/api/v1/suggest/is_reliable', $param);
  341 + }
  342 +
  343 + /**
325 * 提交意见反馈接口 344 * 提交意见反馈接口
326 * 345 *
327 * @param int $uid 用户ID 346 * @param int $uid 用户ID
@@ -83,6 +83,28 @@ $addressForm.on('submit', function() { @@ -83,6 +83,28 @@ $addressForm.on('submit', function() {
83 if (isSubmiting) { 83 if (isSubmiting) {
84 return false; 84 return false;
85 } 85 }
  86 +
  87 + // 简单的表单校验
  88 + if (!$(this).find('[name="consignee"]').val()) {
  89 + tip.show('收件人不能为空');
  90 + $(this).find('[name="consignee"]').focus();
  91 + return false;
  92 + }
  93 + if (!$(this).find('[name="mobile"]').val()) {
  94 + tip.show('手机号不能为空');
  95 + $(this).find('[name="mobile"]').focus();
  96 + return false;
  97 + }
  98 + if (!$(this).find('[name="area_code"]').val() || !$(this).find('[name="area"]').val()) {
  99 + tip.show('省市区不能为空');
  100 + return false;
  101 + }
  102 + if (!$(this).find('[name="address"]').val()) {
  103 + tip.show('地址不能为空');
  104 + $(this).find('[name="address"]').focus();
  105 + return false;
  106 + }
  107 +
86 isSubmiting = true; 108 isSubmiting = true;
87 $.ajax({ 109 $.ajax({
88 method: 'POST', 110 method: 'POST',
@@ -24,8 +24,8 @@ goodsSwiper = new Swiper('.banner-swiper', { @@ -24,8 +24,8 @@ goodsSwiper = new Swiper('.banner-swiper', {
24 loop: true, 24 loop: true,
25 paginationClickable: true, 25 paginationClickable: true,
26 pagination: '.banner-top .pagination-inner', 26 pagination: '.banner-top .pagination-inner',
27 - nextButton: '.swiper-button-next',  
28 - prevButton: '.swiper-button-prev' 27 + nextButton: '.my-swiper-button-next',
  28 + prevButton: '.my-swiper-button-prev'
29 }); 29 });
30 30
31 //初始化tab 31 //初始化tab
  1 +/**
  2 + * 提取URL中的参数
  3 + * @author: xuqi<qi.xu@yoho.cn>
  4 + * @date: 2015/11/19
  5 + */
  6 +
  7 +var opt = {};
  8 +
  9 +var paramStr = window.location.search.split('?')[1];
  10 +
  11 +var keyVal = paramStr.split('&');
  12 +
  13 +var i, key, val;
  14 +
  15 +for (i = keyVal.length; i > 0; i--) {
  16 + key = keyVal[i - 1].split('=');
  17 +
  18 + val = key[1];
  19 + key = key[0];
  20 +
  21 + //初始化默认参数
  22 + switch (key) {
  23 + case 'gender':
  24 + opt.gender = val;
  25 + break;
  26 + case 'brand':
  27 + opt.brand = val;
  28 + break;
  29 + case 'sort':
  30 + opt.sort = val;
  31 + break;
  32 + case 'msort':
  33 + opt.msort = val;
  34 + break;
  35 + case 'misort':
  36 + opt.misort = val;
  37 + break;
  38 + case 'color':
  39 + opt.color = val;
  40 + break;
  41 + case 'size':
  42 + opt.size = val;
  43 + break;
  44 + case 'price':
  45 + opt.price = val;
  46 + break;
  47 + case 'discount':
  48 + opt.discount = val;
  49 + break;
  50 + case 'query':
  51 + opt.query = val;
  52 + break;
  53 + case 'style':
  54 + opt.style = val;
  55 + break;
  56 + case 'limit':
  57 + opt.limit = val;
  58 + break;
  59 + case 'channel':
  60 + opt.channel = val;
  61 + break;
  62 + case 'p_d':
  63 + opt.p_d = val;
  64 + break;
  65 + case 'dayLimit':
  66 + opt.dayLimit = val;
  67 + break;
  68 + }
  69 +}
  70 +
  71 +module.exports = opt;
@@ -31,19 +31,7 @@ var $input = $('#search-input input'), @@ -31,19 +31,7 @@ var $input = $('#search-input input'),
31 $clear = $('#search-input .clear-input'); 31 $clear = $('#search-input .clear-input');
32 32
33 //默认筛选条件 33 //默认筛选条件
34 -var defaultOpt = {  
35 - gender: $('#gender').val(),  
36 - brand: $('#brand').val(),  
37 - sort: $('#sort').val(),  
38 - msort: $('#msort').val(),  
39 - misort: $('#misort').val(),  
40 - color: $('#color').val(),  
41 - size: $('#size').val(),  
42 - price: $('#price').val(),  
43 - discount: $('#discount').val(),  
44 - query: $('#query').val(),  
45 - style: $('#style').val()  
46 -}; 34 +var defaultOpt = require('./extract-url');
47 35
48 var $listNav = $('#list-nav'), 36 var $listNav = $('#list-nav'),
49 37
@@ -25,18 +25,7 @@ var winH = $(window).height(), @@ -25,18 +25,7 @@ var winH = $(window).height(),
25 noResult = '<p class="no-result">未找到相关搜索结果</p>'; 25 noResult = '<p class="no-result">未找到相关搜索结果</p>';
26 26
27 //默认筛选条件 27 //默认筛选条件
28 -var defaultOpt = {  
29 - gender: $('#gender').val(),  
30 - brand: $('#brand').val(),  
31 - sort: $('#sort').val(),  
32 - msort: $('#msort').val(),  
33 - misort: $('#misort').val(),  
34 - color: $('#color').val(),  
35 - size: $('#size').val(),  
36 - price: $('#price').val(),  
37 - discount: $('#discount').val(),  
38 - style: $('#style').val()  
39 -}; 28 +var defaultOpt = require('../extract-url');
40 29
41 var $listNav = $('#list-nav'), 30 var $listNav = $('#list-nav'),
42 31
@@ -28,22 +28,7 @@ var winH = $(window).height(), @@ -28,22 +28,7 @@ var winH = $(window).height(),
28 noResult = '<p class="no-result">未找到相关搜索结果</p>'; 28 noResult = '<p class="no-result">未找到相关搜索结果</p>';
29 29
30 //默认筛选条件 30 //默认筛选条件
31 -var defaultOpt = {  
32 - gender: $('#gender').val(),  
33 - brand: $('#brand').val(),  
34 - sort: $('#sort').val(),  
35 - msort: $('#msort').val(),  
36 - misort: $('#misort').val(),  
37 - color: $('#color').val(),  
38 - size: $('#size').val(),  
39 - price: $('#price').val(),  
40 - discount: $('#discount').val(),  
41 - limit: $('#limit').val(),  
42 - channel: $('#channel').val(),  
43 - p_d: $('#p_d').val(),  
44 - dayLimit: 1,  
45 - style: $('#style').val()  
46 -}; 31 +var defaultOpt = require('../extract-url');
47 32
48 var storeOpt = $.extend({}, defaultOpt); //存储默认筛选条件以便重置 33 var storeOpt = $.extend({}, defaultOpt); //存储默认筛选条件以便重置
49 34
@@ -4,54 +4,28 @@ $borderC:#e0e0e0; @@ -4,54 +4,28 @@ $borderC:#e0e0e0;
4 $tableCellC:#eee; 4 $tableCellC:#eee;
5 $basicBtnC:#eb0313; 5 $basicBtnC:#eb0313;
6 6
7 -.good-detail-page {  
8 -overflow: hidden;  
9 -/* basic component */  
10 -.page-block{  
11 - box-sizing:border-box;  
12 - width: 100%;  
13 - border-bottom: 2px solid $borderC;  
14 - border-top: 1px solid $borderC;  
15 - padding: 0 pxToRem(28px);  
16 - >.title{  
17 - line-height: pxToRem(88px);  
18 - color: $mainFontC;  
19 - font-size : pxToRem(28px);  
20 - border-bottom: 1px solid $borderC;  
21 -  
22 - span{  
23 - color:#a0a0a0;  
24 - font-size:pxToRem(18px);  
25 - }  
26 - }  
27 - .detail{  
28 - margin-top: pxToRem(20px);  
29 - margin-bottom: pxToRem(20px);  
30 - font-size: pxToRem(24px);  
31 - line-height: pxToRem(36px);  
32 -  
33 - &.table{  
34 - display: table;  
35 - width: 100%;  
36 - .row{  
37 - display: table-row;  
38 - .column{  
39 - display: table-cell;  
40 - padding: 0.4em 0.8em;  
41 - border:1px solid #fff;  
42 - font-size: pxToRem(24px);  
43 - background-color: $tableCellC;  
44 - }  
45 - }  
46 - }  
47 - } 7 +.my-swiper-button-prev,
  8 +.my-swiper-button-next {
  9 + position: absolute;
  10 + top: 50%;
  11 + width: pxToRem(48px);
  12 + height: pxToRem(48px);
  13 + margin-top: pxToRem(-44px);
  14 + cursor: pointer;
  15 + -moz-background-size: pxToRem(48px) pxToRem(48px);
  16 + -webkit-background-size: pxToRem(48px) pxToRem(48px);
  17 + background-size: pxToRem(48px) pxToRem(48px);
  18 + background-position: center;
  19 + background-repeat: no-repeat;
48 } 20 }
49 21
50 -.gap-block{  
51 - min-height: 30rem/$pxConvertRem;  
52 - background-color: #f0f0f0; 22 +.next-grey {
  23 + background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23f0f0f0'%2F%3E%3C%2Fsvg%3E");
  24 + right: pxToRem(30px);
  25 + left: auto;
53 } 26 }
54 27
  28 +<<<<<<< HEAD
55 .banner-container{ 29 .banner-container{
56 position: relative; 30 position: relative;
57 // overflow: hidden; 31 // overflow: hidden;
@@ -253,192 +227,375 @@ overflow: hidden; @@ -253,192 +227,375 @@ overflow: hidden;
253 .goodsSubtitle, 227 .goodsSubtitle,
254 .goodsDiscount{ 228 .goodsDiscount{
255 text-indent: pxToRem(-14px); 229 text-indent: pxToRem(-14px);
  230 +=======
  231 +.prev-grey {
  232 + background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23f0f0f0'%2F%3E%3C%2Fsvg%3E");
  233 + left: pxToRem(30px);
  234 + right: auto;
  235 +>>>>>>> e70906be965a981051214ab24fd534fcb709337e
256 } 236 }
257 -.feedback-list {  
258 - padding-top: pxToRem(30px);  
259 - background-color: #f0f0f0;  
260 -  
261 - .nodata{  
262 - height: pxToRem(88px);  
263 - background-color: #fff;  
264 - padding:0 pxToRem(28px);  
265 - span,a{  
266 - line-height: pxToRem(88px);  
267 - font-size: pxToRem(28px);  
268 - }  
269 - span{  
270 - color:$mainFontC;  
271 - }  
272 - a{  
273 - float: right;  
274 - color: $subFontC;  
275 - span.iconfont{  
276 - color:inherit;  
277 - }  
278 - }  
279 - }  
280 - .nav-tab{  
281 - width: 100%;  
282 - }  
283 -  
284 - .nav-tab {  
285 - height: pxToRem(60px);  
286 - padding: pxToRem(10px) 0;  
287 - background-color: #fff;  
288 - border-top: 1px solid $borderC;  
289 - border-bottom: 1px solid $borderC;  
290 - }  
291 -  
292 - .comment-nav, .consult-nav {  
293 - box-sizing: border-box;  
294 - float: left;  
295 - width: 50%;  
296 - height: pxToRem(60px);  
297 - line-height: pxToRem(60px);  
298 - font-size: pxToRem(28px);  
299 - text-align: center;  
300 - color: #ccc;  
301 237
302 - &.focus {  
303 - color: #000;  
304 - }  
305 - }  
306 - .comment-nav {  
307 - border-right: 1px solid #ccc;  
308 - }  
309 - .content{  
310 - .content-main{  
311 - background-color: #fff;  
312 - border-bottom: 1px solid $borderC;  
313 - &.comment-content-main{  
314 - .user-name{  
315 - font-size: pxToRem(24px);  
316 - line-height: pxToRem(62px);  
317 - color:$mainFontC;  
318 - padding-left: pxToRem(28px);  
319 - padding-right: pxToRem(18px);  
320 - }  
321 - .goods-spec,  
322 - .comment-time{  
323 - font-size: pxToRem(24px);  
324 - line-height: pxToRem(62px);  
325 - }  
326 - .detail-content{  
327 - // font-size: pxToRem(28px);  
328 - // line-height: pxToRem(36px);  
329 - font-size: pxToRem(24px);  
330 - line-height: pxToRem(62px);  
331 - color:$mainFontC;  
332 - padding-left: pxToRem(28px);  
333 - padding-right: pxToRem(18px);  
334 - }  
335 - .goods-spec,  
336 - .comment-time{  
337 - font-size: pxToRem(24px);  
338 - line-height: pxToRem(62px);  
339 - }  
340 - .detail-content{  
341 - font-size: pxToRem(28px);  
342 - line-height: pxToRem(36px);  
343 - }  
344 - .goods-spec,  
345 - .detail-content{  
346 - color:$mainFontC;  
347 - }  
348 - .detail-content,  
349 - .comment-time{  
350 - padding-left: pxToRem(28px);  
351 -  
352 - }  
353 - .detail-content{  
354 - padding-right: pxToRem(28px);  
355 - padding-left: pxToRem(28px);  
356 - }  
357 - .detail-content{  
358 - padding-right: pxToRem(28px);  
359 - }  
360 - .comment-time{  
361 - color:#c1c1c1;  
362 - }  
363 - }  
364 - &.consult-content-main{  
365 - padding-right: pxToRem(28px);  
366 - padding-left: pxToRem(28px);  
367 - padding-top: pxToRem(20px);  
368 - padding-bottom: pxToRem(20px);  
369 - .question{  
370 - font-size: pxToRem(24px);  
371 - color:$mainFontC;  
372 - span{  
373 - display: block;  
374 - float: left;  
375 - font-size: inherit;  
376 - padding-right: pxToRem(15px);  
377 - }  
378 - p{  
379 - overflow: hidden;  
380 - }  
381 - }  
382 - .time{  
383 - font-size: pxToRem(22px);  
384 - color:$subFontC;  
385 - }  
386 - .answer{  
387 - font-size: pxToRem(24px);  
388 - line-height: pxToRem(36px);  
389 - color:$subFontC;  
390 - margin-top: pxToRem(14px);  
391 - span{  
392 - display: block;  
393 - float: left;  
394 - font-size: inherit;  
395 - color:$mainFontC;  
396 - padding-right: pxToRem(15px); 238 +.good-detail-page {
  239 + overflow: hidden;
  240 +
  241 + .page-block{
  242 + box-sizing:border-box;
  243 + width: 100%;
  244 + border-bottom: 2px solid $borderC;
  245 + border-top: 1px solid $borderC;
  246 + padding: 0 pxToRem(28px);
  247 + >.title{
  248 + line-height: pxToRem(88px);
  249 + color: $mainFontC;
  250 + font-size : pxToRem(28px);
  251 + border-bottom: 1px solid $borderC;
  252 +
  253 + span{
  254 + color:#a0a0a0;
  255 + font-size:pxToRem(18px);
  256 + }
  257 + }
  258 + .detail{
  259 + margin-top: pxToRem(20px);
  260 + margin-bottom: pxToRem(20px);
  261 + font-size: pxToRem(24px);
  262 + line-height: pxToRem(36px);
  263 +
  264 + &.table{
  265 + display: table;
  266 + width: 100%;
  267 + .row{
  268 + display: table-row;
  269 + .column{
  270 + display: table-cell;
  271 + padding: 0.4em 0.8em;
  272 + border:1px solid #fff;
  273 + font-size: pxToRem(24px);
  274 + background-color: $tableCellC;
  275 + }
  276 + }
  277 + }
  278 + }
  279 + }
  280 +
  281 + .gap-block{
  282 + min-height: 30rem/$pxConvertRem;
  283 + background-color: #f0f0f0;
  284 + }
  285 +
  286 + .banner-container{
  287 + position: relative;
  288 + // overflow: hidden;
  289 + .is-new-lable{
  290 + position: absolute;
  291 + left: pxToRem(108px);
  292 + top:pxToRem(40px);
  293 + height: pxToRem(35px);
  294 + width:pxToRem(70px);
  295 +
  296 + color:#fff;
  297 + text-align: center;
  298 + font-size: pxToRem(20px);
  299 + line-height: pxToRem(35px);
  300 + background-color: #7cd881;
  301 + // z-index: 16;
  302 + }
  303 + }
  304 + .banner-top{
  305 + // width: 100%;
  306 + min-height: 660rem / $pxConvertRem;
  307 + overflow: hidden;
  308 + position: relative;
  309 +
  310 + .swiper-pagination{
  311 + position:absolute;
  312 + bottom: pxToRem(40px);
  313 + .swiper-pagination-bullet {
  314 + margin-right: 2px;
397 } 315 }
398 - p{  
399 - overflow: hidden; 316 + .swiper-pagination-bullet-active {
  317 + background-color: #000;
400 } 318 }
401 - }  
402 - }  
403 - &.no-item{  
404 - font-size: pxToRem(28px);  
405 - text-align: center;  
406 - height: pxToRem(200px);  
407 - line-height: pxToRem(200px);  
408 - color: $subFontC;  
409 - span{  
410 - font-size: inherit;  
411 - }  
412 - }  
413 - }  
414 319
  320 + }
  321 +
  322 + }
  323 +
  324 + .banner-swiper {
  325 + min-height: pxToRem(600px);
  326 + min-width: pxToRem(448px);
  327 + margin: pxToRem(30px) pxToRem(96px);
  328 + // position: relative;
  329 + overflow: hidden;
  330 + ul {
  331 + position: relative;
  332 + height: 100%;
  333 + li {
  334 + float: left;
  335 + height: 100%;
  336 + }
  337 + }
  338 +
  339 + }
  340 +
  341 +
  342 + .goodsName {
  343 + min-height: pxToRem(83px);
  344 + font-size: pxToRem(28px);
  345 + color: #fff;
  346 + padding-left: pxToRem(25px);
  347 + padding-right: pxToRem(25px);
  348 + line-height: pxToRem(36px);
  349 + background-color: #515150;
  350 + }
  351 +
  352 + .goodsSubtitle{
  353 + min-height: pxToRem(87px);
  354 + font-size: pxToRem(24px);
  355 + line-height: pxToRem(36px);
  356 + color:$subFontC;
  357 + padding-left:pxToRem(28px);
  358 + padding-right:pxToRem(28px);
  359 + border-bottom:1px solid $borderC;
  360 + background-color: #f4f4f4;
  361 + }
  362 +
  363 + .price-date{
  364 + // width: 100%;
  365 + color:$subFontC;
  366 + min-height: pxToRem(88px);
  367 + padding-left:pxToRem(28px);
  368 + padding-right:pxToRem(28px);
  369 + border-bottom: 1px solid $borderC;
  370 + }
  371 + .goodsPrice{
  372 + float: left;
  373 + font-size: pxToRem(34.59px);
  374 + h1{
  375 + display: inline-block;
  376 + line-height: pxToRem(88px);
  377 + }
  378 + .currentPrice{
  379 + color:red;
  380 + margin-right: pxToRem(10px);
  381 + }
  382 + .previousPrice{
  383 + text-decoration:line-through;
  384 + }
  385 + }
  386 + .periodOfMarket{
  387 + font-size: pxToRem(24px);
  388 + float: right;
  389 + h1{
  390 + display: inline-block;
  391 + line-height: pxToRem(88px);
  392 + }
  393 + }
  394 + .goodsName,
  395 + .goodsSubtitle{
  396 + // width: 100%;
  397 + display:table;
  398 + span{
  399 + display: table-cell;
  400 + vertical-align: middle;
  401 + }
  402 + }
  403 + .vipLevel {
  404 + width: 100%;
  405 + box-sizing:border-box;
  406 + display: table;
  407 + min-height: pxToRem(88px);
  408 + padding-left:pxToRem(28px);
  409 + padding-right:pxToRem(28px);
  410 + font-size: pxToRem(22px);
  411 + color: #999999;
  412 +
  413 + border-bottom: 1px solid $borderC;
  414 + span{
  415 + display: table-cell;
  416 + vertical-align: middle;
  417 + }
  418 + .vip-img{
  419 + padding-right: pxToRem(22px);
  420 + img{
  421 + width: pxToRem(52px);
  422 + height: pxToRem(32px);
  423 + }
  424 + }
  425 + .vip-price{
  426 + padding-right: pxToRem(55px);
  427 + }
  428 + .vip-price:last-child{
  429 + padding-right: 0;
  430 + }
  431 + }
  432 + .goodsDiscount{
  433 + min-height: pxToRem(88px);
  434 + padding-left:pxToRem(28px);
  435 + padding-right:pxToRem(28px);
  436 + font-size: pxToRem(28px);
  437 + color: $mainFontC;
  438 + line-height: pxToRem(88px);
  439 +
  440 + border-bottom: 1px solid $borderC;
  441 +
  442 + .iconfont{
  443 + display: inline-block;
  444 + width: pxToRem(35px);
  445 + font-size: pxToRem(45px);
  446 + float: right;
  447 + color:#e0e0e0;
  448 + // padding-left:pxToRem(50px);
  449 + }
  450 + }
  451 + .goodsSubtitle,
  452 + .goodsDiscount{
  453 + text-indent: pxToRem(-14px);
  454 + }
  455 + .feedback-list-page {
  456 + padding-top: pxToRem(30px);
  457 + background-color: #f0f0f0;
  458 +
  459 + .nav-tab{
  460 + width: 100%;
  461 + }
  462 +
  463 + .nav-tab {
  464 + height: pxToRem(60px);
  465 + padding: pxToRem(10px) 0;
  466 + background-color: #fff;
  467 + border-top: 1px solid $borderC;
  468 + border-bottom: 1px solid $borderC;
  469 + }
  470 +
  471 + .comment-nav, .consult-nav {
  472 + box-sizing: border-box;
  473 + float: left;
  474 + width: 50%;
  475 + height: pxToRem(60px);
  476 + line-height: pxToRem(60px);
  477 + font-size: pxToRem(28px);
  478 + text-align: center;
  479 + color: #ccc;
  480 +
  481 + &.focus {
  482 + color: #000;
  483 + }
  484 + }
  485 + .comment-nav {
  486 + border-right: 1px solid #ccc;
  487 + }
  488 + .content{
  489 + .content-main{
  490 + background-color: #fff;
  491 + border-bottom: 1px solid $borderC;
  492 + &.comment-content-main{
  493 + .user-name{
  494 + font-size: pxToRem(24px);
  495 + line-height: pxToRem(62px);
  496 + color:$mainFontC;
  497 + padding-left: pxToRem(28px);
  498 + padding-right: pxToRem(18px);
  499 + }
  500 + .goods-spec,
  501 + .comment-time{
  502 + font-size: pxToRem(24px);
  503 + line-height: pxToRem(62px);
  504 + }
  505 + .detail-content{
  506 + // font-size: pxToRem(28px);
  507 + // line-height: pxToRem(36px);
  508 + font-size: pxToRem(24px);
  509 + line-height: pxToRem(62px);
  510 + color:$mainFontC;
  511 + padding-left: pxToRem(28px);
  512 + padding-right: pxToRem(18px);
  513 + }
  514 + .goods-spec,
  515 + .comment-time{
  516 + font-size: pxToRem(24px);
  517 + line-height: pxToRem(62px);
  518 + }
  519 + .detail-content{
  520 + font-size: pxToRem(28px);
  521 + line-height: pxToRem(36px);
  522 + }
  523 + .goods-spec,
  524 + .detail-content{
  525 + color:$mainFontC;
  526 + }
  527 + .detail-content,
  528 + .comment-time{
  529 + padding-left: pxToRem(28px);
415 530
416 -}  
417 -.comment-content-footer,  
418 -.consult-content-footer{ 531 + }
  532 + .detail-content{
  533 + padding-right: pxToRem(28px);
  534 + padding-left: pxToRem(28px);
  535 + }
  536 + .detail-content{
  537 + padding-right: pxToRem(28px);
  538 + }
  539 + .comment-time{
  540 + color:#c1c1c1;
  541 + }
  542 + }
  543 + &.consult-content-main{
  544 + padding-right: pxToRem(28px);
  545 + padding-left: pxToRem(28px);
  546 + padding-top: pxToRem(20px);
  547 + padding-bottom: pxToRem(20px);
  548 + .question{
  549 + font-size: pxToRem(24px);
  550 + color:$mainFontC;
  551 + span{
  552 + display: block;
  553 + float: left;
  554 + font-size: inherit;
  555 + padding-right: pxToRem(15px);
  556 + }
  557 + p{
  558 + overflow: hidden;
  559 + }
  560 + }
  561 + .time{
  562 + font-size: pxToRem(22px);
  563 + color:$subFontC;
  564 + }
  565 + .answer{
  566 + font-size: pxToRem(24px);
  567 + line-height: pxToRem(36px);
  568 + color:$subFontC;
  569 + margin-top: pxToRem(14px);
  570 + span{
  571 + display: block;
  572 + float: left;
  573 + font-size: inherit;
  574 + color:$mainFontC;
  575 + padding-right: pxToRem(15px);
  576 + }
  577 + p{
  578 + overflow: hidden;
  579 + }
  580 + }
  581 + }
419 582
420 - min-height: pxToRem(88px);  
421 - text-align: center;  
422 - background-color: #fff; 583 + }
423 584
424 - border-bottom: 1px solid $borderC;  
425 - line-height: pxToRem(88px);  
426 - font-size: pxToRem(28px);  
427 585
428 - a{  
429 - color: #e0e0e0;  
430 - .iconfont{  
431 - font-size: inherit;  
432 - }  
433 - } 586 + }
  587 + .comment-content-footer,
  588 + .consult-content-footer{
434 589
435 -} 590 + min-height: pxToRem(88px);
  591 + text-align: center;
  592 + background-color: #fff;
436 593
437 -.content.hide {  
438 - display: none;  
439 -}  
440 -} 594 + border-bottom: 1px solid $borderC;
  595 + line-height: pxToRem(88px);
  596 + font-size: pxToRem(28px);
441 597
  598 +<<<<<<< HEAD
442 .enter-store{ 599 .enter-store{
443 min-height: pxToRem(100px); 600 min-height: pxToRem(100px);
444 display: table; 601 display: table;
@@ -592,55 +749,223 @@ overflow: hidden; @@ -592,55 +749,223 @@ overflow: hidden;
592 margin-right: pxToRem(12px); 749 margin-right: pxToRem(12px);
593 vertical-align: text-bottom; 750 vertical-align: text-bottom;
594 } 751 }
  752 +=======
  753 + a{
  754 + color: #e0e0e0;
  755 + .iconfont{
  756 + font-size: inherit;
  757 +>>>>>>> e70906be965a981051214ab24fd534fcb709337e
595 } 758 }
596 } 759 }
597 - }  
598 - clear:both;  
599 -}  
600 -}  
601 -.cart-bar{  
602 - position: relative;  
603 - box-sizing:border-box;  
604 - width: 100%;  
605 - height: pxToRem(120px);  
606 - position:fixed;  
607 - bottom: 0;  
608 - background-color: #fff;  
609 - z-index:2;  
610 - padding:pxToRem(20px) pxToRem(28px);  
611 - text-align: center;  
612 - a{  
613 - display: inline-block;  
614 - &.num-incart{  
615 - font-size: pxToRem(47px);  
616 - color:#444;  
617 - }  
618 - &.favorite{  
619 - font-size: pxToRem(34px);  
620 - color:$basicBtnC;  
621 - }  
622 - &.addto-cart{  
623 - height: pxToRem(80px);  
624 - width: pxToRem(260px);  
625 - margin:0 pxToRem(100px) 0 pxToRem(115px);  
626 - color: #fff;  
627 - background-color: $basicBtnC;  
628 - font-size: pxToRem(40px);  
629 - line-height: pxToRem(80px);  
630 - text-align: center;  
631 - }  
632 - }  
633 - .num-tag{  
634 - position: absolute;  
635 - left:pxToRem(66px);  
636 - height: pxToRem(20px);  
637 - display: block;  
638 - width: pxToRem(36px);  
639 - height: pxToRem(36px);  
640 - background-color: $basicBtnC;  
641 - border-radius: 50%;  
642 - color:#fff;  
643 - font-size: pxToRem(24px);  
644 - }  
645 -} 760 +
  761 + }
  762 +
  763 + .content.hide {
  764 + display: none;
  765 + }
  766 + }
  767 +
  768 + .enter-store{
  769 + min-height: pxToRem(100px);
  770 + display: table;
  771 + a{
  772 + display: table-cell;
  773 + vertical-align: middle;
  774 + text-align: left;
  775 + }
  776 + .store-logo{
  777 + // padding-right: 35rem/$pxConvertRem;
  778 + img{
  779 + width: pxToRem(109px);
  780 + height: pxToRem(68px);
  781 + margin-left: 0;
  782 + margin-right: pxToRem(-25px);
  783 + }
  784 + }
  785 + .store-name{
  786 + font-size: pxToRem(34px);
  787 + color:$mainFontC;
  788 + }
  789 + .store-link{
  790 + font-size:pxToRem(28px) ;
  791 + color:$subFontC;
  792 + text-align: right;
  793 + span{
  794 + font-size: inherit;
  795 + }
  796 + }
  797 + }
  798 + .goods-desc{
  799 + .service{
  800 + width: pxToRem(489px);
  801 + height: pxToRem(28px);
  802 + margin-top: pxToRem(22px);
  803 + }
  804 + }
  805 + .tips{
  806 + color:$subFontC;
  807 + font-size: pxToRem(18px);
  808 + margin-top: pxToRem(20px);
  809 + }
  810 + .materials{
  811 + .detail{
  812 + img{
  813 + display: block;
  814 + overflow: hidden;
  815 + width: pxToRem(90px);
  816 + height: pxToRem(120px);
  817 + padding-right: pxToRem(20px);
  818 + float: left;
  819 + }
  820 + .material-desc{
  821 + font-size: pxToRem(24px);
  822 + overflow: hidden;
  823 +
  824 + }
  825 + }
  826 + .material-type{
  827 + width: pxToRem(581px);
  828 + height: pxToRem(99px);
  829 + border-top: 1px solid $borderC;
  830 + padding: pxToRem(17px) 0;
  831 + }
  832 + }
  833 +
  834 + .product-detail{
  835 + .detail{
  836 + img{
  837 + margin-top: pxToRem(20px);
  838 + width: pxToRem(581px);
  839 + height: pxToRem(772px);
  840 + }
  841 + }
  842 + margin-bottom: pxToRem(120px);
  843 + }
  844 +
  845 + .detail-swiper{
  846 + .swiper-wrapper{
  847 + .swiper-slide{
  848 + width: pxToRem(114px);
  849 + div{
  850 + text-align: center;
  851 + &.cell{
  852 + font-size: pxToRem(24px);
  853 + background-color: $tableCellC;
  854 + padding:pxToRem(15px) 0;
  855 + border: 1px solid #fff;
  856 + }
  857 + }
  858 + }
  859 + }
  860 + }
  861 +
  862 + #reference-swiper-container{
  863 +
  864 + .first-group{
  865 + width: pxToRem(70px);
  866 + margin-top: pxToRem(66px);
  867 + .avatar{
  868 + line-height: pxToRem(40px);
  869 + width: pxToRem(40px);
  870 + height: pxToRem(40px);
  871 + margin: pxToRem(18px) 0;
  872 + }
  873 + }
  874 + }
  875 +
  876 + .measurement-method{
  877 + .detail{
  878 + width: 100%;
  879 + // height: pxToRem(300px);
  880 + img{
  881 + float:left;
  882 + width: pxToRem(270px);
  883 + height: pxToRem(239px);
  884 + margin-top: pxToRem(18px);
  885 + margin-right: pxToRem(28px);
  886 + }
  887 + .right-part{
  888 + overflow: hidden;
  889 + .title{
  890 + >h1{
  891 + margin-top: pxToRem(10px);
  892 + display: inline-block;
  893 + padding-right: pxToRem(10px);
  894 + border-right: 1px solid $borderC;
  895 + line-height: 100%;
  896 + }
  897 + >span{
  898 + font-size: pxToRem(12px);
  899 + }
  900 + }
  901 + ul.items{
  902 + margin-top: pxToRem(20px);
  903 + padding: 0;
  904 + line-height: pxToRem(30px);
  905 + font-size: pxToRem(13px);
  906 + li{
  907 + span{
  908 + display: inline-block;
  909 + width: pxToRem(15px);
  910 + height: pxToRem(15px);
  911 + background-color: $basicBtnC;
  912 + border-radius: 50%;
  913 + color:#fff;
  914 + text-align: center;
  915 + line-height: pxToRem(15px);
  916 + font-size: pxToRem(13px);
  917 + margin-right: pxToRem(12px);
  918 + vertical-align: text-bottom;
  919 + }
  920 + }
  921 + }
  922 + }
  923 + clear:both;
  924 + }
  925 + }
  926 + .cart-bar{
  927 + position: relative;
  928 + box-sizing:border-box;
  929 + width: 100%;
  930 + height: pxToRem(120px);
  931 + position:fixed;
  932 + bottom: 0;
  933 + background-color: #fff;
  934 + z-index:2;
  935 + padding:pxToRem(20px) pxToRem(28px);
  936 + text-align: center;
  937 + a{
  938 + display: inline-block;
  939 + &.num-incart{
  940 + font-size: pxToRem(47px);
  941 + color:#444;
  942 + }
  943 + &.favorite{
  944 + font-size: pxToRem(34px);
  945 + color:$basicBtnC;
  946 + }
  947 + &.addto-cart{
  948 + height: pxToRem(80px);
  949 + width: pxToRem(260px);
  950 + margin:0 pxToRem(100px) 0 pxToRem(115px);
  951 + color: #fff;
  952 + background-color: $basicBtnC;
  953 + font-size: pxToRem(40px);
  954 + line-height: pxToRem(80px);
  955 + text-align: center;
  956 + }
  957 + }
  958 + .num-tag{
  959 + position: absolute;
  960 + left:pxToRem(66px);
  961 + height: pxToRem(20px);
  962 + display: block;
  963 + width: pxToRem(36px);
  964 + height: pxToRem(36px);
  965 + background-color: $basicBtnC;
  966 + border-radius: 50%;
  967 + color:#fff;
  968 + font-size: pxToRem(24px);
  969 + }
  970 + }
646 } 971 }
@@ -37,59 +37,6 @@ @@ -37,59 +37,6 @@
37 <div class="container hide clearfix"></div> 37 <div class="container hide clearfix"></div>
38 {{> filter}} 38 {{> filter}}
39 </div> 39 </div>
40 -  
41 - {{#if brand}}  
42 - <input id="brand" type="hidden" value={{brand}}>  
43 - {{/if}}  
44 -  
45 - {{#if gender}}  
46 - <input id="gender" type="hidden" value={{gender}}>  
47 - {{/if}}  
48 -  
49 - {{#if sort}}  
50 - <input id="sort" type="hidden" value={{sort}}>  
51 - {{/if}}  
52 -  
53 - {{#if msort}}  
54 - <input id="msort" type="hidden" value={{msort}}>  
55 - {{/if}}  
56 -  
57 - {{#if misort}}  
58 - <input id="misort" type="hidden" value={{misort}}>  
59 - {{/if}}  
60 -  
61 - {{#if color}}  
62 - <input id="color" type="hidden" value={{color}}>  
63 - {{/if}}  
64 -  
65 - {{#if size}}  
66 - <input id="size" type="hidden" value={{size}}>  
67 - {{/if}}  
68 -  
69 - {{#if price}}  
70 - <input id="price" type="hidden" value={{price}}>  
71 - {{/if}}  
72 -  
73 - {{#if p_d}}  
74 - <input id="p_d" type="hidden" value={{p_d}}>  
75 - {{/if}}  
76 -  
77 - {{#if channel}}  
78 - <input id="channel" type="hidden" value={{channel}}>  
79 - {{/if}}  
80 -  
81 - {{#if dayLimit}}  
82 - <input id="dayLimit" type="hidden" value={{dayLimit}}>  
83 - {{/if}}  
84 -  
85 - {{#if limit}}  
86 - <input id="limit" type="hidden" value={{limit}}>  
87 - {{/if}}  
88 -  
89 - {{#if style}}  
90 - <input id="style" type="hidden" value={{style}}>  
91 - {{/if}}  
92 -  
93 {{> product/suspend-cart}} 40 {{> product/suspend-cart}}
94 </div> 41 </div>
95 {{> layout/footer}} 42 {{> layout/footer}}
@@ -48,59 +48,6 @@ @@ -48,59 +48,6 @@
48 48
49 {{> filter}} 49 {{> filter}}
50 </div> 50 </div>
51 -  
52 - {{#if brand}}  
53 - <input id="brand" type="hidden" value={{brand}}>  
54 - {{/if}}  
55 -  
56 - {{#if gender}}  
57 - <input id="gender" type="hidden" value={{gender}}>  
58 - {{/if}}  
59 -  
60 - {{#if sort}}  
61 - <input id="sort" type="hidden" value={{sort}}>  
62 - {{/if}}  
63 -  
64 - {{#if msort}}  
65 - <input id="msort" type="hidden" value={{msort}}>  
66 - {{/if}}  
67 -  
68 - {{#if misort}}  
69 - <input id="misort" type="hidden" value={{misort}}>  
70 - {{/if}}  
71 -  
72 - {{#if color}}  
73 - <input id="color" type="hidden" value={{color}}>  
74 - {{/if}}  
75 -  
76 - {{#if size}}  
77 - <input id="size" type="hidden" value={{size}}>  
78 - {{/if}}  
79 -  
80 - {{#if price}}  
81 - <input id="price" type="hidden" value={{price}}>  
82 - {{/if}}  
83 -  
84 - {{#if p_d}}  
85 - <input id="p_d" type="hidden" value={{p_d}}>  
86 - {{/if}}  
87 -  
88 - {{#if channel}}  
89 - <input id="channel" type="hidden" value={{channel}}>  
90 - {{/if}}  
91 -  
92 - {{#if limit}}  
93 - <input id="limit" type="hidden" value={{limit}}>  
94 - {{/if}}  
95 -  
96 - {{#if discount}}  
97 - <input id="discount" type="hidden" value={{discount}}>  
98 - {{/if}}  
99 -  
100 - {{#if style}}  
101 - <input id="style" type="hidden" value={{style}}>  
102 - {{/if}}  
103 -  
104 {{> product/suspend-cart}} 51 {{> product/suspend-cart}}
105 </div> 52 </div>
106 {{> layout/footer}} 53 {{> layout/footer}}
@@ -16,6 +16,6 @@ @@ -16,6 +16,6 @@
16 </div> 16 </div>
17 17
18 <!-- 如果需要导航按钮 --> 18 <!-- 如果需要导航按钮 -->
19 - <div class="swiper-button-prev swiper-button-grey"></div>  
20 - <div class="swiper-button-next swiper-button-grey"></div> 19 + <div class="swiper-button-prev prev-grey"></div>
  20 + <div class="swiper-button-next next-grey"></div>
21 </div> 21 </div>
@@ -89,50 +89,5 @@ @@ -89,50 +89,5 @@
89 89
90 {{> filter}} 90 {{> filter}}
91 </div> 91 </div>
92 -  
93 - {{#if brand}}  
94 - <input id="brand" type="hidden" value={{brand}}>  
95 - {{/if}}  
96 -  
97 - {{#if gender}}  
98 - <input id="gender" type="hidden" value={{gender}}>  
99 - {{/if}}  
100 -  
101 - {{#if sort}}  
102 - <input id="sort" type="hidden" value={{sort}}>  
103 - {{/if}}  
104 -  
105 - {{#if msort}}  
106 - <input id="msort" type="hidden" value={{msort}}>  
107 - {{/if}}  
108 -  
109 - {{#if misort}}  
110 - <input id="misort" type="hidden" value={{misort}}>  
111 - {{/if}}  
112 -  
113 - {{#if color}}  
114 - <input id="color" type="hidden" value={{color}}>  
115 - {{/if}}  
116 -  
117 - {{#if size}}  
118 - <input id="size" type="hidden" value={{size}}>  
119 - {{/if}}  
120 -  
121 - {{#if price}}  
122 - <input id="price" type="hidden" value={{price}}>  
123 - {{/if}}  
124 -  
125 - {{#if discount}}  
126 - <input id="discount" type="hidden" value={{discount}}>  
127 - {{/if}}  
128 -  
129 - {{#if query}}  
130 - <input id="query" type="hidden" value={{query}}>  
131 - {{/if}}  
132 -  
133 - {{#if style}}  
134 - <input id="style" type="hidden" value={{style}}>  
135 - {{/if}}  
136 -  
137 {{> product/suspend-cart}} 92 {{> product/suspend-cart}}
138 {{/ goodList}} 93 {{/ goodList}}
@@ -48,7 +48,6 @@ class HomeController extends AbstractAction @@ -48,7 +48,6 @@ class HomeController extends AbstractAction
48 'myIndexPage' => true, 48 'myIndexPage' => true,
49 'pageFooter' => true 49 'pageFooter' => true
50 ); 50 );
51 - // echo $this->getRequest()->getActionName();  
52 $uid = $this->getUid(); 51 $uid = $this->getUid();
53 if ($uid) { 52 if ($uid) {
54 $data['isLogin'] = true; 53 $data['isLogin'] = true;
@@ -430,6 +429,22 @@ class HomeController extends AbstractAction @@ -430,6 +429,22 @@ class HomeController extends AbstractAction
430 } 429 }
431 430
432 /** 431 /**
  432 + * 异步点击靠谱或者不靠谱
  433 + */
  434 + public function upAndDownAction()
  435 + {
  436 + if ($this->isAjax())
  437 + {
  438 + $uid = $this->getUid();
  439 + $udid = $this->getUdid();
  440 + $suggest_id = $this->post('suggest_id', 0);
  441 + $result = \Index\UserModel::upAndDown($uid, $udid, $suggest_id);
  442 +
  443 + $this->echoJson($result);
  444 + }
  445 + }
  446 +
  447 + /**
433 * 会员等级展示页 448 * 会员等级展示页
434 */ 449 */
435 public function gradeAction() 450 public function gradeAction()
@@ -486,6 +486,34 @@ class UserModel @@ -486,6 +486,34 @@ class UserModel
486 } 486 }
487 487
488 /** 488 /**
  489 + * 处理意见靠谱,不靠谱接口返回结果
  490 + *
  491 + * @param int $uid 用户ID
  492 + * @param string $udid 客户端唯一标识
  493 + * @param int $suggest_id 意见id
  494 + * @return array|mixed 处理之后的数据
  495 + */
  496 + public static function upAndDown($uid, $udid, $suggest_id)
  497 + {
  498 + $result = array('code' => 400, 'message' => '出错啦');
  499 +
  500 + if (empty($suggest_id)) {
  501 + $result['code'] = 401;
  502 + $result['message'] = '指定意见不存在';
  503 + } else {
  504 + // 调用接口
  505 + $save = UserData::upAndDown($uid, $udid, $suggest_id);
  506 +
  507 + if (isset($save['code']) && $save['code'] == 200) {
  508 + $result['code'] = 200;
  509 + $result['message'] = '操作成功';
  510 + }
  511 + }
  512 +
  513 + return $result;
  514 + }
  515 +
  516 + /**
489 * 处理我的消息数据 517 * 处理我的消息数据
490 * 518 *
491 * @param int $uid 用户ID 519 * @param int $uid 用户ID