<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Table(name="`transaction`")
* @ORM\Entity(repositoryClass="App\Repository\TransactionRepository")
*/
class Transaction
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $date_transaction;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $notification;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\SousJacent", inversedBy="transactions")
*/
private $sous_jacent;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Products", inversedBy="transactions")
*/
private $filiere;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $total_paa;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Devise", inversedBy="transactions")
*/
private $total_unite;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $ca_prev;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Devise")
*/
private $ca_unite;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $courtage;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Devise")
*/
private $courtage_unite;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $apm_prev;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Devise")
*/
private $apm_unite;
/**
* @ORM\Column(type="datetime")
*/
private $created_at;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\AdminDonneurOrdre", inversedBy="transactions")
*/
private $vendeur;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Status", inversedBy="transactions")
*/
private $status;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Duree", inversedBy="transactions")
*/
private $duree;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Niveau", inversedBy="transactions")
*/
private $niveau;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\TypeContrat", inversedBy="transactions")
*/
private $type_contrat;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Unite", inversedBy="transactions_unite")
*/
private $unite_paa;
public function __construct(){
$this->created_at = new \DateTime('now');
if (!isset($this->notification)){
$this->notification = 'CD'.random_int(1,900).date('s');
}else{
$this->notification = 'CD'.random_int(1,900).date('s');
}
}
public function getId(): ?int
{
return $this->id;
}
public function getDateTransaction(): ?\DateTimeInterface
{
return $this->date_transaction;
}
public function setDateTransaction(?\DateTimeInterface $date_transaction): self
{
$this->date_transaction = $date_transaction;
return $this;
}
public function getNotification(): ?string
{
return $this->notification;
}
public function setNotification(?string $notification): self
{
$this->notification = $notification;
return $this;
}
public function getDuree(): ?Duree
{
return $this->duree;
}
public function setDuree(?Duree $duree): self
{
$this->duree = $duree;
return $this;
}
public function getSousJacent(): ?SousJacent
{
return $this->sous_jacent;
}
public function setSousJacent(?SousJacent $sous_jacent): self
{
$this->sous_jacent = $sous_jacent;
return $this;
}
public function getFiliere(): ?Products
{
return $this->filiere;
}
public function setFiliere(?Products $filiere): self
{
$this->filiere = $filiere;
return $this;
}
public function getTotalPaa(): ?string
{
return $this->total_paa;
}
public function setTotalPaa(?string $total_paa): self
{
$this->total_paa = $total_paa;
return $this;
}
public function getTotalUnite(): ?Devise
{
return $this->total_unite;
}
public function setTotalUnite(?Devise $total_unite): self
{
$this->total_unite = $total_unite;
return $this;
}
public function getCaPrev(): ?string
{
return $this->ca_prev;
}
public function setCaPrev(?string $ca_prev): self
{
$this->ca_prev = $ca_prev;
return $this;
}
public function getCaUnite(): ?Devise
{
return $this->ca_unite;
}
public function setCaUnite(?Devise $ca_unite): self
{
$this->ca_unite = $ca_unite;
return $this;
}
public function getCourtage(): ?string
{
return $this->courtage;
}
public function setCourtage(?string $courtage): self
{
$this->courtage = $courtage;
return $this;
}
public function getCourtageUnite(): ?Devise
{
return $this->courtage_unite;
}
public function setCourtageUnite(?Devise $courtage_unite): self
{
$this->courtage_unite = $courtage_unite;
return $this;
}
public function getApmPrev(): ?string
{
return $this->apm_prev;
}
public function setApmPrev(?string $apm_prev): self
{
$this->apm_prev = $apm_prev;
return $this;
}
public function getApmUnite(): ?Devise
{
return $this->apm_unite;
}
public function setApmUnite(?Devise $apm_unite): self
{
$this->apm_unite = $apm_unite;
return $this;
}
public function getStatus(): ?Status
{
return $this->status;
}
public function setStatus(?Status $status): self
{
$this->status = $status;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->created_at;
}
public function setCreatedAt(\DateTimeInterface $created_at): self
{
$this->created_at = $created_at;
return $this;
}
public function getVendeur(): ?AdminDonneurOrdre
{
return $this->vendeur;
}
public function setVendeur(?AdminDonneurOrdre $vendeur): self
{
$this->vendeur = $vendeur;
return $this;
}
public function getNiveau(): ?Niveau
{
return $this->niveau;
}
public function setNiveau(?Niveau $niveau): self
{
$this->niveau = $niveau;
return $this;
}
public function getTypeContrat(): ?TypeContrat
{
return $this->type_contrat;
}
public function setTypeContrat(?TypeContrat $type_contrat): self
{
$this->type_contrat = $type_contrat;
return $this;
}
public function getUnitePaa(): ?Unite
{
return $this->unite_paa;
}
public function setUnitePaa(?Unite $unite_paa): self
{
$this->unite_paa = $unite_paa;
return $this;
}
}