StoreServiceInterface.php 5.77 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12
<?php
/**
 * Created by PhpStorm.
 * User: 王源
 * Date: 2020/3/16
 * Time: 15:07
 */

namespace Meibuyu\Micro\Service\Interfaces;

interface StoreServiceInterface
{
13 14 15 16 17 18 19 20

    /**
     * 通过id列表获取仓库名称
     * @param array $idList 仓库id的列表, 默认去重
     * @param array $columns 仓库表的字段,默认显示全部
     * @return array 默认keyBy('id')
     */
    public function getByIdList(array $idList, array $columns = ['*']): array;
fuyunnan's avatar
fuyunnan committed
21 22 23 24 25


    /**
     * description:创建入库单
     * author: fuyunnan
26 27
     * @param array $data 需要入库的数组 格式 入库添加
     * *
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
     * data[master][warehousing_date]:2020-01-08 入库时间
     * data[master][creator_id]:12 创建人id
     * data[master][warehouse_id]:2 仓库id
     * data[master][type_id]:1 入库单类型
     * data[master][source_no]:no_121333 来源单号 (选填)
     * data[master][stock_up_status]:1二次质检状态 (选填)
     * data[master][remark]:备注 (选填)
     * data[master][status]:2 状态 (选填 不填默认1)
     *
     * 产品二维数组
     * data[goods][0][product_id]:16 产品id
     * data[goods][0][should_cnt]:133 应入数量
     * data[goods][0][real_cnt]:10 实入数量
     * data[goods][1][product_id]:18
     * data[goods][1][should_cnt]:10
     * data[goods][1][real_cnt]:15
44 45 46
     *
     * 或者参考yapi  http://api.huaperfect.com/project/38/interface/api/1617
     *
fuyunnan's avatar
fuyunnan committed
47
     * @return array
fuyunnan's avatar
fuyunnan committed
48 49 50
     * @throws
     * Date: 2020/7/6
     */
fuyunnan's avatar
fuyunnan committed
51
    public function createWarehousing(array $data): array;
52 53


54 55 56 57
    /**
     * description:批量创建出库单
     * author: fuyunnan
     * [
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
     * 'main' => [
     *     'creator_id' => 1,
     *     'warehouse_id' => 1,
     *     'type' => 5,
     * ],
     * 'products' => [
     * [
     *     'source_no' => 1,
     *     'product_id' => 1,
     *     'real_cnt' => 1
     * ],
     * [
     *     'source_no' => 1,
     *     'product_id' => 1,
     *     'real_cnt' => 1
     * ]
     * ]
     * ]
76 77 78 79 80 81 82 83 84
     *
     * @param array $attributes 提交的数组  或参考yapi http://api.huaperfect.com/project/38/interface/api/6968
     * @return array
     * @throws
     * Date: 2020/8/8
     */
    public function createBatchWarehousing(array $attributes): array;


fuyunnan's avatar
fuyunnan committed
85 86 87 88 89 90 91 92 93 94 95
    /**
     * description:批量创建入库单
     * author: fuyunnan
     * @param array $attributes 需要入库的数组 格式请参考yapi 入库添加
     * @return bool
     * @throws
     * Date: 2020/7/6
     */
    public function createBatchInOrder(array $attributes): bool;


96 97 98 99 100 101 102 103
    /**
     * description:生产单结束获取统计单号值
     * author: fuyunnan
     * @param string $sourceNo 生产单号
     * @return array
     * @throws
     * Date: 2020/7/10
     */
fuyunnan's avatar
fuyunnan committed
104
    public function CntSourceNoOrder($sourceNo): array;
105 106 107 108 109 110 111 112 113 114


    /**
     * description:通过来源单号获取产品列表
     * author: fuyunnan
     * @param string $sourceNo 生产单号
     * @return array
     * @throws
     * Date: 2020/7/10
     */
fuyunnan's avatar
fuyunnan committed
115 116
    public function listSourceNoProduct($sourceNo): array;

fuyunnan's avatar
fuyunnan committed
117 118 119 120 121

    /**
     * description:根据来源单号,获取分组后的入库单
     * author: fuyunnan
     * @param array $sourceNoList 单号列表
fuyunnan's avatar
fuyunnan committed
122
     * @param array $where 刷选列表
fuyunnan's avatar
fuyunnan committed
123 124 125 126
     * @return array
     * @throws
     * Date: 2020/7/11
     */
fuyunnan's avatar
fuyunnan committed
127
    public function listGroupOrder($sourceNoList, $where = []): array;
fuyunnan's avatar
fuyunnan committed
128 129


fuyunnan's avatar
fuyunnan committed
130 131 132 133 134 135 136 137
    /**
     * description:通过入库单id数组获取产品列表
     * author: fuyunnan
     * @param array $ids 入库单ids 数组
     * @return array
     * @throws
     * Date: 2020/7/10
     */
fuyunnan's avatar
fuyunnan committed
138
    public function listIdsProduct($ids): array;
fuyunnan's avatar
fuyunnan committed
139 140


fuyunnan's avatar
fuyunnan committed
141 142 143
    /**
     * description:修改二次质检状态
     * author: fuyunnan
fuyunnan's avatar
fuyunnan committed
144 145
     * @param int $orderId 入库单id
     * @param array $update 修改数组
fuyunnan's avatar
fuyunnan committed
146 147 148 149
     * @return int
     * @throws
     * Date: 2020/7/14
     */
fuyunnan's avatar
fuyunnan committed
150
    public function updateQualityStatus($orderId, $update): int;
fuyunnan's avatar
fuyunnan committed
151

152 153 154 155

    /**
     * description:修改二次质检状态
     * author: fuyunnan
156
     * @param array $orderIds 入库单id数组
157 158 159 160 161 162 163
     * @param array $update 修改数组
     * @return int
     * @throws
     * Date: 2020/7/14
     */
    public function updateListQualityStatus($orderIds, $update): int;

164 165

    /**
fuyunnan's avatar
fuyunnan committed
166
     * description:通过产品id数组获取库存列表 给订单系统使用
167 168 169 170 171 172 173 174
     * author: fuyunnan
     * @param array $ids 产品ids 数组
     * @param int $wareId 仓库id
     * @return array
     * @throws
     * Date: 2020/7/27
     */
    public function getListStock($ids, $wareId = 0): array;
fuyunnan's avatar
fuyunnan committed
175 176 177


    /**
fuyunnan's avatar
fuyunnan committed
178
     * description:检查是否有库存,有就返回库存数量(有记录) 给产品系统使用
fuyunnan's avatar
fuyunnan committed
179 180 181 182 183 184
     * author: fuyunnan
     * @param array $ids 仓库产品的id数组
     * @return array
     * @throws
     * Date: 2020/7/31
     */
185 186 187
    public function checkStock($ids): array;


188 189 190
    /**
     * description:出库单 恢复库存 出库单定为已取消
     * author: fuyunnan
191
     * @param array $sourceNo 来源单号数组
192 193 194 195 196
     * @return int
     * @throws
     * Date: 2020/9/7
     */
    public function restoreStock($sourceNo): int;
王源's avatar
王源 committed
197

198 199 200 201
    /**
     * description:更新出库单状态
     * author: fuyunnan
     * @param array $sourceNos 来源单号数组
fuyunnan's avatar
fuyunnan committed
202
     * @param array $where 条件
203 204 205 206 207
     * @param array $update 修改内容
     * @return int
     * @throws
     * Date: 2020/10/13
     */
fuyunnan's avatar
fuyunnan committed
208
    public function updateExOrder($sourceNos, $where, $update): int;
209

fuyunnan's avatar
fuyunnan committed
210 211 212 213 214 215 216 217 218 219 220 221
    /**
     * description:通过出库来源单号获取-对应的信息
     * author: fuyunnan
     * @param array $sources 来源单号数组
     * @param array $status 出库单状态
     * @param array $where 查询条件数组
     * @return array
     * @throws
     * Date: 2020/11/5
     */
    public function getByExSourceList($sources, $status = [], $where = []): array;

王源's avatar
王源 committed
222
}