154 lines
2.9 KiB
PHP
154 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace App\Ramcar;
|
|
|
|
use Doctrine\ORM\Mapping as ORM;
|
|
use Symfony\Component\Validator\Constraints as Assert;
|
|
|
|
use CrEOF\Spatial\PHP\Types\Geometry\Point;
|
|
use DateTime;
|
|
|
|
trait Location
|
|
{
|
|
// unique id
|
|
/**
|
|
* @ORM\Id
|
|
* @ORM\Column(type="integer")
|
|
* @ORM\GeneratedValue(strategy="AUTO")
|
|
*/
|
|
protected $id;
|
|
|
|
// name of location
|
|
/**
|
|
* @ORM\Column(type="string", length=80)
|
|
* @Assert\NotBlank()
|
|
*/
|
|
protected $name;
|
|
|
|
// branch name
|
|
/**
|
|
* @ORM\Column(type="string", length=80)
|
|
*/
|
|
protected $branch;
|
|
|
|
// address
|
|
/**
|
|
* @ORM\Column(type="text")
|
|
* @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, nullable=true)
|
|
*/
|
|
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;
|
|
|
|
public function getID()
|
|
{
|
|
return $this->id;
|
|
}
|
|
|
|
public function setName($name)
|
|
{
|
|
$this->name = $name;
|
|
return $this;
|
|
}
|
|
|
|
public function getName()
|
|
{
|
|
return $this->name;
|
|
}
|
|
|
|
public function setBranch($branch)
|
|
{
|
|
$this->branch = $branch;
|
|
return $this;
|
|
}
|
|
|
|
public function getBranch()
|
|
{
|
|
return $this->branch;
|
|
}
|
|
|
|
public function getFullName()
|
|
{
|
|
return $this->name . ($this->branch ? ' - ' . $this->branch : '');
|
|
}
|
|
|
|
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;
|
|
}
|
|
}
|