<?php
declare(strict_types=1);
/**
* @author Raymond
*/
namespace App\Entity;
use ReflectionClass;
use InvalidArgumentException;
use App\Repository\ValorisationsRepository;
use Doctrine\ORM\Mapping as ORM;
use App\Helper\DateProvider;
use App\Helper\Utils;
/**
* @ORM\Entity(repositoryClass="App\Repository\ValorisationsRepository")
* @ORM\Table(name="valorisations")
*/
class Valorisations {
const MODE = ['demande_publication', 'incomplet', 'publique', 'specimen', 'supprime'];
const CEDANT_EST = [
"personne" => "Une personne physique vendant sa société",
"societe" => "Une société vendant une filiale ou un actelseif"
];
const PRIX_VENTE_DEFINITIF = [
"inferieur" => "Inférieur à la valorisation initiale proposée",
"egal" => "En phase avec la valorisation initiale proposée",
"superieur" => "Supérieur à la valorisation initiale proposée"
];
const COMISSION_INTERMEDIAIRE_PAYEE = [
"acheteur" => "L'acheteur",
"vendeur" => "Le vendeur",
"les2" => "Les deux",
"sanscommission" => "Pas de commission"
];
const REPRENEUR_EST = [
"personne" => "Une personne physique",
"societe" => "Une personne morale/société",
"fonds_investissement" => "Un fonds d'investissement"
];
const TYPE_RACHAT = [
"fonds" => "le fonds de commerce",
"titres" => "les titres de la société"
];
const RETRAITEMENT_DES_COMPTES = [
"oui" => "Oui",
"non" => "Non"
];
const REPRENEUR_DU_MEME_SECTEUR = [
"oui" => "Le repreneur connaissait le métier",
"non" => "Le repreneur vient d'un autre secteur d'activité"
];
/**
* @var int @ORM\Id
* @ORM\Column(type="integer",name="id_valorisation")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id_valorisation;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="id_annonce_vendeur", options={"default"= null})
*/
protected $id_annonce_vendeur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="id_secteur_activite", options={"default"= null})
*/
protected $id_secteur_activite;
/**
* @var string @ORM\Column(type="string", nullable=true, name="login_deposant", options={"default"= null})
*/
protected $login_deposant;
/**
* @var string @ORM\Column(type="string", nullable=true, name="mode", options={"default"= null})
*/
protected $mode;
/**
* @var string @ORM\Column(type="string", nullable=true, name="date_modification", options={"default"= null})
*/
protected $date_modification;
/**
* @var string @ORM\Column(type="string", nullable=true, name="date_mise_en_ligne", options={"default"= null})
*/
protected $date_mise_en_ligne;
/**
* @var string @ORM\Column(type="string", nullable=true, name="deja_publique", options={"default"= null})
*/
protected $deja_publique;
/**
* @var string @ORM\Column(type="string", nullable=true, name="numero_siret", options={"default"= null})
*/
protected $numero_siret;
/**
* @var string @ORM\Column(type="string", nullable=true, name="numero_siren", options={"default"= null})
*/
protected $numero_siren;
/**
* @var string @ORM\Column(type="string", nullable=true, name="date_creation_societe", options={"default"= null})
*/
protected $date_creation_societe;
/**
* @var string @ORM\Column(type="string", nullable=true, name="id_pays", options={"default"= null})
*/
protected $id_pays;
/**
* @var string @ORM\Column(type="string", nullable=true, name="id_region", options={"default"= null})
*/
protected $id_region;
/**
* @var string @ORM\Column(type="string", nullable=true, name="id_departement", options={"default"= null})
*/
protected $id_departement;
/**
* @var string @ORM\Column(type="text", nullable=true, name="description_activite", options={"default"= null})
*/
protected $description_activite;
/**
* @var string @ORM\Column(type="string", nullable=true, name="redressement_judiciaire", options={"default"="non"})
*/
protected $redressement_judiciaire;
/**
* @var string @ORM\Column(type="string", nullable=true, name="societe_difficulte", options={"default"="non"})
*/
protected $societe_difficulte;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="id_raison_cession", options={"default"= null})
*/
protected $id_raison_cession;
/**
* @var string @ORM\Column(type="string", nullable=true, name="type_cedant", options={"default"= null})
*/
protected $type_cedant;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="age_cedant", options={"default"= null})
*/
protected $age_cedant;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="annee_n", options={"default"= null})
*/
protected $annee_n;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_n", options={"default"= null})
*/
protected $ca_n;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_n", options={"default"= null})
*/
protected $marge_brute_n;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_exploitation_n", options={"default"= null})
*/
protected $resultat_exploitation_n;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_net_n", options={"default"= null})
*/
protected $resultat_net_n;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_n", options={"default"= null})
*/
protected $nb_personnes_n;
/**
* @var string @ORM\Column(type="string", nullable=true, name="retraitement_des_comptes", options={"default"= null})
*/
protected $retraitement_des_comptes;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_retraitement_des_comptes", options={"default"= null})
*/
protected $complement_retraitement_des_comptes;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="ca_nmoinsdeux", options={"default"= null})
*/
protected $ca_nmoinsdeux;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_nmoinsdeux", options={"default"= null})
*/
protected $marge_brute_nmoinsdeux;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_exploitation_nmoinsdeux", options={"default"= null})
*/
protected $resultat_exploitation_nmoinsdeux;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_net_nmoinsdeux", options={"default"= null})
*/
protected $resultat_net_nmoinsdeux;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_nmoinsdeux", options={"default"= null})
*/
protected $nb_personnes_nmoinsdeux;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_nmoinsun", options={"default"= null})
*/
protected $ca_nmoinsun;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_nmoinsun", options={"default"= null})
*/
protected $marge_brute_nmoinsun;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_exploitation_nmoinsun", options={"default"= null})
*/
protected $resultat_exploitation_nmoinsun;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_net_nmoinsun", options={"default"= null})
*/
protected $resultat_net_nmoinsun;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_nmoinsun", options={"default"= null})
*/
protected $nb_personnes_nmoinsun;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="fonds_propres", options={"default"= null})
*/
protected $fonds_propres;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="endettement_net_n", options={"default"= null})
*/
protected $endettement_net_n;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="dettes_financieres", options={"default"= null})
*/
protected $dettes_financieres;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="tresorerie_disponible", options={"default"= null})
*/
protected $tresorerie_disponible;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="participation_salaries", options={"default"= null})
*/
protected $participation_salaries;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_retraite", options={"default"= null})
*/
protected $ca_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_retraite", options={"default"= null})
*/
protected $marge_brute_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_exploitation_retraite", options={"default"= null})
*/
protected $resultat_exploitation_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_net_retraite", options={"default"= null})
*/
protected $resultat_net_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="fonds_propres_retraite", options={"default"= null})
*/
protected $fonds_propres_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="endettement_net_retraite", options={"default"= null})
*/
protected $endettement_net_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="dettes_financieres_retraite", options={"default"= null})
*/
protected $dettes_financieres_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="tresorerie_disponible_retraite", options={"default"= null})
*/
protected $tresorerie_disponible_retraite;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="participation_salaries_retraite", options={"default"= null})
*/
protected $participation_salaries_retraite;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_retraite", options={"default"= null})
*/
protected $nb_personnes_retraite;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_n_affichage", options={"default"= null})
*/
protected $ca_n_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_n_affichage", options={"default"= null})
*/
protected $marge_brute_n_affichage;
/**
* @var string @ORM\Column(type="decimal", nullable=true, name="resultat_exploitation_n_affichage", options={"default"= null})
*/
protected $resultat_exploitation_n_affichage;
/**
* @var string @ORM\Column(type="decimal", nullable=true, name="resultat_net_n_affichage", options={"default"= null})
*/
protected $resultat_net_n_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_n_affichage", options={"default"= null})
*/
protected $nb_personnes_n_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_nmoinsdeux_affichage", options={"default"= null})
*/
protected $ca_nmoinsdeux_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_nmoinsdeux_affichage", options={"default"= null})
*/
protected $marge_brute_nmoinsdeux_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_exploitation_nmoinsdeux_affichage", options={"default"= null})
*/
protected $resultat_exploitation_nmoinsdeux_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_net_nmoinsdeux_affichage", options={"default"= null})
*/
protected $resultat_net_nmoinsdeux_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_nmoinsdeux_affichage", options={"default"= null})
*/
protected $nb_personnes_nmoinsdeux_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_nmoinsun_affichage", options={"default"= null})
*/
protected $ca_nmoinsun_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_nmoinsun_affichage", options={"default"= null})
*/
protected $marge_brute_nmoinsun_affichage;
/**
* @var string @ORM\Column(type="decimal", nullable=true, name="resultat_exploitation_nmoinsun_affichage", options={"default"= null})
*/
protected $resultat_exploitation_nmoinsun_affichage;
/**
* @var string @ORM\Column(type="decimal", nullable=true, name="resultat_net_nmoinsun_affichage", options={"default"= null})
*/
protected $resultat_net_nmoinsun_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_nmoinsun_affichage", options={"default"= null})
*/
protected $nb_personnes_nmoinsun_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="fonds_propres_affichage", options={"default"= null})
*/
protected $fonds_propres_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="endettement_net_n_affichage", options={"default"= null})
*/
protected $endettement_net_n_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="dettes_financieres_affichage", options={"default"= null})
*/
protected $dettes_financieres_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="tresorerie_disponible_affichage", options={"default"= null})
*/
protected $tresorerie_disponible_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="participation_salaries_affichage", options={"default"= null})
*/
protected $participation_salaries_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_retraite_affichage", options={"default"= null})
*/
protected $ca_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="marge_brute_retraite_affichage", options={"default"= null})
*/
protected $marge_brute_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_exploitation_retraite_affichage", options={"default"= null})
*/
protected $resultat_exploitation_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="resultat_net_retraite_affichage", options={"default"= null})
*/
protected $resultat_net_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="fonds_propres_retraite_affichage", options={"default"= null})
*/
protected $fonds_propres_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="endettement_net_retraite_affichage", options={"default"= null})
*/
protected $endettement_net_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="dettes_financieres_retraite_affichage", options={"default"= null})
*/
protected $dettes_financieres_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="tresorerie_disponible_retraite_affichage", options={"default"= null})
*/
protected $tresorerie_disponible_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="participation_salaries_retraite_affichage", options={"default"= null})
*/
protected $participation_salaries_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_retraite_affichage", options={"default"= null})
*/
protected $nb_personnes_retraite_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_n", options={"default"= null})
*/
protected $EBE_n;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_nmoinsun", options={"default"= null})
*/
protected $EBE_nmoinsun;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_nmoinsdeux", options={"default"= null})
*/
protected $EBE_nmoinsdeux;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_retraite", options={"default"= null})
*/
protected $EBE_retraite;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_n_affichage", options={"default"= null})
*/
protected $EBE_n_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_nmoinsun_affichage", options={"default"= null})
*/
protected $EBE_nmoinsun_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_nmoinsdeux_affichage", options={"default"= null})
*/
protected $EBE_nmoinsdeux_affichage;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="EBE_retraite_affichage", options={"default"= null})
*/
protected $EBE_retraite_affichage;
/**
* @var string @ORM\Column(type="text", nullable=true, name="opportunites_developpement", options={"default"= null})
*/
protected $opportunites_developpement;
/**
* @var string @ORM\Column(type="string", nullable=true, name="date_mois_operation", options={"default"= null})
*/
protected $date_mois_operation;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="duree_totale_operation", options={"default"= null})
*/
protected $duree_totale_operation;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_acheteurs_potentiels", options={"default"= null})
*/
protected $nb_acheteurs_potentiels;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="duree_negociations", options={"default"= null})
*/
protected $duree_negociations;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="prix_vente", options={"default"= null})
*/
protected $prix_vente;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="prix_vente_locaux", options={"default"= null})
*/
protected $prix_vente_locaux;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="autres_frais", options={"default"= null})
*/
protected $autres_frais;
/**
* @var string @ORM\Column(type="text", nullable=true, name="description_autres_frais", options={"default"= null})
*/
protected $description_autres_frais;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_multiples", options={"default"= null})
*/
protected $complement_multiples;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_methodes", options={"default"= null})
*/
protected $complement_methodes;
/**
* @var string @ORM\Column(type="string", nullable=true, name="comparatif_prix_valorisation", options={"default"= null})
*/
protected $comparatif_prix_valorisation;
/**
* @var string @ORM\Column(type="text", nullable=true, name="commentaire_prix", options={"default"= null})
*/
protected $commentaire_prix;
/**
* @var string @ORM\Column(type="string", nullable=true, name="reprise_100_pourcents", options={"default"= null})
*/
protected $reprise_100_pourcents;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="pourcentage_titres_repris", options={"default"= null})
*/
protected $pourcentage_titres_repris;
/**
* @var string @ORM\Column(type="string", nullable=true, name="type_rachat", options={"default"= null})
*/
protected $type_rachat;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_montage", options={"default"= null})
*/
protected $complement_montage;
/**
* @var string @ORM\Column(type="string", nullable=true, name="earn_out", options={"default"= null})
*/
protected $earn_out;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_earn_out", options={"default"= null})
*/
protected $complement_earn_out;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="montant_garantie", options={"default"= null})
*/
protected $montant_garantie;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="duree_garantie", options={"default"= null})
*/
protected $duree_garantie;
/**
* @var string @ORM\Column(type="string", nullable=true, name="garantie_garantie", options={"default"= null})
*/
protected $garantie_garantie;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_garantie", options={"default"= null})
*/
protected $complement_garantie;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="apports_fonds_propres_acquereur", options={"default"= null})
*/
protected $apports_fonds_propres_acquereur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="apports_fonds_propres_investisseur", options={"default"= null})
*/
protected $apports_fonds_propres_investisseur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="montant_finance_dette", options={"default"= null})
*/
protected $montant_finance_dette;
/**
* @var string @ORM\Column(type="decimal", nullable=true, name="taux_bancaire", options={"default"= null})
*/
protected $taux_bancaire;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="duree_financement", options={"default"= null})
*/
protected $duree_financement;
/**
* @var string @ORM\Column(type="integer", nullable=true, name="id_banque", options={"default"= null})
*/
protected $id_banque;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="pret_oseo", options={"default"= null})
*/
protected $pret_oseo;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_pret_oseo", options={"default"= null})
*/
protected $complement_pret_oseo;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="garantie_oseo", options={"default"= null})
*/
protected $garantie_oseo;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_garantie_oseo", options={"default"= null})
*/
protected $complement_garantie_oseo;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="pret_honneur", options={"default"= null})
*/
protected $pret_honneur;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_pret_honneur", options={"default"= null})
*/
protected $complement_pret_honneur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="autre_financement", options={"default"= null})
*/
protected $autre_financement;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_autre_financement", options={"default"= null})
*/
protected $complement_autre_financement;
/**
* @var string @ORM\Column(type="string", nullable=true, name="credit_vendeur", options={"default"= null})
*/
protected $credit_vendeur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="montant_credit_vendeur", options={"default"= null})
*/
protected $montant_credit_vendeur;
/**
* @var string @ORM\Column(type="text", nullable=true, name="commentaire_credit_vendeur", options={"default"= null})
*/
protected $commentaire_credit_vendeur;
/**
* @var string @ORM\Column(type="string", nullable=true, name="cedant_reste_dans_entreprise", options={"default"= null})
*/
protected $cedant_reste_dans_entreprise;
/**
* @var string @ORM\Column(type="string", nullable=true, name="accompagnement_par_cedant", options={"default"= null})
*/
protected $accompagnement_par_cedant;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="duree_accompagnement_par_cedant", options={"default"= null})
*/
protected $duree_accompagnement_par_cedant;
/**
* @var string @ORM\Column(type="string", nullable=true, name="qui_verse_commission", options={"default"= null})
*/
protected $qui_verse_commission;
/**
* @var string @ORM\Column(type="text", nullable=true, name="complement_operation", options={"default"= null})
*/
protected $complement_operation;
/**
* @var string @ORM\Column(type="string", nullable=true, name="acquereur_meme_pays", options={"default"= null})
*/
protected $acquereur_meme_pays;
/**
* @var string @ORM\Column(type="string", nullable=true, name="acquereur_meme_region", options={"default"= null})
*/
protected $acquereur_meme_region;
/**
* @var string @ORM\Column(type="string", nullable=true, name="acquereur_meme_departement", options={"default"= null})
*/
protected $acquereur_meme_departement;
/**
* @var string @ORM\Column(type="string", nullable=true, name="type_acquereur", options={"default"= null})
*/
protected $type_acquereur;
/**
* @var string @ORM\Column(type="string", nullable=true, name="societe_meme_secteur", options={"default"= null})
*/
protected $societe_meme_secteur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="ca_societe_acquereur", options={"default"= null})
*/
protected $ca_societe_acquereur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="nb_personnes_societe_acquereur", options={"default"= null})
*/
protected $nb_personnes_societe_acquereur;
/**
* @var string @ORM\Column(type="string", nullable=true, name="repreneur_meme_secteur", options={"default"= null})
*/
protected $repreneur_meme_secteur;
/**
* @var string @ORM\Column(type="integer", unique=true, nullable=true, name="age_repreneur", options={"default"= null})
*/
protected $age_repreneur;
/**
* @var string @ORM\Column(type="string", nullable=true, name="contact", options={"default"= null})
*/
protected $contact;
/**
* @var string @ORM\Column(type="string", nullable=true, name="telephone_contact", options={"default"= null})
*/
protected $telephone_contact;
/**
* @var string @ORM\Column(type="string",length=20, nullable=true, name="indicatif_telephone_contact" , options={"default"= null})
*/
public $indicatif_telephone_contact;
/**
* @var string @ORM\Column(type="string", nullable=true, name="email_contact", options={"default"= null})
*/
protected $email_contact;
/**
* @var string @ORM\Column(type="string", nullable=true, name="titre_valorisation", options={"default"= null})
*/
protected $titre_valorisation;
/**
* @var string @ORM\Column(type="text", nullable=true, name="mots_cles", options={"default"= null})
*/
protected $mots_cles;
/**
* @var string @ORM\Column(type="text", nullable=true, name="description_publique", options={"default"= null})
*/
protected $description_publique;
/**
* @var string @ORM\Column(type="text", nullable=true, name="suivi", options={"default"= null})
*/
protected $suivi;
/**
* @var string @ORM\Column(type="string", nullable=true, name="certification_fusacq", options={"default"= null})
*/
protected $certification_fusacq;
/**
* @var string @ORM\Column(type="string", nullable=true, name="code_naf_oseo_nouveau", options={"default"= null})
*/
protected $code_naf_oseo_nouveau;
/**
* @var string @ORM\Column(type="string", nullable=true, name="affichage_multiples", options={"default"= null})
*/
protected $affichage_multiples;
/**
* Magic getter to expose protected properties.
*
* @param string $property
*
* @return mixed
*/
public function _get($property) {
return $this->$property;
}
/**
* Magic setter to save protected properties.
*
* @param string $property
* @param mixed $value
*/
public function _set($property, $value) {
$this->$property = $value;
}
/**
* @return int[]|string[]
*/
public function getAttributesList(): array {
return array_keys(get_object_vars($this));
}
static function getConstants() {
$oClass = new ReflectionClass(__CLASS__);
return $oClass->getStaticProperties();
}
public function getId() {
return $this->id_valorisation;
}
public function donne_approx_ca_aff() {
if ($this->ca_n_affichage < 100) {
$approx = "Moins de 100 k€";
} elseif ($this->ca_n_affichage >= 100 && $this->ca_n < 300) {
$approx = "Entre 100 et 300 k€";
} elseif ($this->ca_n_affichage >= 300 && $this->ca_n < 1000) {
$approx = "Entre 300 k€ et 1M€";
} elseif ($this->ca_n_affichage >= 1000 && $this->ca_n < 3000) {
$approx = "Entre 1 et 3M€";
} elseif ($this->ca_n_affichage >= 3000 && $this->ca_n < 5000) {
$approx = "Entre 3 et 5M€";
} elseif ($this->ca_n_affichage >= 5000 && $this->ca_n < 10000) {
$approx = "Entre 5 et 10 M€";
} elseif ($this->ca_n_affichage >= 10000) {
$approx = "Plus de 10M€";
}
return $approx;
}
public function donne_approx_date_operation_aff() {
$date_mois_operation = $this->date_mois_operation;
$date_mois_actuelle = date('Ym');
$diff = DateProvider::donne_difference_mois($date_mois_operation, $date_mois_actuelle);
if ($diff < 12) {
$approx = "Moins de 1 an";
} elseif ($diff >= 12 && $diff < 36) {
$approx = "Entre 1 et 3 ans";
} elseif ($diff >= 36 && $diff < 60) {
$approx = "Entre 3 et 5 ans";
} elseif ($diff >= 60 && $diff < 120) {
$approx = "Entre 5 et 10 ans";
} elseif ($diff >= 120) {
$approx = "Plus de 10 ans";
}
return $approx;
}
public function donne_type_acquereur() {
if ($this->type_acquereur == "personne") {
$type_acquereur = "Personne Physique";
} else {
$type_acquereur = "Société";
}
return $type_acquereur;
}
public function donne_redressement_judiciaire() {
if ($this->redressement_judiciaire == "oui") {
$reponse_rj = "Oui";
} else {
$reponse_rj = "Non";
}
return $reponse_rj;
}
public function donne_societe_difficulte() {
if ($this->societe_difficulte == "oui") {
$reponse_difficulte = "Oui";
} else {
$reponse_difficulte = "Non";
}
return $reponse_difficulte;
}
public function donne_type_rachat() {
if ($this->type_rachat == "titres") {
$type_rachat = "Rachat des titres de la société";
} elseif ($this->type_rachat == "fonds") {
$type_rachat = "Rachat du fonds de commerce";
} else {
$type_rachat = "Non renseigné";
}
return $type_rachat;
}
public function donne_tableau_multiples_publique() {
$prix = $this->prix_vente;
$t = array();
$t["multiples"] = array();
$t["descriptions"] = array();
$i = 0;
if ($this->fonds_propres_affichage != null) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->fonds_propres_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->fonds_propres_affichage . ' k€" style="cursor:pointer;">Actif Net</span>';
$i++;
}
if ($this->EBE_n_affichage != null && $this->EBE_n_affichage > 0) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->EBE_n_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->EBE_n_affichage . ' k€" style="cursor:pointer;">Exédent Brut d\'Exploitation (n)</span>';
$i++;
}
if ($this->resultat_exploitation_n_affichage != null && $this->resultat_exploitation_n_affichage > 0) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->resultat_exploitation_n_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->resultat_exploitation_n_affichage . ' k€" style="cursor:pointer;">Résultat d\'exploitation (n)</span>';
$i++;
}
if ($this->resultat_net_n_affichage != null && $this->resultat_net_n_affichage > 0) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->resultat_net_n_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->resultat_net_n_affichage . ' k€" style="cursor:pointer;">Résultat Net (n)</span>';
$i++;
}
if ($this->EBE_n_affichage != null && $this->EBE_n_affichage > 0 && $this->tresorerie_disponible_affichage != null) {
$tresorerie = $this->tresorerie_disponible_affichage - $this->dettes_financieres_affichage;
$Y = $prix - $tresorerie;
$Y = $Y / $this->EBE_n_affichage;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->EBE_n_affichage . ' k€" style="cursor:pointer;">Exédent Brut d\'Exploitation (n</span>) + <span title="' . $this->tresorerie_disponible_affichage . ' K€" style="cursor:pointer;">Trésorerie Nette</span>';
$i++;
}
if ($this->resultat_exploitation_n_affichage != null && $this->resultat_exploitation_n_affichage > 0 && $this->tresorerie_disponible_affichage != null) {
$tresorerie = $this->tresorerie_disponible_affichage - $this->dettes_financieres_affichage;
$Y = $prix - $tresorerie;
$Y = $Y / $this->resultat_exploitation_n_affichage;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->resultat_exploitation_n_affichage . ' k€" style="cursor:pointer;">Résultat d\'exploitation (n)</span> + <span title="' . $this->tresorerie_disponible_affichage . ' K€" style="cursor:pointer;">Trésorerie Nette</span>';
$i++;
}
if ($this->resultat_net_n_affichage != null && $this->resultat_net_n_affichage > 0 && $this->tresorerie_disponible_affichage != null) {
$tresorerie = $this->tresorerie_disponible_affichage - $this->dettes_financieres_affichage;
$Y = $prix - $tresorerie;
$Y = $Y / $this->resultat_net_n_affichage;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->resultat_net_n_affichage . ' k€" style="cursor:pointer;">Résultat Net (n</span>) + <span title="' . $this->tresorerie_disponible_affichage . ' K€" style="cursor:pointer;">Trésorerie Nette</span>';
$i++;
}
if ($this->participation_salaries_affichage != null && $this->resultat_exploitation_n_affichage != null && $this->resultat_net_n_affichage > 0) {
if ($this->participation_salaries_affichage > 0) {
$EBIT = $this->resultat_net_n_affichage - $this->participation_salaries_affichage;
$t["multiples"][$i] = Utils::donne_arrondi($prix / $EBIT, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $EBIT . ' k€" style="cursor:pointer;">EBIT</span>';
$i++;
}
}
if ($this->tresorerie_disponible_affichage != null && $this->participation_salaries_affichage != null && $this->resultat_net_n_affichage != null && $this->resultat_net_n_affichage > 0) {
if ($this->participation_salaries_affichage > 0) {
$tresorerie = $this->tresorerie_disponible_affichage - $this->dettes_financieres_affichage;
$EBIT = $this->resultat_net_n_affichage - $this->participation_salaries_affichage;
$Y = $prix - $tresorerie;
$Y = $Y / $EBIT;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $EBIT . ' k€" style="cursor:pointer;">EBIT</span> + <span title="' . $tresorerie . ' K€" style="cursor:pointer;">Trésorerie Nette</span>';
$i++;
}
}
return $t;
}
public function donne_tableau_multiples_publique_retraite() {
$prix = $this->prix_vente;
$t = array();
$t["multiples"] = array();
$t["descriptions"] = array();
$i = 0;
// MULTIPLES APRES RETRAITEMENT DES COMPTES
//si tous les elemnts interssant retraites sont null alors on retourne un tableau compos�s de sous tableaux vides
if ($this->fonds_propres_retraite_affichage == null && $this->resultat_exploitation_retraite_affichage == null && $this->resultat_net_retraite_affichage == null && $this->tresorerie_disponible_retraite_affichage == null && $this->participation_salaries_retraite_affichage == null) {
return $t;
}
//sinon
//il faut faire attention � tous les cas possibles :
//SI UNE SEULE des donn�es intervenant dans le calcul du multiple a été retrait�e alors on calcule et affiche le multiple
// les valeurs de calcul etant positionn�es en priorit� sur les valeurs retrait�es si elle existent et en se rabbatant sur les valeurs non retraitees si les valeurs retraitees n'existente pas
if ($this->fonds_propres_retraite_affichage != null) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->fonds_propres_retraite_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->fonds_propres_retraite_affichage . ' k€" style="cursor:pointer;">Actif Net retraité</span>';
$i++;
}
if ($this->EBE_retraite_affichage != null && $this->EBE_retraite_affichage > 0) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->EBE_retraite_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->EBE_retraite_affichage . ' k€" style="cursor:pointer;">Exédent Brut d\'Exploitation retraité (n)</span>';
$i++;
}
if ($this->resultat_exploitation_retraite_affichage != null && $this->resultat_exploitation_retraite_affichage > 0) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->resultat_exploitation_retraite_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->resultat_exploitation_retraite_affichage . ' k€" style="cursor:pointer;">Résultat d\'exploitation retraité (n)</span>';
$i++;
}
if ($this->resultat_net_retraite_affichage != null && $this->resultat_net_retraite_affichage > 0) {
$t["multiples"][$i] = Utils::donne_arrondi($prix / $this->resultat_net_retraite_affichage, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $this->resultat_net_retraite_affichage . ' k€" style="cursor:pointer;">Résultat Net retraité (n)</span>';
$i++;
}
if ($this->tresorerie_disponible_retraite_affichage != null || ($this->resultat_net_retraite_affichage != null && $this->resultat_net_retraite_affichage > 0)) {
if ($this->tresorerie_disponible_retraite_affichage != null) {
$tresorerie = $this->tresorerie_disponible_retraite_affichage;
} else {
$tresorerie = $this->tresorerie_disponible_affichage;
}
if ($this->dettes_financieres_retraite_affichage != null) {
$dette = $this->dettes_financieres_retraite_affichage;
} else {
$dette = $this->dettes_financieres_affichage;
}
$tresorerieUse = $tresorerie - $dette;
if ($this->EBE_retraite_affichage != null) {
$ebe = $this->EBE_retraite_affichage;
} else {
$ebe = $this->EBE_n_affichage;
}
if ($tresorerie != null && $ebe != null) {
$Y = $prix - $tresorerieUse;
$Y = $Y / $ebe;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $ebe . ' k€" style="cursor:pointer;">Exédent Brut d\'Exploitation retraité (n)</span> + <span title="' . $tresorerieUse . ' K€" style="cursor:pointer;">Trésorerie Nette retraitée</span>';
$i++;
}
}
if ($this->tresorerie_disponible_retraite_affichage != null || ($this->resultat_exploitation_retraite_affichage != null && $this->resultat_exploitation_retraite_affichage > 0)) {
if ($this->tresorerie_disponible_retraite_affichage != null) {
$tresorerie = $this->tresorerie_disponible_retraite_affichage;
} else {
$tresorerie = $this->tresorerie_disponible_affichage;
}
if ($this->dettes_financieres_retraite_affichage != null) {
$dette = $this->dettes_financieres_retraite_affichage;
} else {
$dette = $this->dettes_financieres_affichage;
}
$tresorerieUse = $tresorerie - $dette;
if ($this->resultat_exploitation_retraite_affichage != null) {
$resultat_net = $this->resultat_exploitation_retraite_affichage;
} else {
$resultat_net = $this->resultat_exploitation_n_affichage;
}
if ($tresorerie != null && $resultat_net != null) {
$Y = $prix - $tresorerieUse;
$Y = $Y / $resultat_net;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $resultat_net . ' k€" style="cursor:pointer;">Résultat d\'exploitation retraité (n)</span> + <span title="' . $tresorerieUse . ' K€" style="cursor:pointer;">Trésorerie Nette retraitée</span>';
$i++;
}
}
if ($this->tresorerie_disponible_retraite_affichage != null || ($this->resultat_net_retraite_affichage != null && $this->resultat_net_retraite_affichage > 0)) {
if ($this->tresorerie_disponible_retraite_affichage != null) {
$tresorerie = $this->tresorerie_disponible_retraite_affichage;
} else {
$tresorerie = $this->tresorerie_disponible_affichage;
}
if ($this->dettes_financieres_retraite_affichage != null) {
$dette = $this->dettes_financieres_retraite_affichage;
} else {
$dette = $this->dettes_financieres_affichage;
}
$tresorerieUse = $tresorerie - $dette;
if ($this->resultat_net_retraite_affichage != null) {
$resultat_net = $this->resultat_net_retraite_affichage;
} else {
$resultat_net = $this->resultat_net_n_affichage;
}
if ($tresorerie != null && $resultat_net != null) {
$Y = $prix - $tresorerieUse;
$Y = $Y / $resultat_net;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $resultat_net . ' k€" style="cursor:pointer;">Résultat Net retraité (n)</span> + <span title="' . $tresorerieUse . ' K€" style="cursor:pointer;">Trésorerie Nette retraitée</span>';
$i++;
}
}
if ($this->participation_salaries_retraite_affichage != null || ($this->resultat_net_retraite_affichage != null && $this->resultat_net_retraite_affichage > 0)) {
if ($this->participation_salaries_retraite_affichage != null) {
$participation_salaries = $this->participation_salaries_retraite_affichage;
} else {
$participation_salaries = $this->participation_salaries_affichage;
}
if ($this->resultat_net_retraite_affichage != null) {
$resultat_net = $this->resultat_net_retraite_affichage;
} else {
$resultat_net = $this->resultat_net_n_affichage;
}
if ($participation_salaries != null && $resultat_net != null) {
if ($participation_salaries > 0) {
$EBIT = $resultat_net - $participation_salaries;
$t["multiples"][$i] = Utils::donne_arrondi($prix / $EBIT, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $EBIT . ' k€" style="cursor:pointer;">EBIT retraité</span>';
$i++;
}
}
}
if ($this->tresorerie_disponible_retraite_affichage != null || $this->participation_salaries_retraite_affichage != null || ($this->resultat_net_retraite_affichage != null && $this->resultat_net_retraite_affichage > 0)) {
if ($this->tresorerie_disponible_retraite_affichage != null) {
$tresorerie = $this->tresorerie_disponible_retraite_affichage;
} else {
$tresorerie = $this->tresorerie_disponible_affichage;
}
if ($this->dettes_financieres_retraite_affichage != null) {
$dette = $this->dettes_financieres_retraite_affichage;
} else {
$dette = $this->dettes_financieres_affichage;
}
$tresorerieUse = $tresorerie - $dette;
if ($this->participation_salaries_retraite_affichage != null) {
$participation_salaries = $this->participation_salaries_retraite_affichage;
} else {
$participation_salaries = $this->participation_salaries_affichage;
}
if ($this->resultat_net_retraite_affichage != null) {
$resultat_net = $this->resultat_net_retraite_affichage;
} else {
$resultat_net = $this->resultat_net_n_affichage;
}
if ($resultat_net != null && $tresorerie != null && $participation_salaries != null) {
if ($participation_salaries > 0) {
$EBIT = $resultat_net - $participation_salaries;
$Y = $prix - $tresorerieUse;
$Y = $Y / $EBIT;
$t["multiples"][$i] = Utils::donne_arrondi($Y, 1);
$t["descriptions"][$i] = '<b>' . $t["multiples"][$i] . '</b> x <span title="' . $EBIT . ' k€" style="cursor:pointer;">EBIT retraité</span> + <span title="' . $tresorerieUse . ' K€" style="cursor:pointer;">Trésorerie Nette retraitée</span>';
}
}
}
return $t;
}
}