<?php

namespace App\Classes\Modules\PackingLists\DataTransferObjects;

use App\Classes\General\Interfaces\DataTransferObject;

class ItemObject implements DataTransferObject
{

    private $packageId;

    private $name;

    private $reference;

    private $description;

    private $quantity;

    private $uom;

    private $price;

    private $total;

    private $status;

    public function __construct(int $packageId, ?string $name, ?string $reference, ?string $description, int $quantity, ?string $uom, float $price, float $total, int $status)
    {
        $this->packageId = $packageId;
        $this->name = $name;
        $this->reference = $reference;
        $this->description = $description;
        $this->quantity = $quantity;
        $this->uom = $uom;
        $this->price = $price;
        $this->total = $total;
        $this->status = $status;
    }

    public function getPackageId(): int
    {
        return $this->packageId;
    }

    public function getName(): ?string
    {
        return $this->name;
    }

    public function getReference(): ?string
    {
        return $this->reference;
    }

    public function getDescription(): ?string
    {
        return $this->description;
    }

    public function getQuantity(): int
    {
        return $this->quantity;
    }

    public function getUom(): ?string
    {
        return $this->uom;
    }

    public function getPrice(): float
    {
        return $this->price;
    }

    public function getTotal(): float
    {
        return $this->total;
    }

    public function getStatus(): int
    {
        return $this->status;
    }

}
