plustar.js 3.23 KB
/**
 * 国际优选
 * @author: zxr<xiaoru.zhang@yoho.cn>
 * @date: 2016/09/12
 */
'use strict';

const mRoot = '../models';
const plustarModel = require(`${mRoot}/plustar`);
const htmlProcess = require(`${global.utils}/html-process`);
const headerModel = require('../../../doraemon/models/header'); // 头部model
let channels = {
    boys: '1,3',
    girl: '2,3',
    kids: '3,3',
    lifestyle: '4'
};

let yhChannel = {
    boys: 1,
    girl: 2
};

const getListData = (req, res, next) => {
    let gender = req.query.gender || req.cookies._Channel && channels[req.cookies._Channel] || '1,3';
    let recom = '4';
    let all = '1';
    let type = req.query.type;
    let channel = req.cookies._Channel && yhChannel[req.cookies._Channel] || 1;
    let isRecommend = '0';
    let starBrand = '2';
    let originalBrand = '3';

    if (type === '2') {
        plustarModel.getBrandsData(gender, starBrand, originalBrand, channel, isRecommend).then((result) => {
            res.render('plustar/list', {
                module: 'guang',
                page: 'plustar-list',
                title: '明星原创',
                pageHeader: headerModel.setNav({
                    navTitle: '明星原创'
                }),
                pageFooter: true,
                ps: {
                    sName: '明星潮品',
                    pName: '原创潮牌',
                    star: result.star,
                    plus: result.plus
                }
            });
        }).catch(next);
    } else {
        plustarModel.getListData(gender, recom, all).then((result) => {

            res.render('plustar/list', {
                module: 'guang',
                page: 'plustar-list',
                title: '国际优选',
                pageHeader: headerModel.setNav({
                    navTitle: '国际优选'
                }),
                pageFooter: true,
                ps: {
                    sName: '设计师',
                    pName: '经典潮牌',
                    star: result.star,
                    plus: result.plus
                }
            });
        }).catch(next);
    }
};

const getDetailData = (req, res, next) => {
    let id = req.query.id;
    let uid = req.user.uid;
    let udid = req.sessionID || 'yoho';
    let gender = req.query.gender || req.cookies._Channel && channels[req.cookies._Channel] || '1,3';
    let isApp = req.query.app_version || req.query.appVersion || false;
    let clientType = req.body.client_type || '';
    let version = req.body.app_version || '';

    if (clientType.toLowerCase() === 'ios' && version) {
        clientType = 'iphone';
    } else if (clientType.toLowerCase() === 'android' && version) {
        clientType = 'android';
    } else {
        clientType = 'h5';
    }

    plustarModel.getDetailData(id, uid, udid, gender, isApp, clientType).then((result) => {
        result.brandIntro = htmlProcess.removeHtml(result.brandIntro);
        res.render('plustar/detail', {
            module: 'guang',
            page: 'plustar-detail',
            title: result.brandName,
            pageHeader: headerModel.setNav({
                navTitle: result.brandName
            }),
            ps: result
        });
    }).catch(next);
};

module.exports = {
    getListData,
    getDetailData
};