shop.js 2.4 KB
/**
 * Created by PhpStorm.
 * User: Targaryen
 * Date: 2016/7/26
 * Time: 10:34
 */
'use strict';

const mRoot = '../models';
const shopModel = require(`${mRoot}/shop`);

module.exports = {

    /* 品牌店铺页面 */
    index: (req, res) => {
        res.render('shop/index', {
            module: 'product',
            page: 'shop',
            domain: req.params.domain,
            shopId: req.query.id,
            title: req.params.domain,
            noYohoTitle: true
        });
    },

    /* 获取品牌店铺介绍 */
    getShopInfo: (req, res, next) => {
        req.ctx(shopModel).getShopData({
            domain: req.query.domain,
            shopId: req.query.shopId,
            uid: req.user.uid
        }).then(result => {
            res.json(result);
        }).catch(next);
    },

    /* 获取商品列表 */
    getBrandShopGoods: (req, res, next) => {
        req.ctx(shopModel).getBrandShopGoodsData({
            domain: req.query.domain,
            sort: req.query.sort,
            page: req.query.page,
            channel: req.query.channel || 'men',
            gender: req.query.gender || '',
            brand: req.query.brand,
            shopId: req.query.id,
            order: req.query.order || 's_t_desc',
            limit: req.query.limit || '60',
            color: req.query.color,
            price: req.query.price,
            size: req.query.size,
            pd: req.query.p_d,
            tagsFilter: req.query.tagsFilter
        }).then(result => {
            res.json(result);
        }).catch(next);
    },

    /* 收藏品牌或者店铺 */
    collectShop: (req, res, next) => {
        if (!req.user.uid) {
            return res.json({
                code: 403,
                message: '未登录'
            });
        }

        req.ctx(shopModel).collectShopData({
            id: req.body.isBlkShop ? req.body.shopId : req.body.brandId,
            favId: req.body.isBlkShop ? req.body.shopId : req.body.brandId,
            uid: req.user.uid,
            type: req.body.isBlkShop ? 'shop' : 'brand',
            isFav: req.body.isFav
        }).then(result => {
            res.json(result);
        }).catch(next);
    },

    /* 品牌店铺分享页面 */
    shopShare: (req, res) => {
        res.render('shop/share', {
            module: 'product',
            page: 'shop-share',
            domain: req.params.domain,
            shopId: req.query.id
        });
    }
};