Authored by 邱骏

update

... ... @@ -13,6 +13,12 @@ const genderMap = {
lifestyle: '1,2,3'
};
const changeGenderMap = { // 新规则,男生为gd-1女生为gd-2.kids与lifestyle为空
'1,3': 1,
'2,3': 2,
'1,2,3': ''
};
module.exports = class extends global.yoho.BaseModel {
constructor(ctx) {
super(ctx);
... ... @@ -31,22 +37,27 @@ module.exports = class extends global.yoho.BaseModel {
_.map(list, function(item, key) {
_.set(item, 'focus', key === channel);
_.map(item, function(firstItem) {
// 如果有二级菜单,二级菜单跳转,否则一级菜单跳转
let gender = changeGenderMap[genderMap[key]] ? '-gd' + changeGenderMap[genderMap[key]] : '';
if (firstItem.sub && firstItem.sub.length) {
_.map(firstItem.sub, function(secondItem) {
secondItem.url =
`//m.yohobuy.com/list/ci${_.get(secondItem, 'category_id')}${gender || ''}.html`;
/* secondItem.url =
`//m.yohobuy.com/list/gd${genderMap[key] || ''}-ci${_.get(secondItem, 'category_id')}.html`;
*/
});
firstItem.sub.unshift({
category_name: `全部${firstItem.category_name}`,
url: `//m.yohobuy.com/list/gd${genderMap[key] || ''}-ci${_.get(firstItem, 'category_id')}.html?title=${firstItem.category_name}` // eslint-disable-line
url: `//m.yohobuy.com/list/ci${_.get(firstItem, 'category_id')}${gender || ''}.html?title=${firstItem.category_name}` // eslint-disable-line
});
} else {
firstItem.url =
`//m.yohobuy.com/list/gd${genderMap[key] || ''}-ci${_.get(firstItem, 'category_id')}.html`;
`//m.yohobuy.com/list/ci${_.get(firstItem, 'category_id')}${gender || ''}.html.html`;
}
});
});
... ...
... ... @@ -40,12 +40,18 @@ const PARAMMAP = {
tp: 'type'
};
const genderMap = {
1: '1,3',
2: '2,3'
};
/**
* 解析 pathParams 获取标准参数
*/
const getParams = (pathParams) => {
let params = {};
console.log(pathParams);
pathParams = _.replace(pathParams, '.html', '');
if (pathParams) {
... ... @@ -58,12 +64,18 @@ const getParams = (pathParams) => {
.replace('__', '-')
.value();
if (keyRaw === 'gd') {
valueRaw = genderMap[valueRaw];
}
if (PARAMMAP[keyRaw]) {
params[PARAMMAP[keyRaw]] = valueRaw;
}
});
}
console.log(_.toPlainObject(params));
return _.toPlainObject(params);
};
... ...