<?php
//
//namespace RxConnexionBundle\Entity;
//
//use Doctrine\ORM\Mapping as ORM;
//use Doctrine\Common\Collections\ArrayCollection;
//use RxConnexionBundle\Entity\Base\BaseEntity;
//use JMS\Serializer\Annotation\Groups;
//use JMS\Serializer\Annotation\MaxDepth;
//
///**
// * @ORM\Entity(repositoryClass="RxConnexionBundle\Repository\LocationRepository")
// * @ORM\Table(name="location", indexes={@ORM\Index(name="IDX_SEARCH_000", columns={"description"})})
// */
//
//class LocationEntity extends BaseEntity
//{
//
//    /**
//     * @ORM\Column(type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $code;
//
//    /**
//     * @ORM\Column(type="string")
//     * @Groups("forAudit")
//     */
//    protected $description;
//
//    /**
//     * @ORM\Column(type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $address;
//
//    /**
//     * @ORM\Column(type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $street;
//
//    /**
//     * @ORM\Column(name="zip_code", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $zipCode;
//
//    /**
//     * @ORM\Column(name="mobile_no", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $mobileNo;
//
//    /**
//     * @ORM\Column(name="mobile_no_two", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $mobileNoTwo;
//
//    /**
//     * @ORM\Column(name="mobile_no_three", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $mobileNoThree;
//
//    /**
//     * @ORM\Column(name="phone_no", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $phoneNo;
//
//    /**
//     * @ORM\Column(name="phone_no_two", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $phoneNoTwo;
//
//    /**
//     * @ORM\Column(name="phone_no_three", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $phoneNoThree;
//
//    /**
//     * @ORM\Column(name="email", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $email;
//
//    /**
//     * @ORM\Column(name="email_two", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $emailTwo;
//
//    /**
//     * @ORM\Column(name="email_three", type="string", nullable=true)
//     * @Groups("forAudit")
//     */
//    protected $emailThree;
//
//    /**
//     * @ORM\Column(name="is_deleted", type="boolean")
//     */
//    protected $isDeleted;
//
//
//    /**
//     * @ORM\ManyToOne(targetEntity="BranchEntity", inversedBy="locations")
//     * @ORM\JoinColumn(name="branch_id", referencedColumnName="id")
//     * @Groups("forAudit")
//     * @MaxDepth(1)
//     */
//    protected $branch;
//
//    /**
//     * @ORM\ManyToOne(targetEntity="CityEntity", inversedBy="locations")
//     * @ORM\JoinColumn(name="city_id", referencedColumnName="id")
//     * @Groups("forAudit")
//     * @MaxDepth(1)
//     */
//    protected $city;
//
//    /**
//     * @ORM\OneToMany(targetEntity="AccountUserLocationEntity", mappedBy="location")
//     */
//    protected $accountUserLocations;
//
//    /**
//     * @ORM\OneToMany(targetEntity="ScheduleEntity", mappedBy="location")
//     */
//    protected $schedules;
//
//    /**
//     * @ORM\OneToMany(targetEntity="PatientChartEntity", mappedBy="location")
//     */
//    protected $patientCharts;
//
//    /**
//     * @ORM\OneToMany(targetEntity="RxConnexionBundle\Entity\InventoryEntity", mappedBy="location")
//     */
//    protected $inventories;
//
//    /**
//     * @ORM\OneToMany(targetEntity="RxConnexionBundle\Entity\AddInventoryItemEntity", mappedBy="location")
//     */
//    protected $addInventoryItems;
//
//    public function __construct()
//    {
//        $this->accountUserLocations = new ArrayCollection();
//        $this->schedules = new ArrayCollection();
//        $this->patientCharts = new ArrayCollection();
//        $this->inventories = new ArrayCollection();
//    }
//
//    /**
//     * Set createdAt
//     *
//     * @ORM\PrePersist
//     */
//    public function setCreatedAtValue()
//    {
//        parent::setCreatedAtValue();
//        $this->isDeleted = 0;
//        $this->updateAddress();
//    }
//
//    /**
//     * Set updatedAt
//     *
//     * @ORM\PreUpdate
//     */
//    public function setUpdatedAtValue()
//    {
//        parent::setUpdatedAtValue();
//        $this->updateAddress();
//    }
//
//    /**
//     * Concatenate address
//     */
//    public function updateAddress() {
//        $this->address = $this->street . ' ' . ($this->city ? $this->city->getDescription() . ', ' . $this->city->getProvince()->getDescription() . ' ' . $this->city->getProvince()->getCountry()->getDescription()  . ' ' : '') . $this->zipCode;
//    }
//
//    /*--------------------------------------------------------------------------------------------------------*/
//    /*					User Defined Setters and Getters													  */
//    /*--------------------------------------------------------------------------------------------------------*/
//
//    /*--------------------------------------------------------------------------------------------------------*/
//    /*					Setters and Getters																	  */
//    /*--------------------------------------------------------------------------------------------------------*/
//
//
//    /**
//     * Set code
//     *
//     * @param string $code
//     *
//     * @return LocationEntity
//     */
//    public function setCode($code)
//    {
//        $this->code = $code;
//
//        return $this;
//    }
//
//    /**
//     * Get code
//     *
//     * @return string
//     */
//    public function getCode()
//    {
//        return $this->code;
//    }
//
//    /**
//     * Set description
//     *
//     * @param string $description
//     *
//     * @return LocationEntity
//     */
//    public function setDescription($description)
//    {
//        $this->description = $description;
//
//        return $this;
//    }
//
//    /**
//     * Get description
//     *
//     * @return string
//     */
//    public function getDescription()
//    {
//        return $this->description;
//    }
//
//    /**
//     * Set address
//     *
//     * @param string $address
//     *
//     * @return LocationEntity
//     */
//    public function setAddress($address)
//    {
//        $this->address = $address;
//
//        return $this;
//    }
//
//    /**
//     * Get address
//     *
//     * @return string
//     */
//    public function getAddress()
//    {
//        return $this->address;
//    }
//
//    /**
//     * Set street
//     *
//     * @param string $street
//     *
//     * @return LocationEntity
//     */
//    public function setStreet($street)
//    {
//        $this->street = $street;
//
//        return $this;
//    }
//
//    /**
//     * Get street
//     *
//     * @return string
//     */
//    public function getStreet()
//    {
//        return $this->street;
//    }
//
//    /**
//     * Set zipCode
//     *
//     * @param string $zipCode
//     *
//     * @return LocationEntity
//     */
//    public function setZipCode($zipCode)
//    {
//        $this->zipCode = $zipCode;
//
//        return $this;
//    }
//
//    /**
//     * Get zipCode
//     *
//     * @return string
//     */
//    public function getZipCode()
//    {
//        return $this->zipCode;
//    }
//
//    /**
//     * Set mobileNo
//     *
//     * @param string $mobileNo
//     *
//     * @return LocationEntity
//     */
//    public function setMobileNo($mobileNo)
//    {
//        $this->mobileNo = $mobileNo;
//
//        return $this;
//    }
//
//    /**
//     * Get mobileNo
//     *
//     * @return string
//     */
//    public function getMobileNo()
//    {
//        return $this->mobileNo;
//    }
//
//    /**
//     * Set mobileNoTwo
//     *
//     * @param string $mobileNoTwo
//     *
//     * @return LocationEntity
//     */
//    public function setMobileNoTwo($mobileNoTwo)
//    {
//        $this->mobileNoTwo = $mobileNoTwo;
//
//        return $this;
//    }
//
//    /**
//     * Get mobileNoTwo
//     *
//     * @return string
//     */
//    public function getMobileNoTwo()
//    {
//        return $this->mobileNoTwo;
//    }
//
//    /**
//     * Set mobileNoThree
//     *
//     * @param string $mobileNoThree
//     *
//     * @return LocationEntity
//     */
//    public function setMobileNoThree($mobileNoThree)
//    {
//        $this->mobileNoThree = $mobileNoThree;
//
//        return $this;
//    }
//
//    /**
//     * Get mobileNoThree
//     *
//     * @return string
//     */
//    public function getMobileNoThree()
//    {
//        return $this->mobileNoThree;
//    }
//
//    /**
//     * Set phoneNo
//     *
//     * @param string $phoneNo
//     *
//     * @return LocationEntity
//     */
//    public function setPhoneNo($phoneNo)
//    {
//        $this->phoneNo = $phoneNo;
//
//        return $this;
//    }
//
//    /**
//     * Get phoneNo
//     *
//     * @return string
//     */
//    public function getPhoneNo()
//    {
//        return $this->phoneNo;
//    }
//
//    /**
//     * Set phoneNoTwo
//     *
//     * @param string $phoneNoTwo
//     *
//     * @return LocationEntity
//     */
//    public function setPhoneNoTwo($phoneNoTwo)
//    {
//        $this->phoneNoTwo = $phoneNoTwo;
//
//        return $this;
//    }
//
//    /**
//     * Get phoneNoTwo
//     *
//     * @return string
//     */
//    public function getPhoneNoTwo()
//    {
//        return $this->phoneNoTwo;
//    }
//
//    /**
//     * Set phoneNoThree
//     *
//     * @param string $phoneNoThree
//     *
//     * @return LocationEntity
//     */
//    public function setPhoneNoThree($phoneNoThree)
//    {
//        $this->phoneNoThree = $phoneNoThree;
//
//        return $this;
//    }
//
//    /**
//     * Get phoneNoThree
//     *
//     * @return string
//     */
//    public function getPhoneNoThree()
//    {
//        return $this->phoneNoThree;
//    }
//
//    /**
//     * Set email
//     *
//     * @param string $email
//     *
//     * @return LocationEntity
//     */
//    public function setEmail($email)
//    {
//        $this->email = $email;
//
//        return $this;
//    }
//
//    /**
//     * Get email
//     *
//     * @return string
//     */
//    public function getEmail()
//    {
//        return $this->email;
//    }
//
//    /**
//     * Set emailTwo
//     *
//     * @param string $emailTwo
//     *
//     * @return LocationEntity
//     */
//    public function setEmailTwo($emailTwo)
//    {
//        $this->emailTwo = $emailTwo;
//
//        return $this;
//    }
//
//    /**
//     * Get emailTwo
//     *
//     * @return string
//     */
//    public function getEmailTwo()
//    {
//        return $this->emailTwo;
//    }
//
//    /**
//     * Set emailThree
//     *
//     * @param string $emailThree
//     *
//     * @return LocationEntity
//     */
//    public function setEmailThree($emailThree)
//    {
//        $this->emailThree = $emailThree;
//
//        return $this;
//    }
//
//    /**
//     * Get emailThree
//     *
//     * @return string
//     */
//    public function getEmailThree()
//    {
//        return $this->emailThree;
//    }
//
//    /**
//     * Set branch
//     *
//     * @param \RxConnexionBundle\Entity\BranchEntity $branch
//     *
//     * @return LocationEntity
//     */
//    public function setBranch(\RxConnexionBundle\Entity\BranchEntity $branch = null)
//    {
//        $this->branch = $branch;
//
//        return $this;
//    }
//
//    /**
//     * Get branch
//     *
//     * @return \RxConnexionBundle\Entity\BranchEntity
//     */
//    public function getBranch()
//    {
//        return $this->branch;
//    }
//
//    /**
//     * Set city
//     *
//     * @param \RxConnexionBundle\Entity\CityEntity $city
//     *
//     * @return LocationEntity
//     */
//    public function setCity(\RxConnexionBundle\Entity\CityEntity $city = null)
//    {
//        $this->city = $city;
//
//        return $this;
//    }
//
//    /**
//     * Get city
//     *
//     * @return \RxConnexionBundle\Entity\CityEntity
//     */
//    public function getCity()
//    {
//        return $this->city;
//    }
//
//    /**
//     * Add accountUserLocation
//     *
//     * @param \RxConnexionBundle\Entity\AccountUserLocationEntity $accountUserLocation
//     *
//     * @return LocationEntity
//     */
//    public function addAccountUserLocation(\RxConnexionBundle\Entity\AccountUserLocationEntity $accountUserLocation)
//    {
//        $this->accountUserLocations[] = $accountUserLocation;
//
//        return $this;
//    }
//
//    /**
//     * Remove accountUserLocation
//     *
//     * @param \RxConnexionBundle\Entity\AccountUserLocationEntity $accountUserLocation
//     */
//    public function removeAccountUserLocation(\RxConnexionBundle\Entity\AccountUserLocationEntity $accountUserLocation)
//    {
//        $this->accountUserLocations->removeElement($accountUserLocation);
//    }
//
//    /**
//     * Get accountUserLocations
//     *
//     * @return \Doctrine\Common\Collections\Collection
//     */
//    public function getAccountUserLocations()
//    {
//        return $this->accountUserLocations;
//    }
//
//    /**
//     * Add schedule
//     *
//     * @param \RxConnexionBundle\Entity\ScheduleEntity $schedule
//     *
//     * @return LocationEntity
//     */
//    public function addSchedule(\RxConnexionBundle\Entity\ScheduleEntity $schedule)
//    {
//        $this->schedules[] = $schedule;
//
//        return $this;
//    }
//
//    /**
//     * Remove schedule
//     *
//     * @param \RxConnexionBundle\Entity\ScheduleEntity $schedule
//     */
//    public function removeSchedule(\RxConnexionBundle\Entity\ScheduleEntity $schedule)
//    {
//        $this->schedules->removeElement($schedule);
//    }
//
//    /**
//     * Get schedules
//     *
//     * @return \Doctrine\Common\Collections\Collection
//     */
//    public function getSchedules()
//    {
//        return $this->schedules;
//    }
//
//    /**
//     * Add patientChart
//     *
//     * @param \RxConnexionBundle\Entity\PatientChartEntity $patientChart
//     *
//     * @return LocationEntity
//     */
//    public function addPatientChart(\RxConnexionBundle\Entity\PatientChartEntity $patientChart)
//    {
//        $this->patientCharts[] = $patientChart;
//
//        return $this;
//    }
//
//    /**
//     * Remove patientChart
//     *
//     * @param \RxConnexionBundle\Entity\PatientChartEntity $patientChart
//     */
//    public function removePatientChart(\RxConnexionBundle\Entity\PatientChartEntity $patientChart)
//    {
//        $this->patientCharts->removeElement($patientChart);
//    }
//
//    /**
//     * Get patientCharts
//     *
//     * @return \Doctrine\Common\Collections\Collection
//     */
//    public function getPatientCharts()
//    {
//        return $this->patientCharts;
//    }
//
//    /**
//     * Get id
//     *
//     * @return integer
//     */
//    public function getId()
//    {
//        return $this->id;
//    }
//
//    /**
//     * Set createdBy
//     *
//     * @param string $createdBy
//     *
//     * @return LocationEntity
//     */
//    public function setCreatedBy($createdBy)
//    {
//        $this->createdBy = $createdBy;
//
//        return $this;
//    }
//
//    /**
//     * Get createdBy
//     *
//     * @return string
//     */
//    public function getCreatedBy()
//    {
//        return $this->createdBy;
//    }
//
//    /**
//     * Set createdAt
//     *
//     * @param \DateTime $createdAt
//     *
//     * @return LocationEntity
//     */
//    public function setCreatedAt($createdAt)
//    {
//        $this->createdAt = $createdAt;
//
//        return $this;
//    }
//
//    /**
//     * Get createdAt
//     *
//     * @return \DateTime
//     */
//    public function getCreatedAt()
//    {
//        return $this->createdAt;
//    }
//
//    /**
//     * Set updatedBy
//     *
//     * @param string $updatedBy
//     *
//     * @return LocationEntity
//     */
//    public function setUpdatedBy($updatedBy)
//    {
//        $this->updatedBy = $updatedBy;
//
//        return $this;
//    }
//
//    /**
//     * Get updatedBy
//     *
//     * @return string
//     */
//    public function getUpdatedBy()
//    {
//        return $this->updatedBy;
//    }
//
//    /**
//     * Set updatedAt
//     *
//     * @param \DateTime $updatedAt
//     *
//     * @return LocationEntity
//     */
//    public function setUpdatedAt($updatedAt)
//    {
//        $this->updatedAt = $updatedAt;
//
//        return $this;
//    }
//
//    /**
//     * Get updatedAt
//     *
//     * @return \DateTime
//     */
//    public function getUpdatedAt()
//    {
//        return $this->updatedAt;
//    }
//
//    /**
//     * Set isDeleted
//     *
//     * @param boolean $isDeleted
//     *
//     * @return LocationEntity
//     */
//    public function setIsDeleted($isDeleted)
//    {
//        $this->isDeleted = $isDeleted;
//
//        return $this;
//    }
//
//    /**
//     * Get isDeleted
//     *
//     * @return boolean
//     */
//    public function getIsDeleted()
//    {
//        return $this->isDeleted;
//    }
//
//    /**
//     * Add inventory
//     *
//     * @param \RxConnexionBundle\Entity\InventoryEntity $inventory
//     *
//     * @return LocationEntity
//     */
//    public function addInventory(\RxConnexionBundle\Entity\InventoryEntity $inventory)
//    {
//        $this->inventories[] = $inventory;
//
//        return $this;
//    }
//
//    /**
//     * Remove inventory
//     *
//     * @param \RxConnexionBundle\Entity\InventoryEntity $inventory
//     */
//    public function removeInventory(\RxConnexionBundle\Entity\InventoryEntity $inventory)
//    {
//        $this->inventories->removeElement($inventory);
//    }
//
//    /**
//     * Get inventories
//     *
//     * @return \Doctrine\Common\Collections\Collection
//     */
//    public function getInventories()
//    {
//        return $this->inventories;
//    }
//
//    /**
//     * Add addInventoryItem
//     *
//     * @param \RxConnexionBundle\Entity\AddInventoryItemEntity $addInventoryItem
//     *
//     * @return LocationEntity
//     */
//    public function addAddInventoryItem(\RxConnexionBundle\Entity\AddInventoryItemEntity $addInventoryItem)
//    {
//        $this->addInventoryItems[] = $addInventoryItem;
//
//        return $this;
//    }
//
//    /**
//     * Remove addInventoryItem
//     *
//     * @param \RxConnexionBundle\Entity\AddInventoryItemEntity $addInventoryItem
//     */
//    public function removeAddInventoryItem(\RxConnexionBundle\Entity\AddInventoryItemEntity $addInventoryItem)
//    {
//        $this->addInventoryItems->removeElement($addInventoryItem);
//    }
//
//    /**
//     * Get addInventoryItems
//     *
//     * @return \Doctrine\Common\Collections\Collection
//     */
//    public function getAddInventoryItems()
//    {
//        return $this->addInventoryItems;
//    }
//}
