RecomData.php 3.37 KB
<?php

namespace LibModels\Wap\Product;

use Api\Sign;
use Api\Yohobuy;

/**
 * 商品推荐相关的数据模型
 * 
 * @name RecomData
 * @package LibModels/Wap/Product
 * @copyright yoho.inc
 * @version 1.0 (2015-10-8 11:51:32)
 * @author fei.hong <fei.hong@yoho.cn>
 */
class RecomData
{

    /**
     * 你可能喜欢的BOYS或GIRLS的商品列表
     * 
     * @param string $gender "1,3"表示男, "2,3"表示女
     * @param string $channel 1表示男, 2表示女
     * @param int $page 分页第几页, 默认第1页
     * @param int $limit 查询返回的最大限制数, 默认为50
     * @return array
     */
    public static function mayLike($gender, $channel, $page = 1, $limit = 50)
    {
        $param = Yohobuy::param();
        $param['method'] = 'app.search.last7day';
        $param['gender'] = $gender;
        $param['page'] = $page;
        $param['limit'] = $limit;
        $param['yh_channel'] = $channel;
        $param['client_secret'] = Sign::getSign($param);

        return Yohobuy::get(Yohobuy::API_URL, $param, 3600);
    }

    /**
     * 你可能喜欢的潮童的商品列表
     * 
     * @param int $page 分页第几页, 默认第1页
     * @param int $limit 查询返回的最大限制数, 默认为50
     * @return array
     */
    public static function mayLikeKids($page = 1, $limit = 50)
    {
        $param = Yohobuy::param();
        $param['method'] = 'app.search.kids';
        $param['page'] = $page;
        $param['limit'] = $limit;
        $param['yh_channel'] = '3';
        $param['client_secret'] = Sign::getSign($param);

        return Yohobuy::get(Yohobuy::API_URL, $param, 3600);
    }

    /**
     * 你可能喜欢的创意生活的新品到着和人气单品列表
     * 
     * @param int $page 分页第几页, 默认第1页
     * @param int $limit 查询返回的最大限制数, 默认为50
     * @return array
     */
    public static function mayLikeLifestyle($page = 1, $limit = 50)
    {
//        $param = Yohobuy::param();
//        $param['method'] = 'app.search.lifeStyle';
//        $param['page'] = $page;
//        $param['limit'] = $limit;
//        $param['yh_channel'] = '4';
//        $param['client_secret'] = Sign::getSign($param);
//
//        return Yohobuy::get(Yohobuy::API_URL, $param);
        
        // 人气单品
        $param = array(
            array(
                'stocknumber' => 1,
                'status' => 1,
                'order' => 's_n_desc',
                'viewNum' => $limit,
                'msort' => '10',
            ), 
            'N', false
        );
        $result['top'] = Yohobuy::yarClient(Yohobuy::SERVICE_URL . '/search/service/v1/product', 'search', $param, 3600); // 缓存1小时

        // 新品到着
        $param = array(
            array('status' => 1, 'stocknumber' => 1, 'gender' => ''),
            array(
                array('misort' => 103, 'viewNum' => 10), //数码3c
                array('misort' => 266, 'viewNum' => 10), //居家
                array('misort' => 280, 'viewNum' => 10), //玩具娱乐
                array('misort' => 101, 'viewNum' => 10), //办公文具
                array('misort' => 259, 'viewNum' => 10), //美妆
            ), 
            false
        );
        $result['new'] = Yohobuy::yarClient(Yohobuy::SERVICE_URL . '/search/service/v1/product', 'searchBySortList', $param, 3600); // 缓存1小时
        
        return $result;
    }

}