Authored by yyq

fix error

... ... @@ -952,7 +952,7 @@ module.exports = class extends global.yoho.BaseModel {
param: config.apiCache,
api: global.yoho.ServiceAPI
}).then(data => {
let result = data && data.data[0] && data.data[0].data[0];
let result = _.get(data, 'data[0].data[0]', {});
if (result) {
result.channel = channel;
... ...
... ... @@ -94,7 +94,7 @@ const common = {
let result = {code: 400, message: '', data: ''};
if (account) {
let errorLoginKey = 'account_errorlogin_' + account;
let errorLoginKey = encodeURI('account_errorlogin_' + account);
cache.get(errorLoginKey).then(errloginTimes => {
errloginTimes = parseInt(errloginTimes, 0) || 0;
... ...
... ... @@ -168,11 +168,11 @@ let sendBindMsg = (req, res, next) => {
data: ''
};
let mobile = req.body.mobile;
let mobile = _.trim(req.body.mobile);
let area = req.body.area;
// 校验是否发送过多
let sendCodeKey = `send_code_${area}_${mobile}`;
let sendCodeKey = encodeURI(`send_code_${area}_${mobile}`);
let sendCodeTimes = yield cache.get(sendCodeKey);
sendCodeTimes = +(sendCodeTimes || 0);
... ...
... ... @@ -7,6 +7,7 @@
const listSeoMap = require(`${global.middleware}/seo/listSeoMap`);
const helpers = global.yoho.helpers;
const logger = global.yoho.logger;
const _ = require('lodash');
// 搜索相关接口
... ... @@ -21,7 +22,13 @@ const list = require('../models/list');
*/
exports.index = (req, res, next) => {
let resData = {};
let qs = decodeURIComponent(req._parsedOriginalUrl.query || '');
let qs = '';
try {
qs = decodeURIComponent(req._parsedOriginalUrl.query || '');
} catch (e) {
logger.debug(`decodeURIComponent query fail:${e.toString()}`);
}
req.ctx(list).getListData(Object.assign(req.query, {uid: req.user.uid, prid: req.user.prid}),
req.yoho.channel).then(result => {
... ...
... ... @@ -10,7 +10,7 @@
const Promise = require('bluebird');
const utils = '../../../utils';
const list = require('./list');
const List = require('./list');
const outletsProcess = require('./outlets-handler');
const OutletsApiModel = require('./outlets-api');
const productProcess = require(`${utils}/product-process`);
... ... @@ -249,7 +249,7 @@ function getOutletsSpecialData(params, channel) {
outletsProcess.handleOutletsSpecilData(result[1].data[0]));
return Promise.all([
list.getListData(Object.assign({
this.list.getListData(Object.assign({
productPool: result[1].data[0].productPoolId,
saleType: 4
}, params), channel)
... ... @@ -279,7 +279,7 @@ function getOutletsCategoryData(params, channel) {
};
return Promise.all([
list.getListData(params, channel)
this.list.getListData(params, channel)
]).then(listResult => {
finalResult.saleList = listResult[0];
... ... @@ -301,6 +301,7 @@ module.exports = class extends global.yoho.BaseModel {
constructor(ctx) {
super(ctx);
this.list = new List(ctx);
this.outletsApi = new OutletsApiModel(ctx);
this.getOutletsIndexData = getOutletsIndexData.bind(this);
... ...
... ... @@ -429,7 +429,7 @@ function isFavoriteBrand(uid, brandId) {
uid: uid,
brandId: brandId
},
api: global.yoho.serviceApi
api: global.yoho.ServiceAPI
});
}
... ...
... ... @@ -276,7 +276,7 @@ function _getBaseShopData(channel, params, shopInfo) {
if (result.product.code === 200) {
let data = result.product.data;
let filters = Object.assign(searchHandler.handleFilterDataAll(data, params),
resData.brand.leftContent.sort);
_.get(resData, 'brand.leftContent.sort', {}));
filters.checkedConditions.conditions = _.concat(filters.checkedConditions.conditions,
resData.brand.leftContent.checked);
... ...
... ... @@ -3,6 +3,7 @@ const _ = require('lodash');
const camelCase = global.yoho.camelCase;
const helpers = global.yoho.helpers;
const logger = global.yoho.logger;
// TODO 删除from参数,暂时保留注释
// const itemFromBase = {
... ... @@ -295,9 +296,13 @@ exports.processProductList = (list, options) => {
isfew ? product.is_few = isfew : delete product.is_few;
}
if (options.query && _.isString(product.product_name)) {
let qreg = new RegExp(options.query.replace('\\', '\\\\'), 'ig');
try {
let qreg = new RegExp(options.query.replace('\\', '\\\\'), 'ig');
product.product_name = product.product_name.replace(qreg, '<span style="color:#c00;">$&</span>');
product.product_name = product.product_name.replace(qreg, '<span style="color:#c00;">$&</span>');
} catch (e) {
logger.debug(`product_name replace query fail:${e.toString()}`);
}
}
pruductList.push(product);
});
... ...