MaterialServiceInterface.php 3.69 KB
Newer Older
梁俊杰's avatar
梁俊杰 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
<?php
/**
 * Created by PhpStorm.
 * User: 梁俊杰
 * Date: 2020/5/15
 * Time: 15:07
 */

namespace Meibuyu\Micro\Service\Interfaces;

interface MaterialServiceInterface
{

    /**
     * 获取单个数据
     * @param int $id 原料id
17 18
     * @param array $columns 原料表的字段,默认显示全部
     * @return array|null
梁俊杰's avatar
梁俊杰 committed
19
     */
20
    public function get($id, array $columns = ['*']);
梁俊杰's avatar
梁俊杰 committed
21 22 23 24 25 26 27

    /**
     * 通过id列表获取原料数组
     * @param array $idList 原料id的列表
     * @param array $columns 原料表的字段,默认显示全部
     * @return array
     */
28
    public function getByIdList(array $idList, array $columns = ['*']): array;
梁俊杰's avatar
梁俊杰 committed
29

30 31 32 33 34 35 36
    /**
     * 通过原料品名id列表获取原料数组
     * @param int $materialNameId 原料品名id
     * @param array $relations 原料的关联关系,支持["material_name","color"]
     * @param array $columns 原料表的字段,默认显示全部
     * @return array
     */
37
    public function getByMaterialNameId($materialNameId, array $relations = [], array $columns = ['*']): array;
梁俊杰's avatar
梁俊杰 committed
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

    /**
     * 通过原料列表
     * @param int $page 第几页数据,默认:1
     * @param array $relations 原料的关联关系,支持["material_name","color"]
     * @param int $pageSize 每页条数默认:15,最大支持100
     * @param array $columns 原料表的字段,默认显示全部
     * @return array
     */
    public function list($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array;

    /**
     * 获取某个原料品名
     * @param int $materialNameId 原料品名编号
     * @param array $relations 原料的关联关系,支持["materials","material_name_category"]
     * @return array
     */
    public function getMaterialName($materialNameId, array $relations = []): array;

    /**
     * 通过id列表获取原料品名数组
     * @param array $idList 原料品名id的列表
     * @param array $relations 原料品名的关联关系,支持["materials","material_name_category"]
     * @param array $columns 原料品名表的字段,默认显示全部
     * @return array
     */
    public function getMaterialNameByIdList(array $idList, array $relations = [], array $columns = ['*']): array;

66 67 68 69 70 71 72
    /**
     * 通过原料类型id列表获取原料品名数组
     * @param int $materialNameCategoryId 原料类型id
     * @param array $relations 原料的关联关系,支持["material_name_category", "materials"]
     * @param array $columns 原料品名表的字段,默认显示全部
     * @return array
     */
73
    public function getMaterialNameByMaterialNameCategoryId($materialNameCategoryId, array $relations = [], array $columns = ['*']): array;
74

梁俊杰's avatar
梁俊杰 committed
75 76 77
    /**
     * 通过原料品名列表
     * @param int $page 第几页数据,默认:1
78
     * @param array $relations 原料品名的关联关系,支持 ["materials","material_name_category"]
梁俊杰's avatar
梁俊杰 committed
79 80 81 82 83 84
     * @param int $pageSize 每页条数默认:15,最大支持100
     * @param array $columns 原料品名表的字段,默认显示全部
     * @return array
     */
    public function getMaterialNamelist($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array;

85
    /** 根据id获取原料类型
梁俊杰's avatar
梁俊杰 committed
86
     * @param int $materialNameCategoryId 原料类型编号
87
     * @param array $relations 原料类型的关联关系,支持 ["material_name"]
梁俊杰's avatar
梁俊杰 committed
88 89
     * @return array
     */
90
    public function getMaterialNameCategoryById($materialNameCategoryId, array $relations = []): array;
梁俊杰's avatar
梁俊杰 committed
91 92 93

    /**
     * 获取全部原料类型
94
     * @param array $relations 原料类型的关联关系,支持 ["material_name"]
梁俊杰's avatar
梁俊杰 committed
95 96
     * @return array
     */
97
    public function materialNameCategories(array $relations = []): array;
梁俊杰's avatar
梁俊杰 committed
98
}