...
|
...
|
@@ -2,7 +2,7 @@ |
|
|
* @Author: Targaryen
|
|
|
* @Date: 2016-06-02 15:50:47
|
|
|
* @Last Modified by: Targaryen
|
|
|
* @Last Modified time: 2016-06-20 21:32:00
|
|
|
* @Last Modified time: 2016-06-22 17:32:39
|
|
|
*/
|
|
|
|
|
|
'use strict';
|
...
|
...
|
@@ -39,15 +39,15 @@ const handleFilterUrl = (originParam, newParam) => { |
|
|
const handleSaleNewSaleSortData = (params) => {
|
|
|
return [{
|
|
|
name: '1~3折',
|
|
|
href: handleFilterUrl(params, {p_d: '0.1,0.3'}),
|
|
|
href: handleFilterUrl(params, { p_d: '0.1,0.3' }),
|
|
|
checked: params.p_d === '0.1,0.3'
|
|
|
}, {
|
|
|
name: '4~6折',
|
|
|
href: handleFilterUrl(params, {p_d: '0.4,0.6'}),
|
|
|
href: handleFilterUrl(params, { p_d: '0.4,0.6' }),
|
|
|
checked: params.p_d === '0.4,0.6'
|
|
|
}, {
|
|
|
name: '7折以上',
|
|
|
href: handleFilterUrl(params, {p_d: '0.7,1'}),
|
|
|
href: handleFilterUrl(params, { p_d: '0.7,1' }),
|
|
|
checked: params.p_d === '0.7,1'
|
|
|
}];
|
|
|
};
|
...
|
...
|
@@ -67,8 +67,8 @@ const handleSalebreakingYardsSortData = (origin, params) => { |
|
|
|
|
|
// 判断是否在这组数据里面
|
|
|
if (!_.isEmpty(_.find(value.sort_id.split(','), o => {
|
|
|
return o === sortParam;
|
|
|
}))) {
|
|
|
return o === sortParam;
|
|
|
}))) {
|
|
|
|
|
|
// 如果在某组数据里面,组合数据退出循环
|
|
|
_.forEach(value.sub, subValue => {
|
...
|
...
|
@@ -153,8 +153,8 @@ const handleBrandCheckedData = (params, origin) => { |
|
|
if (!_.isEmpty(origin)) {
|
|
|
_.forEach(origin, (value) => {
|
|
|
if (typeof _.find(intBrands, o => {
|
|
|
return _.isEqual(o, value.id);
|
|
|
}) !== 'undefined') {
|
|
|
return _.isEqual(o, value.id);
|
|
|
}) !== 'undefined') {
|
|
|
|
|
|
let checked = {
|
|
|
name: value.name
|
...
|
...
|
@@ -217,7 +217,7 @@ exports.handleSaleOptsData = (params, total, extra) => { |
|
|
|
|
|
switch (i) {
|
|
|
case 0:
|
|
|
opt.href = handleFilterUrl(params, {order: 's_t_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_t_desc' });
|
|
|
if (extra === 'discont') { // 如果是折扣专场
|
|
|
opt.name = '全部';
|
|
|
if (_.isEmpty(params.order) || params.order === 's_t_desc') {
|
...
|
...
|
@@ -238,16 +238,16 @@ exports.handleSaleOptsData = (params, total, extra) => { |
|
|
break;
|
|
|
case 1:
|
|
|
if (params.order !== 's_p_desc' && params.order !== 's_p_asc') {
|
|
|
opt.href = handleFilterUrl(params, {order: 's_p_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_p_desc' });
|
|
|
opt.hasSortOrient = true;
|
|
|
} else {
|
|
|
opt.hasSortOrient = true;
|
|
|
opt.active = true;
|
|
|
if (params.order === 's_p_desc') {
|
|
|
opt.href = handleFilterUrl(params, {order: 's_p_asc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_p_asc' });
|
|
|
opt.desc = false;
|
|
|
} else {
|
|
|
opt.href = handleFilterUrl(params, {order: 's_p_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_p_desc' });
|
|
|
opt.desc = true;
|
|
|
}
|
|
|
}
|
...
|
...
|
@@ -256,16 +256,16 @@ exports.handleSaleOptsData = (params, total, extra) => { |
|
|
break;
|
|
|
case 2:
|
|
|
if (params.order !== 'p_d_desc' && params.order !== 'p_d_asc') {
|
|
|
opt.href = handleFilterUrl(params, {order: 'p_d_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 'p_d_desc' });
|
|
|
opt.hasSortOrient = true;
|
|
|
} else {
|
|
|
opt.hasSortOrient = true;
|
|
|
opt.active = true;
|
|
|
if (params.order === 'p_d_desc') {
|
|
|
opt.href = handleFilterUrl(params, {order: 'p_d_asc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 'p_d_asc' });
|
|
|
opt.desc = false;
|
|
|
} else {
|
|
|
opt.href = handleFilterUrl(params, {order: 'p_d_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 'p_d_desc' });
|
|
|
opt.desc = true;
|
|
|
}
|
|
|
}
|
...
|
...
|
@@ -274,16 +274,16 @@ exports.handleSaleOptsData = (params, total, extra) => { |
|
|
break;
|
|
|
case 3:
|
|
|
if (params.order !== 's_n_desc' && params.order !== 's_n_asc') {
|
|
|
opt.href = handleFilterUrl(params, {order: 's_n_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_n_desc' });
|
|
|
opt.hasSortOrient = true;
|
|
|
} else {
|
|
|
opt.hasSortOrient = true;
|
|
|
opt.active = true;
|
|
|
if (params.order === 's_n_desc') {
|
|
|
opt.href = handleFilterUrl(params, {order: 's_n_asc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_n_asc' });
|
|
|
opt.desc = false;
|
|
|
} else {
|
|
|
opt.href = handleFilterUrl(params, {order: 's_n_desc'});
|
|
|
opt.href = handleFilterUrl(params, { order: 's_n_desc' });
|
|
|
opt.desc = true;
|
|
|
}
|
|
|
}
|
...
|
...
|
@@ -299,13 +299,13 @@ exports.handleSaleOptsData = (params, total, extra) => { |
|
|
|
|
|
// 上下翻页数据处理
|
|
|
dest.pageCounts = [{
|
|
|
href: handleFilterUrl(params, {limit: 200}),
|
|
|
href: handleFilterUrl(params, { limit: 200 }),
|
|
|
count: 200
|
|
|
}, {
|
|
|
href: handleFilterUrl(params, {limit: 100}),
|
|
|
href: handleFilterUrl(params, { limit: 100 }),
|
|
|
count: 100
|
|
|
}, {
|
|
|
href: handleFilterUrl(params, {limit: 60}),
|
|
|
href: handleFilterUrl(params, { limit: 60 }),
|
|
|
count: 60
|
|
|
}];
|
|
|
|
...
|
...
|
@@ -322,17 +322,17 @@ exports.handleSaleOptsData = (params, total, extra) => { |
|
|
|
|
|
// 上一页下一页
|
|
|
let preHref = (!_.isEmpty(params.page) && parseInt(params.page, 10) > 1) ?
|
|
|
parseInt(params.page, 10) - 1 : 1;
|
|
|
parseInt(params.page, 10) - 1 : 1;
|
|
|
let nextHref = (!_.isEmpty(params.page)) ? parseInt(params.page, 10) + 1 : 2;
|
|
|
|
|
|
if (dest.pageCount > 1 && (parseInt(params.page, 10) !== 1) &&
|
|
|
(parseInt(params.page, 10) !== dest.pageCount)) {
|
|
|
dest.preHref = handleFilterUrl(params, {page: preHref});
|
|
|
dest.nextHref = handleFilterUrl(params, {page: nextHref});
|
|
|
dest.preHref = handleFilterUrl(params, { page: preHref });
|
|
|
dest.nextHref = handleFilterUrl(params, { page: nextHref });
|
|
|
} else if (dest.pageCount > 1 && (parseInt(params.page, 10) === 1)) {
|
|
|
dest.nextHref = handleFilterUrl(params, {page: nextHref});
|
|
|
dest.nextHref = handleFilterUrl(params, { page: nextHref });
|
|
|
} else if (dest.pageCount > 1 && (parseInt(params.page, 10) === dest.pageCount)) {
|
|
|
dest.preHref = handleFilterUrl(params, {page: preHref});
|
|
|
dest.preHref = handleFilterUrl(params, { page: preHref });
|
|
|
}
|
|
|
|
|
|
// 全部商品数
|
...
|
...
|
@@ -390,7 +390,7 @@ exports.handleSaleSortData = (origin, params, extra) => { |
|
|
name: value.category_name,
|
|
|
num: value.node_count,
|
|
|
childList: [],
|
|
|
href: handleFilterUrl(params, {sort: value.relation_parameter.sort}),
|
|
|
href: handleFilterUrl(params, { sort: value.relation_parameter.sort }),
|
|
|
active: params.sort === value.relation_parameter.sort
|
|
|
};
|
|
|
|
...
|
...
|
@@ -398,7 +398,7 @@ exports.handleSaleSortData = (origin, params, extra) => { |
|
|
category.childList.push({
|
|
|
name: subValue.category_name,
|
|
|
num: subValue.node_count,
|
|
|
href: handleFilterUrl(params, {sort: subValue.relation_parameter.sort}),
|
|
|
href: handleFilterUrl(params, { sort: subValue.relation_parameter.sort }),
|
|
|
childActive: params.sort === subValue.relation_parameter.sort
|
|
|
});
|
|
|
if (params.sort === subValue.relation_parameter.sort) {
|
...
|
...
|
@@ -424,16 +424,13 @@ exports.handleSaleFilterData = (origin, params) => { |
|
|
brand: {
|
|
|
default: [],
|
|
|
brandsShow: [],
|
|
|
brandIndex: [
|
|
|
{
|
|
|
index: 'all',
|
|
|
name: '全部'
|
|
|
},
|
|
|
{
|
|
|
index: '0-9',
|
|
|
name: '0~9'
|
|
|
}
|
|
|
],
|
|
|
brandIndex: [{
|
|
|
index: 'all',
|
|
|
name: '全部'
|
|
|
}, {
|
|
|
index: '0-9',
|
|
|
name: '0~9'
|
|
|
}],
|
|
|
showMore: true,
|
|
|
showMulti: true
|
|
|
},
|
...
|
...
|
@@ -468,7 +465,7 @@ exports.handleSaleFilterData = (origin, params) => { |
|
|
checked: (typeof _.find(intBrands, o => {
|
|
|
return _.isEqual(o, value.id);
|
|
|
}) !== 'undefined'),
|
|
|
href: handleFilterUrl(params, {brand: value.id}),
|
|
|
href: handleFilterUrl(params, { brand: value.id }),
|
|
|
name: value.brand_name,
|
|
|
key: value.brand_domain,
|
|
|
id: value.id
|
...
|
...
|
@@ -503,7 +500,7 @@ exports.handleSaleFilterData = (origin, params) => { |
|
|
_.forEach(origin.priceRange, (value, key) => {
|
|
|
let price = {
|
|
|
checked: params.price === key,
|
|
|
href: handleFilterUrl(params, {price: key}),
|
|
|
href: handleFilterUrl(params, { price: key }),
|
|
|
name: value
|
|
|
};
|
|
|
|
...
|
...
|
@@ -514,30 +511,29 @@ exports.handleSaleFilterData = (origin, params) => { |
|
|
// 处理用户自主填写的价格区间
|
|
|
if (!priceRangechecked && params.price) {
|
|
|
let customPrice = _.split(params.price, ',');
|
|
|
|
|
|
dest.customPrice = {
|
|
|
min: customPrice[0],
|
|
|
max: customPrice[1]
|
|
|
};
|
|
|
dest.checkedConditions.conditions.push({
|
|
|
name: '¥ ' + customPrice[0] + '-' + customPrice[1],
|
|
|
href: handleFilterUrl(params, {price: ''})
|
|
|
});
|
|
|
|
|
|
if (customPrice[1] !== '99999') {
|
|
|
dest.customPrice = {
|
|
|
min: customPrice[0],
|
|
|
max: customPrice[1]
|
|
|
};
|
|
|
dest.checkedConditions.conditions.push({
|
|
|
name: '¥ ' + customPrice[0] + '-' + customPrice[1],
|
|
|
href: handleFilterUrl(params, { price: '' })
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// 处理性别数据
|
|
|
dest.gender = [
|
|
|
{
|
|
|
name: 'BOYS',
|
|
|
href: handleFilterUrl(params, {gender: '1,3'}),
|
|
|
checked: params.gender === '1,3'
|
|
|
},
|
|
|
{
|
|
|
name: 'GIRLS',
|
|
|
href: handleFilterUrl(params, {gender: '2,3'}),
|
|
|
checked: params.gender === '2,3'
|
|
|
}
|
|
|
];
|
|
|
dest.gender = [{
|
|
|
name: 'BOYS',
|
|
|
href: handleFilterUrl(params, { gender: '1,3' }),
|
|
|
checked: params.gender === '1,3'
|
|
|
}, {
|
|
|
name: 'GIRLS',
|
|
|
href: handleFilterUrl(params, { gender: '2,3' }),
|
|
|
checked: params.gender === '2,3'
|
|
|
}];
|
|
|
|
|
|
// 最新降价数据处理
|
|
|
if (parseInt(params.saleType, 10) === 3) {
|
...
|
...
|
@@ -636,30 +632,25 @@ exports.handleBannerData = (origin) => { |
|
|
* @type {[type]}
|
|
|
*/
|
|
|
exports.handlePathNavData = (data, params) => {
|
|
|
let pathNav = [
|
|
|
{
|
|
|
href: '/product/outlets', // TODO
|
|
|
name: 'OUTLET',
|
|
|
pathTitle: 'OUTLET'
|
|
|
}
|
|
|
];
|
|
|
let pathNav = [{
|
|
|
href: '/product/outlets', // TODO
|
|
|
name: 'OUTLET',
|
|
|
pathTitle: 'OUTLET'
|
|
|
}];
|
|
|
|
|
|
_.forEach(data, (sort) => {
|
|
|
if (!_.isEmpty(sort.sub)) {
|
|
|
_.forEach(sort.sub, misort => {
|
|
|
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
|
|
|
}
|
|
|
);
|
|
|
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
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
}
|
...
|
...
|
@@ -696,7 +687,7 @@ exports.handlePagerData = (total, params) => { |
|
|
// 当前页为 1,一定没有上一页
|
|
|
delete dest.prePage;
|
|
|
} else {
|
|
|
dest.prePage.url = handleFilterUrl(params, {page: currentPage - 1});
|
|
|
dest.prePage.url = handleFilterUrl(params, { page: currentPage - 1 });
|
|
|
}
|
|
|
|
|
|
if (currentPage === totalPage) {
|
...
|
...
|
@@ -704,7 +695,7 @@ exports.handlePagerData = (total, params) => { |
|
|
// 当前页为最后一页,一定没有下一页
|
|
|
delete dest.nextPage;
|
|
|
} else {
|
|
|
dest.nextPage.url = handleFilterUrl(params, {page: currentPage + 1});
|
|
|
dest.nextPage.url = handleFilterUrl(params, { page: currentPage + 1 });
|
|
|
}
|
|
|
|
|
|
// 页码临时数据
|
...
|
...
|
@@ -713,7 +704,7 @@ exports.handlePagerData = (total, params) => { |
|
|
if (currentPage > 2 && currentPage <= totalPage - 2) {
|
|
|
for (let i = currentPage - 2; i <= ((currentPage + 2) > totalPage ? totalPage : (currentPage + 2)); i++) {
|
|
|
pages.push({
|
|
|
url: handleFilterUrl(params, {page: i}),
|
|
|
url: handleFilterUrl(params, { page: i }),
|
|
|
num: i,
|
|
|
cur: currentPage === i
|
|
|
});
|
...
|
...
|
@@ -723,7 +714,7 @@ exports.handlePagerData = (total, params) => { |
|
|
} else if (currentPage <= 2) {
|
|
|
for (let i = 1; i <= (totalPage < 5 ? totalPage : 5); i++) {
|
|
|
pages.push({
|
|
|
url: handleFilterUrl(params, {page: i}),
|
|
|
url: handleFilterUrl(params, { page: i }),
|
|
|
num: i,
|
|
|
cur: currentPage === i
|
|
|
});
|
...
|
...
|
@@ -731,7 +722,7 @@ exports.handlePagerData = (total, params) => { |
|
|
} else if (currentPage > totalPage - 2) {
|
|
|
for (let i = totalPage; i >= totalPage - 4; i--) {
|
|
|
pages.push({
|
|
|
url: handleFilterUrl(params, {page: i}),
|
|
|
url: handleFilterUrl(params, { page: i }),
|
|
|
num: i,
|
|
|
cur: currentPage === i
|
|
|
});
|
...
|
...
|
@@ -745,7 +736,7 @@ exports.handlePagerData = (total, params) => { |
|
|
if (_.size(pages) === 5) {
|
|
|
if (currentPage > 4) {
|
|
|
prevPages.push({
|
|
|
url: handleFilterUrl(params, {page: 1}),
|
|
|
url: handleFilterUrl(params, { page: 1 }),
|
|
|
num: 1
|
|
|
});
|
|
|
prevPages.push({
|
...
|
...
|
@@ -757,7 +748,7 @@ exports.handlePagerData = (total, params) => { |
|
|
num: '...'
|
|
|
});
|
|
|
nextPages.push({
|
|
|
url: handleFilterUrl(params, {page: totalPage}),
|
|
|
url: handleFilterUrl(params, { page: totalPage }),
|
|
|
num: totalPage
|
|
|
});
|
|
|
}
|
...
|
...
|
|