<?php
namespace App\Entity\Export;
use App\Entity\Articles\Marque;
use App\Entity\ExportCsv\EntiteExportCsv;
use App\Entity\Fournisseurs\Fournisseur;
use App\Entity\MarketPlace\CompteMarketPlace;
use App\Entity\Utilisateur\Utilisateur;
use DateTime;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
use Symfony\Component\Validator\Constraints as Assert;
use App\Annotations\SecuredEntity;
/**
* Export
*
* @ORM\Table("export__export")
* @ORM\Entity(repositoryClass="App\Repository\Export\ExportRepository")
* @ORM\HasLifecycleCallbacks()
* @Gedmo\SoftDeleteable(fieldName="dateSuppression",timeAware=false)
* @SecuredEntity(name="Export", group="OUTILS")
*/
class Export
{
/**
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\Column(name="progression", type="integer", nullable=true)
*/
private $progression;
/**
* @ORM\Column(name="requete", type="text", nullable=true)
*/
private $requete;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Export\Export_champs_exportables", mappedBy="export", cascade={"persist"})
*/
private $champsAexporter;
/**
* @ORM\Column(name="entity_name", type="string", length=255)
*/
private $entityName;
/**
* @ORM\Column(name="entity", type="string", length=255, nullable=true)
*/
private $entity;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\ExportCsv\EntiteExportCsv")
* @ORM\JoinColumn(nullable=false)
*/
private $entiteExportCsv;
/**
* @ORM\Column(name="format", type="string", length=255)
*/
private $format;
/**
* @ORM\Column(name="date_creation", type="datetime", nullable=true)
*/
private $dateCreation;
/**
* @ORM\Column(name="date_fin", type="datetime", nullable=true)
*/
private $dateFin;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Utilisateur\Utilisateur")
* @ORM\JoinColumn(nullable=true)
*/
private $utilisateur;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Fournisseurs\Fournisseur")
* @ORM\JoinColumn(nullable=true)
*/
private $fournisseur;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Articles\Marque")
* @ORM\JoinColumn(nullable=true)
*/
private $marque;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\MarketPlace\CompteMarketPlace", cascade={"persist"})
*/
private $compteMarketPlace;
/**
* @ORM\Column(name="archive", type="boolean", nullable=true)
*/
private $archive;
/**
* @ORM\Column(name="articlesComposes", type="boolean", nullable=true)
*/
private $articlesComposes;
/**
* @ORM\Column(name="dateSuppression", type="datetime", nullable=true)
*/
private $dateSuppression;
/**
* @ORM\Column(name="telecharge", type="boolean", nullable=true)
*/
private $telecharge;
/**
* @ORM\Column(name="journal", type="string", length=255, nullable=true)
*/
private $journal;
/**
* @ORM\Column(name="date_export_comptabilite", type="datetime", nullable=true)
*/
private $dateExportComptabilite;
/**
* @var boolean
* @ORM\Column(name="echec", type="boolean", nullable=true)
*/
protected $echec;
/**
* @ORM\Column(name="pid", type="integer", nullable=true)
*/
private $pid;
/**
* @var boolean
* @ORM\Column(name="execute", type="boolean", nullable=true)
*/
protected $execute;
/**
* @var DateTime
*
* @ORM\Column(name="date_debut_execution", type="datetime", nullable=true)
*/
private $dateDebutExecution;
/**
* @ORM\Column(name="date_telechargement", type="datetime", nullable=true)
*/
private $dateTelechargement;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Utilisateur\Utilisateur")
* @ORM\JoinColumn(nullable=true)
*/
private $utilisateurTelechargement;
/**
* @ORM\Column(name="date_filtre_debut", type="datetime", nullable=true)
*/
private $dateFiltreDebut;
/**
* @ORM\Column(name="date_filtre_fin", type="datetime", nullable=true)
*/
private $dateFiltreFin;
public function __construct(){
$this->dateCreation = new DateTime();
$this->articlesComposes = false;
$this->progression = 0;
$this->echec = false;
$this->champsAexporter = new ArrayCollection();
}
public function getId(): int
{
return $this->id;
}
public function setRequete(?string $requete): Export
{
$this->requete = $requete;
return $this;
}
public function getRequete(): ?string
{
return $this->requete;
}
public function setEntityName(string $entityName): Export
{
$this->entityName = $entityName;
return $this;
}
public function getEntityName(): string
{
return $this->entityName;
}
public function setFormat(string $format): Export
{
$this->format = $format;
return $this;
}
public function getFormat(): string
{
return $this->format;
}
public function setDateCreation(?DateTime $dateCreation): Export
{
$this->dateCreation = $dateCreation;
return $this;
}
public function getDateCreation(): ?DateTime
{
return $this->dateCreation;
}
public function setDateFin(?DateTime $dateFin): Export
{
$this->dateFin = $dateFin;
return $this;
}
public function getDateFin(): ?DateTime
{
return $this->dateFin;
}
public function addChampsAexporter(Export_champs_exportables $champsAexporter): Export
{
$this->champsAexporter[] = $champsAexporter;
$champsAexporter->setExport($this);
return $this;
}
public function removeChampsAexporter(Export_champs_exportables $champsAexporter)
{
$this->champsAexporter->removeElement($champsAexporter);
}
public function getChampsAexporter(): Collection
{
return $this->champsAexporter;
}
public function setUtilisateur(?Utilisateur $utilisateur): Export
{
$this->utilisateur = $utilisateur;
return $this;
}
public function getUtilisateur(): ?Utilisateur
{
return $this->utilisateur;
}
public function setEntity(string $entity): Export
{
$this->entity = $entity;
return $this;
}
public function getEntity(): string
{
return $this->entity;
}
public function setFournisseur(?Fournisseur $fournisseur): Export
{
$this->fournisseur = $fournisseur;
return $this;
}
public function getFournisseur(): ?Fournisseur
{
return $this->fournisseur;
}
public function setArticlesComposes(?bool $articlesComposes): Export
{
$this->articlesComposes = $articlesComposes;
return $this;
}
public function getArticlesComposes(): ?bool
{
return $this->articlesComposes;
}
public function setMarque(?Marque $marque): Export
{
$this->marque = $marque;
return $this;
}
public function getMarque(): ?Marque
{
return $this->marque;
}
public function setProgression(?int $progression): Export
{
$this->progression = $progression;
return $this;
}
public function getProgression(): ?int
{
return $this->progression;
}
public function setDateSuppression(?DateTime $dateSuppression): Export
{
$this->dateSuppression = $dateSuppression;
return $this;
}
public function getDateSuppression(): ?DateTime
{
return $this->dateSuppression;
}
public function setTelecharge(?bool $telecharge): Export
{
$this->telecharge = $telecharge;
return $this;
}
public function getTelecharge(): ?bool
{
return $this->telecharge;
}
public function setJournal(?string $journal): Export
{
$this->journal = $journal;
return $this;
}
public function getJournal(): ?string
{
return $this->journal;
}
public function setDateExportComptabilite(?DateTime $dateExportComptabilite): Export
{
$this->dateExportComptabilite = $dateExportComptabilite;
return $this;
}
public function getDateExportComptabilite(): ?DateTime
{
return $this->dateExportComptabilite;
}
public function setEchec(?bool $echec): Export
{
$this->echec = $echec;
return $this;
}
public function getEchec(): ?bool
{
return $this->echec;
}
public function setPid(?int $pid): Export
{
$this->pid = $pid;
return $this;
}
public function getPid(): ?int
{
return $this->pid;
}
public function setExecute(?bool $execute): Export
{
$this->execute = $execute;
return $this;
}
public function getExecute(): ?bool
{
return $this->execute;
}
public function setDateDebutExecution(?DateTime $dateDebutExecution): Export
{
$this->dateDebutExecution = $dateDebutExecution;
return $this;
}
public function getDateDebutExecution(): ?DateTime
{
return $this->dateDebutExecution;
}
public function setArchive(?bool $archive): Export
{
$this->archive = $archive;
return $this;
}
public function getArchive(): ?bool
{
return $this->archive;
}
public function setDateTelechargement(?DateTime $dateTelechargement): Export
{
$this->dateTelechargement = $dateTelechargement;
return $this;
}
public function getDateTelechargement(): ?DateTime
{
return $this->dateTelechargement;
}
public function setUtilisateurTelechargement(?Utilisateur $utilisateurTelechargement): Export
{
$this->utilisateurTelechargement = $utilisateurTelechargement;
return $this;
}
public function getUtilisateurTelechargement(): ?Utilisateur
{
return $this->utilisateurTelechargement;
}
public function setCompteMarketPlace(?CompteMarketPlace $compteMarketPlace): Export
{
$this->compteMarketPlace = $compteMarketPlace;
return $this;
}
public function getCompteMarketPlace(): ?CompteMarketPlace
{
return $this->compteMarketPlace;
}
public function setDateFiltreDebut(?DateTime $dateFiltreDebut): Export
{
$this->dateFiltreDebut = $dateFiltreDebut;
return $this;
}
public function getDateFiltreDebut(): ?DateTime
{
return $this->dateFiltreDebut;
}
public function setDateFiltreFin(?DateTime $dateFiltreFin): Export
{
$this->dateFiltreFin = $dateFiltreFin;
return $this;
}
public function getDateFiltreFin(): ?DateTime
{
return $this->dateFiltreFin;
}
public function isArchive(): ?bool
{
return $this->archive;
}
public function isArticlesComposes(): ?bool
{
return $this->articlesComposes;
}
public function isTelecharge(): ?bool
{
return $this->telecharge;
}
public function isEchec(): ?bool
{
return $this->echec;
}
public function isExecute(): ?bool
{
return $this->execute;
}
public function getEntiteExportCsv(): ?EntiteExportCsv
{
return $this->entiteExportCsv;
}
public function setEntiteExportCsv(?EntiteExportCsv $entiteExportCsv): self
{
$this->entiteExportCsv = $entiteExportCsv;
return $this;
}
}