...
|
...
|
@@ -355,21 +355,26 @@ const _handleSaleCategory = (shopId, baseUrl, resourceObj) => { |
|
|
*/
|
|
|
exports.getShopDecorator = (data, params, shopId, base) => {
|
|
|
let dest = {};
|
|
|
let sourceFn;
|
|
|
|
|
|
if (base) {
|
|
|
sourceFn = {
|
|
|
signboard(info) {
|
|
|
dest.signboard = signboard(info);
|
|
|
},
|
|
|
shopTopBanner_base(info) {
|
|
|
Object.assign(dest, shopTopBannerBase(info));
|
|
|
}
|
|
|
};
|
|
|
|
|
|
_.forEach(data.list, (value) => {
|
|
|
if (!sourceFn[value.resource_name]) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
let info = Fn.pipe(JSON.parse, _.partial(_handleSaleCategory, shopId, ''))(value.resource_data || '[]');
|
|
|
|
|
|
switch (value.resource_name) {
|
|
|
case 'signboard':
|
|
|
dest.signboard = signboard(info);
|
|
|
break;
|
|
|
case 'shopTopBanner_base':
|
|
|
Object.assign(dest, shopTopBannerBase(info));
|
|
|
break;
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
|
sourceFn[value.resource_name](info);
|
|
|
});
|
|
|
} else {
|
|
|
Object.assign(dest, {
|
...
|
...
|
@@ -377,46 +382,50 @@ exports.getShopDecorator = (data, params, shopId, base) => { |
|
|
hotSingle: {}
|
|
|
});
|
|
|
|
|
|
sourceFn = {
|
|
|
newProducts(info) {
|
|
|
Object.assign(dest.newArrivel, newProducts(info));
|
|
|
},
|
|
|
hotProducts(info) {
|
|
|
Object.assign(dest.hotSingle, hotProducts(info));
|
|
|
},
|
|
|
goodsTabBar(info) {
|
|
|
let tabBar = goodsTabBar(info, shopId);
|
|
|
|
|
|
Object.assign(dest.newArrivel, {navs: tabBar.new});
|
|
|
Object.assign(dest.hotSingle, {navs: tabBar.hot});
|
|
|
},
|
|
|
shopTopBanner(info) {
|
|
|
Object.assign(dest, shopTopBanner(info));
|
|
|
},
|
|
|
navigationBar(info) {
|
|
|
Object.assign(dest, navigationBar(info, shopId, params));
|
|
|
},
|
|
|
largeSlideImg(info) {
|
|
|
Object.assign(dest, largeSlideImg(info, shopId));
|
|
|
},
|
|
|
oneRowTwoColImages(info) {
|
|
|
Object.assign(dest, oneRowTwoColImages(info, shopId));
|
|
|
},
|
|
|
recommend(info) {
|
|
|
Object.assign(dest, recommend(info, shopId));
|
|
|
},
|
|
|
brandBrowse(info) {
|
|
|
Object.assign(dest, brandBrowse(info, params));
|
|
|
},
|
|
|
hotRecommend(info) {
|
|
|
Object.assign(dest, hotRecommend(info));
|
|
|
}
|
|
|
};
|
|
|
|
|
|
_.forEach(data.list, (value) => {
|
|
|
let info = Fn.pipe(JSON.parse, _.partial(_handleSaleCategory, shopId, shopListUrl))(value.resource_data || '[]'); // eslint-disable-line
|
|
|
let tabBar;
|
|
|
|
|
|
switch (value.resource_name) {
|
|
|
case 'newProducts':
|
|
|
Object.assign(dest.newArrivel, newProducts(info));
|
|
|
break;
|
|
|
case 'hotProducts':
|
|
|
Object.assign(dest.hotSingle, hotProducts(info));
|
|
|
break;
|
|
|
case 'goodsTabBar':
|
|
|
tabBar = goodsTabBar(info, shopId);
|
|
|
Object.assign(dest.newArrivel, {navs: tabBar.new});
|
|
|
Object.assign(dest.hotSingle, {navs: tabBar.hot});
|
|
|
break;
|
|
|
case 'shopTopBanner':
|
|
|
Object.assign(dest, shopTopBanner(info));
|
|
|
break;
|
|
|
case 'navigationBar':
|
|
|
Object.assign(dest, navigationBar(info, shopId, params));
|
|
|
break;
|
|
|
case 'largeSlideImg':
|
|
|
Object.assign(dest, largeSlideImg(info, shopId));
|
|
|
break;
|
|
|
case 'oneRowTwoColImages':
|
|
|
Object.assign(dest, oneRowTwoColImages(info, shopId));
|
|
|
break;
|
|
|
case 'recommend':
|
|
|
Object.assign(dest, recommend(info, shopId));
|
|
|
break;
|
|
|
case 'brandBrowse':
|
|
|
Object.assign(dest, brandBrowse(info, params));
|
|
|
break;
|
|
|
case 'hotRecommend':
|
|
|
Object.assign(dest, hotRecommend(info));
|
|
|
break;
|
|
|
default:
|
|
|
break;
|
|
|
if (!sourceFn[value.resource_name]) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
let info = Fn.pipe(JSON.parse, _.partial(_handleSaleCategory, shopId, shopListUrl))(value.resource_data || '[]'); // eslint-disable-line
|
|
|
|
|
|
sourceFn[value.resource_name](info);
|
|
|
});
|
|
|
}
|
|
|
|
...
|
...
|
|