<?php
namespace App\Entity;
use App\Repository\ProjectRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use App\Annotation\CustomAnnotation;
use Symfony\Flex\Response;
/**
* @ORM\Entity(repositoryClass=ProjectRepository::class)
* @UniqueEntity(fields={"name"}, message="Il existe déjà un projet avec ce nom")
*/
class Project
{
const STATUS_EN_COURS = 1;
const STATUS_REFUSE = 2;
const STATUS_DEMANDE = 3;
const STATUS_EN_ATTENT = 4;
const STATUS_DEMANDE_REPONDU = 5;
const PROBLEME_DEMANDE_DOC = 1;
const PROBLEME_DEMANDE_INFO = 2;
const STATUS_CUSTOM_EN_ATTENT = 1;
const STATUS_CUSTOM_DEVELOPPEMENT = 2;
const STATUS_CUSTOM_CONSTRUCTION = 3;
const STATUS_CUSTOM_EXPLOITATION = 4;
const ACHAT = 1;
const LOCATION = 2;
const dev_intern = 1;
const dev_extern = 2;
const mesure_m = 2;
const mesure_k = 1;
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=200, nullable=true)
* @CustomAnnotation("Contrat")
*/
private $contrat;
/**
* @ORM\Column(type="string", length=200, nullable=true)
* @CustomAnnotation("Tranche")
*/
private $tranche;
/**
* @ORM\Column(type="string", length=100, nullable=true)
* @CustomAnnotation("Nom du projet")
*/
private $name;
/**
* @ORM\Column(type="string", length=100, nullable=true)
* @CustomAnnotation("Code du projet")
*/
private $codeProject;
/**
* @ORM\ManyToOne(targetEntity="FamilleProject", cascade={"persist"})
* @ORM\JoinColumn(name="famille_project_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Famille du projet")
*/
private $familleProject;
/**
* @ORM\ManyToOne(targetEntity="TypologieProject", cascade={"persist"})
* @ORM\JoinColumn(name="typologie_project_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Typologie du projet")
*/
private $typologieProject;
/**
* @ORM\Column(type="string", length=100, nullable=true)
* @CustomAnnotation("Adresse du projet")
*/
private $adresse;
/**
* @ORM\Column(type="string", length=100, nullable=true)
* @CustomAnnotation("Ville du projet")
*/
private $city;
/**
* @ORM\Column(type="string", length=255, nullable=true)
* @CustomAnnotation("Département")
*/
private $departement;
/**
* @ORM\Column(type="string", length=100, nullable=true)
* @CustomAnnotation("Code postal du projet")
*/
private $codePostal;
/**
* @ORM\Column(type="string", length=100,nullable=true)
* @CustomAnnotation("Longitude du projet")
*/
private $lat;
/**
* @ORM\Column(type="string", length=100,nullable=true)
* @CustomAnnotation("Latitude du projet")
*/
private $longi;
/**
* @ORM\Column(type="string", length=1000,nullable=true)
* @CustomAnnotation("N° de parcelle du projet")
*/
private $numParcelle;
/**
* @ORM\Column(type="float",nullable=true)
* @CustomAnnotation("Capacité du projet")
*/
private $capacite;
/**
* @ORM\Column(type="float",nullable=true)
* @CustomAnnotation("Productible P50 du projet")
*/
private $productible;
/**
* @ORM\Column(type="float",nullable=true)
* @CustomAnnotation("Productible P90 du projet")
*/
private $productibleP90;
/**
* @ORM\Column(type="float",nullable=true)
* @CustomAnnotation("Puissance du projet")
*/
private $puissance;
/**
* @ORM\Column(type="integer",nullable=true)
*/
private $tarifVise;
/**
* @ORM\Column(type="string", length=100,nullable=true)
*/
private $dateT0Annee;
/**
* @ORM\Column(type="string", length=100,nullable=true)
*/
private $dateT0Semestere;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date de T0 projet")
*/
private $dateT0Date;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date arrêté PC du projet")
*/
private $dateArretePc;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isArretePcNonRecu;
/**
* @ORM\Column(type="boolean", nullable=true)
* @CustomAnnotation("Nom du projet")
*/
private $dateT0NonRecu;
/**
* @ORM\Column(type="integer",nullable=true)
* @CustomAnnotation("Loyer du projet")
*/
private $loyerVise;
/**
* @ORM\Column(type="integer",nullable=true)
* @CustomAnnotation("Soulte du projet")
*/
private $soulteVise;
/**
* @ORM\ManyToOne(targetEntity="TypeBatimentProject", cascade={"persist"})
* @ORM\JoinColumn(name="type_batiment_project_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Type de batîment du projet")
*/
private $typeBatimentProject;
/**
* @ORM\ManyToOne(targetEntity="Spv", cascade={"persist"})
* @ORM\JoinColumn(name="spv_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("SPV du projet")
*/
private $spv;
/**
* @ORM\ManyToOne(targetEntity="DocUpload", cascade={"persist"})
* @ORM\JoinColumn(name="file_etude_productible_id", referencedColumnName="id",nullable=true ,onDelete="SET NULL")
* @CustomAnnotation("Document etude de productible")
*/
private $fileEtudeProductible;
/**
* @ORM\ManyToOne(targetEntity="DocUpload", cascade={"persist"})
* @ORM\JoinColumn(name="file_promesse_bail_id", referencedColumnName="id",nullable=true ,onDelete="SET NULL")
* @CustomAnnotation("Document promesse de bail")
*/
private $filePromessebail;
/**
* @ORM\ManyToMany(targetEntity="DocUpload", cascade={"persist"})
* @ORM\JoinColumn( referencedColumnName="id",nullable=true ,onDelete="SET NULL")
* @ORM\JoinTable(name="file_doc_compementaire")
* @CustomAnnotation("Visite Technique devéloppeur ")
*/
private $fileDocCompementaire;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isPromesseBailSignee;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $createdAt;
/**
* @ORM\Column(type="string", length=100, nullable=true)
*/
private $token;
/**
* @ORM\ManyToOne(targetEntity="User", cascade={"persist"})
* @ORM\JoinColumn(name="developper_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Développeur du projet")
*/
private $developpeur;
/**
* @ORM\ManyToOne(targetEntity="User", cascade={"persist"})
* @ORM\JoinColumn(name="epc_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Epc du projet")
*/
private $epc;
/**
* @ORM\ManyToOne(targetEntity="User", cascade={"persist"})
* @ORM\JoinColumn(name="admin_id", referencedColumnName="id",nullable=true)
*/
private $admin;
/**
* @ORM\ManyToOne(targetEntity="User", cascade={"persist"})
* @ORM\JoinColumn(name="user_created_id", referencedColumnName="id",nullable=true)
*/
private $userCreated;
/**
* @ORM\Column(type="string", length=100, nullable=true)
*/
private $status;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $commentRefuse;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date de refus")
*/
private $refuseAt;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $valideAt;
/**
* @ORM\Column(type="string", length=100, nullable=true)
*/
private $typeProblemeDemande;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $commentDemande;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isArchived;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $commentArchive;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $archiveAt;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isEnabled;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $numEtapEncours;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isOpenCat1;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isOpenCat2;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isOpenCat3;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isOpenCat4;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isDemandeModif;
/**
* @ORM\ManyToOne(targetEntity="User", cascade={"persist"})
* @ORM\JoinColumn(name="user_demande_modif_id", referencedColumnName="id",nullable=true)
*/
private $userDemandeModif;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Tarif Fit prévisionnel")
*/
private $tarifRevente;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Mise en place du Monitoring")
*/
private $miseEnplaceMonitoring;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date de mise en service")
*/
private $dateMiseEnService;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Statut administratif")
*/
private $statusAdministratif;
/**
* @ORM\ManyToOne(targetEntity="DocUpload", cascade={"persist"})
* @ORM\JoinColumn(name="image_project_id", referencedColumnName="id",nullable=true ,onDelete="SET NULL")
* @CustomAnnotation("Image du projet")
*/
private $imageProject;
/**
* @ORM\ManyToMany(targetEntity="DocUpload", cascade={"persist"})
* @ORM\JoinColumn(name="images_project_id", referencedColumnName="id",nullable=true ,onDelete="SET NULL")
* @CustomAnnotation("Image du projet")
*/
private $imagesProject;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isNewConstruction;
/**
* @ORM\Column(type="string", length=255, nullable=true)
* @CustomAnnotation("Statut tracker")
*/
private $statusTrackerActuel;
/**
* @ORM\OneToMany(targetEntity="App\Entity\StatusTracker",mappedBy="project", cascade={"persist"})
*/
private $statusTracker;
/**
* @ORM\ManyToOne(targetEntity="Fournisseur", cascade={"persist"})
* @ORM\JoinColumn(name="fournisseur_id", referencedColumnName="id",nullable=true)
*/
private $fournisseur;
/**
* @ORM\OneToMany(targetEntity="IntervenantProject",mappedBy="project", cascade={"persist"})
*/
private $intervenantUser;
/**
* @ORM\OneToMany(targetEntity="ResponcablePorject",mappedBy="project", cascade={"persist"})
*/
private $responsableUser;
/**
* @ORM\OneToMany(targetEntity="ResponsableDeveloppement",mappedBy="project", cascade={"persist"})
*/
private $responsableDeveloppement;
/**
* @ORM\OneToMany(targetEntity="FournisseurProject",mappedBy="project", cascade={"persist"})
*/
private $fournisseurProject;
/**
* @ORM\OneToMany(targetEntity="ConstructeurProject",mappedBy="project", cascade={"persist"})
*/
private $constructeurUser;
/**
* @ORM\ManyToOne(targetEntity="User", cascade={"persist"})
* @ORM\JoinColumn(name="responsable_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Responsable construction")
*/
private $responsable;
/**
* @ORM\Column(type="float", nullable=true)
* @CustomAnnotation("Budget facturation Développement")
*/
private $budgetDeveloppement;
/**
* @ORM\Column(type="float", nullable=true)
* @CustomAnnotation("Budget facturation Développement")
*/
private $budgetConstruction;
/**
* @ORM\Column(type="float", nullable=true)
* @CustomAnnotation("Budget facturation Développement")
*/
private $budgetExploitation;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Stade de construction")
*/
private $stadeConstruction;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Stade de construction update date")
*/
private $stadeConstructionDate;
/**
* @ORM\OneToMany(targetEntity="CommentProject2",mappedBy="project", cascade={"persist"})
* @ORM\OrderBy({"id" = "DESC"})
*/
private $commentProject2;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updateAtClavus;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $compteurErpiNbr;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $compteurErpiAnnee;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isImportCode;
/**
* @ORM\ManyToOne(targetEntity="Entreprise", cascade={"persist"})
* @ORM\JoinColumn(name="entreprise_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Entreprise")
*/
private $entreprise;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $schemaConstruction;
/**
* @ORM\Column(type="string", length=255, nullable=true)
* @CustomAnnotation("Statut Construction")
*/
private $statusTrackerActuelConstruction;
/**
* @ORM\OneToMany(targetEntity="App\Entity\StatusTrackerConstruction",mappedBy="project", cascade={"persist"})
*/
private $statusTrackerConstruction;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isNotifDateMESPrevisionnelle;
/**
* @ORM\ManyToMany(targetEntity="SousFamilleProject", cascade={"persist"})
* @ORM\JoinColumn(name="sous_famille_project_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Sous Famille du projet")
*/
private $sousFamilleProject;
/**
* @ORM\ManyToMany(targetEntity="ZonagePlu", cascade={"persist"})
* @ORM\JoinColumn(name="zonage_plu_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Zonage plu")
*/
private $zonagePlu;
/**
* @ORM\Column(type="float", nullable=true)
* @CustomAnnotation("Surface disponible")
*/
private $surfaceDisponible;
/**
* @ORM\Column(type="float", nullable=true)
* @CustomAnnotation("Surface exploitable")
*/
private $surfaceExploitable;
/**
* @ORM\Column(type="integer",nullable=true)
* @CustomAnnotation("Achat location")
*/
private $achatLocation;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isPromesseAchatSignee;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("prix achat Foncier")
*/
private $prixAchatFoncier;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("unité achat Foncier")
*/
private $uniteAchatFoncier;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Indemnité transitoire (k€/an)")
*/
private $indemiteTransitoire;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Rémunération exploitant agricole")
*/
private $remunerationExploitantAgricole;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Tri")
*/
private $tri;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Tri avec Prime")
*/
private $triPrime;
/**
* @ORM\ManyToOne(targetEntity="Sourcing", cascade={"persist"})
* @ORM\JoinColumn(name="sourcing_id", referencedColumnName="id",nullable=true)
* @CustomAnnotation("Sourcing")
*/
private $sourcing;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date de sourcing")
*/
private $dateSourcing;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Durée d'exploitation")
*/
private $dureeExploitation;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("TRI CRE min")
*/
private $triCreMin;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("TRI PPA min")
*/
private $triPpaMin;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Rendement EBE/CAPEX.")
*/
private $rendementEbeCapex;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Ratio CAPEX/PUISSANCE")
*/
private $ratioCapexPuissance;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date PDB")
*/
private $dateExpirationPromesseBail;
/**
* @ORM\Column(type="integer", nullable=true)
* @CustomAnnotation("Durée de validité ")
*/
private $d1;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Rendement EBE/CAPEX PPA 70 Euros")
*/
private $rendementEbeCapexPPA;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Ranking")
*/
private $ranking;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Dépôt PC")
*/
private $dateDepotPc;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Obtention PC")
*/
private $dateObtentionPc;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Retour pré-cadrage")
*/
private $dateRetourPreCadrage;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Examen au cas par cas")
*/
private $dateExamenCasParCas;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Pole ENR")
*/
private $datePoleEnr;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Retour Inventaire Faune Flore")
*/
private $dateRetourInventaireFauneFlore;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Changement PLU")
*/
private $dateChangementPlu;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Avis MRAE")
*/
private $dateAvisMrae;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date CDPENAF")
*/
private $dateCdpenaf;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date Enquête publique")
*/
private $dateEnquetePublique;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $pointsForts;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $pointsFaibles;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date RTB tarifié")
*/
private $dateRTBtarifie;
/**
* @ORM\OneToMany(targetEntity="ResponcableFoncierPorject",mappedBy="project", cascade={"persist"})
*/
private $responsableFoncierUser;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Choix développeur")
*/
private $choixDev;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Prix d’achat foncier (k€/MWc)")
*/
private $prixAchatFoncierKMWc;
/**
* @ORM\Column(type="text", length=255, nullable=true)
* @CustomAnnotation("Prix d’achat foncier (k€/ha)")
*/
private $prixAchatFoncierKHa;
/**
* @ORM\Column(type="datetime", nullable=true)
* @CustomAnnotation("Date d’abandon")
*/
private $dateAbandon;
/**
* @ORM\OneToMany(targetEntity=CommentEquipementProjet::class, mappedBy="projet")
*/
private $commentEquipementProjets;
/**
* @ORM\Column(type="string", length=100, nullable=true)
*/
private $uniteMesure;
/**
* @ORM\Column(type="text", length=100, nullable=true)
* @CustomAnnotation("Statut administratif engagement")
*/
private $statusAdministratifEngagement;
public function __construct()
{
$this->createdAt = new \DateTime();
$this->token = md5(uniqid());
$this->fileDocCompementaire = new ArrayCollection();
$this->statusTracker = new ArrayCollection();
$this->intervenantUser = new ArrayCollection();
$this->responsableUser = new ArrayCollection();
$this->constructeurUser = new ArrayCollection();
$this->commentProject2 = new ArrayCollection();
$this->fournisseurProject = new ArrayCollection();
$this->responsableDeveloppement = new ArrayCollection();
$this->statusTrackerConstruction = new ArrayCollection();
$this->imagesProject = new ArrayCollection();
$this->sousFamilleProject = new ArrayCollection();
$this->zonagePlu = new ArrayCollection();
$this->responsableFoncierUser = new ArrayCollection();
$this->commentEquipementProjets = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getName(): ?string
{
return $this->name;
}
public function setName(string $name): self
{
$this->name = $name;
return $this;
}
public function getAdresse(): ?string
{
return $this->adresse;
}
public function setAdresse(?string $adresse): self
{
$this->adresse = $adresse;
return $this;
}
public function getCity(): ?string
{
return $this->city;
}
public function setCity(?string $city): self
{
$this->city = $city;
return $this;
}
public function getCodePostal(): ?string
{
return $this->codePostal;
}
public function setCodePostal(?string $codePostal): self
{
$this->codePostal = $codePostal;
return $this;
}
public function getLat(): ?string
{
return $this->lat;
}
public function setLat(?string $lat): self
{
$this->lat = $lat;
return $this;
}
public function getLongi(): ?string
{
return $this->longi;
}
public function setLongi(?string $longi): self
{
$this->longi = $longi;
return $this;
}
public function getNumParcelle(): ?string
{
return $this->numParcelle;
}
public function setNumParcelle(?string $numParcelle): self
{
$this->numParcelle = $numParcelle;
return $this;
}
public function getDateArretePc(): ?\DateTimeInterface
{
return $this->dateArretePc;
}
public function setDateArretePc(?\DateTimeInterface $dateArretePc): self
{
$this->dateArretePc = $dateArretePc;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->createdAt;
}
public function setCreatedAt(?\DateTimeInterface $createdAt): self
{
$this->createdAt = $createdAt;
return $this;
}
public function getToken(): ?string
{
return $this->token;
}
public function setToken(?string $token): self
{
$this->token = $token;
return $this;
}
public function getStatus(): ?string
{
return $this->status;
}
public function setStatus(?string $status): self
{
$this->status = $status;
return $this;
}
public function getCommentRefuse(): ?string
{
return $this->commentRefuse;
}
public function setCommentRefuse(?string $commentRefuse): self
{
$this->commentRefuse = $commentRefuse;
return $this;
}
public function getRefuseAt(): ?\DateTimeInterface
{
return $this->refuseAt;
}
public function setRefuseAt(?\DateTimeInterface $refuseAt): self
{
$this->refuseAt = $refuseAt;
return $this;
}
public function getValideAt(): ?\DateTimeInterface
{
return $this->valideAt;
}
public function setValideAt(?\DateTimeInterface $valideAt): self
{
$this->valideAt = $valideAt;
return $this;
}
public function getTypeProblemeDemande(): ?string
{
return $this->typeProblemeDemande;
}
public function setTypeProblemeDemande(?string $typeProblemeDemande): self
{
$this->typeProblemeDemande = $typeProblemeDemande;
return $this;
}
public function getCommentDemande(): ?string
{
return $this->commentDemande;
}
public function setCommentDemande(?string $commentDemande): self
{
$this->commentDemande = $commentDemande;
return $this;
}
public function getFamilleProject(): ?FamilleProject
{
return $this->familleProject;
}
public function setFamilleProject(?FamilleProject $familleProject): self
{
$this->familleProject = $familleProject;
return $this;
}
public function getTypologieProject(): ?TypologieProject
{
return $this->typologieProject;
}
public function setTypologieProject(?TypologieProject $typologieProject): self
{
$this->typologieProject = $typologieProject;
return $this;
}
public function getTypeBatimentProject(): ?TypeBatimentProject
{
return $this->typeBatimentProject;
}
public function setTypeBatimentProject(?TypeBatimentProject $typeBatimentProject): self
{
$this->typeBatimentProject = $typeBatimentProject;
return $this;
}
public function getSpv(): ?Spv
{
return $this->spv;
}
public function setSpv(?Spv $spv): self
{
$this->spv = $spv;
return $this;
}
public function getDeveloppeur(): ?User
{
return $this->developpeur;
}
public function setDeveloppeur(?User $developpeur): self
{
$this->developpeur = $developpeur;
return $this;
}
public function getEpc(): ?User
{
return $this->epc;
}
public function setEpc(?User $epc): self
{
$this->epc = $epc;
return $this;
}
public function getAdmin(): ?User
{
return $this->admin;
}
public function setAdmin(?User $admin): self
{
$this->admin = $admin;
return $this;
}
public function getIsArchived(): ?bool
{
return $this->isArchived;
}
public function setIsArchived(?bool $isArchived): self
{
$this->isArchived = $isArchived;
return $this;
}
public function getFileEtudeProductible(): ?DocUpload
{
return $this->fileEtudeProductible;
}
public function setFileEtudeProductible(?DocUpload $fileEtudeProductible): self
{
$this->fileEtudeProductible = $fileEtudeProductible;
return $this;
}
public function getNumEtapEncours(): ?string
{
return $this->numEtapEncours;
}
public function setNumEtapEncours(?string $numEtapEncours): self
{
$this->numEtapEncours = $numEtapEncours;
return $this;
}
public function getUserCreated(): ?User
{
return $this->userCreated;
}
public function setUserCreated(?User $userCreated): self
{
$this->userCreated = $userCreated;
return $this;
}
public function getIsEnabled(): ?bool
{
return $this->isEnabled;
}
public function setIsEnabled(?bool $isEnabled): self
{
$this->isEnabled = $isEnabled;
return $this;
}
public function getIsOpenCat1(): ?bool
{
return $this->isOpenCat1;
}
public function setIsOpenCat1(?bool $isOpenCat1): self
{
$this->isOpenCat1 = $isOpenCat1;
return $this;
}
public function getIsOpenCat2(): ?bool
{
return $this->isOpenCat2;
}
public function setIsOpenCat2(?bool $isOpenCat2): self
{
$this->isOpenCat2 = $isOpenCat2;
return $this;
}
public function getIsOpenCat3(): ?bool
{
return $this->isOpenCat3;
}
public function setIsOpenCat3(?bool $isOpenCat3): self
{
$this->isOpenCat3 = $isOpenCat3;
return $this;
}
public function getIsOpenCat4(): ?bool
{
return $this->isOpenCat4;
}
public function getTarifVise(): ?int
{
return $this->tarifVise;
}
public function setTarifVise(?int $tarifVise): self
{
$this->tarifVise = $tarifVise;
return $this;
}
public function getLoyerVise(): ?int
{
return $this->loyerVise;
}
public function setLoyerVise(?int $loyerVise): self
{
$this->loyerVise = $loyerVise;
return $this;
}
public function getSoulteVise(): ?int
{
return $this->soulteVise;
}
public function setSoulteVise(?int $soulteVise): self
{
$this->soulteVise = $soulteVise;
return $this;
}
public function getIsDemandeModif(): ?bool
{
return $this->isDemandeModif;
}
public function setIsDemandeModif(?bool $isDemandeModif): self
{
$this->isDemandeModif = $isDemandeModif;
return $this;
}
public function getUserDemandeModif(): ?User
{
return $this->userDemandeModif;
}
public function setUserDemandeModif(?User $userDemandeModif): self
{
$this->userDemandeModif = $userDemandeModif;
return $this;
}
public function getFilePromessebail(): ?DocUpload
{
return $this->filePromessebail;
}
public function setFilePromessebail(?DocUpload $filePromessebail): self
{
$this->filePromessebail = $filePromessebail;
return $this;
}
public function getDateT0Annee(): ?string
{
return $this->dateT0Annee;
}
public function setDateT0Annee(?string $dateT0Annee): self
{
$this->dateT0Annee = $dateT0Annee;
return $this;
}
public function getDateT0Semestere(): ?string
{
return $this->dateT0Semestere;
}
public function setDateT0Semestere(?string $dateT0Semestere): self
{
$this->dateT0Semestere = $dateT0Semestere;
return $this;
}
/**
* @return Collection|DocUpload[]
*/
public function getFileDocCompementaire(): Collection
{
return $this->fileDocCompementaire;
}
public function addFileDocCompementaire(DocUpload $fileDocCompementaire): self
{
if (!$this->fileDocCompementaire->contains($fileDocCompementaire)) {
$this->fileDocCompementaire[] = $fileDocCompementaire;
}
return $this;
}
public function removeFileDocCompementaire(DocUpload $fileDocCompementaire): self
{
$this->fileDocCompementaire->removeElement($fileDocCompementaire);
return $this;
}
public function getArchiveAt(): ?\DateTimeInterface
{
return $this->archiveAt;
}
public function setArchiveAt(?\DateTimeInterface $archiveAt): self
{
$this->archiveAt = $archiveAt;
return $this;
}
public function getCommentArchive(): ?string
{
return $this->commentArchive;
}
public function setCommentArchive(?string $commentArchive): self
{
$this->commentArchive = $commentArchive;
return $this;
}
public function getIsPromesseBailSignee(): ?bool
{
return $this->isPromesseBailSignee;
}
public function setIsPromesseBailSignee(?bool $isPromesseBailSignee): self
{
$this->isPromesseBailSignee = $isPromesseBailSignee;
return $this;
}
public function getIsArretePcNonRecu(): ?bool
{
return $this->isArretePcNonRecu;
}
public function setIsArretePcNonRecu(?bool $isArretePcNonRecu): self
{
$this->isArretePcNonRecu = $isArretePcNonRecu;
return $this;
}
public function getMiseEnplaceMonitoring(): ?string
{
return $this->miseEnplaceMonitoring;
}
public function setMiseEnplaceMonitoring(?string $miseEnplaceMonitoring): self
{
$this->miseEnplaceMonitoring = $miseEnplaceMonitoring;
return $this;
}
public function getDateMiseEnService(): ?\DateTimeInterface
{
return $this->dateMiseEnService;
}
public function setDateMiseEnService(?\DateTimeInterface $dateMiseEnService): self
{
$this->dateMiseEnService = $dateMiseEnService;
return $this;
}
public function getStatusAdministratif(): ?string
{
return $this->statusAdministratif;
}
public function setStatusAdministratif(?string $statusAdministratif): self
{
$this->statusAdministratif = $statusAdministratif;
return $this;
}
public function getStatusAdministratifNum(){
if($this->statusAdministratif == Project::STATUS_CUSTOM_DEVELOPPEMENT){
return 'Développement' ;
}elseif($this->statusAdministratif == Project::STATUS_CUSTOM_CONSTRUCTION){
return 'Construction' ;
}elseif ($this->statusAdministratif == Project::STATUS_CUSTOM_EXPLOITATION){
return 'Exploitation' ;
}else {
return '';
}
}
public function getImageProject(): ?DocUpload
{
return $this->imageProject;
}
public function setImageProject(?DocUpload $imageProject): self
{
$this->imageProject = $imageProject;
return $this;
}
public function __clone() {
if ($this->id) {
if($this->fileEtudeProductible){
$fileEtudeProductibleNew = clone $this->getFileEtudeProductible();
$this->setFileEtudeProductible($fileEtudeProductibleNew);
}
if($this->filePromessebail){
$filePromessebailNew = clone $this->getFilePromessebail();
$this->setFilePromessebail($filePromessebailNew);
}
$fileDocCompementaireArray = $this->getFileDocCompementaire();
$this->fileDocCompementaire = new ArrayCollection();
if (!$fileDocCompementaireArray->isEmpty()) {
foreach ($fileDocCompementaireArray as $item) {
$val = clone $item;
$this->addFileDocCompementaire($val);
}
}
if($this->imageProject){
$fileImageProjectNew = clone $this->getImageProject();
$this->setImageProject($fileImageProjectNew);
}
}
}
public function getIsNewConstruction(): ?bool
{
return $this->isNewConstruction;
}
public function setIsNewConstruction(?bool $isNewConstruction): self
{
$this->isNewConstruction = $isNewConstruction;
return $this;
}
public function getDateT0NonRecu(): ?bool
{
return $this->dateT0NonRecu;
}
public function setDateT0NonRecu(?bool $dateT0NonRecu): self
{
$this->dateT0NonRecu = $dateT0NonRecu;
return $this;
}
public function getDateT0Date(): ?\DateTimeInterface
{
return $this->dateT0Date;
}
public function setDateT0Date(?\DateTimeInterface $dateT0Date): self
{
$this->dateT0Date = $dateT0Date;
return $this;
}
public function getTarifRevente(): ?string
{
return $this->tarifRevente;
}
public function setTarifRevente(?string $tarifRevente): self
{
$this->tarifRevente = $tarifRevente;
return $this;
}
public function getStatusTrackerActuel(): ?string
{
return $this->statusTrackerActuel;
}
public function setStatusTrackerActuel(?string $statusTrackerActuel): self
{
$this->statusTrackerActuel = $statusTrackerActuel;
return $this;
}
public function getStatusTrackerStr(){
if($this->statusTrackerActuel == StatusTracker::STATUS_dev_0){
return 'Dev. 0 (Under instruction)' ;
}elseif($this->statusTrackerActuel == StatusTracker::STATUS_dev_1){
return 'Dev. 1 (PC accepted)' ;
}elseif ($this->statusTrackerActuel == StatusTracker::STATUS_dev_2){
return 'Dev. 2 (Grid connection agreement received)' ;
}elseif ($this->statusTrackerActuel == StatusTracker::STATUS_dev_3){
return 'Dev. 3 (full permissions RtB)' ;
}elseif ($this->statusTrackerActuel == StatusTracker::STATUS_dev_4){
return 'Dev. 4 (Erection EPC lauched)' ;
}elseif ($this->statusTrackerActuel == StatusTracker::STATUS_dev_5){
return 'Dev. 5 (Construction complete)' ;
}elseif ($this->statusTrackerActuel == StatusTracker::STATUS_dev_6){
return 'Dev. 6 (Commissioned)' ;
}elseif ($this->statusTrackerActuel == StatusTracker::STATUS_operating){
return 'Operating' ;
}else {
return '';
}
}
/**
* @return Collection|StatusTracker[]
*/
public function getStatusTracker(): Collection
{
return $this->statusTracker;
}
public function addStatusTracker(StatusTracker $statusTracker): self
{
if (!$this->statusTracker->contains($statusTracker)) {
$this->statusTracker[] = $statusTracker;
$statusTracker->setProject($this);
}
return $this;
}
public function removeStatusTracker(StatusTracker $statusTracker): self
{
if ($this->statusTracker->removeElement($statusTracker)) {
// set the owning side to null (unless already changed)
if ($statusTracker->getProject() === $this) {
$statusTracker->setProject(null);
}
}
return $this;
}
public function getFournisseur(): ?Fournisseur
{
return $this->fournisseur;
}
public function setFournisseur(?Fournisseur $fournisseur): self
{
$this->fournisseur = $fournisseur;
return $this;
}
/**
* @return Collection|IntervenantProject[]
*/
public function getIntervenantUser(): Collection
{
return $this->intervenantUser;
}
public function addIntervenantUser(IntervenantProject $intervenantUser): self
{
if (!$this->intervenantUser->contains($intervenantUser)) {
$this->intervenantUser[] = $intervenantUser;
$intervenantUser->setProject($this);
}
return $this;
}
public function removeIntervenantUser(IntervenantProject $intervenantUser): self
{
if ($this->intervenantUser->removeElement($intervenantUser)) {
// set the owning side to null (unless already changed)
if ($intervenantUser->getProject() === $this) {
$intervenantUser->setProject(null);
}
}
return $this;
}
public function getResponsable(): ?User
{
return $this->responsable;
}
public function setResponsable(?User $responsable): self
{
$this->responsable = $responsable;
return $this;
}
/**
* @return Collection|ResponcablePorject[]
*/
public function getResponsableUser(): Collection
{
return $this->responsableUser;
}
public function addResponsableUser(ResponcablePorject $responsableUser): self
{
if (!$this->responsableUser->contains($responsableUser)) {
$this->responsableUser[] = $responsableUser;
$responsableUser->setProject($this);
}
return $this;
}
public function removeResponsableUser(ResponcablePorject $responsableUser): self
{
if ($this->responsableUser->removeElement($responsableUser)) {
// set the owning side to null (unless already changed)
if ($responsableUser->getProject() === $this) {
$responsableUser->setProject(null);
}
}
return $this;
}
public function getBudgetDeveloppement(): ?float
{
return $this->budgetDeveloppement;
}
public function setBudgetDeveloppement(?float $budgetDeveloppement): self
{
$this->budgetDeveloppement = $budgetDeveloppement;
return $this;
}
public function getBudgetConstruction(): ?float
{
return $this->budgetConstruction;
}
public function setBudgetConstruction(?float $budgetConstruction): self
{
$this->budgetConstruction = $budgetConstruction;
return $this;
}
public function getBudgetExploitation(): ?float
{
return $this->budgetExploitation;
}
public function setBudgetExploitation(?float $budgetExploitation): self
{
$this->budgetExploitation = $budgetExploitation;
return $this;
}
public function getStadeConstruction(): ?string
{
if($this->stadeConstruction == 'Devis reçus' or $this->stadeConstruction == 'Attente validation budget/Capex' ){
return 'Attente devis';
}elseif ($this->stadeConstruction == 'Budget/Capex validé' or $this->stadeConstruction == 'Contrat de construction signé' or $this->stadeConstruction == 'Ordre de démarrage envoyé' or $this->stadeConstruction == 'Travaux réceptionnés'){
return 'Attente devis';
}else{
return $this->stadeConstruction;
}
}
public function setStadeConstruction(?string $stadeConstruction): self
{
$this->stadeConstruction = $stadeConstruction;
return $this;
}
/**
* @return Collection|ConstructeurProject[]
*/
public function getConstructeurUser(): Collection
{
return $this->constructeurUser;
}
public function addConstructeurUser(ConstructeurProject $constructeurUser): self
{
if (!$this->constructeurUser->contains($constructeurUser)) {
$this->constructeurUser[] = $constructeurUser;
$constructeurUser->setProject($this);
}
return $this;
}
public function removeConstructeurUser(ConstructeurProject $constructeurUser): self
{
if ($this->constructeurUser->removeElement($constructeurUser)) {
// set the owning side to null (unless already changed)
if ($constructeurUser->getProject() === $this) {
$constructeurUser->setProject(null);
}
}
return $this;
}
/**
* @return Collection|CommentProject2[]
*/
public function getCommentProject2(): Collection
{
return $this->commentProject2;
}
public function addCommentProject2(CommentProject2 $commentProject2): self
{
if (!$this->commentProject2->contains($commentProject2)) {
$this->commentProject2[] = $commentProject2;
$commentProject2->setProject($this);
}
return $this;
}
public function removeCommentProject2(CommentProject2 $commentProject2): self
{
if ($this->commentProject2->removeElement($commentProject2)) {
// set the owning side to null (unless already changed)
if ($commentProject2->getProject() === $this) {
$commentProject2->setProject(null);
}
}
return $this;
}
/**
* @return Collection|FournisseurProject[]
*/
public function getFournisseurProject(): Collection
{
return $this->fournisseurProject;
}
public function addFournisseurProject(FournisseurProject $fournisseurProject): self
{
if (!$this->fournisseurProject->contains($fournisseurProject)) {
$this->fournisseurProject[] = $fournisseurProject;
$fournisseurProject->setProject($this);
}
return $this;
}
public function removeFournisseurProject(FournisseurProject $fournisseurProject): self
{
if ($this->fournisseurProject->removeElement($fournisseurProject)) {
// set the owning side to null (unless already changed)
if ($fournisseurProject->getProject() === $this) {
$fournisseurProject->setProject(null);
}
}
return $this;
}
/**
* @return Collection|ResponsableDeveloppement[]
*/
public function getResponsableDeveloppement(): Collection
{
return $this->responsableDeveloppement;
}
public function addResponsableDeveloppement(ResponsableDeveloppement $responsableDeveloppement): self
{
if (!$this->responsableDeveloppement->contains($responsableDeveloppement)) {
$this->responsableDeveloppement[] = $responsableDeveloppement;
$responsableDeveloppement->setProject($this);
}
return $this;
}
public function removeResponsableDeveloppement(ResponsableDeveloppement $responsableDeveloppement): self
{
if ($this->responsableDeveloppement->removeElement($responsableDeveloppement)) {
// set the owning side to null (unless already changed)
if ($responsableDeveloppement->getProject() === $this) {
$responsableDeveloppement->setProject(null);
}
}
return $this;
}
public function getStadeConstructionDate(): ?\DateTimeInterface
{
return $this->stadeConstructionDate;
}
public function setStadeConstructionDate(?\DateTimeInterface $stadeConstructionDate): self
{
$this->stadeConstructionDate = $stadeConstructionDate;
return $this;
}
public function getContrat(): ?string
{
return $this->contrat;
}
public function setContrat(?string $contrat): self
{
$this->contrat = $contrat;
return $this;
}
public function getTranche(): ?string
{
return $this->tranche;
}
public function setTranche(?string $tranche): self
{
$this->tranche = $tranche;
return $this;
}
public function getUpdateAtClavus(): ?\DateTimeInterface
{
return $this->updateAtClavus;
}
public function setUpdateAtClavus(?\DateTimeInterface $updateAtClavus): self
{
$this->updateAtClavus = $updateAtClavus;
return $this;
}
public function getCodeProject(): ?string
{
return $this->codeProject;
}
public function setCodeProject(?string $codeProject): self
{
$this->codeProject = $codeProject;
return $this;
}
public function getCompteurErpi(): ?string
{
return $this->compteurErpi;
}
public function setCompteurErpi(?string $compteurErpi): self
{
$this->compteurErpi = $compteurErpi;
return $this;
}
public function getCompteurErpiNbr(): ?int
{
return $this->compteurErpiNbr;
}
public function setCompteurErpiNbr(?int $compteurErpiNbr): self
{
$this->compteurErpiNbr = $compteurErpiNbr;
return $this;
}
public function getCompteurErpiAnnee(): ?string
{
return $this->compteurErpiAnnee;
}
public function setCompteurErpiAnnee(?string $compteurErpiAnnee): self
{
$this->compteurErpiAnnee = $compteurErpiAnnee;
return $this;
}
public function getIsImportCode(): ?bool
{
return $this->isImportCode;
}
public function setIsImportCode(?bool $isImportCode): self
{
$this->isImportCode = $isImportCode;
return $this;
}
public function getEntreprise(): ?Entreprise
{
return $this->entreprise;
}
public function setEntreprise(?Entreprise $entreprise): self
{
$this->entreprise = $entreprise;
return $this;
}
public function getSchemaConstruction(): ?string
{
return $this->schemaConstruction;
}
public function setSchemaConstruction(?string $schemaConstruction): self
{
$this->schemaConstruction = $schemaConstruction;
return $this;
}
public function getStatusTrackerActuelConstruction(): ?string
{
return $this->statusTrackerActuelConstruction;
}
public function setStatusTrackerActuelConstruction(?string $statusTrackerActuelConstruction): self
{
$this->statusTrackerActuelConstruction = $statusTrackerActuelConstruction;
return $this;
}
/**
* @return Collection|StatusTrackerConstruction[]
*/
public function getStatusTrackerConstruction(): Collection
{
return $this->statusTrackerConstruction;
}
public function addStatusTrackerConstruction(StatusTrackerConstruction $statusTrackerConstruction): self
{
if (!$this->statusTrackerConstruction->contains($statusTrackerConstruction)) {
$this->statusTrackerConstruction[] = $statusTrackerConstruction;
$statusTrackerConstruction->setProject($this);
}
return $this;
}
public function removeStatusTrackerConstruction(StatusTrackerConstruction $statusTrackerConstruction): self
{
if ($this->statusTrackerConstruction->removeElement($statusTrackerConstruction)) {
// set the owning side to null (unless already changed)
if ($statusTrackerConstruction->getProject() === $this) {
$statusTrackerConstruction->setProject(null);
}
}
return $this;
}
public function getStatusTrackerConstructionStr(){
if($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Go_Consultation){
return 'Go consultation' ;
}elseif($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Attente_Devis){
return 'Attente devis' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Budget_Capex){
return 'Devis signé' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Contrat_Construction){
return 'Contrat de construction signé' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Order_demarrage_envoye){
return 'Ordre de démarrage envoyé' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Construction_Demarree){
return 'Construction Démarrée' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Construction_Achevee_Non_Raccordable){
return 'Construction Achevée Non Raccordable' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Construction_Achevee_A_Raccorder){
return 'Construction Achevée à Raccorder' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Construction_Achevee_Raccordee){
return 'Construction Achevée Raccordée' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Passage_dre){
return 'DRE Obtenu' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Consuel_obtenu){
return 'Consuel obtenu' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Operating){
return 'Operation' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Billable){
return 'Billable' ;
}elseif ($this->statusTrackerActuelConstruction == StatusTrackerConstruction::Invoiced){
return 'Invoiced' ;
}else {
return '';
}
}
public function getIsNotifDateMESPrevisionnelle(): ?bool
{
return $this->isNotifDateMESPrevisionnelle;
}
public function setIsNotifDateMESPrevisionnelle(?bool $isNotifDateMESPrevisionnelle): self
{
$this->isNotifDateMESPrevisionnelle = $isNotifDateMESPrevisionnelle;
return $this;
}
/**
* @return Collection|DocUpload[]
*/
public function getImagesProject(): Collection
{
return $this->imagesProject;
}
public function addImagesProject(DocUpload $imagesProject): self
{
if (!$this->imagesProject->contains($imagesProject)) {
$this->imagesProject[] = $imagesProject;
}
return $this;
}
public function removeImagesProject(DocUpload $imagesProject): self
{
$this->imagesProject->removeElement($imagesProject);
return $this;
}
public function getSurfaceDisponible(): ?float
{
return $this->surfaceDisponible;
}
public function setSurfaceDisponible(?float $surfaceDisponible): self
{
$this->surfaceDisponible = $surfaceDisponible;
return $this;
}
public function getSurfaceExploitable(): ?float
{
return $this->surfaceExploitable;
}
public function setSurfaceExploitable(?float $surfaceExploitable): self
{
$this->surfaceExploitable = $surfaceExploitable;
return $this;
}
public function getAchatLocation(): ?int
{
return $this->achatLocation;
}
public function setAchatLocation(?int $achatLocation): self
{
$this->achatLocation = $achatLocation;
return $this;
}
public function getIsPromesseAchatSignee(): ?bool
{
return $this->isPromesseAchatSignee;
}
public function setIsPromesseAchatSignee(?bool $isPromesseAchatSignee): self
{
$this->isPromesseAchatSignee = $isPromesseAchatSignee;
return $this;
}
public function getPrixAchatFoncier(): ?string
{
return $this->prixAchatFoncier;
}
public function setPrixAchatFoncier(?string $prixAchatFoncier): self
{
$this->prixAchatFoncier = $prixAchatFoncier;
return $this;
}
public function getUniteAchatFoncier(): ?string
{
return $this->uniteAchatFoncier;
}
public function setUniteAchatFoncier(?string $uniteAchatFoncier): self
{
$this->uniteAchatFoncier = $uniteAchatFoncier;
return $this;
}
public function getIndemiteTransitoire(): ?string
{
return $this->indemiteTransitoire;
}
public function setIndemiteTransitoire(?string $indemiteTransitoire): self
{
$this->indemiteTransitoire = $indemiteTransitoire;
return $this;
}
public function getRemunerationExploitantAgricole(): ?string
{
return $this->remunerationExploitantAgricole;
}
public function setRemunerationExploitantAgricole(?string $remunerationExploitantAgricole): self
{
$this->remunerationExploitantAgricole = $remunerationExploitantAgricole;
return $this;
}
/**
* @return Collection|SousFamilleProject[]
*/
public function getSousFamilleProject(): Collection
{
return $this->sousFamilleProject;
}
public function addSousFamilleProject(SousFamilleProject $sousFamilleProject): self
{
if (!$this->sousFamilleProject->contains($sousFamilleProject)) {
$this->sousFamilleProject[] = $sousFamilleProject;
}
return $this;
}
public function removeSousFamilleProject(SousFamilleProject $sousFamilleProject): self
{
$this->sousFamilleProject->removeElement($sousFamilleProject);
return $this;
}
/**
* @return Collection|ZonagePlu[]
*/
public function getZonagePlu(): Collection
{
return $this->zonagePlu;
}
public function addZonagePlu(ZonagePlu $zonagePlu): self
{
if (!$this->zonagePlu->contains($zonagePlu)) {
$this->zonagePlu[] = $zonagePlu;
}
return $this;
}
public function removeZonagePlu(ZonagePlu $zonagePlu): self
{
$this->zonagePlu->removeElement($zonagePlu);
return $this;
}
public function getTri(): ?string
{
return $this->tri;
}
public function setTri(?string $tri): self
{
$this->tri = $tri;
return $this;
}
public function getTriPrime(): ?string
{
return $this->triPrime;
}
public function setTriPrime(?string $triPrime): self
{
$this->triPrime = $triPrime;
return $this;
}
public function getDateSourcing(): ?\DateTimeInterface
{
return $this->dateSourcing;
}
public function setDateSourcing(?\DateTimeInterface $dateSourcing): self
{
$this->dateSourcing = $dateSourcing;
return $this;
}
public function getTriCreMin(): ?string
{
return $this->triCreMin;
}
public function setTriCreMin(?string $triCreMin): self
{
$this->triCreMin = $triCreMin;
return $this;
}
public function getTriPpaMin(): ?string
{
return $this->triPpaMin;
}
public function setTriPpaMin(?string $triPpaMin): self
{
$this->triPpaMin = $triPpaMin;
return $this;
}
public function getRendementEbeCapex(): ?string
{
return $this->rendementEbeCapex;
}
public function setRendementEbeCapex(?string $rendementEbeCapex): self
{
$this->rendementEbeCapex = $rendementEbeCapex;
return $this;
}
public function getDureeExploitation(): ?string
{
return $this->dureeExploitation;
}
public function setDureeExploitation(?string $dureeExploitation): self
{
$this->dureeExploitation = $dureeExploitation;
return $this;
}
public function getSourcing(): ?Sourcing
{
return $this->sourcing;
}
public function setSourcing(?Sourcing $sourcing): self
{
$this->sourcing = $sourcing;
return $this;
}
public function getRatioCapexPuissance(): ?string
{
return $this->ratioCapexPuissance;
}
public function setRatioCapexPuissance(?string $ratioCapexPuissance): self
{
$this->ratioCapexPuissance = $ratioCapexPuissance;
return $this;
}
public function getDateExpirationPromesseBail(): ?\DateTimeInterface
{
return $this->dateExpirationPromesseBail;
}
public function setDateExpirationPromesseBail(?\DateTimeInterface $dateExpirationPromesseBail): self
{
$this->dateExpirationPromesseBail = $dateExpirationPromesseBail;
return $this;
}
public function getD1(): ?int
{
return $this->d1;
}
public function setD1(?int $d1): self
{
$this->d1 = $d1;
return $this;
}
public function getRendementEbeCapexPPA(): ?string
{
return $this->rendementEbeCapexPPA;
}
public function setRendementEbeCapexPPA(?string $rendementEbeCapexPPA): self
{
$this->rendementEbeCapexPPA = $rendementEbeCapexPPA;
return $this;
}
public function getRanking(): ?string
{
return $this->ranking;
}
public function setRanking(?string $ranking): self
{
$this->ranking = $ranking;
return $this;
}
public function getDateDepotPc(): ?\DateTimeInterface
{
return $this->dateDepotPc;
}
public function setDateDepotPc(?\DateTimeInterface $dateDepotPc): self
{
$this->dateDepotPc = $dateDepotPc;
return $this;
}
/**
* @return Collection|ResponcableFoncierPorject[]
*/
public function getResponsableFoncierUser(): Collection
{
return $this->responsableFoncierUser;
}
public function addResponsableFoncierUser(ResponcableFoncierPorject $responsableFoncierUser): self
{
if (!$this->responsableFoncierUser->contains($responsableFoncierUser)) {
$this->responsableFoncierUser[] = $responsableFoncierUser;
$responsableFoncierUser->setProject($this);
}
return $this;
}
public function removeResponsableFoncierUser(ResponcableFoncierPorject $responsableFoncierUser): self
{
if ($this->responsableFoncierUser->removeElement($responsableFoncierUser)) {
// set the owning side to null (unless already changed)
if ($responsableFoncierUser->getProject() === $this) {
$responsableFoncierUser->setProject(null);
}
}
return $this;
}
public function getDateObtentionPc(): ?\DateTimeInterface
{
return $this->dateObtentionPc;
}
public function setDateObtentionPc(?\DateTimeInterface $dateObtentionPc): self
{
$this->dateObtentionPc = $dateObtentionPc;
return $this;
}
public function getDateRTBtarifie(): ?\DateTimeInterface
{
return $this->dateRTBtarifie;
}
public function setDateRTBtarifie(?\DateTimeInterface $dateRTBtarifie): self
{
$this->dateRTBtarifie = $dateRTBtarifie;
return $this;
}
public function getChoixDev(): ?string
{
return $this->choixDev;
}
public function setChoixDev(?string $choixDev): self
{
$this->choixDev = $choixDev;
return $this;
}
public function getPrixAchatFoncierKMWc(): ?string
{
return $this->prixAchatFoncierKMWc;
}
public function setPrixAchatFoncierKMWc(?string $prixAchatFoncierKMWc): self
{
$this->prixAchatFoncierKMWc = $prixAchatFoncierKMWc;
return $this;
}
public function getPrixAchatFoncierKHa(): ?string
{
return $this->prixAchatFoncierKHa;
}
public function setPrixAchatFoncierKHa(?string $prixAchatFoncierKHa): self
{
$this->prixAchatFoncierKHa = $prixAchatFoncierKHa;
return $this;
}
public function getDateAbandon(): ?\DateTimeInterface
{
return $this->dateAbandon;
}
public function setDateAbandon(?\DateTimeInterface $dateAbandon): self
{
$this->dateAbandon = $dateAbandon;
return $this;
}
public function getDepartement(): ?string
{
return $this->departement;
}
public function setDepartement(?string $departement): self
{
$this->departement = $departement;
return $this;
}
public function getCapacite(): ?float
{
return $this->capacite;
}
public function setCapacite(?float $capacite): self
{
$this->capacite = $capacite;
return $this;
}
public function getProductible(): ?float
{
return $this->productible;
}
public function setProductible(?float $productible): self
{
$this->productible = $productible;
return $this;
}
public function getProductibleP90(): ?float
{
return $this->productibleP90;
}
public function setProductibleP90(?float $productibleP90): self
{
$this->productibleP90 = $productibleP90;
return $this;
}
public function getPuissance(): ?float
{
return $this->puissance;
}
public function setPuissance(?float $puissance): self
{
$this->puissance = $puissance;
return $this;
}
public function setIsOpenCat4(?bool $isOpenCat4): self
{
$this->isOpenCat4 = $isOpenCat4;
return $this;
}
/**
* @return mixed
*/
public function getCommentEquipementProjets()
{
return $this->commentEquipementProjets;
}
public function getUniteMesure(): ?string
{
return $this->uniteMesure;
}
public function setUniteMesure(?string $uniteMesure): self
{
$this->uniteMesure = $uniteMesure;
return $this;
}
public function addCommentEquipementProjet(CommentEquipementProjet $commentEquipementProjet): self
{
if (!$this->commentEquipementProjets->contains($commentEquipementProjet)) {
$this->commentEquipementProjets[] = $commentEquipementProjet;
$commentEquipementProjet->setProjet($this);
}
return $this;
}
public function getDateRetourPreCadrage(): ?\DateTimeInterface
{
return $this->dateRetourPreCadrage;
}
public function setDateRetourPreCadrage(?\DateTimeInterface $dateRetourPreCadrage): self
{
$this->dateRetourPreCadrage = $dateRetourPreCadrage;
return $this;
}
public function removeCommentEquipementProjet(CommentEquipementProjet $commentEquipementProjet): self
{
if ($this->commentEquipementProjets->removeElement($commentEquipementProjet)) {
// set the owning side to null (unless already changed)
if ($commentEquipementProjet->getProjet() === $this) {
$commentEquipementProjet->setProjet(null);
}
}
return $this;
}
public function getStatusAdministratifEngagement(): ?string
{
return $this->statusAdministratifEngagement;
}
public function setStatusAdministratifEngagement(?string $statusAdministratifEngagement): self
{
$this->statusAdministratifEngagement = $statusAdministratifEngagement;
return $this;
}
public function getDateExamenCasParCas(): ?\DateTimeInterface
{
return $this->dateExamenCasParCas;
}
public function setDateExamenCasParCas(?\DateTimeInterface $dateExamenCasParCas): self
{
$this->dateExamenCasParCas = $dateExamenCasParCas;
return $this;
}
public function getDatePoleEnr(): ?\DateTimeInterface
{
return $this->datePoleEnr;
}
public function setDatePoleEnr(?\DateTimeInterface $datePoleEnr): self
{
$this->datePoleEnr = $datePoleEnr;
return $this;
}
public function getDateRetourInventaireFauneFlore(): ?\DateTimeInterface
{
return $this->dateRetourInventaireFauneFlore;
}
public function setDateRetourInventaireFauneFlore(?\DateTimeInterface $dateRetourInventaireFauneFlore): self
{
$this->dateRetourInventaireFauneFlore = $dateRetourInventaireFauneFlore;
return $this;
}
public function getDateChangementPlu(): ?\DateTimeInterface
{
return $this->dateChangementPlu;
}
public function setDateChangementPlu(?\DateTimeInterface $dateChangementPlu): self
{
$this->dateChangementPlu = $dateChangementPlu;
return $this;
}
public function getDateAvisMrae(): ?\DateTimeInterface
{
return $this->dateAvisMrae;
}
public function setDateAvisMrae(?\DateTimeInterface $dateAvisMrae): self
{
$this->dateAvisMrae = $dateAvisMrae;
return $this;
}
public function getDateCdpenaf(): ?\DateTimeInterface
{
return $this->dateCdpenaf;
}
public function setDateCdpenaf(?\DateTimeInterface $dateCdpenaf): self
{
$this->dateCdpenaf = $dateCdpenaf;
return $this;
}
public function getDateEnquetePublique(): ?\DateTimeInterface
{
return $this->dateEnquetePublique;
}
public function setDateEnquetePublique(?\DateTimeInterface $dateEnquetePublique): self
{
$this->dateEnquetePublique = $dateEnquetePublique;
return $this;
}
public function getPointsForts(): ?array
{
return $this->pointsForts;
}
public function setPointsForts(?array $pointsForts): self
{
$this->pointsForts = $pointsForts;
return $this;
}
public function getPointsFaibles(): ?array
{
return $this->pointsFaibles;
}
public function setPointsFaibles(?array $pointsFaibles): self
{
$this->pointsFaibles = $pointsFaibles;
return $this;
}
}