<?php

namespace App\Modules\Production\Contracts;

interface ProductionServiceInterface
{
    public function getPendingProductionCount(): int;

    /**
     * 尋找產出特定批號的生產工單
     * 
     * @param string $batchNumber
     * @return \Illuminate\Support\Collection
     */
    public function getProductionOrdersByOutputBatch(string $batchNumber): \Illuminate\Support\Collection;

    /**
     * 尋找使用了特定庫存批號的生產工單項目
     * 
     * @param int $inventoryId
     * @param array $with
     * @return \Illuminate\Support\Collection
     */
    public function getProductionOrderItemsByInventoryId(int $inventoryId, array $with = []): \Illuminate\Support\Collection;
}
