using CashLineERP.Contracts.Inventory;

namespace CashLineERP.Application.Inventory;

public interface IWarehouseTransferService
{
    IReadOnlyCollection<WarehouseTransferResponse> GetWarehouseTransfers();

    WarehouseTransferResponse? GetWarehouseTransfer(long warehouseTransferId);

    WarehouseTransferResponse CreateWarehouseTransfer(CreateWarehouseTransferRequest request);

    WarehouseTransferResponse SubmitWarehouseTransfer(long warehouseTransferId, long actorUserId);

    WarehouseTransferResponse ApproveWarehouseTransfer(long warehouseTransferId, long actorUserId);

    WarehouseTransferResponse PostWarehouseTransfer(long warehouseTransferId, long actorUserId);
}
