Authored by yyq

Merge branch 'release/4.6' of git.yoho.cn:fe/yohobuy-node into release/4.6

... ... @@ -43,13 +43,14 @@ exports.getListData = (params, channel) => {
// 获取商品数据和顶部筛选条件
if (result[0].code === 200) {
finalResult.leftContent = publicHandler.handleSaleSortData(result[0].data.filter.group_sort, params);
finalResult.pathNav = publicHandler.handlePathNavData(result[0].data.filter.group_sort, params);
}
// 获取左侧类目数据
if (result[1].code === 200) {
Object.assign(finalResult, {
filters: publicHandler.handleSaleFilterData(result[1].data.filter, params),
pathNav: publicHandler.handlePathNavData(result[1].data.filter.group_sort, params),
opts: publicHandler.handleSaleOptsData(params, result[1].data.total),
totalCount: result[1].data.total,
pager: publicHandler.handleSalePagerData(result[1].data.total, params),
... ...
... ... @@ -223,10 +223,10 @@ exports.handleOutletsActivityData = (origin, name) => {
// 处理奥莱活动列表数据
_.forEach(origin, value => {
let activity = {
href: helpers.urlFormat('/product/outlets/special/detail', {productPool: value.productPool})
href: helpers.urlFormat('/product/outlets/special/detail', {productPool: value.productPoolId})
};
activity.href = helpers.urlFormat('/product/outlets/special/detail', {productPool: value.productPool});
activity.href = helpers.urlFormat('/product/outlets/special/detail', {productPool: value.productPoolId});
activity.img = value.webCoverUrl;
activity.logo = value.logoUrl;
activity.title = value.title;
... ...
... ... @@ -106,29 +106,34 @@ exports.getOutletsIndexData = (params, channel) => {
* @return {[type]}
*/
exports.getOutletsChannelData = (params, channel) => {
// 频道资源位不存在
if (!channelCode[channel]) {
throw new Error('频道资源位不存在');
}
let channelData = {};
let apiArr = [
headerModel.requestHeaderData('outlets')
];
// 获取头部数据
headerModel.requestHeaderData('outlets'),
if (channelCode[channel]) {
apiArr.push(outletsApi.getChannelResouceData({
content_code: channelCode[channel]
}));
apiArr.push(outletsApi.getOutletsActivityOrigin({
// 获取频道资源位
outletsApi.getChannelResouceData({content_code: channelCode[channel]}),
// 获取奥莱活动
outletsApi.getOutletsActivityOrigin({
platform: 1,
size: 0,
channel: channel,
type: 1
}));
apiArr.push(outletsApi.getOutletsGoodsList(Object.assign(params, {channel: channel})));
} else {
// 错误页面
channelData.pageErr = true;
}
}),
// 获取奥莱商品列表
outletsApi.getOutletsGoodsList(Object.assign(params, {channel: channel}))
];
return api.all(apiArr).then(result => {
// 返回页面的数据
let finalResult = {
headerData: Object.assign(result[0].headerData, {
header: true,
... ... @@ -138,33 +143,31 @@ exports.getOutletsChannelData = (params, channel) => {
Object.assign(channelData, finalResult);
if (!channelData.pageErr) {
// 资源楼层
if (result[1].code === channelData) {
Object.assign(channelData, outletsProcess.processFloor(result[1].data.list, params));
}
// 资源楼层
if (result[1].code === channelData) {
Object.assign(channelData, outletsProcess.processFloor(result[1].data.list, params));
}
// 限时嗨购
if (result[2].code === 200) {
channelData.nearOver = outletsProcess.handleOutletsActivityData(result[2].data, '限时嗨购');
}
// 限时嗨购
if (result[2].code === 200) {
channelData.nearOver = outletsProcess.handleOutletsActivityData(result[2].data, '限时嗨购');
// 商品列表
if (result[3].code === 200) {
if (!channelData.goodsBoard) {
channelData.goodsBoard = {};
}
channelData.goodsBoard.sort = publicHandler.handleSaleOptsData(params, result[3].data.total);
channelData.goodsBoard.sort.newPage = true;
channelData.goodsBoard.list = productProcess.processProductList(result[3].data.product_list);
channelData.pager = publicHandler.handleSalePagerData(result[3].data.total, params);
// 商品列表
if (result[3].code === 200) {
if (!channelData.goodsBoard) {
channelData.goodsBoard = {};
}
channelData.goodsBoard.sort = publicHandler.handleSaleOptsData(params, result[3].data.total);
channelData.goodsBoard.sort.newPage = true;
channelData.goodsBoard.list = productProcess.processProductList(result[3].data.product_list);
channelData.pager = publicHandler.handleSalePagerData(result[3].data.total, params);
// 添加锚点
if (!_.isEmpty(channelData.goodsBoard.sort.sortType)) {
_.forEach(channelData.goodsBoard.sort.sortType, (value, key) => {
channelData.goodsBoard.sort.sortType[key].href += '#otspool';
});
}
// 添加锚点
if (channelData.goodsBoard.sort.sortType) {
_.forEach(channelData.goodsBoard.sort.sortType, (value, key) => {
channelData.goodsBoard.sort.sortType[key].href += '#otspool';
});
}
}
... ...
... ... @@ -376,6 +376,10 @@ exports.handleSaleSortData = (origin, params, extra) => {
leftContent.allSort = {};
leftContent.allSort.list = [];
// 删除 msort misort
delete params.msort;
delete params.misort;
if (extra === 'discount') {
let tempParams = _.cloneDeep(params);
... ... @@ -628,29 +632,27 @@ exports.handleCheckedData = handleCheckedData;
exports.handlePathNavData = (data, params) => {
let pathNav = [
{
href: '/', // TODO
name: 'OUTLETS',
pathTitle: 'OUTLETS'
href: '/product/outlets', // TODO
name: 'OUTLET',
pathTitle: 'OUTLET'
}
];
_.forEach(data, (sort) => {
if (sort.relation_parameter.sort === params.sort) {
pathNav.push({
href: helpers.urlFormat('outlets/list', {sort: params.sort}),
name: sort.category_name,
pathTitle: sort.category_name
});
}
if (!_.isEmpty(sort.sub)) {
_.forEach(sort.sub, (misort) => {
if (misort.relation_parameter.sort === params.sort) {
pathNav.push({
href: helpers.urlFormat('outlets/list', {sort: params.sort}),
name: misort.category_name,
pathTitle: misort.category_name
});
if (misort.relation_parameter.sort === params.sort || misort.category_id === params.misort) {
pathNav.push(
{
href: helpers.urlFormat('outlets/list', {sort: params.sort}),
name: sort.category_name,
pathTitle: sort.category_name
},
{
href: helpers.urlFormat('outlets/list', {sort: params.sort}),
name: misort.category_name,
pathTitle: misort.category_name
});
}
});
}
... ...