Showing
8 changed files
with
161 additions
and
139 deletions
@@ -29,7 +29,7 @@ const _getResources = (page) => { | @@ -29,7 +29,7 @@ const _getResources = (page) => { | ||
29 | if (result && result.code === 200) { | 29 | if (result && result.code === 200) { |
30 | return resourcesProcess(result.data); | 30 | return resourcesProcess(result.data); |
31 | } else { | 31 | } else { |
32 | - logger.error('星潮教室页面资源位返回 code 不是 200'); | 32 | + logger.error('star index resources return code is not 200'); |
33 | return []; | 33 | return []; |
34 | } | 34 | } |
35 | }); | 35 | }); |
@@ -37,7 +37,7 @@ const _getResources = (page) => { | @@ -37,7 +37,7 @@ const _getResources = (page) => { | ||
37 | 37 | ||
38 | /** | 38 | /** |
39 | * 星潮教室首页数据处理 | 39 | * 星潮教室首页数据处理 |
40 | - * @param {[array]} list | 40 | + * @param {[array]} dataList |
41 | * @return {[array]} | 41 | * @return {[array]} |
42 | */ | 42 | */ |
43 | const _processIndexData = (dataList) => { | 43 | const _processIndexData = (dataList) => { |
@@ -158,7 +158,7 @@ const getIndexData = () => { | @@ -158,7 +158,7 @@ const getIndexData = () => { | ||
158 | if (result && result.code === 200) { | 158 | if (result && result.code === 200) { |
159 | return _processIndexData(result); | 159 | return _processIndexData(result); |
160 | } else { | 160 | } else { |
161 | - logger.error('星潮教室首页数据返回 code 不是 200'); | 161 | + logger.error('get star index data return is not 200'); |
162 | return {}; | 162 | return {}; |
163 | } | 163 | } |
164 | }); | 164 | }); |
@@ -183,7 +183,7 @@ const getDetailData = (params, uid) => { | @@ -183,7 +183,7 @@ const getDetailData = (params, uid) => { | ||
183 | return _processGuangData(result.data.list, true); | 183 | return _processGuangData(result.data.list, true); |
184 | } | 184 | } |
185 | } else { | 185 | } else { |
186 | - logger.error('明星专题文章数据返回 code 不是 200'); | 186 | + logger.error('get star feature article data return code is not 200'); |
187 | return []; | 187 | return []; |
188 | } | 188 | } |
189 | }); | 189 | }); |
@@ -227,7 +227,7 @@ const getCollocationListData = (params, uid) => { | @@ -227,7 +227,7 @@ const getCollocationListData = (params, uid) => { | ||
227 | if (result && result.code === 200) { | 227 | if (result && result.code === 200) { |
228 | return _processGuangData(result.data.list.artList); | 228 | return _processGuangData(result.data.list.artList); |
229 | } else { | 229 | } else { |
230 | - logger.error('获取星搭配文章列表返回 code 不是 200'); | 230 | + logger.error('get Collocation article list return code is not 200'); |
231 | return []; | 231 | return []; |
232 | } | 232 | } |
233 | }); | 233 | }); |
@@ -198,7 +198,6 @@ const _formShopData = (data, shopId, isApp) => { | @@ -198,7 +198,6 @@ const _formShopData = (data, shopId, isApp) => { | ||
198 | 198 | ||
199 | // 店铺下面的所有分类 | 199 | // 店铺下面的所有分类 |
200 | if (data.shopCategory) { | 200 | if (data.shopCategory) { |
201 | - console.log(data.shopCategory); | ||
202 | let total = data.shopCategory.length; | 201 | let total = data.shopCategory.length; |
203 | let shopCategory = { | 202 | let shopCategory = { |
204 | list: [] | 203 | list: [] |
@@ -278,8 +277,6 @@ const _baseShop = (req, res, data) => { | @@ -278,8 +277,6 @@ const _baseShop = (req, res, data) => { | ||
278 | Promise.all([listModel.getShopDecorator(data.shopsId), listModel.getShopBrands(data.shopsId)]).then((result) => { | 277 | Promise.all([listModel.getShopDecorator(data.shopsId), listModel.getShopBrands(data.shopsId)]).then((result) => { |
279 | result[0] = result[0] || {}; | 278 | result[0] = result[0] || {}; |
280 | 279 | ||
281 | - console.log(result[0], result[1]); | ||
282 | - | ||
283 | _.forEach(result[0], (item) => { | 280 | _.forEach(result[0], (item) => { |
284 | if (item.resourceName === 'shopTopBanner_base') { | 281 | if (item.resourceName === 'shopTopBanner_base') { |
285 | let banner = JSON.parse(item.resourceData); | 282 | let banner = JSON.parse(item.resourceData); |
@@ -383,8 +380,8 @@ const category = (req, res) => { | @@ -383,8 +380,8 @@ const category = (req, res) => { | ||
383 | // 品牌|店铺落地页 | 380 | // 品牌|店铺落地页 |
384 | const brand = (req, res, next) => { | 381 | const brand = (req, res, next) => { |
385 | let params = Object.assign({}, req.query); | 382 | let params = Object.assign({}, req.query); |
386 | - let domain = 'colormad'; | ||
387 | - let uid = req.user.uid || 20000032; | 383 | + let domain = req.query.domain || 'colormad'; |
384 | + let uid = req.user.uid; | ||
388 | let brandId = 0; | 385 | let brandId = 0; |
389 | let brandLogo = {}; | 386 | let brandLogo = {}; |
390 | let title = ''; | 387 | let title = ''; |
@@ -486,13 +483,15 @@ const shopIntro = (req, res, next) => { | @@ -486,13 +483,15 @@ const shopIntro = (req, res, next) => { | ||
486 | */ | 483 | */ |
487 | const favoriteBrand = (req, res, next) => { | 484 | const favoriteBrand = (req, res, next) => { |
488 | let id = req.body.id; | 485 | let id = req.body.id; |
489 | - let uid = req.user.uid || 20000032; | 486 | + let uid = req.user.uid; |
490 | let opt = req.body.opt || 'ok'; | 487 | let opt = req.body.opt || 'ok'; |
491 | let type = req.body.type || 'product'; | 488 | let type = req.body.type || 'product'; |
492 | let appVersion = req.body.appVersion || false; | 489 | let appVersion = req.body.appVersion || false; |
490 | + let url = helpers.urlFormat('/signin.html') + '?refer=' + decodeURI(req.cookies.refer); | ||
493 | 491 | ||
494 | if (appVersion === 'true') { | 492 | if (appVersion === 'true') { |
495 | uid = req.cookies.appUid; | 493 | uid = req.cookies.appUid; |
494 | + url = `${url}&openby:yohobuy={"action":"go.weblogin","params":{"jumpurl":{"url":${decodeURI(req.cookies.refer)},"param":{}},"requesturl":{"param":{},"url":""},"priority":"Y"}}`; // eslint-disable-line | ||
496 | } | 495 | } |
497 | 496 | ||
498 | if (_.isNumber(id)) { | 497 | if (_.isNumber(id)) { |
@@ -503,12 +502,12 @@ const favoriteBrand = (req, res, next) => { | @@ -503,12 +502,12 @@ const favoriteBrand = (req, res, next) => { | ||
503 | }); | 502 | }); |
504 | return false; | 503 | return false; |
505 | } else if (!uid) { | 504 | } else if (!uid) { |
505 | + | ||
506 | + | ||
506 | res.json({ | 507 | res.json({ |
507 | code: 400, | 508 | code: 400, |
508 | message: '未登录', | 509 | message: '未登录', |
509 | - data: helpers.urlFormat('/signin.html', { | ||
510 | - refer: decodeURI(req.cookies.refer) | ||
511 | - }) | 510 | + data: url |
512 | }); | 511 | }); |
513 | return false; | 512 | return false; |
514 | } else if (opt !== 'ok') { // 取消收藏 | 513 | } else if (opt !== 'ok') { // 取消收藏 |
@@ -11,19 +11,23 @@ const searchModel = require(`${mRoot}/search`); | @@ -11,19 +11,23 @@ const searchModel = require(`${mRoot}/search`); | ||
11 | const _ = require('lodash'); | 11 | const _ = require('lodash'); |
12 | const helpers = global.yoho.helpers; | 12 | const helpers = global.yoho.helpers; |
13 | 13 | ||
14 | -// 搜索落地页 | 14 | +/** |
15 | + * 搜索落地页 | ||
16 | + */ | ||
15 | const list = (req, res, next) => { | 17 | const list = (req, res, next) => { |
16 | - let params = Object.assign({}, req.query); | 18 | + let params = Object.assign({ |
19 | + isSearch: true, // 搜索列表将最新改成默认的标识 | ||
20 | + cartUrl: helpers.urlFormat('/cart/index/index') | ||
21 | + }, req.query); | ||
17 | let title = ''; | 22 | let title = ''; |
18 | let query = req.query.query; | 23 | let query = req.query.query; |
19 | let isQueryFirstClass = false; // 标识用户搜的是不是一级品类 | 24 | let isQueryFirstClass = false; // 标识用户搜的是不是一级品类 |
20 | let isQuerySecondClass = false; // 标识用户搜的是不是二级品类 | 25 | let isQuerySecondClass = false; // 标识用户搜的是不是二级品类 |
21 | let domain = null; | 26 | let domain = null; |
22 | 27 | ||
23 | - params = _.assign({ | ||
24 | - isSearch: true, | ||
25 | - cartUrl: helpers.urlFormat('/cart/index/index') | ||
26 | - }, params); | 28 | + if (params.shop_id) { |
29 | + params.shopId = params.shop_id; | ||
30 | + } | ||
27 | 31 | ||
28 | /* 判断是不是品牌, 是品牌跳到品牌列表页(显示搜索框),判断是不是品类, 是品类加导航标题(不显示搜索框) */ | 32 | /* 判断是不是品牌, 是品牌跳到品牌列表页(显示搜索框),判断是不是品类, 是品类加导航标题(不显示搜索框) */ |
29 | Promise.all([searchModel.getAllBrandNames(), searchModel.getClassNames()]).then((result) => { | 33 | Promise.all([searchModel.getAllBrandNames(), searchModel.getClassNames()]).then((result) => { |
@@ -85,28 +89,33 @@ const list = (req, res, next) => { | @@ -85,28 +89,33 @@ const list = (req, res, next) => { | ||
85 | } else if (isQuerySecondClass) { // 搜索是二级品类 | 89 | } else if (isQuerySecondClass) { // 搜索是二级品类 |
86 | title = query; | 90 | title = query; |
87 | } else { // 搜索其它内容 | 91 | } else { // 搜索其它内容 |
88 | - if (query) { | 92 | + if (query || params.form) { |
89 | params.search = { | 93 | params.search = { |
90 | default: query === '' ? false : query, | 94 | default: query === '' ? false : query, |
91 | - url: '' | 95 | + url: helpers.urlFormat('', null, 'search') |
92 | }; | 96 | }; |
93 | } | 97 | } |
94 | title = '搜索'; | 98 | title = '搜索'; |
95 | } | 99 | } |
96 | 100 | ||
101 | + title = params.title ? params.title : title; | ||
102 | + | ||
97 | res.render('search/list', { | 103 | res.render('search/list', { |
98 | module: 'product', | 104 | module: 'product', |
99 | page: 'search-list', | 105 | page: 'search-list', |
100 | pageHeader: headerModel.setNav({ | 106 | pageHeader: headerModel.setNav({ |
101 | navTitle: title | 107 | navTitle: title |
102 | }), | 108 | }), |
109 | + title: title, | ||
103 | goodList: params, | 110 | goodList: params, |
104 | pageFooter: true | 111 | pageFooter: true |
105 | }); | 112 | }); |
106 | }).catch(next); | 113 | }).catch(next); |
107 | }; | 114 | }; |
108 | 115 | ||
109 | -// ajax 商品数据请求 | 116 | +/** |
117 | + * ajax 商品数据请求 | ||
118 | + */ | ||
110 | const search = (req, res, next) => { | 119 | const search = (req, res, next) => { |
111 | let params = Object.assign({}, req.query); | 120 | let params = Object.assign({}, req.query); |
112 | 121 | ||
@@ -120,9 +129,6 @@ const search = (req, res, next) => { | @@ -120,9 +129,6 @@ const search = (req, res, next) => { | ||
120 | 129 | ||
121 | /** | 130 | /** |
122 | * 筛选 | 131 | * 筛选 |
123 | - * @param {[object]} req | ||
124 | - * @param {[object]} res | ||
125 | - * @return {[type]} | ||
126 | */ | 132 | */ |
127 | let filter = (req, res, next) => { | 133 | let filter = (req, res, next) => { |
128 | let params = Object.assign({}, req.query); | 134 | let params = Object.assign({}, req.query); |
@@ -10,59 +10,6 @@ const _ = require('lodash'); | @@ -10,59 +10,6 @@ const _ = require('lodash'); | ||
10 | const helpers = global.yoho.helpers; | 10 | const helpers = global.yoho.helpers; |
11 | const api = global.yoho.API; | 11 | const api = global.yoho.API; |
12 | 12 | ||
13 | -/** | ||
14 | - * 品牌名称处理 | ||
15 | - * @param {[object]} list | ||
16 | - * @return {[object]} | ||
17 | - */ | ||
18 | -const _processBrandNames = (list) => { | ||
19 | - const formatData = []; | ||
20 | - | ||
21 | - list = list || []; | ||
22 | - list = camelCase(list); | ||
23 | - | ||
24 | - _.forEach(list, (item) => { | ||
25 | - _.forEach(item, (obj) => { | ||
26 | - formatData.push({ | ||
27 | - brandDomain: obj.brandDomain, | ||
28 | - brandName: obj.brandName | ||
29 | - }); | ||
30 | - }); | ||
31 | - }); | ||
32 | - | ||
33 | - return formatData; | ||
34 | -}; | ||
35 | - | ||
36 | -/** | ||
37 | - * 品牌名称处理 | ||
38 | - * @param {[object]} list | ||
39 | - * @return {[object]} | ||
40 | - */ | ||
41 | -const _processClassNames = (list) => { | ||
42 | - const formatData = { | ||
43 | - first: {}, | ||
44 | - second: {} | ||
45 | - }; | ||
46 | - | ||
47 | - list = list || []; | ||
48 | - list = camelCase(list); | ||
49 | - | ||
50 | - _.forEach(list, (item) => { | ||
51 | - _.forEach(item, (obj) => { | ||
52 | - formatData.first[obj.categoryId] = obj.categoryName; | ||
53 | - | ||
54 | - if (obj.sub) { | ||
55 | - _.forEach(obj.sub, (sub) => { | ||
56 | - formatData.second[sub.categoryId] = sub.categoryName; | ||
57 | - }); | ||
58 | - } | ||
59 | - | ||
60 | - }); | ||
61 | - }); | ||
62 | - | ||
63 | - return formatData; | ||
64 | -}; | ||
65 | - | ||
66 | /* 多品牌店铺列表数据信息处理*/ | 13 | /* 多品牌店铺列表数据信息处理*/ |
67 | const _processBrandShops = (list) => { | 14 | const _processBrandShops = (list) => { |
68 | const formatDat = []; | 15 | const formatDat = []; |
@@ -147,42 +94,6 @@ const getBrandBanner = (brandId) => { | @@ -147,42 +94,6 @@ const getBrandBanner = (brandId) => { | ||
147 | }; | 94 | }; |
148 | 95 | ||
149 | /** | 96 | /** |
150 | - * 获取所有的品牌名称 | ||
151 | - **/ | ||
152 | -const getAllBrandNames = () => { | ||
153 | - return api.get('', { | ||
154 | - method: 'app.brand.brandlist' | ||
155 | - }, { | ||
156 | - cache: true | ||
157 | - }).then((result) => { | ||
158 | - if (result && result.code === 200) { | ||
159 | - return _processBrandNames(result.data.brands); | ||
160 | - } else { | ||
161 | - logger.error('get brand all name data api return code is not 200'); | ||
162 | - return {}; | ||
163 | - } | ||
164 | - }); | ||
165 | -}; | ||
166 | - | ||
167 | -/** | ||
168 | - * 获取所有的品类名称 | ||
169 | - **/ | ||
170 | -const getClassNames = () => { | ||
171 | - return api.get('', { | ||
172 | - method: 'app.sort.get' | ||
173 | - }, { | ||
174 | - cache: true | ||
175 | - }).then((result) => { | ||
176 | - if (result && result.code === 200) { | ||
177 | - return _processClassNames(result.data); | ||
178 | - } else { | ||
179 | - logger.error('get category name api return code is not 200'); | ||
180 | - return {}; | ||
181 | - } | ||
182 | - }); | ||
183 | -}; | ||
184 | - | ||
185 | -/** | ||
186 | * 根据品牌域名获取品牌LOGO | 97 | * 根据品牌域名获取品牌LOGO |
187 | * @param {string} domain 品牌域名 | 98 | * @param {string} domain 品牌域名 |
188 | * @return array | false | 99 | * @return array | false |
@@ -375,8 +286,6 @@ const getShopBrands = (shopId) => { | @@ -375,8 +286,6 @@ const getShopBrands = (shopId) => { | ||
375 | 286 | ||
376 | 287 | ||
377 | module.exports = { | 288 | module.exports = { |
378 | - getAllBrandNames, | ||
379 | - getClassNames, | ||
380 | getBrandLogoByDomain, | 289 | getBrandLogoByDomain, |
381 | getBrandIntro, | 290 | getBrandIntro, |
382 | getBrandShops, | 291 | getBrandShops, |
@@ -250,7 +250,7 @@ const _getBreakingSort = (yhChannel) => { | @@ -250,7 +250,7 @@ const _getBreakingSort = (yhChannel) => { | ||
250 | if (result && result.code === 200) { | 250 | if (result && result.code === 200) { |
251 | return _processBreakingSort(result.data); | 251 | return _processBreakingSort(result.data); |
252 | } else { | 252 | } else { |
253 | - logger.error('get BreakingSort classify return code is not 200'); | 253 | + logger.error('get sale BreakingSort classify return code is not 200'); |
254 | return {}; | 254 | return {}; |
255 | } | 255 | } |
256 | }); | 256 | }); |
@@ -276,7 +276,7 @@ const getSearchData = (params, uid) => { | @@ -276,7 +276,7 @@ const getSearchData = (params, uid) => { | ||
276 | if (result && result.code === 200) { | 276 | if (result && result.code === 200) { |
277 | return result.data.vip_info ? camelCase(result.data.vip_info) : {}; | 277 | return result.data.vip_info ? camelCase(result.data.vip_info) : {}; |
278 | } else { | 278 | } else { |
279 | - logger.error('获取用户信息返回 code 不是 200'); | 279 | + logger.error('get user info return code is not 200'); |
280 | return {}; | 280 | return {}; |
281 | } | 281 | } |
282 | }) | 282 | }) |
@@ -296,7 +296,7 @@ const getFilterData = (params) => { | @@ -296,7 +296,7 @@ const getFilterData = (params) => { | ||
296 | hideSort: params.saleType === '1' | 296 | hideSort: params.saleType === '1' |
297 | }); | 297 | }); |
298 | } else { | 298 | } else { |
299 | - logger.error('SALE 商品搜索返回 code 不是 200'); | 299 | + logger.error('get filter data return code is not 200'); |
300 | return []; | 300 | return []; |
301 | } | 301 | } |
302 | }); | 302 | }); |
@@ -350,7 +350,7 @@ const getDiscountData = (yhChannel) => { | @@ -350,7 +350,7 @@ const getDiscountData = (yhChannel) => { | ||
350 | list: _processDiscount(result.data) | 350 | list: _processDiscount(result.data) |
351 | }; | 351 | }; |
352 | } else { | 352 | } else { |
353 | - logger.error('折扣专场专题列表返回 code 不是 200'); | 353 | + logger.error('get sale discount data return code is not 200'); |
354 | return {}; | 354 | return {}; |
355 | } | 355 | } |
356 | }); | 356 | }); |
@@ -383,7 +383,7 @@ const getDiscountDetailData = (id, yhChannel) => { | @@ -383,7 +383,7 @@ const getDiscountDetailData = (id, yhChannel) => { | ||
383 | } | 383 | } |
384 | }; | 384 | }; |
385 | } else { | 385 | } else { |
386 | - logger.error('折扣专场专题详情返回 code 不是 200'); | 386 | + logger.error('get sale discount detail return code is not 200'); |
387 | return {}; | 387 | return {}; |
388 | } | 388 | } |
389 | }); | 389 | }); |
@@ -5,21 +5,64 @@ | @@ -5,21 +5,64 @@ | ||
5 | */ | 5 | */ |
6 | 'use strict'; | 6 | 'use strict'; |
7 | const utils = '../../../utils'; | 7 | const utils = '../../../utils'; |
8 | -const logger = global.yoho.logger; | ||
9 | const productProcess = require(`${utils}/product-process`); | 8 | const productProcess = require(`${utils}/product-process`); |
9 | +const searchProcess = require(`${utils}/search-process`); | ||
10 | +const _ = require('lodash'); | ||
11 | +const logger = global.yoho.logger; | ||
10 | const api = global.yoho.API; | 12 | const api = global.yoho.API; |
13 | +const camelCase = global.yoho.camelCase; | ||
11 | 14 | ||
12 | /** | 15 | /** |
13 | - * 排序转换 | 16 | + * 品牌名称处理 |
17 | + * @param {[object]} list | ||
18 | + * @return {[object]} | ||
14 | */ | 19 | */ |
15 | -const typeCont = { | ||
16 | - price: ['s_p_desc', 's_p_asc'], | ||
17 | - discount: ['p_d_desc', 'p_d_asc'], | ||
18 | - sale: ['s_n_desc', 's_n_asc'], | ||
19 | - newest: ['s_t_desc', 's_t_asc'], | ||
20 | - stock: ['s_s_desc', 's_s_asc'], | ||
21 | - all: ['d_s_desc', 'd_s_asc'], | ||
22 | - category: ['s_t_desc', 's_t_asc'] | 20 | +const _processBrandNames = (list) => { |
21 | + const formatData = []; | ||
22 | + | ||
23 | + list = list || []; | ||
24 | + list = camelCase(list); | ||
25 | + | ||
26 | + _.forEach(list, (item) => { | ||
27 | + _.forEach(item, (obj) => { | ||
28 | + formatData.push({ | ||
29 | + brandDomain: obj.brandDomain, | ||
30 | + brandName: obj.brandName | ||
31 | + }); | ||
32 | + }); | ||
33 | + }); | ||
34 | + | ||
35 | + return formatData; | ||
36 | +}; | ||
37 | + | ||
38 | +/** | ||
39 | + * 品牌名称处理 | ||
40 | + * @param {[object]} list | ||
41 | + * @return {[object]} | ||
42 | + */ | ||
43 | +const _processClassNames = (list) => { | ||
44 | + const formatData = { | ||
45 | + first: {}, | ||
46 | + second: {} | ||
47 | + }; | ||
48 | + | ||
49 | + list = list || []; | ||
50 | + list = camelCase(list); | ||
51 | + | ||
52 | + _.forEach(list, (item) => { | ||
53 | + _.forEach(item, (obj) => { | ||
54 | + formatData.first[obj.categoryId] = obj.categoryName; | ||
55 | + | ||
56 | + if (obj.sub) { | ||
57 | + _.forEach(obj.sub, (sub) => { | ||
58 | + formatData.second[sub.categoryId] = sub.categoryName; | ||
59 | + }); | ||
60 | + } | ||
61 | + | ||
62 | + }); | ||
63 | + }); | ||
64 | + | ||
65 | + return formatData; | ||
23 | }; | 66 | }; |
24 | 67 | ||
25 | /** | 68 | /** |
@@ -37,9 +80,12 @@ const _searchGoods = (params) => { | @@ -37,9 +80,12 @@ const _searchGoods = (params) => { | ||
37 | } | 80 | } |
38 | } | 81 | } |
39 | 82 | ||
40 | - // params.yh_channel = channelType[params.yh_channel]; | 83 | + if (params.channel) { |
84 | + params.yh_channel = searchProcess.getChannelType(params.channel); | ||
85 | + delete params.channel; | ||
86 | + } | ||
41 | 87 | ||
42 | - params = Object.assign({ | 88 | + params = _.assign({ |
43 | limit: '60', | 89 | limit: '60', |
44 | status: 1, | 90 | status: 1, |
45 | sales: 'Y', | 91 | sales: 'Y', |
@@ -47,11 +93,11 @@ const _searchGoods = (params) => { | @@ -47,11 +93,11 @@ const _searchGoods = (params) => { | ||
47 | attribute_not: 2 | 93 | attribute_not: 2 |
48 | }, params); | 94 | }, params); |
49 | 95 | ||
50 | - if (typeCont[params.type]) { | ||
51 | - params.order = typeCont[params.type][params.order]; | 96 | + if (params.order) { |
97 | + params.order = searchProcess.getTypeCont(params.type || '', params.order); | ||
52 | } | 98 | } |
53 | 99 | ||
54 | - return api.get('', Object.assign({ | 100 | + return api.get('', _.assign({ |
55 | method: method | 101 | method: method |
56 | }, params), { | 102 | }, params), { |
57 | cache: true | 103 | cache: true |
@@ -88,7 +134,45 @@ const getFilterData = (params) => { | @@ -88,7 +134,45 @@ const getFilterData = (params) => { | ||
88 | }); | 134 | }); |
89 | }; | 135 | }; |
90 | 136 | ||
137 | +/** | ||
138 | + * 获取所有的品类名称 | ||
139 | + **/ | ||
140 | +const getClassNames = () => { | ||
141 | + return api.get('', { | ||
142 | + method: 'app.sort.get' | ||
143 | + }, { | ||
144 | + cache: true | ||
145 | + }).then((result) => { | ||
146 | + if (result && result.code === 200) { | ||
147 | + return _processClassNames(result.data); | ||
148 | + } else { | ||
149 | + logger.error('get category name api return code is not 200'); | ||
150 | + return {}; | ||
151 | + } | ||
152 | + }); | ||
153 | +}; | ||
154 | + | ||
155 | +/** | ||
156 | + * 获取所有的品牌名称 | ||
157 | + **/ | ||
158 | +const getAllBrandNames = () => { | ||
159 | + return api.get('', { | ||
160 | + method: 'app.brand.brandlist' | ||
161 | + }, { | ||
162 | + cache: true | ||
163 | + }).then((result) => { | ||
164 | + if (result && result.code === 200) { | ||
165 | + return _processBrandNames(result.data.brands); | ||
166 | + } else { | ||
167 | + logger.error('get brand all name data api return code is not 200'); | ||
168 | + return {}; | ||
169 | + } | ||
170 | + }); | ||
171 | +}; | ||
172 | + | ||
91 | module.exports = { | 173 | module.exports = { |
92 | getSearchData, | 174 | getSearchData, |
93 | - getFilterData | 175 | + getFilterData, |
176 | + getAllBrandNames, | ||
177 | + getClassNames | ||
94 | }; | 178 | }; |
public/scss/me/_index.css
0 → 100644
1 | +@import "suggest"; |
@@ -38,7 +38,30 @@ const getChannelType = (channel) => { | @@ -38,7 +38,30 @@ const getChannelType = (channel) => { | ||
38 | } | 38 | } |
39 | }; | 39 | }; |
40 | 40 | ||
41 | +// 排序转换 | ||
42 | +const getTypeCont = (type, order) => { | ||
43 | + switch (type) { | ||
44 | + case 'price': | ||
45 | + return order === '0' ? 's_p_desc' : 's_p_asc'; | ||
46 | + case 'discount': | ||
47 | + return order === '0' ? 'p_d_desc' : 'p_d_asc'; | ||
48 | + case 'sale': | ||
49 | + return order === '0' ? 's_n_desc' : 's_n_asc'; | ||
50 | + case 'newest': | ||
51 | + return order === '0' ? 's_t_desc' : 's_t_asc'; | ||
52 | + case 'stock': | ||
53 | + return order === '0' ? 's_s_desc' : 's_s_asc'; | ||
54 | + case 'all': | ||
55 | + return order === '0' ? 'd_s_desc' : 'd_s_asc'; | ||
56 | + case 'category': | ||
57 | + return order === '0' ? 's_t_desc' : 's_t_asc'; | ||
58 | + default: | ||
59 | + return order === '0' ? 's_t_desc' : 's_t_asc'; | ||
60 | + } | ||
61 | +}; | ||
62 | + | ||
41 | module.exports = { | 63 | module.exports = { |
42 | getGenderByChannel, | 64 | getGenderByChannel, |
43 | - getChannelType | 65 | + getChannelType, |
66 | + getTypeCont | ||
44 | }; | 67 | }; |
-
Please register or login to post a comment