Authored by zhangxiaoru

detail

... ... @@ -9,29 +9,29 @@
const headerModel = require('../../../doraemon/models/header'); // 头部model
const orderDetailModel = require('../models/orderDetail');
let orderDetail = (req, res, next) => {
let headerData = headerModel.setNav({
navTitle: '订单详情'
});
let responseData = {
module: 'home',
page: 'order-detail',
title: 'Yoho!Buy 有货',
pageHeader: headerData,
pageFooter: true
};
orderDetailModel.orderDetail({
uid: req.user.uid || 8039759, // TODO 待删除
order_code: req.query.order_code
}).then(result => {
if (result) {
res.render('orderDetail', Object.assign(responseData,
{
orderDetail: result
}));
}
const orderDetail = (req, res, next) => {
let uid = 8039759;
let orderCode = req.query.order_code || 1612441404;
orderDetailModel.orderDetail(uid, orderCode).then(result => {
res.render('orderDetail', {
module: 'home',
page: 'order-detail',
pageHeader: headerModel.setNav({
navTitle: '订单详情'
}),
title: '订单详情',
pageFooter: true,
orderDetail: result
// orderDetail: {
// // isVirtual: false,
// mobile: '1578934349',
// orderNum: '113232435',
// orderStatus: 'quxiao'
// }
});
}).catch(next);
};
... ...
... ... @@ -3,53 +3,34 @@
const api = global.yoho.API;
const _ = require('lodash');
const config = global.yoho.config;
const helpers = global.yoho.helpers;
const camelCase = global.yoho.camelCase;
const orderDetail = (params) => {
const orderDetail = (uid, orderCode) => {
let finalResult = {};
return api.get('', _.assign({
method: 'app.SpaceOrders.detail'
}, params), {code: 200}).then((result) => {
if (result.data) {
Object.assign(finalResult, {
virtual_type: result.data.virtual_type,
phoneNum: result.data.mobile,
orderStatus: result.data.status_str,
orderNum: result.data.order_code,
orderTime: result.data.create_time,
isPay: result.data.payment_status === 'Y',
relation: result.data.relate_order_code === 'Y' ? 'true' : 'false',
name: result.data.user_name,
isVirtual: false,
mobile: '15999999999',
address: result.data.address,
logisticsUrl: '#',
logisticsCompany: '顺丰',
logisticsNum: '111111',
yohoCoin: result.data.yoho_give_coin,
invoice: [{
title: '有货',
contentValue: '有货',
pdfUrl: '#'
}, {
title: '有货',
contentValue: '有货',
pdfUrl: '#'
}],
orderBalance: [{
promotion: '商品总金额',
account: '100.00'
}, {
promotion: '运费',
account: '10.00'
}],
price: result.data.amount
});
}
return finalResult;
return api.get('', {
method: 'app.SpaceOrders.detail',
uid: uid,
order_code: orderCode
}).then((result) => {
let orderDetail = camelCase(result.data);
console.log(result);
// if(orderDetail.virtualType && orderDetail.virtualType === 3) {
// orderDetail = _.assign(orderDetail, {
// isVirtual: true,
// mobile: result.data.mobile
// })
// }
// orderDetail = _.assign(orderDetail, {
// addressAll: orderDetail.area + orderDetail.address
// // createTime: date('Y-m-d H:i:s', orderDetail.createTime)
// })
return orderDetail;
});
};
... ...
... ... @@ -14,12 +14,12 @@
<div class="beside-icon">
<p class="name-phone">
{{name}}
<span>{{phoneNum}}</span>
{{userName}}
<span>{{mobile}}</span>
</p>
<p class="address">
{{address}}
{{addressAll}}
</p>
<div class="rest">其他地址<span class="iconfont iconAddress">&#xe614;</span></div>
... ... @@ -33,9 +33,9 @@
<span class="iconfont">&#xe632;</span>
<p class="beside-icon sub-content">
<span class="sub-title">订单编号:{{orderNum}}</span>
<span >订单状态:{{orderStatus}}</span>
<span>下单时间:{{orderTime}}</span>
<span class="sub-title">订单编号:{{orderCode}}</span>
<span >订单状态:{{statusStr}}</span>
<span>下单时间:{{createTime}}</span>
</p>
</div>
{{#if logisticsUrl}}
... ...
... ... @@ -561,6 +561,34 @@ let _getPromotionInfo = (skn) => {
});
};
let _getRefundExchange = (skn) => {
return api.get('', {
method: 'app.product.refundExchange',
product_skn: _.toString(skn)
}).then((result) => {
// result ={
// "alg": "SALT_MD5",
// "code": 200,
// "data": {
// "51292714": "Y", //N表示没有限制,Y表示是特殊商品有限制
// },
// "md5": "a849be68446129c27c16baaf53ada78e",
// "message": "RefundExchange List."
// }
if (result.code === 200) {
let limit;
let productSkn = _.toString(skn);
if (result.data[productSkn] === 'Y') {
limit = true;
}
return limit;
}
return {};
});
};
let getProductData = (data) => {
let finalResult;
let params = {
... ... @@ -578,12 +606,18 @@ let getProductData = (data) => {
return api.get('', params, {
cache: false
}).then(result => {
return Promise.all([_getShopsInfo(result.brandId), _getPromotionInfo(result.erpProductId)]).then((info) => {
return Promise.all([_getShopsInfo(result.brandId), _getPromotionInfo(result.erpProductId), _getRefundExchange(result.productPriceBo.productSkn)]).then((info) => {
result.promotionBoList = info[1];
finalResult = _detailDataPkg(result, data.uid, data.vipLevel, data.ua);
finalResult.enterStore = info[0];
finalResult.limit = info[2];
// console.log(info[2])
// console.log(finalResult)
return finalResult;
});
... ...
... ... @@ -126,7 +126,7 @@
</div>
{{/ enterStore}}
<div id="productDesc"> </div>
<div id="productDesc" {{#if limit}}class="limit"{{/if}}> </div>
{{> detail/recommend-for-you}}
{{> cart/chose-panel}}
... ...
{{# result}}
{{#goodsDescription}}
<div class="goods-desc page-block">
<div class="service"></div>
<h1 class="title">
... ...

6.28 KB | W: | H:

4.79 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
... ... @@ -102,6 +102,10 @@ function search() {
searching = false;
end = true;
loading.hideLoadingMask();
if ($('#productDesc').hasClass('limit')) {
$('#productDesc').find('.service').removeClass('service').addClass('limit-service');
}
},
error: function() {
tip.show('网络断开连接了~');
... ... @@ -121,3 +125,5 @@ function scrollHandler() {
$(window).scroll(function() {
window.requestAnimationFrame(scrollHandler);
});
... ...
... ... @@ -113,8 +113,6 @@
h2 {
width: 430px;
/*white-space: nowrap;*/
/*overflow: hidden;*/
text-overflow: ellipsis;
}
... ...
... ... @@ -4,13 +4,21 @@
padding-bottom: 20px;
.service {
margin-left: 50px;
width: 494px;
/*margin-left: 50px;
width: 494px;*/
height: 28px;
background: resolve('product/service.png') no-repeat;
background-size: cover;
}
.limit-service {
/*margin-left: 50px;
width: 494px;*/
height: 28px;
background: resolve('product/limit.png') no-repeat;
background-size: cover;
}
.detail {
margin-bottom: 1px;
}
... ...