ProductionServiceInterface.php 7.3 KB
Newer Older
董锦君's avatar
董锦君 committed
1 2
<?php

3
namespace Meibuyu\Rpc\Service\Interfaces\Production;
4

 林继鑫's avatar
林继鑫 committed
5
use App\Model\ApprovalFlowConfiguration;
carlos's avatar
carlos committed
6 7
use Meibuyu\Micro\Exceptions\HttpResponseException;

董锦君's avatar
董锦君 committed
8 9
interface ProductionServiceInterface
{
10

11 12
    /**
     * 生产单批次发货入库回调
13 14 15 16 17 18 19 20 21 22
     * @param array $params
     * [
     *   'production_no' => 'SC20201218-001-001', // 生产单号,必须
     *   'auth' => Auth::user(), // 当前用户,必须
     *   'warehousing_order' => [
     *     'id' => '123', // 入库单id,必须
     *     'warehousing_no' => 'RK-20200727-001', // 入库单号,必须
     *     'count' => '123', // 入库数量, 必须
     *   ]
     * ]
23
     * @throws \Meibuyu\Rpc\Exceptions\RpcException
24 25
     * @author Zero
     */
26
    public function warehousingCallback(array $params);
27

28 29 30 31 32 33 34
    /**
     * 通过入库单id获取相关数据
     * @param array $warehousingOrderIds 默认去重
     * @return array 默认keyBy
     */
    public function getInfoForWarehousingOrder(array $warehousingOrderIds);

35 36 37 38 39 40 41 42
    /**
     * 通过生产单号获取生产单工厂信息
     * @param array $productionNoList 生产单号数组,默认去重
     * @return array 'production_no' => ['factory_id' => 1, 'factory_name' => 'AL']
     * @author Zero
     */
    public function getFactoryByProductionNoList(array $productionNoList): array;

43 44 45 46 47 48 49 50 51 52 53 54 55 56
    /**
     * 查询备货计划中是否用过仓库子产品
     * @param array $ids 仓库子产品id数组,默认去重
     * @return array 返回用过的id数组
     */
    public function searchUsedProductChildId($ids);

    /**
     * 查询备货计划中是否用过平台子产品
     * @param array $ids 平台子产品id数组,默认去重
     * @return array 返回用过的id数组
     */
    public function searchUsedPlatformProductChildId($ids);

57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
    /**
     * 通过生产单号获取生产单产品数据
     * @param $productionNo
     * @return array
     * @throws \Meibuyu\Rpc\Exceptions\RpcException
     * @author Zero
     */
    public function getProductionProductInfoByNo($productionNo): array;

    /**
     * 仓库返工出库回调
     * @param array $params
     * @throws \Meibuyu\Rpc\Exceptions\RpcException
     * @author Zero
     */
    public function exWarehouseCallback(array $params);

Liu lu's avatar
Liu lu committed
74 75 76 77 78 79 80 81 82 83 84


    /**
     * 获取生产单留言信息
     * @param array $params
     * @throws \Meibuyu\Rpc\Exceptions\RpcException
     * @author Zero
     */
    public function  productionMessages($params);


Liu lu's avatar
Liu lu committed
85 86 87 88 89 90 91
    /**
     * 生产单留言操作
     * @param array $params
     * @throws \Meibuyu\Rpc\Exceptions\RpcException
     * @author Zero
     */
    public function  toMessage($params);
92

Liu lu's avatar
Liu lu committed
93 94
    /**
     * 获取生产单列表是否有未读消息
Liu lu's avatar
Liu lu committed
95
     * @param $productionNoArr
Liu lu's avatar
Liu lu committed
96 97
     * @param string $source
     */
Liu lu's avatar
Liu lu committed
98
    public function getListMessageReadStatus($productionNoArr,$source='factory');
99 100

    /**
101 102 103
     * 更新备货计划产品工艺单维护信息
     * @param $productId 产品id
     * @param $status 工艺维护状态 0未维护,1已维护,2部分维护
104 105
     * @return mixed
     */
106
    public function productCraftMaintain($productId,$status);
107 108 109

    /**
     * 获取生产单信息
Liu lu's avatar
Liu lu committed
110
     * @param $productionNoArr 生产单号
Liu lu's avatar
Liu lu committed
111 112
     * @param array $columns 生产主表字段
     * @param $relation 关联信息
113 114
     * @return mixed
     */
Liu lu's avatar
Liu lu committed
115
    public function productionInfo($productionNoArr,$columns = ['*'],$relation=['production_order_products']);
116

carlos's avatar
carlos committed
117 118 119 120 121 122 123


    /**
     * 根据订单汇总消息
     * @return mixed
     */
    public function getProductionCountMessage();
carlos's avatar
carlos committed
124 125 126 127 128 129 130 131


    /**
     * 获取订单留言表的product_order_id
     * @return mixed
     */
    public function getMessageProductionOrderIds();

carlos's avatar
carlos committed
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152

    /**
     * 发送留言
     * @return mixed
     */
    public function pushProductionMessage(array $params);


    /**
     * 获取留言
     * @return mixed
     */
    public function getProductionMessage(array $params);


    /**
     * 已读标记
     * @return mixed
     */
    public function isReadProductionMessage(array $params);

carlos's avatar
carlos committed
153 154 155 156 157 158 159 160 161
    /**
     * Notes: 获取礼服备货单信息
     * User: carlos
     * DateTime: 2022/11/8 18:48
     * @param $code
     * @return array
     */
    public function getStockUpOrder($code): array;

carlos's avatar
carlos committed
162 163 164 165 166 167 168 169 170 171 172 173 174
    /**
     * Notes: 收货
     * User: carlos
     * DateTime: 2022/11/21 10:34
     * [
     *      'delivery_no' => '', //发货单号
     *      'package_num' => , //收到包裹数量
     *      'user_id'     => '', //收货人id
     *      'user_name'   => '', //收货人姓名
     * ]
     */
    public function confirmDelivery($params);

carlos's avatar
carlos committed
175 176 177 178
    /**
     * Notes: 取消发货订单
     * User: carlos
     * DateTime: 2022/11/22 9:20
carlos's avatar
carlos committed
179
     * @param $params
carlos's avatar
carlos committed
180
     */
carlos's avatar
carlos committed
181
    public function cancelDelivery($params);
carlos's avatar
carlos committed
182

carlos's avatar
carlos committed
183 184 185 186 187 188 189
    /**
     * Notes: 创建生产异常单
     * User: carlos
     * DateTime: 2022/11/21 16:36
     */
    public function createProductionException($params);

carlos's avatar
carlos committed
190 191 192 193 194 195 196 197

    /**
     * Notes: 返修退回
     * User: carlos
     * DateTime: 2022/11/22 13:58
     */
    public function repairReturn($params);

carlos's avatar
carlos committed
198 199 200 201 202 203 204 205 206 207 208 209 210 211
    /**
     * 发送留言-小货
     * @param $params
     * @throws HttpResponseException
     */
    public function pushOutsideMessage($params);

    /**
     * Notes: 获取小货-留言
     * User: carlos
     * DateTime: 2022/11/26 10:40
     */
    public function getOutsideMessage($id);

carlos's avatar
carlos committed
212 213 214 215 216 217 218 219 220

    /**
     * Notes: 获取礼服备货审核信息
     * User: carlos
     * DateTime: 2022/11/29 16:59
     * @param $code
     */
    public function getStockUpDressApproval($code);

carlos's avatar
carlos committed
221 222 223 224 225 226 227 228 229

    /**
     * Notes: 飞书审批回调
     * User: carlos
     * DateTime: 2022/11/30 19:09
     * @param $params
     */
    public function stockUpDetailCallBack($params);

 林继鑫's avatar
林继鑫 committed
230 231 232 233 234 235 236 237 238

    /**
     * 工厂信息合同
     * @param $params
     * @author Lin jixin
     * date 2023/1/11 10:28
     */
    public function contractInfo($params);

 林继鑫's avatar
林继鑫 committed
239 240 241 242 243 244 245 246 247

    /**
     * 下载合同
     * @param $params
     * @author Lin jixin
     * date 2023/1/11 15:48
     */
    public function dowloadContract($params);

 林继鑫's avatar
林继鑫 committed
248 249 250 251 252 253 254 255 256

    /**
     * 下载销售订单合同
     * @param $params
     * @author Lin jixin
     * date 2023/1/13 10:48
     */
    public function OrderContractExport($params);

carlos's avatar
carlos committed
257 258 259 260 261 262 263

    /***
     * Notes: 获取备货金额信息
     * User: carlos
     * DateTime: 2023/5/12 16:56
     */
    public function getStockUpPlanMoneyInfo();
264 265 266 267 268 269 270 271



    /**
     * 获取订单是否为组合产品
     * @param $stockUpPlanIds
     */
    public function getGroupProduct($stockUpPlanIds);
 林继鑫's avatar
林继鑫 committed
272 273 274 275 276 277 278 279


    /**
     * 检查审批配置是否开启操作规则
     * @param $operation_type
     * @return bool
     */
    public function getApprovalTypeIsTrue($operation_type);
 林继鑫's avatar
林继鑫 committed
280 281 282 283 284 285


    /**
     * 获取跟单员、订单类型、合作方式
     */
    public function getProductionOrderMember();
286 287 288 289 290 291 292


    /**
     * 通过订单号获取备货计划信息
     * @param $ProductionOrders
     */
    public function getStockPlanInfo($ProductionOrders);
293 294 295 296 297 298 299 300


    /**
     * 保存二次分派跟单员
     * @param $params
     */
    public function saveApportionProcessUser($params);

 林继鑫's avatar
林继鑫 committed
301 302

    /**
 林继鑫's avatar
林继鑫 committed
303 304 305
     * 通过生产单号,或者计划单号获取抄送人
     * @param $type
     * @param $No
 林继鑫's avatar
林继鑫 committed
306 307
     * @return array|bool
     */
 林继鑫's avatar
林继鑫 committed
308
    public function getNoticeUser($type,$No);
 林继鑫's avatar
林继鑫 committed
309

 林继鑫's avatar
林继鑫 committed
310 311 312 313 314 315

    /**
     * 通过单号获取采购单位
     * @param $production_no
     * @return array
     */
 林继鑫's avatar
林继鑫 committed
316
    public function getPlanUnit($production_no);
 林继鑫's avatar
林继鑫 committed
317

318
}