Authored by 郭成尧

'品牌数据筛选'

... ... @@ -80,7 +80,7 @@ const handleFilterUrl = (originParam, newParam) => {
tempOriginParam = Object.assign(tempOriginParam, originParam, newParam);
_.forEach(tempOriginParam, function(value, key) {
_.forEach(tempOriginParam, function (value, key) {
dest = dest + key + '=' + value + '&';
});
... ... @@ -125,9 +125,9 @@ const handleCheckedData = (params, origin, param) => {
if (!_.isEmpty(origin)) {
_.forEach(origin, (value) => {
if (value.checked) {
let checked = {};
checked.name = value.name;
let checked = {
name: value.name
};
let tempParam = {};
... ... @@ -143,7 +143,7 @@ const handleCheckedData = (params, origin, param) => {
};
/**
* 处理品牌筛选数据 待处理
* 处理品牌筛选数据
* @param params
* @param origin
* @returns {{}}
... ... @@ -159,16 +159,17 @@ const handleBrandCheckedData = (params, origin) => {
intBrands.push(parseInt(value, 10));
});
let checkedCount = 0;
// 遍历品牌数据,如果在参数中,那么加 checked,将此数据加入到 checked 数组中
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 = {}; // push 到已选择数组
checked.name = value.name;
let checked = {
name: value.name
}; // push 到已选择数组
// 为了不污染原始数据
let tempIntBrands = _.cloneDeep(intBrands);
... ... @@ -181,9 +182,10 @@ const handleBrandCheckedData = (params, origin) => {
// 拼接参数
let brand = '';
_.forEach(tempIntBrands, subValue => {
brand += subValue + ',';
});
// 建议保留,需要品牌可以单个删除时放开注释即可
// _.forEach(tempIntBrands, subValue => {
// brand += subValue + ',';
// });
// 清除参数,保留没有去掉的参数
let tempParam = {
... ... @@ -191,8 +193,14 @@ const handleBrandCheckedData = (params, origin) => {
};
checked.href = handleFilterUrl(params, tempParam);
dest.push(checked);
if (checkedCount === 0) {
dest[0] = checked;
} else if (checkedCount === 1) {
dest[0].name += '、' + checked.name;
}
checkedCount++;
// 建议保留,需要品牌可以单个删除时放开注释即可
// dest.push(checked);
}
});
}
... ... @@ -211,16 +219,16 @@ const handleSalebreakingYardsSortData = (origin, params) => {
if (!_.isEmpty(params.sort)) {
// 是否有分类筛选参数,如果有
_.forEach(params.sort.split(','), function(sortParam) {
_.forEach(origin, function(value) {
_.forEach(params.sort.split(','), function (sortParam) {
_.forEach(origin, function (value) {
// 判断是否在这组数据里面
if (!_.isEmpty(_.find(value.sort_id.split(','), o => {
return o === sortParam;
}))) {
return o === sortParam;
}))) {
// 如果在某组数据里面,组合数据退出循环
_.forEach(value.sub, function(subValue) {
_.forEach(value.sub, function (subValue) {
let size = {};
size.checked =
... ... @@ -235,8 +243,8 @@ const handleSalebreakingYardsSortData = (origin, params) => {
});
});
} else { // 如果没有筛选参数,返回所有分类
_.forEach(origin, function(value) {
_.forEach(value.sub, function(subValue) {
_.forEach(origin, function (value) {
_.forEach(value.sub, function (subValue) {
let size = {};
size.checked = parseInt(params.size, 10) === parseInt(subValue.size_id, 10);
... ... @@ -301,7 +309,7 @@ exports.handleSaleFilterData = (origin, params) => {
if (!_.isEmpty(origin.brand)) {
let count = 0;
_.forEach(origin.brand, function(value) {
_.forEach(origin.brand, function (value) {
let brand = {};
brand.checked = (parseInt(params.brand, 10) === parseInt(value.id, 10));
... ... @@ -328,13 +336,13 @@ exports.handleSaleFilterData = (origin, params) => {
}
// 来排排序
dest.brand.brandsShow = _.sortBy(dest.brand.brandsShow, function(o) {
dest.brand.brandsShow = _.sortBy(dest.brand.brandsShow, function (o) {
return o.index;
});
// 处理 价格 筛选数据
if (!_.isEmpty(origin.priceRange)) {
_.forEach(origin.priceRange, function(value, key) {
_.forEach(origin.priceRange, function (value, key) {
let price = {
checked: params.price === key,
href: handleFilterUrl(params, {price: key}),
... ... @@ -408,7 +416,7 @@ exports.handleSaleActivityData = (origin, channel) => {
dest.big = [];
dest.normal = [];
_.forEach(origin, function(value, key) {
_.forEach(origin, function (value, key) {
let activity = {
link: helpers.urlFormat('/product/sale/discount/detail', {id: value.id, channel: channel}),
img: value.cover_url,
... ... @@ -455,9 +463,9 @@ exports.handleSaleBannerData = (origin) => {
var dest = {};
dest.list = [];
_.forEach(origin, function(value) {
_.forEach(origin, function (value) {
if (value.template_name === 'focus') {
_.forEach(value.data, function(subValue) {
_.forEach(value.data, function (subValue) {
let banner = {};
banner.bannerHeight = 450;
... ... @@ -482,9 +490,9 @@ exports.handleSaleBannerSmallData = (origin) => {
var dest = [];
let count = 0;
_.forEach(origin, function(value) {
_.forEach(origin, function (value) {
if (value.template_name === 'threePicture') {
_.forEach(value.data, function(picList) {
_.forEach(value.data, function (picList) {
if (count++ < 3) {
let smallPic = {};
... ...