2018-07-18 11:35:27 -04:00
|
|
|
<?php declare(strict_types=1);
|
2017-11-30 15:06:13 -05:00
|
|
|
|
2018-02-14 16:42:39 -05:00
|
|
|
namespace App\Entity;
|
2017-11-30 15:06:13 -05:00
|
|
|
|
2022-02-17 15:48:16 -05:00
|
|
|
use Doctrine\ORM\Mapping as ORM;
|
|
|
|
|
2017-11-30 15:06:13 -05:00
|
|
|
trait LensTrait
|
|
|
|
{
|
2022-03-03 10:53:48 -05:00
|
|
|
use PurchasePriceTrait;
|
2017-11-30 15:06:13 -05:00
|
|
|
|
2022-03-03 10:53:48 -05:00
|
|
|
#[ORM\Column(name: 'brand', type: 'string', length: 64, nullable: true)]
|
|
|
|
private readonly ?string $brand;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'coatings', type: 'string', length: 64, nullable: true)]
|
|
|
|
private readonly ?string $coatings;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'product_line', type: 'string', length: 64, nullable: true)]
|
|
|
|
private readonly ?string $productLine;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'model', type: 'string', length: 64, nullable: true)]
|
|
|
|
private readonly ?string $model;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'min_f_stop', type: 'string', length: 10, nullable: true)]
|
|
|
|
private readonly ?string $minFStop;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'max_f_stop', type: 'float', precision: 10, scale: 0, nullable: true)]
|
|
|
|
private readonly ?float $maxFStop;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'min_focal_length', type: 'integer', nullable: true)]
|
|
|
|
private readonly ?int $minFocalLength;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'max_focal_length', type: 'integer', nullable: true)]
|
|
|
|
private readonly ?int $maxFocalLength;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'serial', type: 'string', length: 10, nullable: true)]
|
|
|
|
private readonly ?string $serial;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'notes', type: 'text', nullable: true)]
|
|
|
|
private readonly ?string $notes;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'image_size', type: 'string', nullable: false, options: ['default' => '35mm'])]
|
|
|
|
private string $imageSize = '35mm';
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'mount', type: 'string', length: 40, nullable: true)]
|
|
|
|
private readonly ?string $mount;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'front_filter_size', type: 'decimal', precision: 10, scale: 0, nullable: true)]
|
|
|
|
private readonly ?string $frontFilterSize;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'rear_filter_size', type: 'decimal', precision: 10, scale: 0, nullable: true)]
|
|
|
|
private readonly ?string $rearFilterSize;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'is_teleconverter', type: 'boolean', nullable: false)]
|
|
|
|
private bool $isTeleconverter = false;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'design_elements', type: 'smallint', nullable: true)]
|
|
|
|
private readonly ?int $designElements;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'design_groups', type: 'smallint', nullable: true)]
|
|
|
|
private readonly ?int $designGroups;
|
|
|
|
|
|
|
|
#[ORM\Column(name: 'aperture_blades', type: 'smallint', nullable: true)]
|
|
|
|
private readonly ?int $apertureBlades;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get id
|
|
|
|
*/
|
|
|
|
public function getId(): int
|
|
|
|
{
|
|
|
|
return $this->id;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set brand
|
|
|
|
*
|
|
|
|
* @param string $brand
|
|
|
|
*/
|
|
|
|
public function setBrand($brand): self
|
|
|
|
{
|
|
|
|
$this->brand = $brand;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get brand
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getBrand()
|
|
|
|
{
|
|
|
|
return $this->brand;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set coatings
|
|
|
|
*
|
|
|
|
* @param string $coatings
|
|
|
|
*/
|
|
|
|
public function setCoatings($coatings): self
|
|
|
|
{
|
|
|
|
$this->coatings = $coatings;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get coatings
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getCoatings()
|
|
|
|
{
|
|
|
|
return $this->coatings;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set productLine
|
|
|
|
*
|
|
|
|
* @param string $productLine
|
|
|
|
*/
|
|
|
|
public function setProductLine($productLine): self
|
|
|
|
{
|
|
|
|
$this->productLine = $productLine;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get productLine
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getProductLine()
|
|
|
|
{
|
|
|
|
return $this->productLine;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set model
|
|
|
|
*
|
|
|
|
* @param string $model
|
|
|
|
*/
|
|
|
|
public function setModel($model): self
|
|
|
|
{
|
|
|
|
$this->model = $model;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get model
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getModel()
|
|
|
|
{
|
|
|
|
return $this->model;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set minFStop
|
|
|
|
*
|
|
|
|
* @param string $minFStop
|
|
|
|
*/
|
|
|
|
public function setMinFStop($minFStop): self
|
|
|
|
{
|
|
|
|
$this->minFStop = $minFStop;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get minFStop
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getMinFStop()
|
|
|
|
{
|
|
|
|
return $this->minFStop;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set maxFStop
|
|
|
|
*
|
|
|
|
* @param float $maxFStop
|
|
|
|
*/
|
|
|
|
public function setMaxFStop($maxFStop): self
|
|
|
|
{
|
|
|
|
$this->maxFStop = $maxFStop;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get maxFStop
|
|
|
|
*
|
|
|
|
* @return float
|
|
|
|
*/
|
|
|
|
public function getMaxFStop()
|
|
|
|
{
|
|
|
|
return $this->maxFStop;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set minFocalLength
|
|
|
|
*
|
|
|
|
* @param int $minFocalLength
|
|
|
|
*/
|
|
|
|
public function setMinFocalLength($minFocalLength): self
|
|
|
|
{
|
|
|
|
$this->minFocalLength = $minFocalLength;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get minFocalLength
|
|
|
|
*
|
|
|
|
* @return int
|
|
|
|
*/
|
|
|
|
public function getMinFocalLength()
|
|
|
|
{
|
|
|
|
return $this->minFocalLength;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set maxFocalLength
|
|
|
|
*
|
|
|
|
* @param int $maxFocalLength
|
|
|
|
*/
|
|
|
|
public function setMaxFocalLength($maxFocalLength): self
|
|
|
|
{
|
|
|
|
$this->maxFocalLength = $maxFocalLength;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get maxFocalLength
|
|
|
|
*
|
|
|
|
* @return int
|
|
|
|
*/
|
|
|
|
public function getMaxFocalLength()
|
|
|
|
{
|
|
|
|
return $this->maxFocalLength;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set serial
|
|
|
|
*
|
|
|
|
* @param string $serial
|
|
|
|
*/
|
|
|
|
public function setSerial($serial): self
|
|
|
|
{
|
|
|
|
$this->serial = $serial;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get serial
|
|
|
|
*/
|
|
|
|
public function getSerial(): string
|
|
|
|
{
|
|
|
|
return $this->serial ?? '';
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set notes
|
|
|
|
*
|
|
|
|
* @param string $notes
|
|
|
|
*/
|
|
|
|
public function setNotes(?string $notes): self
|
|
|
|
{
|
|
|
|
$this->notes = $notes;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get notes
|
|
|
|
*/
|
|
|
|
public function getNotes(): string
|
|
|
|
{
|
|
|
|
return $this->notes ?? '';
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get image size
|
|
|
|
*/
|
|
|
|
public function getImageSize(): string
|
|
|
|
{
|
|
|
|
return $this->imageSize;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set image size
|
|
|
|
*/
|
|
|
|
public function setImageSize(string $imageSize): self
|
|
|
|
{
|
|
|
|
$this->imageSize = $imageSize;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set mount
|
|
|
|
*
|
|
|
|
* @param string $mount
|
|
|
|
*/
|
|
|
|
public function setMount($mount): self
|
|
|
|
{
|
|
|
|
$this->mount = $mount;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get mount
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getMount()
|
|
|
|
{
|
|
|
|
return $this->mount;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set received
|
|
|
|
*
|
|
|
|
* @param bool $received
|
|
|
|
*/
|
|
|
|
public function setReceived($received): self
|
|
|
|
{
|
|
|
|
$this->received = $received;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get received
|
|
|
|
*
|
|
|
|
* @return bool
|
|
|
|
*/
|
|
|
|
public function getReceived()
|
|
|
|
{
|
|
|
|
return $this->received;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set formerlyOwned
|
|
|
|
*
|
|
|
|
* @param bool $formerlyOwned
|
|
|
|
*/
|
|
|
|
public function setFormerlyOwned($formerlyOwned): self
|
|
|
|
{
|
|
|
|
$this->formerlyOwned = $formerlyOwned;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get formerlyOwned
|
|
|
|
*
|
|
|
|
* @return bool
|
|
|
|
*/
|
|
|
|
public function getFormerlyOwned()
|
|
|
|
{
|
|
|
|
return $this->formerlyOwned;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set frontFilterSize
|
|
|
|
*
|
|
|
|
* @param string $frontFilterSize
|
|
|
|
*/
|
|
|
|
public function setFrontFilterSize($frontFilterSize): self
|
|
|
|
{
|
|
|
|
$this->frontFilterSize = $frontFilterSize;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get frontFilterSize
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getFrontFilterSize()
|
|
|
|
{
|
|
|
|
return $this->frontFilterSize;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set rearFilterSize
|
|
|
|
*
|
|
|
|
* @param string $rearFilterSize
|
|
|
|
*/
|
|
|
|
public function setRearFilterSize($rearFilterSize): self
|
|
|
|
{
|
|
|
|
$this->rearFilterSize = $rearFilterSize;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get rearFilterSize
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getRearFilterSize()
|
|
|
|
{
|
|
|
|
return $this->rearFilterSize;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set isTeleconverter
|
|
|
|
*
|
|
|
|
* @param bool $isTeleconverter
|
|
|
|
*/
|
|
|
|
public function setIsTeleconverter($isTeleconverter): self
|
|
|
|
{
|
|
|
|
$this->isTeleconverter = $isTeleconverter;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get isTeleconverter
|
|
|
|
*
|
|
|
|
* @return bool
|
|
|
|
*/
|
|
|
|
public function getIsTeleconverter()
|
|
|
|
{
|
|
|
|
return $this->isTeleconverter;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set designElements
|
|
|
|
*
|
|
|
|
* @param int $designElements
|
|
|
|
*/
|
|
|
|
public function setDesignElements($designElements): self
|
|
|
|
{
|
|
|
|
$this->designElements = $designElements;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get designElements
|
|
|
|
*
|
|
|
|
* @return int
|
|
|
|
*/
|
|
|
|
public function getDesignElements()
|
|
|
|
{
|
|
|
|
return $this->designElements;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set designGroups
|
|
|
|
*
|
|
|
|
* @param int $designGroups
|
|
|
|
*/
|
|
|
|
public function setDesignGroups($designGroups): self
|
|
|
|
{
|
|
|
|
$this->designGroups = $designGroups;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get designGroups
|
|
|
|
*
|
|
|
|
* @return int
|
|
|
|
*/
|
|
|
|
public function getDesignGroups()
|
|
|
|
{
|
|
|
|
return $this->designGroups;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set apertureBlades
|
|
|
|
*
|
|
|
|
* @param int $apertureBlades
|
|
|
|
*/
|
|
|
|
public function setApertureBlades($apertureBlades): self
|
|
|
|
{
|
|
|
|
$this->apertureBlades = $apertureBlades;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get apertureBlades
|
|
|
|
*
|
|
|
|
* @return int
|
|
|
|
*/
|
|
|
|
public function getApertureBlades(): ?int
|
|
|
|
{
|
|
|
|
return $this->apertureBlades;
|
|
|
|
}
|
2017-11-30 15:06:13 -05:00
|
|
|
}
|