src/Entity/VehicleDocs.php line 32
<?php
namespace App\Entity;
use Doctrine\ORM\Mapping\Id;
use Doctrine\ORM\Mapping\Index;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\Table;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\ManyToOne;
use Doctrine\ORM\Mapping\OneToOne;
use Doctrine\ORM\Mapping\OneToMany;
use Doctrine\ORM\Mapping\GeneratedValue;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
use Doctrine\ORM\Mapping\PrePersist;
use Doctrine\ORM\Mapping\PreUpdate;
use Doctrine\Common\Collections\ArrayCollection;
use Symfony\Component\Validator\Constraints as Assert;
//use Symfony\Component\Validator\Constraints as Assert;
/**
* VehicleDocs
*/
#[Entity(repositoryClass: \App\Entity\VehicleDocsRepository::class)]
#[HasLifecycleCallbacks]
#[Table(name: 'vehicle_docs')]
#[Index(name: 'vehicle_id_idx', columns: ['vehicle_id'])]
#[Index(name: 'doc_type_id_idx', columns: ['doc_type_id'])]
#[Index(name: 'created_by_fk_idx', columns: ['created_by'])]
#[Index(name: 'updated_by_fk_idx', columns: ['updated_by'])]
class VehicleDocs
{
/**
* @var integer
*/
#[Column(name: 'doc_id', type: 'integer', nullable: false)]
#[Id]
#[GeneratedValue(strategy: 'IDENTITY')]
private $docId;
/**
* @var integer
*/
#[Column(name: 'received_doc_type', type: 'string', nullable: true, columnDefinition: "enum('no','original','copy')")]
private $receivedDocType;
/**
* available types of received documents
*/
const RECEIVED_DOC_TYPES =array(
'Not Available' => 'Not Available',
'Original' => 'Original',
'Copy' => 'Copy'
);
/**
* @var string
*/
#[Assert\File(maxSize: '4000k', mimeTypes: ['image/png', 'image/jpeg'])]
#[Column(name: 'image_path', type: 'string', length: 100, nullable: true)]
private $imagePath;
/**
* @var string
*
*/
private $imageWebPath;
/**
* @var \DateTime
*/
#[Column(name: 'created_at', type: 'datetime', nullable: true)]
private $createdAt;
/**
* @var \DateTime
*/
#[Column(name: 'updated_at', type: 'datetime', nullable: true)]
private $updatedAt;
/**
* @var \Users
*/
#[ManyToOne(targetEntity: \Users::class)]
#[JoinColumn(name: 'created_by', referencedColumnName: 'user_id')]
private $createdBy;
/**
* @var \VehicleDocTypes
*/
#[ManyToOne(targetEntity: \VehicleDocTypes::class)]
#[JoinColumn(name: 'doc_type_id', referencedColumnName: 'doc_type_id')]
private $docType;
/**
* @var \Users
*/
#[ManyToOne(targetEntity: \Users::class)]
#[JoinColumn(name: 'updated_by', referencedColumnName: 'user_id')]
private $updatedBy;
/**
* @var \Vehicles
*/
#[ManyToOne(targetEntity: \Vehicles::class, inversedBy: 'vehicleDocument', cascade: ['merge'])]
#[JoinColumn(name: 'vehicle_id', referencedColumnName: 'vehicle_id')]
private $vehicle;
/**
* @var \VehicleRegistrations
*/
#[OneToOne(targetEntity: \VehicleRegistrations::class, mappedBy: 'registrationDoc')]
private $vehicleRegistrations;
/**
* @var \VehicleBeneficiaryDetails
*/
#[OneToMany(targetEntity: \VehicleBeneficiaryDetails::class, mappedBy: 'ownerPaymentDoc', cascade: ['persist'])]
private $vehicleBeneficiaryDetails;
/**
* @var \VehicleOwnershipTransfer
*/
#[OneToMany(targetEntity: \VehicleOwnershipTransfer::class, mappedBy: 'otDoc', cascade: ['persist'])]
private $vehicleOwnershipTransfer;
/**
* Get docId
*
* @return integer
*/
public function getDocId()
{
return $this->docId;
}
/**
* Set receivedDocType
*
* @param string $receivedDocType
*
* @return VehicleDocs
*/
public function setReceivedDocType($receivedDocType)
{
$this->receivedDocType = $receivedDocType;
return $this;
}
/**
* Get receivedDocType
*
* @return string
*/
public function getReceivedDocType()
{
return $this->receivedDocType;
}
/**
* Set imagePath
*
* @param string $imagePath
*
* @return VehicleDocs
*/
public function setImagePath($imagePath)
{
$this->imagePath = $imagePath;
return $this;
}
/**
* Get imagePath
*
* @return string
*/
public function getImagePath()
{
return $this->imagePath;
}
/**
* Set imagePath
*
* @param string $imageWebPath
*
* @return VehicleDocs
*/
public function setImageWebPath($imageWebPath)
{
$this->imageWebPath = $imageWebPath;
}
/**
* Get imageWebPath
*
* @return string
*/
public function getImageWebPath()
{
return $this->imageWebPath;
}
/**
* Set createdAt
*
* @param \DateTime $createdAt
*
* @return VehicleDocs
*/
public function setCreatedAt($createdAt)
{
$this->createdAt = $createdAt;
return $this;
}
/**
* Get createdAt
*
* @return \DateTime
*/
public function getCreatedAt()
{
return $this->createdAt;
}
/**
* Set updatedAt
*
* @param \DateTime $updatedAt
*
* @return VehicleDocs
*/
public function setUpdatedAt($updatedAt)
{
$this->updatedAt = $updatedAt;
return $this;
}
/**
* Get updatedAt
*
* @return \DateTime
*/
public function getUpdatedAt()
{
return $this->updatedAt;
}
/**
* Set createdBy
*
*
* @return VehicleDocs
*/
public function setCreatedBy(\App\Entity\Users $createdBy = null)
{
$this->createdBy = $createdBy;
return $this;
}
/**
* Get createdBy
*
* @return \App\Entity\Users
*/
public function getCreatedBy()
{
return $this->createdBy;
}
/**
* Set docType
*
*
* @return VehicleDocs
*/
public function setDocType(\App\Entity\VehicleDocTypes $docType = null)
{
$this->docType = $docType;
return $this;
}
/**
* Get docType
*
* @return \App\Entity\VehicleDocTypes
*/
public function getDocType()
{
return $this->docType;
}
/**
* Set updatedBy
*
*
* @return VehicleDocs
*/
public function setUpdatedBy(\App\Entity\Users $updatedBy = null)
{
$this->updatedBy = $updatedBy;
return $this;
}
/**
* Get updatedBy
*
* @return \App\Entity\Users
*/
public function getUpdatedBy()
{
return $this->updatedBy;
}
/**
* Set vehicle
*
*
* @return VehicleDocs
*/
public function setVehicle(\App\Entity\Vehicles $vehicle = null)
{
$this->vehicle = $vehicle;
return $this;
}
/**
* Get vehicle
*
* @return \App\Entity\Vehicles
*/
public function getVehicle()
{
return $this->vehicle;
}
/**
* Set vehicleRegistrations
*
*
* @return VehicleDocs
*/
public function setVehicleRegistrations(\App\Entity\VehicleRegistrations $vehicleRegistrations = null)
{
$this->vehicleRegistrations= $vehicleRegistrations;
return $this;
}
/**
* Get vehicleRegistrations
*
* @return \App\Entity\VehicleRegistrations
*/
public function getVehicleRegistrations()
{
return $this->vehicleRegistrations;
}
/**
* Set vehicleBeneficiaryDetails
*
*
* @return VehicleDocs
*/
public function addVehicleBeneficiaryDetails(\App\Entity\VehicleBeneficiaryDetails $vehicleBeneficiaryDetails = null)
{
$vehicleBeneficiaryDetails->setOwnerPaymentDoc($this);
$this->vehicleBeneficiaryDetails->add($vehicleBeneficiaryDetails);
return $this;
}
/**
* Remove vehicleBeneficiaryDetails
*
* @param \App\Entity\VehicleDocs $vehicleBeneficiaryDetails
*/
public function removeVehicleBeneficiaryDetails(\App\Entity\VehicleBeneficiaryDetails $vehicleBeneficiaryDetails)
{
$this->vehicleBeneficiaryDetails->removeElement($vehicleBeneficiaryDetails);
}
/**
* Get vehicleBeneficiaryDetails
*
* @return \App\Entity\VehicleBeneficiaryDetails
*/
public function getVehicleBeneficiaryDetails()
{
return $this->vehicleBeneficiaryDetails;
}
/**
* Add vehicleOwnershipTransfer
*
*
* @return VehicleDocs
*/
public function addVehicleOwnershipTransfer(\App\Entity\VehicleOwnershipTransfer $vehicleOwnershipTransfer = null)
{
$vehicleOwnershipTransfer->setOtDoc($this);
$this->vehicleOwnershipTransfer->add($vehicleOwnershipTransfer);
return $this;
}
/**
* Remove vehicleOwnershipTransfer
*
* @param \App\Entity\VehicleDocs $vehicleOwnershipTransfer
*/
public function removeVehicleOwnershipTransfer(\App\Entity\VehicleOwnershipTransfer $vehicleOwnershipTransfer)
{
$this->vehicleOwnershipTransfer->removeElement($vehicleOwnershipTransfer);
}
/**
* Get vehicleOwnershipTransfer
*
* @return \App\Entity\VehicleOwnershipTransfer
*/
public function getVehicleOwnershipTransfer()
{
return $this->vehicleOwnershipTransfer;
}
#[PrePersist]
public function prePersist() {
if ($this->getCreatedAt() == null) {
$this->setCreatedAt(new \DateTime(date('Y-m-d H:i:s')));
}
}
#[PreUpdate]
public function preUpdate() {
$this->setUpdatedAt(new \DateTime(date('Y-m-d H:i:s')));
}
}