<?php
use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for hesapHareketleriInput StructType
 * @subpackage Structs
 */
class HesapHareketleriInput extends AbstractStructBase
{
    /**
     * The musteriNo
     * Meta information extracted from the WSDL
     * - form: unqualified
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $musteriNo;
    /**
     * The hesapNo
     * Meta information extracted from the WSDL
     * - form: unqualified
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $hesapNo;
    /**
     * The basTarih
     * Meta information extracted from the WSDL
     * - form: unqualified
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $basTarih;
    /**
     * The sonTarih
     * Meta information extracted from the WSDL
     * - form: unqualified
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $sonTarih;
    /**
     * Constructor method for hesapHareketleriInput
     * @uses HesapHareketleriInput::setMusteriNo()
     * @uses HesapHareketleriInput::setHesapNo()
     * @uses HesapHareketleriInput::setBasTarih()
     * @uses HesapHareketleriInput::setSonTarih()
     * @param string $musteriNo
     * @param string $hesapNo
     * @param string $basTarih
     * @param string $sonTarih
     */
    public function __construct($musteriNo = null, $hesapNo = null, $basTarih = null, $sonTarih = null)
    {
        $this
            ->setMusteriNo($musteriNo)
            ->setHesapNo($hesapNo)
            ->setBasTarih($basTarih)
            ->setSonTarih($sonTarih);
    }
    /**
     * Get musteriNo value
     * @return string|null
     */
    public function getMusteriNo()
    {
        return $this->musteriNo;
    }
    /**
     * Set musteriNo value
     * @param string $musteriNo
     * @return HesapHareketleriInput
     */
    public function setMusteriNo($musteriNo = null)
    {
        // validation for constraint: string
        if (!is_null($musteriNo) && !is_string($musteriNo)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($musteriNo, true), gettype($musteriNo)), __LINE__);
        }
        $this->musteriNo = $musteriNo;
        return $this;
    }
    /**
     * Get hesapNo value
     * @return string|null
     */
    public function getHesapNo()
    {
        return $this->hesapNo;
    }
    /**
     * Set hesapNo value
     * @param string $hesapNo
     * @return HesapHareketleriInput
     */
    public function setHesapNo($hesapNo = null)
    {
        // validation for constraint: string
        if (!is_null($hesapNo) && !is_string($hesapNo)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($hesapNo, true), gettype($hesapNo)), __LINE__);
        }
        $this->hesapNo = $hesapNo;
        return $this;
    }
    /**
     * Get basTarih value
     * @return string|null
     */
    public function getBasTarih()
    {
        return $this->basTarih;
    }
    /**
     * Set basTarih value
     * @param string $basTarih
     * @return HesapHareketleriInput
     */
    public function setBasTarih($basTarih = null)
    {
        // validation for constraint: string
        if (!is_null($basTarih) && !is_string($basTarih)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($basTarih, true), gettype($basTarih)), __LINE__);
        }
        $this->basTarih = $basTarih;
        return $this;
    }
    /**
     * Get sonTarih value
     * @return string|null
     */
    public function getSonTarih()
    {
        return $this->sonTarih;
    }
    /**
     * Set sonTarih value
     * @param string $sonTarih
     * @return HesapHareketleriInput
     */
    public function setSonTarih($sonTarih = null)
    {
        // validation for constraint: string
        if (!is_null($sonTarih) && !is_string($sonTarih)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sonTarih, true), gettype($sonTarih)), __LINE__);
        }
        $this->sonTarih = $sonTarih;
        return $this;
    }
}
