<?php

namespace App\Integration\Providers\Alliance3\DTO;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for RepresentativeInfo DTO
 * @subpackage Structs
 */
class RepresentativeInfo extends AbstractStructBase
{
    /**
     * The lastName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $lastName;
    /**
     * The name
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $name;
    /**
     * The middleName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $middleName;
    /**
     * The procuracyNumber
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $procuracyNumber;
    /**
     * The procuracyDate
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $procuracyDate;
    /**
     * Constructor method for RepresentativeInfo
     * @uses RepresentativeInfo::setLastName()
     * @uses RepresentativeInfo::setName()
     * @uses RepresentativeInfo::setMiddleName()
     * @uses RepresentativeInfo::setProcuracyNumber()
     * @uses RepresentativeInfo::setProcuracyDate()
     * @param string $lastName
     * @param string $name
     * @param string $middleName
     * @param string $procuracyNumber
     * @param string $procuracyDate
     */
    public function __construct($lastName = null, $name = null, $middleName = null, $procuracyNumber = null, $procuracyDate = null)
    {
        $this
            ->setLastName($lastName)
            ->setName($name)
            ->setMiddleName($middleName)
            ->setProcuracyNumber($procuracyNumber)
            ->setProcuracyDate($procuracyDate);
    }
    /**
     * Get lastName value
     * @return string|null
     */
    public function getLastName()
    {
        return $this->lastName;
    }
    /**
     * Set lastName value
     * @param string $lastName
     * @return \App\Integration\Providers\Alliance3\DTO\RepresentativeInfo
     */
    public function setLastName($lastName = null)
    {
        $this->lastName = $lastName;
        return $this;
    }
    /**
     * Get name value
     * @return string|null
     */
    public function getName()
    {
        return $this->name;
    }
    /**
     * Set name value
     * @param string $name
     * @return \App\Integration\Providers\Alliance3\DTO\RepresentativeInfo
     */
    public function setName($name = null)
    {
        $this->name = $name;
        return $this;
    }
    /**
     * Get middleName value
     * @return string|null
     */
    public function getMiddleName()
    {
        return $this->middleName;
    }
    /**
     * Set middleName value
     * @param string $middleName
     * @return \App\Integration\Providers\Alliance3\DTO\RepresentativeInfo
     */
    public function setMiddleName($middleName = null)
    {
        $this->middleName = $middleName;
        return $this;
    }
    /**
     * Get procuracyNumber value
     * @return string|null
     */
    public function getProcuracyNumber()
    {
        return $this->procuracyNumber;
    }
    /**
     * Set procuracyNumber value
     * @param string $procuracyNumber
     * @return \App\Integration\Providers\Alliance3\DTO\RepresentativeInfo
     */
    public function setProcuracyNumber($procuracyNumber = null)
    {
        $this->procuracyNumber = $procuracyNumber;
        return $this;
    }
    /**
     * Get procuracyDate value
     * @return string|null
     */
    public function getProcuracyDate()
    {
        return $this->procuracyDate;
    }
    /**
     * Set procuracyDate value
     * @param string $procuracyDate
     * @return \App\Integration\Providers\Alliance3\DTO\RepresentativeInfo
     */
    public function setProcuracyDate($procuracyDate = null)
    {
        $this->procuracyDate = $procuracyDate;
        return $this;
    }
}
