Authored by 王水玲

sale

... ... @@ -130,7 +130,8 @@ exports.filter = (req, res) => {
let params = Object.assign({}, req.query);
saleModel.getFilterData(params).then((result) => {
res.render('product', {
console.log(result);
res.render('filter', {
layout: false,
params: params,
filter: result
... ...
... ... @@ -116,6 +116,19 @@ const processSpecial = (list) => {
};
/**
* 折扣专场接口调用
*/
const special = (params) => {
params = params || {};
return api.get('', sign.apiSign(Object.assign({
method: 'app.activity.get',
sort: 2,
plateform: 2
}, params)));
}
/**
* 根据性别来决定 默认图片获取字段 如果是 2、3
*
* 则优先从cover2 --》 cover1 -- 》 images_url
... ... @@ -132,7 +145,7 @@ const procProductImg = (product, gender) => {
/**
* 商品搜索数据处理
* 商品搜索商品数据处理
*/
const processProductList = (list, options) => {
const pruductList = [];
... ... @@ -227,6 +240,9 @@ const processProductList = (list, options) => {
return pruductList;
};
/**
* 商品搜索筛选数据处理
*/
const processFilter = (list) => {
return list;
};
... ... @@ -256,6 +272,9 @@ const processBreakingSort = (list) => {
return formatData;
};
/**
* 商品搜索接口请求
*/
const searchSales = (params) => {
params = params || {};
... ... @@ -268,7 +287,7 @@ const searchSales = (params) => {
};
/**
* 获取商品数据
* 获取筛选数据
*/
exports.getFilterData = (params) => {
return searchSales(params).then((result) => {
... ... @@ -365,10 +384,6 @@ exports.getBreakCodeData = (params) => {
});
};
// const getSpecial = (params) => {
//
// };
/**
* 获取折扣专场专题列表数据
* @param {[object]} params
... ... @@ -377,16 +392,13 @@ exports.getBreakCodeData = (params) => {
exports.getSpecialData = (params) => {
const specialData = {};
return api.get('', sign.apiSign(Object.assign({
method: 'app.activity.get',
sort: 2,
plateform: 2
}, params))).then((result) => {
return special(params).then((result) => {
if (result && result.code === 200) {
specialData.data = processSpecial(result.data);
return specialData;
} else {
return Promise.reject('error');
logger.error('折扣专场专题列表返回 code 不是 200');
return {};
}
});
};
... ... @@ -399,13 +411,11 @@ exports.getSpecialData = (params) => {
*/
exports.getSpecialDetailData = (id) => {
let res = {};
return api.get('', sign.apiSign({
method: 'app.activity.get',
sort: 2,
plateform: 2,
let param = {
id: id
})).then((result) => {
};
return special(param).then((result) => {
if (result && result.code === 200) {
res = processSpecial(result.data);
return {
... ... @@ -417,7 +427,8 @@ exports.getSpecialDetailData = (id) => {
}
};
} else {
return Promise.reject('error');
logger.error('折扣专场专题详情返回 code 不是 200');
return {};
}
});
};
... ...
... ... @@ -28,6 +28,7 @@ router.get('/breakCode', sale.breakCode);
router.get('/vip', sale.vip);
router.get('/sale/search', sale.search);
router.get('/sale/filter', sale.filter);
// router.get('/outlet', sale.outlet);
... ...
... ... @@ -6,7 +6,7 @@
{{/if}}
{{/content}}
{{# activity}}
<img src="{{image coverUrl 640 200}}"/>
<img src="{{image coverUrl 640 250}}"/>
<p class="activity-time" data-time-ms="{{leftTime}}"><i class="iconfont time-ico">&#xe603;</i><span>{{time}}</span></p>
{{/ activity}}
</div>
... ...
... ... @@ -89,7 +89,7 @@ $.each($listNav.find('li'), function(key, item) {
*/
function search(opt) {
var setting = {},
ext,
ext = [],
att,
nav, navType,
page,
... ... @@ -107,11 +107,6 @@ function search(opt) {
navInfo[att].reload = true;
}
}
// 处理active状态
$listNav.children('.active').removeClass('active');
$pre.addClass('active');
for (i = 0; i < opt.length; i++) {
switch (opt[i].type) {
case 'gender':
... ... @@ -154,8 +149,9 @@ function search(opt) {
}
}
$.extend(defaultOpt, ext); // 扩展筛选项
console.log(defaultOpt);
}
... ... @@ -257,7 +253,7 @@ function search(opt) {
$.ajax({
type: 'GET',
url: '/product/newsale/filter',
url: '/product/sale/filter',
data: defaultOpt,
success: function(data) {
$goodsContainer.append(data);
... ... @@ -305,6 +301,7 @@ $listNav.on('touchend touchcancel', function(e) {
$pre.removeClass('active');
$this.addClass('active');
$swiperSize.hide();
filter.showFilter();
}
... ...
... ... @@ -229,7 +229,7 @@ function search(opt) {
$.ajax({
type: 'GET',
url: '/product/newsale/filter',
url: '/product/sale/filter',
data: defaultOpt,
success: function(data) {
$goodsContainer.append(data);
... ...
.break-code-page {
max-width: 640px;
margin: 0 auto;
overflow: hidden;
.banner {
width: 640px;
... ...