<?php

namespace App\Integration\Providers\Alliance3\DTO;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for DocumentInfo DTO
 * @subpackage Structs
 */
class DocumentInfo extends AbstractStructBase
{
    /**
     * The type
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $type;
    /**
     * The series
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $series;
    /**
     * The number
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $number;
    /**
     * The placeOfIssue
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $placeOfIssue;
    /**
     * The dateOfIssue
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $dateOfIssue;
    /**
     * The kodPodrazd
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $kodPodrazd;
    /**
     * The typeStr
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $typeStr;
    /**
     * The dateBegin
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $dateBegin;
    /**
     * The dateEnd
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $dateEnd;
    /**
     * Constructor method for DocumentInfo
     * @uses DocumentInfo::setType()
     * @uses DocumentInfo::setSeries()
     * @uses DocumentInfo::setNumber()
     * @uses DocumentInfo::setPlaceOfIssue()
     * @uses DocumentInfo::setDateOfIssue()
     * @uses DocumentInfo::setKodPodrazd()
     * @uses DocumentInfo::setTypeStr()
     * @uses DocumentInfo::setDateBegin()
     * @uses DocumentInfo::setDateEnd()
     * @param string $type
     * @param string $series
     * @param string $number
     * @param string $placeOfIssue
     * @param string $dateOfIssue
     * @param string $kodPodrazd
     * @param string $typeStr
     * @param string $dateBegin
     * @param string $dateEnd
     */
    public function __construct($type = null, $series = null, $number = null, $placeOfIssue = null, $dateOfIssue = null, $kodPodrazd = null, $typeStr = null, $dateBegin = null, $dateEnd = null)
    {
        $this
            ->setType($type)
            ->setSeries($series)
            ->setNumber($number)
            ->setPlaceOfIssue($placeOfIssue)
            ->setDateOfIssue($dateOfIssue)
            ->setKodPodrazd($kodPodrazd)
            ->setTypeStr($typeStr)
            ->setDateBegin($dateBegin)
            ->setDateEnd($dateEnd);
    }
    /**
     * Get type value
     * @return string|null
     */
    public function getType()
    {
        return $this->type;
    }
    /**
     * Set type value
     * @param string $type
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setType($type = null)
    {
        $this->type = $type;
        return $this;
    }
    /**
     * Get series value
     * @return string|null
     */
    public function getSeries()
    {
        return $this->series;
    }
    /**
     * Set series value
     * @param string $series
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setSeries($series = null)
    {
        $this->series = $series;
        return $this;
    }
    /**
     * Get number value
     * @return string|null
     */
    public function getNumber()
    {
        return $this->number;
    }
    /**
     * Set number value
     * @param string $number
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setNumber($number = null)
    {
        $this->number = $number;
        return $this;
    }
    /**
     * Get placeOfIssue value
     * @return string|null
     */
    public function getPlaceOfIssue()
    {
        return $this->placeOfIssue;
    }
    /**
     * Set placeOfIssue value
     * @param string $placeOfIssue
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setPlaceOfIssue($placeOfIssue = null)
    {
        $this->placeOfIssue = $placeOfIssue;
        return $this;
    }
    /**
     * Get dateOfIssue value
     * @return string|null
     */
    public function getDateOfIssue()
    {
        return $this->dateOfIssue;
    }
    /**
     * Set dateOfIssue value
     * @param string $dateOfIssue
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setDateOfIssue($dateOfIssue = null)
    {
        $this->dateOfIssue = $dateOfIssue;
        return $this;
    }
    /**
     * Get kodPodrazd value
     * @return string|null
     */
    public function getKodPodrazd()
    {
        return $this->kodPodrazd;
    }
    /**
     * Set kodPodrazd value
     * @param string $kodPodrazd
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setKodPodrazd($kodPodrazd = null)
    {
        $this->kodPodrazd = $kodPodrazd;
        return $this;
    }
    /**
     * Get typeStr value
     * @return string|null
     */
    public function getTypeStr()
    {
        return $this->typeStr;
    }
    /**
     * Set typeStr value
     * @param string $typeStr
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setTypeStr($typeStr = null)
    {
        $this->typeStr = $typeStr;
        return $this;
    }
    /**
     * Get dateBegin value
     * @return string|null
     */
    public function getDateBegin()
    {
        return $this->dateBegin;
    }
    /**
     * Set dateBegin value
     * @param string $dateBegin
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setDateBegin($dateBegin = null)
    {
        $this->dateBegin = $dateBegin;
        return $this;
    }
    /**
     * Get dateEnd value
     * @return string|null
     */
    public function getDateEnd()
    {
        return $this->dateEnd;
    }
    /**
     * Set dateEnd value
     * @param string $dateEnd
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public function setDateEnd($dateEnd = null)
    {
        $this->dateEnd = $dateEnd;
        return $this;
    }
}
