resq/src/Entity/Outlet.php

174 lines
3.1 KiB
PHP

<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
use Symfony\Component\Validator\Constraints as Assert;
use CrEOF\Spatial\PHP\Types\Geometry\Point;
use DateTime;
/**
* @ORM\Entity
* @ORM\Table(name="outlet")
*/
class Outlet
{
// unique id
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
// name of enrollee
/**
* @ORM\Column(type="string", length=80)
* Assert\NotBlank()
*/
protected $name;
// address
/**
* @ORM\Column(type="string", length=80)
* Assert\NotBlank()
*/
protected $address;
// address coordinates
/**
* @ORM\Column(type="point")
*/
protected $coordinates;
// contact numbers
// this is displayed in a textarea
/**
* @ORM\Column(type="string", length=200)
* Assert\NotBlank()
*/
protected $contact_nums;
// opening time
/**
* @ORM\Column(type="time")
* Assert\NotBlank()
*/
protected $time_open;
// closing time
/**
* @ORM\Column(type="time")
* Assert\NotBlank()
*/
protected $time_close;
// job orders assigned to outlet
/**
* @ORM\OneToMany(targetEntity="JobOrder", mappedBy="outlet")
*/
protected $job_orders;
/**
* @ORM\ManyToOne(targetEntity="Hub", inversedBy="outlets")
* @ORM\JoinColumn(name="hub_id", referencedColumnName="id")
*/
protected $hub;
public function __construct()
{
$this->time_open = new DateTime();
$this->time_close = new DateTime();
}
public function getID()
{
return $this->id;
}
public function setName($name)
{
$this->name = $name;
return $this;
}
public function getName()
{
return $this->name;
}
public function setAddress($address)
{
$this->address = $address;
return $this;
}
public function getAddress()
{
return $this->address;
}
public function setCoordinates(Point $point)
{
$this->coordinates = $point;
return $this;
}
public function getCoordinates()
{
return $this->coordinates;
}
public function setContactNumbers($nums)
{
$this->contact_nums = $nums;
return $this;
}
public function getContactNumbers()
{
return $this->contact_nums;
}
public function setTimeOpen(DateTime $time_open)
{
$this->time_open = $time_open;
return $this;
}
public function getTimeOpen()
{
return $this->time_open;
}
public function setTimeClose(DateTime $time_close)
{
$this->time_close = $time_close;
return $this;
}
public function getTimeClose()
{
return $this->time_close;
}
public function setHub(Hub $hub)
{
$this->hub = $hub;
return $this;
}
public function getHub()
{
return $this->hub;
}
public function clearHub()
{
$this->hub = null;
return $this;
}
}