<?php

declare(strict_types=1);

namespace KupShop\ComponentsBundle\Dto;

use KupShop\ComponentsBundle\Contracts\UserInfoInterface;

class OrderInvoiceUserInfo implements UserInfoInterface
{
    public function __construct(
        private readonly \Order $order,
    ) {
    }

    public function getName(): string
    {
        return $this->order->invoice_name;
    }

    public function getSurname(): string
    {
        return $this->order->invoice_surname;
    }

    public function getPhone(): string
    {
        return $this->order->invoice_phone;
    }

    public function getEmail(): string
    {
        return $this->order->invoice_email;
    }

    public function getCountry(): string
    {
        return $this->order->invoice_country;
    }

    public function getStreet(): string
    {
        return $this->order->invoice_street;
    }

    public function getCustomAddress(): ?string
    {
        return $this->order->invoice_custom_address;
    }

    public function getCity(): string
    {
        return $this->order->invoice_city;
    }

    public function getZip(): string
    {
        return $this->order->invoice_zip;
    }

    public function getState(): string
    {
        return $this->order->invoice_state;
    }

    public function getIco(): ?string
    {
        return $this->order->invoice_ico;
    }

    public function getDic(): ?string
    {
        return $this->order->invoice_dic;
    }

    public function getFirm(): ?string
    {
        return $this->order->invoice_firm;
    }
}
