<?php
namespace App\Entity;
use App\Entity\Base\AbstractTimestampableEntity;
use App\Repository\CashInRepository;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=CashInRepository::class)
*/
class CashIn extends AbstractTimestampableEntity
{
/**
* @ORM\ManyToOne(targetEntity=Company::class, inversedBy="cashIns")
*/
private $company;
/**
* @ORM\ManyToOne(targetEntity=Project::class, inversedBy="cashIns")
*/
private $project;
/**
* @ORM\ManyToOne(targetEntity=CashInType::class, inversedBy="cashIns")
* @ORM\JoinColumn(nullable=false)
*/
private $cashInType;
/**
* @ORM\Column(type="date")
*/
private $date;
/**
* @ORM\Column(type="decimal", precision=10, scale=2)
*/
private $value;
/**
* @ORM\Column(type="string", length=255)
*/
private $docNr;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $description;
/**
* @ORM\OneToOne(targetEntity=Payment::class, inversedBy="cashIn", cascade={"persist", "remove"})
*/
private $payment;
public function getCompany(): ?Company
{
return $this->company;
}
public function setCompany(?Company $company): self
{
$this->company = $company;
return $this;
}
public function getProject(): ?Project
{
return $this->project;
}
public function setProject(?Project $project): self
{
$this->project = $project;
return $this;
}
public function getCashInType(): ?CashInType
{
return $this->cashInType;
}
public function setCashInType(?CashInType $cashInType): self
{
$this->cashInType = $cashInType;
return $this;
}
public function getDate(): ?\DateTimeInterface
{
return $this->date;
}
public function setDate(\DateTimeInterface $date): self
{
$this->date = $date;
return $this;
}
public function getValue(): ?string
{
return $this->value;
}
public function setValue(string $value): self
{
$this->value = $value;
return $this;
}
public function getDocNr(): ?string
{
return $this->docNr;
}
public function setDocNr(string $docNr): self
{
$this->docNr = $docNr;
return $this;
}
public function getDescription(): ?string
{
return $this->description;
}
public function setDescription(?string $description): self
{
$this->description = $description;
return $this;
}
public function getPayment(): ?Payment
{
return $this->payment;
}
public function setPayment(?Payment $payment): self
{
$this->payment = $payment;
return $this;
}
}