Authored by zhangxiaoru

merge feature/payEnd

@@ -27,7 +27,7 @@ const payCod = (req, res, next) => { @@ -27,7 +27,7 @@ const payCod = (req, res, next) => {
27 uid: req.user.uid, 27 uid: req.user.uid,
28 udid: req.sessionID || require('md5')(req.ip) || 'yoho', 28 udid: req.sessionID || require('md5')(req.ip) || 'yoho',
29 orderCode: req.query.order_code, 29 orderCode: req.query.order_code,
30 - contentCode: '05afedf76886d732573f10f7451a1703', 30 + contentCode: '78d0fb6c97d691863286edcb4d8abfa9',
31 client_id: req.cookies._yasvd || '' 31 client_id: req.cookies._yasvd || ''
32 }; 32 };
33 33
@@ -64,7 +64,7 @@ const payAli = (req, res, next) => { @@ -64,7 +64,7 @@ const payAli = (req, res, next) => {
64 uid: req.user.uid, 64 uid: req.user.uid,
65 udid: req.sessionID || require('md5')(req.ip) || 'yoho', 65 udid: req.sessionID || require('md5')(req.ip) || 'yoho',
66 orderCode: req.query.out_trade_no, 66 orderCode: req.query.out_trade_no,
67 - contentCode: '05afedf76886d732573f10f7451a1703' 67 + contentCode: '78d0fb6c97d691863286edcb4d8abfa9'
68 }; 68 };
69 69
70 // 如果没有uid,跳转到首页 70 // 如果没有uid,跳转到首页
@@ -73,6 +73,11 @@ const payAli = (req, res, next) => { @@ -73,6 +73,11 @@ const payAli = (req, res, next) => {
73 return; 73 return;
74 } 74 }
75 75
  76 + // 支付失败
  77 + if (req.query.trade_status !== 'TRADE_SUCCESS') {
  78 + return res.render('pay/pay-ali', responseData);
  79 + }
  80 +
76 payModel.getPayAli(param).then(result => { 81 payModel.getPayAli(param).then(result => {
77 if (result.match === true) { 82 if (result.match === true) {
78 res.render('pay/pay-ali', Object.assign(responseData, result)); 83 res.render('pay/pay-ali', Object.assign(responseData, result));
@@ -10,11 +10,13 @@ const api = global.yoho.API; @@ -10,11 +10,13 @@ const api = global.yoho.API;
10 const serviceAPI = global.yoho.ServiceAPI; 10 const serviceAPI = global.yoho.ServiceAPI;
11 const utils = '../../../utils'; 11 const utils = '../../../utils';
12 const productProcess = require(`${utils}/product-process`); 12 const productProcess = require(`${utils}/product-process`);
  13 +const _ = require('lodash');
13 14
14 // 资源位 15 // 资源位
15 const _getBanner = (param) => { 16 const _getBanner = (param) => {
16 return serviceAPI.get('operations/api/v5/resource/get', { 17 return serviceAPI.get('operations/api/v5/resource/get', {
17 - content_code: param.contentCode 18 + content_code: param.contentCode,
  19 + platform: 'iphone'
18 }, { 20 }, {
19 code: 200 21 code: 200
20 }).then((result) => { 22 }).then((result) => {
@@ -95,7 +97,13 @@ const getPayCod = (param) => { @@ -95,7 +97,13 @@ const getPayCod = (param) => {
95 }; 97 };
96 98
97 if (result && result[0]) { 99 if (result && result[0]) {
98 - resu.banner = result[0]; 100 + _.forEach(result[0], function(val) {
  101 + if (val.template_name === 'single_image') {
  102 + resu.banner = val;
  103 + } else if (val.template_name === 'text') {
  104 + resu.prompt = val.data;
  105 + }
  106 + });
99 } 107 }
100 108
101 if (result && result[1]) { 109 if (result && result[1]) {
@@ -131,7 +139,13 @@ const getPayAli = (param) => { @@ -131,7 +139,13 @@ const getPayAli = (param) => {
131 }; 139 };
132 140
133 if (result && result[0]) { 141 if (result && result[0]) {
134 - resu.banner = result[0]; 142 + _.forEach(result[0], function(val) {
  143 + if (val.template_name === 'single_image') {
  144 + resu.banner = val;
  145 + } else if (val.template_name === 'text') {
  146 + resu.prompt = val.data;
  147 + }
  148 + });
135 } 149 }
136 150
137 if (result && result[1]) { 151 if (result && result[1]) {
1 <div class="pay-success"> 1 <div class="pay-success">
  2 + {{# prompt}}
  3 + <div class="fraud-prompt">
  4 + <div class="fraud-tip">
  5 + <div class="tip"></div>
  6 + {{text}}
  7 + </div>
  8 + </div>
  9 + {{/ prompt}}
  10 +
2 <div class="top-tip"> 11 <div class="top-tip">
3 <div class="img-c"></div> 12 <div class="img-c"></div>
4 <p class="ok-tip">恭喜您,付款成功!</p> 13 <p class="ok-tip">恭喜您,付款成功!</p>
1 <div class="pay-success"> 1 <div class="pay-success">
  2 + {{# prompt}}
  3 + <div class="fraud-prompt">
  4 + <div class="fraud-tip">
  5 + <div class="tip"></div>
  6 + {{text}}
  7 + </div>
  8 + </div>
  9 + {{/ prompt}}
2 <div class="top-tip"> 10 <div class="top-tip">
3 <div class="img-c"></div> 11 <div class="img-c"></div>
4 <p class="ok-tip">订单提交成功</p> 12 <p class="ok-tip">订单提交成功</p>
1 var $ = require('yoho-jquery'), 1 var $ = require('yoho-jquery'),
2 lazyLoad = require('yoho-jquery-lazyload'); 2 lazyLoad = require('yoho-jquery-lazyload');
3 3
  4 +var prompt = $('.fraud-prompt');
  5 +var fraudTip, scrollVal, onePageH, diff, MyMar;
  6 +
4 require('../common'); 7 require('../common');
5 8
6 lazyLoad($('img.lazy')); 9 lazyLoad($('img.lazy'));
@@ -14,3 +17,25 @@ require('../channel/maybe-like')(getGender()); @@ -14,3 +17,25 @@ require('../channel/maybe-like')(getGender());
14 if ($('#goods-list').length === 0) { 17 if ($('#goods-list').length === 0) {
15 $('.maybe-like').hide(); 18 $('.maybe-like').hide();
16 } 19 }
  20 +
  21 +if ($('.fraud-tip').height() > $('.fraud-prompt').height()) {
  22 + var speed = 40;
  23 +
  24 + $('.fraud-prompt').append('<div class="fraud-tip">' + $('.fraud-tip').html() + '</div>');
  25 +
  26 + fraudTip = $('.fraud-tip').eq(1);
  27 +
  28 + function Marquee() {
  29 + prompt.scrollTop(prompt.scrollTop() + 1);
  30 +
  31 + scrollVal = prompt.scrollTop();
  32 + onePageH = fraudTip[0].offsetTop;
  33 + diff = onePageH - scrollVal;
  34 +
  35 + if (diff <= 0) {
  36 + prompt.scrollTop(Math.abs(diff));
  37 + }
  38 + }
  39 +
  40 + MyMar = setInterval(Marquee, speed);
  41 +}
@@ -10,6 +10,7 @@ @@ -10,6 +10,7 @@
10 border-bottom: solid 1px #e0e0e0; 10 border-bottom: solid 1px #e0e0e0;
11 text-align: center; 11 text-align: center;
12 background-color: #fff; 12 background-color: #fff;
  13 + z-index: 2;
13 14
14 .img-c { 15 .img-c {
15 margin-top: 25px; 16 margin-top: 25px;
@@ -100,10 +101,35 @@ @@ -100,10 +101,35 @@
100 border-top: solid 1px #e4e4e4; 101 border-top: solid 1px #e4e4e4;
101 padding-left: 15px; 102 padding-left: 15px;
102 103
103 - p { 104 + > p {
104 text-align: center; 105 text-align: center;
105 color: #444; 106 color: #444;
106 font-size: 27px; 107 font-size: 27px;
107 } 108 }
  109 +
  110 + .out-tag {
  111 + color: #fff;
  112 + }
  113 + }
  114 +
  115 + .fraud-prompt {
  116 + height: 62px;
  117 + line-height: 62px;
  118 + background-color: #ff7579;
  119 + color: #fff;
  120 + overflow: hidden;
  121 + }
  122 +
  123 + .fraud-tip {
  124 + padding: 0 30px;
  125 + }
  126 +
  127 + .tip {
  128 + margin: 19px 10px 0 0;
  129 + width: 20px;
  130 + height: 24px;
  131 + background: resolve("cart/person-tip.png") no-repeat;
  132 + float: left;
  133 + background-size: 100% 100%;
108 } 134 }
109 } 135 }