<?php /** * Created by PhpStorm. * User: 王源 * Date: 2020/1/9 * Time: 15:07 */ namespace Meibuyu\Micro\Service\Interfaces; interface ProductServiceInterface { /** * 获取单个数据 * @param int $id 产品id * @param array $relations 产品的关联关系,支持:["brand","category","ingredient","product_name","status","type","images","price_info","product_children"] * @return array */ public function get($id, array $relations = []): array; /** * 通过id列表获取产品数组 * @param array $idList 产品id的列表 * @param array $relations 产品的关联关系,支持["brand","category","ingredient","product_name","status","type","images","price_info","product_children"] * @param array $columns 产品表的字段,默认显示全部 * @return array */ public function getByIdList(array $idList, array $relations = [], array $columns = ['*']): array; /** * 通过产品列表 * @param int $page 第几页数据,默认:1 * @param array $relations 产品的关联关系,支持["brand","category","ingredient","product_name","status","type","images","price_info","product_children"] * @param int $pageSize 每页产品数默认:15,最大支持100 * @param array $columns 产品表的字段,默认显示全部 * @return array */ public function list($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array; /** * 获取某个产品的子产品,包含颜色和尺码 * @param int $productId 产品编号 * @return array */ public function getProductChildren($productId): array; /** 获取某个产品的平台产品,包含颜色和尺码 * @param int $productId 产品编号 * @param int $site_id 站点id,可选,默认为空 * @return array */ public function getPlatformProduct($productId, $site_id = null): array; /** * 获取平台产品的子产品 * @param int $platformProductId 平台产品id * @return array */ public function getPlatformProductChildren($platformProductId): array; /** * 获取某个站点的所有平台产品 * @param int $site_id 站点id * @param int $page 第几页数据,默认:1 * @param array $relations 平台产品的关联关系,支持["product","amazon_warehouse","platform_product_images","platform_product_children"] * @param int $pageSize 每页列表数默认:15,最大支持100 * @param array $columns 平台产品表的字段,默认显示全部 * @return array */ public function getPlatformProductListBySite($site_id, $page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array; /** * 获取全部尺码列表 * @return array */ public function sizes(): array; /** * 获取全部颜色列表 * @return array */ public function colors(): array; /** * 获取全部品类列表 * @return array */ public function categories(): array; /** * 获取全部品牌列表 * @return array */ public function brands(): array; /** * 获取全部报关品名列表 * @return array */ public function productNames(): array; /** * 获取全部成分列表 * @return array */ public function ingredients(): array; /** * 获取全部产品状态列表 * @return array */ public function productStatus(): array; /** * 获取全部平台产品状态列表 * @return array */ public function platformProductStatus(): array; }