Brand.php 5.21 KB
<?php

/**
 * Public 品牌 
 * User: elkan
 * Date: 2014-8-5
 * Time: PM3:08
 */
class YHMApi_App_V1_Brand extends YHMApi_App_V1_Base {

    //添加品牌
    static function add(array $params, $fields = '*') {
        if (empty($params['brand_name'])) {
            return self::result(400, '品牌名称不能为空.');
        }
        if (empty($params['uid'])) {
            return self::result(400, 'uid不能为空.');
        }
        if (empty($params['token'])) {
            return self::result(400, 'token不能为空.');
        }
        $find_barnd = YHMBrand_Models_Brand_Client::findBrandByName($params['brand_name']);
        $brand_id = 0;
        if (empty($find_barnd)) {
            $brand_alif = Q_Utils_String::format()->getFirstLetter($params['brand_name']);
            $brand_id = YHMBrand_Models_Brand_Client::add($params['brand_name'], $brand_alif);
            if ($brand_id < 1) {
                return self::result(500, "添加失败");
            }
        } else {
            $brand_id = $find_barnd['id'];
        }
        //先检测
        $find_user_brand = YHMBrand_Models_Brand_Client::findRelate($params['uid'], $brand_id);
        if (empty($find_user_brand)) {
            $uid_add = YHMBrand_Models_Brand_Client::setBrandUserRelate($params['uid'], $brand_id);
        }
        return self::result(200, '添加品牌成功.', array('brand_id' => $brand_id, 'brand_name' => $params['brand_name']));
    }

    /**
     * 获取品牌列表
     * @param array $params
     * @param string $fields
     */
    public static function getList(array $params, $fields = '*') {
        $retData = array(
            'sys_list' => array(),
            'used_list' => array()
        );
        $brandList = YHMBrand_Models_Brand_Client::getByParams('Y', 0, 6000);
        foreach ($brandList as $brand) {
            $retData['sys_list'][] = array(
                'brand_id' => $brand['id'],
                'brand_name' => $brand['brand_name'],
                'brand_alif' => $brand['brand_alif'],
                'pinyin' => $brand['pinyin']
            );
        }
        if(empty($params['uid'])){
            return self::result(200, '品牌列表', $retData);
        }
        $UsedBrand = YHMBrand_Models_Brand_Client::getUsedBrandByUid($params['uid']);
        foreach ($UsedBrand as $k => $v) {
            $oneBrand = YHMBrand_Models_Brand_Client::getOneById($v['brand_id']);
            $retData['used_list'][] = array(
                'brand_id' => $oneBrand['id'],
                'brand_name' => $oneBrand['brand_name'],
                'brand_alif' => $oneBrand['brand_alif'],
                'pinyin' => $oneBrand['pinyin'],
            );
        }
        return self::result(200, '品牌列表', $retData);
    }
    
    /**
     * 获取品牌列表
     * @param array $params
     * @param string $fields
     */
    public static function getSysList(array $params, $fields = '*') {
        $retData = array();
        $brandList = YHMBrand_Models_Brand_Client::getByParams('Y', 0, 6000);
        foreach ($brandList as $brand) {
            $retData[] = array(
                'brand_id' => $brand['id'],
                'brand_name' => $brand['brand_name'],
                'brand_alif' => $brand['brand_alif'],
                'pinyin' => $brand['pinyin']
            );
        }
        return self::result(200, '品牌列表', $retData);
    }
    
    /**
     * 获取已经使用的品牌
     * @param array $params
     * @param string $fields
     */
    public static function getUsedList(array $params, $fields = '*') {
    	$retData = array();
    	if(!empty($params['uid'])){
    		$UsedBrand = YHMBrand_Models_Brand_Client::getUsedBrandByUid($params['uid'], 10);
    		foreach ($UsedBrand as $k => $v) {
    			$oneBrand = YHMBrand_Models_Brand_Client::getOneById($v['brand_id']);
    			$retData[] = array(
    					'brand_id' => $oneBrand['id'],
    					'brand_name' => $oneBrand['brand_name'],
    					'brand_alif' => $oneBrand['brand_alif'],
    					'pinyin' => $oneBrand['pinyin'],
    			);
    		}
    	}
    	return self::result(200, '品牌列表', $retData);
    }
    

    /**
     * 获取热门品牌
     * @param array $params
     * @param string $fields
     */
    public static function getHotList(array $params, $fields = '*') {
        $offset = !empty($params['offset']) ? (int) $params['offset'] : '0';
        $num = !empty($params['num']) ? (int) $params['num'] : "10";
        $brandList = YHMBrand_Models_Brand_Client::getHotList($offset, $num);
        $retData = array();
        foreach ($brandList as $k => $v) {
            $oneData = array(
                "brand_id" => $v['id'],
                "brand_name" => $v["brand_name"],
                "brand_logo" => $v['brand_ico'],
                'brand_url'  => $v['yohobuy_brand_url'],
                "goods_list" => array()
            );
            $skcList = YHMProduct_Models_Goods_Client::getGoodsByBrandId($v['id'], 0, 19);
            if(empty($skcList)){
                continue;
            }
            foreach ($skcList as $skc) {
                $oneData['goods_list'][] = self::_getGoodsForList($skc['product_skc']);
            }
            $retData[] = $oneData;
        }
        return self::result(200, '热门品牌', $retData);
    }

}