<?php
namespace App\Controller;
use App\Services\MetaTag;
use App\Helper\ParametersProvider;
use App\Entity\AnnoncesVendeur;
use App\Entity\RaisonsCession;
use App\Entity\SecteursActivite;
use App\Entity\Societes;
use App\Entity\Statuts;
use App\Entity\Villes;
use App\Services\ManagerEntity\ActualitesManagers;
use App\Services\ManagerEntity\AnnoncesManagers;
use App\Services\ManagerEntity\SecteursActiviteManagers;
use App\Services\ManagerEntity\SocietesManagers;
use App\Services\ManagerEntity\ValorisationsManagers;
use App\Services\ManagerEntity\LocalisationsManagers;
use App\Services\ManagerEntity\DroitsAccesManagers;
use App\Services\ManagerEntity\CommandesManager;
use App\Services\PDFGenerator;
use App\Twig\TranslationExtension;
use Knp\Component\Pager\PaginatorInterface;
use Symfony\Component\Form\Extension\Core\Type\ButtonType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Forms;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use App\Entity\AnnoncesAcheteur;
use App\Helper\DateProvider;
use App\Services\ManagerEntity\AnnuairesManagers;
use App\Entity\AnnuaireRepreneurs;
use App\Form\Models\ContactezDirectementFondsInvestissement;
use App\Form\Type\ContactezDirectementFondsInvestissementType;
use App\Helper\Utils;
use App\Services\ManagerEntity\ContactGenerauxManagers;
use App\Entity\SecteursActiviteFonds;
use App\Services\ManagerEntity\BuzzManagers;
use App\Helper\DetailAnnonceProvider;
use Symfony\Component\DependencyInjection\ParameterBag\ContainerBagInterface;
use App\Repository\LocalisationsRepository;
use App\Repository\BuzzOperationsRepository;
use App\Repository\ParametresDiversRepository;
use Doctrine\ORM\EntityManagerInterface;
use App\Entity\Panier;
use App\Entity\StatistiquesNbConsultationsAnnoncesAcheteurEntity;
use App\Repository\CommandesRepository;
use App\Services\TelephoneInternational;
use App\Services\Compte\Commandes\CommandesManagers;
use App\Services\GoogleTag;
use App\Services\ManagerEntity\ParametreSiteManagers;
use App\Services\Encryptage\AesEncrytageStrategy;
use App\Services\Annonces\ConsultationsAnnonce;
use App\Security\Voter\AnnonceCommandVoter;
use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface;
class VendreEntrepriseController extends EntityUsingController {
protected $authChecker;
/**
* @var AnnoncesManagers
*/
private $am;
/**
* @var SocietesManagers
*/
private $sm;
/**
* @var LocalisationsManagers
*/
private $lm;
/**
* @var SecteursActiviteManagers
*/
private $sam;
/**
* @var DroitsAccesManagers
*/
private $dm;
/**
* @var EntityManagerInterface
*/
private $em;
/**
* @var CommandesManager
*/
private $cm;
/**
* @var AnnuairesManagers
*/
private $arm;
/**
* @var DroitsAccesManagers $dam;
*/
private $dam;
/**
* @var MetaTag
*/
private $metaTag;
public function __construct(AuthorizationCheckerInterface $authChecker, AnnoncesManagers $am, SocietesManagers $sm, LocalisationsManagers $lm, ContactGenerauxManagers $cgm, AnnuairesManagers $arm, PDFGenerator $pf, SecteursActiviteManagers $sam, DroitsAccesManagers $dm, EntityManagerInterface $em, CommandesManager $cm, DroitsAccesManagers $dam, MetaTag $metaTag) {
$this->authChecker = $authChecker;
$this->am = $am;
$this->sm = $sm;
$this->lm = $lm;
$this->cgm = $cgm;
$this->arm = $arm;
$this->pf = $pf;
$this->sam = $sam;
$this->dm = $dm;
$this->em = $em;
$this->cm = $cm;
$this->dam = $dam;
$this->metaTag = $metaTag;
}
public function index(): Response {
return $this->render('vendre_entreprise/index.html.twig');
}
public function recherchestandardacquisition(Request $request, TranslationExtension $translationExtension, ContainerBagInterface $container, $codePays): Response {
$reference_mots_cles = $request->query->get('reference_mots_cles');
// Si on fait une recherche simple
if (isset($reference_mots_cles) && $reference_mots_cles != "") {
// Si on recherche par idAnnonce
if (preg_match("/v([0-9]{3,8})/i", $reference_mots_cles) == true || preg_match("/([0-9]{3,8})/", $reference_mots_cles) == true) {
$idAnnonce = preg_replace("/[^0-9]/", "", $reference_mots_cles);
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce);
// Si l'annonce existe et est publique
if ($annonce && $annonce['mode_annonce'] == "publique") {
$slug = Utils::slugify($annonce['titre_annonce']);
//return $this->forward('App\Controller\VendreEntrepriseController::redirectiononglet', ['slug' => $slug, 'idAnnonce' => $idAnnonce, 'codePays' => $codePays]);
return $this->redirectToRoute('vendre_entreprise_annonce_acquisition_details', ['slug' => $slug, 'idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'nomLocalisation' => $annonce['nom_localisation_slug']]);
} else {
$lang = $request->getSession()->get('lang');
$this->addFlash('error', $translationExtension->translate('annonce introuvable : l’annonce a été supprimée, remise en attente ou est en cours de modification', $lang, '', 'M', ''));
}
// Si on recherche par mots cles
} else {
// A developper
//$nombre_annonces = donne_nb_annonces_vente_recherche($parametres_redirection);
//loggage_mots_cles_recherche_vente($parametres_redirection["reference_mots_cles"],$nombre_annonces);
$request->query->set('type_recherche', 5);
return $this->forward('App\Controller\VendreEntrepriseController::acquisition', ['codePays' => $codePays, 'request' => $request]);
}
}
/* $dernieresAnnonces = $this->am->getDernieresAnnoncesAcquisitions(5, "entreprise");
$array_annonce_region_france = $this->am->donne_tableau_nb_annonce_acheteur_par_region();
$nb_regions = count($array_annonce_region_france);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_france, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_france, $moitie);
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_annonces_acquisition'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_annonces_acquisition'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_annonces_acquisition'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_annonces_acquisition'];
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite(); */
return $this->render(
'vendre_entreprise/recherche_standard_acquisition.html.twig',
[
/* 'dernieresAnnonces' => $dernieresAnnonces,
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'annonces_secteur_activite' => $annonces_secteur_activite,
'array_annonce_region_france' => $array_annonce_region_france */
]
);
}
public function dernieresAnnoncesAcquisition($lang, $codePays) {
$dernieresAnnonces = $this->am->getDernieresAnnoncesAcquisitions(5, "entreprise", null, $lang, $this->getIdPaysByCodePays($codePays));
return $this->render(
'vendre_entreprise/fragments/annonce_acquisition/dernieres_annonces.html.twig',
[
'dernieresAnnonces' => $dernieresAnnonces,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function trouverAnnonceAcquisitionParLocalisation($lang, $codePays) {
$array_annonce_region_du_pays = $this->am->donne_tableau_nb_annonce_acheteur_par_region($this->getIdPaysByCodePays($codePays));
$nb_regions = count($array_annonce_region_du_pays);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_du_pays, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_du_pays, $moitie);
$nb_annonce_france = $this->getAnnoncesNumbers(['id_localisation' => 'p33'])['nb_annonces_acquisition'];
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_annonces_acquisition'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_annonces_acquisition'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_annonces_acquisition'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_annonces_acquisition'];
return $this->render(
"vendre_entreprise/fragments/annonce_acquisition/trouver_annonce_par_localisation_" . $this->getVersionByCodePays($codePays) . ".html.twig",
[
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_france' => $nb_annonce_france,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'array_annonce_region_du_pays' => $array_annonce_region_du_pays,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function trouverAnnonceAcquisitionParCategorie($lang, $codePays) {
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite();
return $this->render(
"vendre_entreprise/fragments/annonce_acquisition/trouver_annonce_par_categorie.html.twig",
[
'annonces_secteur_activite' => $annonces_secteur_activite,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function recherchestandardcvrepreneur(Request $request, TranslationExtension $translationExtension, AnnuairesManagers $annuairesManager, $codePays): Response {
$reference_mots_cles = $request->query->get('reference_mots_cles');
// Si on fait une recherche simple
if (isset($reference_mots_cles) && $reference_mots_cles != "") {
// Si on recherche par idRepreneur
if (preg_match("/r([0-9]{3,8})/i", $reference_mots_cles) == true || preg_match("/([0-9]{1,8})/", $reference_mots_cles) == true) {
$idRepreneur = preg_replace("/[^0-9]/", "", $reference_mots_cles);
$cv = $this->arm->getCVRepreneurDetail($idRepreneur);
// Si le CV existe et est publique
if ($cv && $cv['modeProfil'] == "publique") {
$slug = Utils::slugify($cv['titreSocieteRecherchee']);
//return $this->forward('App\Controller\VendreEntrepriseController::redirectiononglet', ['slug' => $slug, 'idAnnonce' => $idAnnonce, 'codePays' => $codePays]);
return $this->redirectToRoute('repreneur_cv_detail', ['titreslug' => $slug, 'idRepreneur' => $idRepreneur, 'codePays' => $codePays, 'from' => 'vendre-entreprise']);
} else {
$lang = $request->getSession()->get('lang');
$this->addFlash('error', $translationExtension->translate('CV repreneur introuvable', $lang, '', 'M', ''));
}
// Si on recherche par mots cles
} else {
// A developper
//$nombre_annonces = donne_nb_annonces_vente_recherche($parametres_redirection);
//loggage_mots_cles_recherche_vente($parametres_redirection["reference_mots_cles"],$nombre_annonces);
$request->query->set('type_recherche', 5);
return $this->forward('App\Controller\VendreEntrepriseController::cvrepreneur', ['codePays' => $codePays, 'request' => $request]);
}
}
/* $derniersCV = $annuairesManager->getDerniersCVRepreneurs($this->getIdPaysByCodePays($codePays));
$array_annonce_region_france = $annuairesManager->donne_tableau_nb_cv_par_region();
$nb_regions = count($array_annonce_region_france);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_france, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_france, $moitie);
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_cvs'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_cvs'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_cvs'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_cvs'];
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite(); */
return $this->render(
'vendre_entreprise/recherche_standard_cv_repreneur.html.twig',
[
/* 'derniersCV' => $derniersCV,
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'annonces_secteur_activite' => $annonces_secteur_activite,
'array_annonce_region_france' => $array_annonce_region_france */
]
);
}
public function derniersCvRepreneur(AnnuairesManagers $annuairesManager, $lang, $codePays) {
$derniersCV = $annuairesManager->getDerniersCVRepreneurs($this->getIdPaysByCodePays($codePays));
return $this->render(
'vendre_entreprise/fragments/cv_repreneur/derniers_cv.html.twig',
[
'derniersCV' => $derniersCV,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function trouverCvRepreneurParLocalisation(AnnuairesManagers $annuairesManager, $lang, $codePays) {
$array_annonce_region_du_pays = $annuairesManager->donne_tableau_nb_cv_par_region($this->getIdPaysByCodePays($codePays));
$nb_regions = count($array_annonce_region_du_pays);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_du_pays, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_du_pays, $moitie);
$nb_annonce_france = $this->getAnnoncesNumbers(['id_localisation' => 'p33'])['nb_cvs'];
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_cvs'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_cvs'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_cvs'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_cvs'];
return $this->render(
"vendre_entreprise/fragments/cv_repreneur/trouver_annonce_par_localisation_" . $this->getVersionByCodePays($codePays) . ".html.twig",
[
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_france' => $nb_annonce_france,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'array_annonce_region_du_pays' => $array_annonce_region_du_pays,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function trouverCvRepreneurParCategorie($lang, $codePays) {
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite();
return $this->render(
"vendre_entreprise/fragments/cv_repreneur/trouver_annonce_par_categorie.html.twig",
[
'annonces_secteur_activite' => $annonces_secteur_activite,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function recherchestandardacquereurhistorique(Request $request, $codePays): Response {
$reference_mots_cles = $request->query->get('reference_mots_cles');
// Si on fait une recherche simple
if (isset($reference_mots_cles) && $reference_mots_cles != "") {
// Recherche par mots clés uniquement
$request->query->set('type_recherche', 5);
return $this->forward('App\Controller\VendreEntrepriseController::acquereurhistorique', ['codePays' => $codePays, 'request' => $request]);
}
/* $array_annonce_region_france = $this->sm->donne_tableau_acquereur_historique_par_region_dun_pays();
//$array_annonce_region_france = $this->sm->donne_tableau_acquereur_historique_par_region();
$nb_regions = count($array_annonce_region_france);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_france, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_france, $moitie);
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_acquereurs_historiques'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_acquereurs_historiques'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_acquereurs_historiques'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_acquereurs_historiques'];
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite("acquereur_historique"); */
return $this->render(
'vendre_entreprise/recherche_standard_acquereur_historique.html.twig',
[
/* 'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'annonces_secteur_activite' => $annonces_secteur_activite,
'array_annonce_region_france' => $array_annonce_region_france */
]
);
}
public function trouverAcquereurHistoriqueParLocalisation($lang, $codePays) {
//$array_annonce_region_du_pays = $this->sm->donne_tableau_acquereur_historique_par_region_dun_pays($this->getIdPaysByCodePays($codePays));
// On prend la liste des régions du pays sans calculer le nb d'annonce
$array_annonce_region_du_pays = $this->lm->getListRegionsByCountryForRechercheStandard($this->getIdPaysByCodePays($codePays));
$nb_regions = count($array_annonce_region_du_pays);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_du_pays, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_du_pays, $moitie);
$nb_annonce_france = $this->getAnnoncesNumbers(['id_localisation' => 'p33'])['nb_acquereurs_historiques'];
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_acquereurs_historiques'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_acquereurs_historiques'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_acquereurs_historiques'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_acquereurs_historiques'];
return $this->render(
"vendre_entreprise/fragments/acquereur_historique/trouver_annonce_par_localisation_" . $this->getVersionByCodePays($codePays) . ".html.twig",
[
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_france' => $nb_annonce_france,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'array_annonce_region_du_pays' => $array_annonce_region_du_pays,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function trouverAcquereurHistoriqueParCategorie($lang, $codePays) {
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite("acquereur_historique");
return $this->render(
"vendre_entreprise/fragments/acquereur_historique/trouver_annonce_par_categorie.html.twig",
[
'annonces_secteur_activite' => $annonces_secteur_activite,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function recherchestandardparticipationdefonds(Request $request, TranslationExtension $translationExtension, AnnuairesManagers $annuairesManager, SecteursActiviteManagers $secteursActiviteManager, LocalisationsManagers $localisationManager, $codePays): Response {
$reference_mots_cles = $request->query->get('reference_mots_cles');
// Si on fait une recherche simple
if (isset($reference_mots_cles) && $reference_mots_cles != "") {
// Recherche par mots clés uniquement
$request->query->set('type_recherche', 5);
return $this->forward('App\Controller\VendreEntrepriseController::participationsdefonds', ['codePays' => $codePays, 'request' => $request]);
}
$array_annonce_region_france = $this->sm->donne_tableau_participation_fonds_par_region();
$nb_regions = count($array_annonce_region_france);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_france, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_france, $moitie);
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_participations_fonds'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_participations_fonds'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_participations_fonds'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_participations_fonds'];
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite("participation_fonds");
return $this->render(
'vendre_entreprise/recherche_standard_participation_fonds.html.twig',
[
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'annonces_secteur_activite' => $annonces_secteur_activite,
'array_annonce_region_france' => $array_annonce_region_france
]
);
}
public function trouverParticipationFondsParLocalisation($lang, $codePays) {
$array_annonce_region_du_pays = $this->sm->donne_tableau_participation_fonds_par_region($this->getIdPaysByCodePays($codePays));
$nb_regions = count($array_annonce_region_du_pays);
if ($nb_regions % 2 != 0) {
$moitie = ceil($nb_regions / 2);
} else {
$moitie = $nb_regions / 2;
}
$colonne_region_gauche = array_slice($array_annonce_region_du_pays, 0, $moitie);
$colonne_region_droite = array_slice($array_annonce_region_du_pays, $moitie);
$nb_annonce_france = $this->getAnnoncesNumbers(['id_localisation' => 'p33'])['nb_participations_fonds'];
$nb_annonce_belgique = $this->getAnnoncesNumbers(['id_localisation' => 'p32'])['nb_participations_fonds'];
$nb_annonce_canada = $this->getAnnoncesNumbers(['id_localisation' => 'p01'])['nb_participations_fonds'];
$nb_annonce_suisse = $this->getAnnoncesNumbers(['id_localisation' => 'p41'])['nb_participations_fonds'];
$nb_annonce_autres_pays = $this->getAnnoncesNumbers(['id_localisation' => 'p99'])['nb_participations_fonds'];
return $this->render(
"vendre_entreprise/fragments/participation_fonds/trouver_annonce_par_localisation_" . $this->getVersionByCodePays($codePays) . ".html.twig",
[
'colonne_region_gauche' => $colonne_region_gauche,
'colonne_region_droite' => $colonne_region_droite,
'nb_annonce_france' => $nb_annonce_france,
'nb_annonce_belgique' => $nb_annonce_belgique,
'nb_annonce_canada' => $nb_annonce_canada,
'nb_annonce_suisse' => $nb_annonce_suisse,
'nb_annonce_autres_pays' => $nb_annonce_autres_pays,
'array_annonce_region_du_pays' => $array_annonce_region_du_pays,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function trouverParticipationFondsParCategorie($lang, $codePays) {
$annonces_secteur_activite = $this->getNbAnnoncesBySecteursActivite("participation_fonds");
return $this->render(
"vendre_entreprise/fragments/participation_fonds/trouver_annonce_par_categorie.html.twig",
[
'annonces_secteur_activite' => $annonces_secteur_activite,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function recherchestandardfondsacquereur(Request $request, TranslationExtension $translationExtension, AnnuairesManagers $annuairesManager, $codePays): Response {
$reference_mots_cles = $request->query->get('reference_mots_cles');
// Si on fait une recherche simple
if (isset($reference_mots_cles) && $reference_mots_cles != "") {
// Recherche par mots clés uniquement
$request->query->set('type_recherche', 5);
return $this->forward('App\Controller\VendreEntrepriseController::fondsacquereur', ['codePays' => $codePays, 'request' => $request]);
}
$derniers_investisseurs = $this->sm->getDerniersInvestisseur();
return $this->render(
'vendre_entreprise/recherche_standard_fonds_acquereur.html.twig',
[
'derniers_investisseurs' => $derniers_investisseurs
]
);
}
public function derniersFondsAcquereurs($lang, $codePays) {
$derniers_investisseurs = $this->sm->getDerniersInvestisseur();
return $this->render(
'vendre_entreprise/fragments/fonds_acquereur/derniers_fonds_acquereurs.html.twig',
[
'derniers_investisseurs' => $derniers_investisseurs,
'lang' => $lang,
'codePays' => $codePays
]
);
}
public function rechercheavanceeannonceacquisition(Request $request, SecteursActiviteManagers $secteursActiviteManager, TranslationExtension $translationExtension, $codePays, LocalisationsManagers $localisationManager): Response {
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$parametres_localisations = ParametersProvider::prepareLocalisationsParameters($localisationManager, $parametres);
$parametres_secteurs = ParametersProvider::prepareSecteursParameters($secteursActiviteManager, $parametres);
$string_params = $this->serializeParams($parametres);
/*
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_acquereurs_investisseurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_acquereurs_investisseurs;
*/
$lang = $request->getSession()->get('lang');
$idPays = $this->getIdPaysByCodePays($codePays);
$pays = $this->am->donne_option_select_pays_annonces_acheteur("entreprise", $idPays);
$regions = [];
$departements = [];
$secteurs_activite1 = $secteursActiviteManager->donne_option_select_secteurs_activite_niveau_1();
if (isset($parametres['id_secteur_activite'])) {
$secteurs_activite2 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite']);
$show_secteur_niveau_2 = true;
} else {
$secteurs_activite2 = [];
$show_secteur_niveau_2 = false;
}
if (isset($parametres['id_secteur_activite2'])) {
$secteurs_activite3 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite2']);
$show_secteur_niveau_3 = true;
} else {
$secteurs_activite3 = [];
$show_secteur_niveau_3 = false;
}
$type_acquereur = [
$translationExtension->translate('indifferent', $lang, '', 'M', '') => '', // value = indifferent
$translationExtension->translate('societe', $lang, '', 'M', '') => 'societe',
$translationExtension->translate('personne physique', $lang, '', 'M', '') => 'personne',
];
$demarche = [
$translationExtension->translate('indifferent', $lang, '', 'M', '') => '', // value = indifferent
$translationExtension->translate('une reprise totale, le cedant quittant l\'entreprise', $lang, '', 'M', '') => 'reprise_totale',
$translationExtension->translate('une reprise majoritaire, le cedant restant en minoritaire', $lang, '', 'M', '') => 'reprise_majoritaire',
$translationExtension->translate('une association minoritaire avec le chef d\'entreprise actuel', $lang, '', 'M', '') => 'association_minoritaire',
];
$recherche_par = [
$translationExtension->translate("mots-cles de l'activite recherchee", $lang, '', 'M', '') => 'motscles',
$translationExtension->translate("secteur predefini", $lang, '', 'M', '') => 'secteurs'
];
$formFactory = Forms::createFormFactoryBuilder()->getFormFactory();
$form = $formFactory->createNamedBuilder('')
->add('id_pays', ChoiceType::class, [
'choices' => $pays,
])
->add('id_region', ChoiceType::class, [
'choices' => $regions,
])
->add('id_departement', ChoiceType::class, [
'choices' => $departements,
])
->add('id_localisation', HiddenType::class, [
'data' => $parametres['id_localisation']
])
->add('ajouter', ButtonType::class)
->add('recherche_par', ChoiceType::class, [
'required' => false,
'choices' => $recherche_par,
'expanded' => true,
'multiple' => false,
'data' => $parametres['recherche_par'],
'placeholder' => false,
'choice_value' => function ($choice) {
return $choice; // Utilisez la valeur du choix comme clé
}
])
->add('reference_mots_cles', TextType::class, [
'required' => false,
'data' => $parametres['reference_mots_cles'],
'attr' => [
'placeholder' => $translationExtension->translate("transport, services informatiques, ...", $lang, '', 'M', '')
]
])
->add('id_secteur_activite', ChoiceType::class, [
'choices' => $secteurs_activite1,
'data' => $parametres['id_secteur_activite']
])
->add('id_secteur_activite2', ChoiceType::class, [
'choices' => $secteurs_activite2,
'data' => $parametres['id_secteur_activite2']
])
->add('id_secteur_activite3', ChoiceType::class, [
'choices' => $secteurs_activite3,
'data' => $parametres['id_secteur_activite3']
])
->add('id_secteur', HiddenType::class, [
'data' => $parametres['id_secteur'],
])
->add('ajouter_secteur_activite', ButtonType::class)
->add('type_acquereur', ChoiceType::class, [
'required' => false,
'choices' => $type_acquereur,
'expanded' => true,
'multiple' => false,
'data' => $parametres['type_acquereur']
])
->add('demarche', ChoiceType::class, [
'required' => false,
'choices' => $demarche,
'expanded' => true,
'multiple' => false,
'data' => $parametres['demarche']
])
->add('type_recherche', HiddenType::class, [
'data' => 5,
])
->add('rechercher', SubmitType::class)
->setAction($this->generateUrl('vendre_entreprise_resultats_annonces_acquisition', ['codePays' => $codePays]))
->setMethod('GET')
->getForm();
$current_year = date('Y');
return $this->render(
'vendre_entreprise/recherche_avancee_annonce_acquisition.html.twig',
[
/* 'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acquereurs_investisseurs' => $nb_acquereurs_investisseurs,
'nb_recherches_partenariats' => $nb_recherches_partenariats, */
'form' => $form->createView(),
'parametres' => $parametres,
'parametres_localisations' => $parametres_localisations,
'parametres_secteurs' => $parametres_secteurs,
'current_year' => $current_year,
'string_params' => $string_params,
'show_secteur_niveau_2' => $show_secteur_niveau_2,
'show_secteur_niveau_3' => $show_secteur_niveau_3
]
);
}
public function rechercheavanceecvrepreneur(Request $request, SecteursActiviteManagers $secteursActiviteManager, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $codePays): Response {
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$parametres_localisations = ParametersProvider::prepareLocalisationsParameters($localisationManager, $parametres);
$parametres_secteurs = ParametersProvider::prepareSecteursParameters($secteursActiviteManager, $parametres);
$string_params = $this->serializeParams($parametres);
/*
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_acquereurs_investisseurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_acquereurs_investisseurs;
*/
$lang = $request->getSession()->get('lang');
$secteurs_activite1 = $secteursActiviteManager->donne_option_select_secteurs_activite_niveau_1();
if (isset($parametres['id_secteur_activite'])) {
$secteurs_activite2 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite']);
$show_secteur_niveau_2 = true;
} else {
$secteurs_activite2 = [];
$show_secteur_niveau_2 = false;
}
if (isset($parametres['id_secteur_activite2'])) {
$secteurs_activite3 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite2']);
$show_secteur_niveau_3 = true;
} else {
$secteurs_activite3 = [];
$show_secteur_niveau_3 = false;
}
$type_reprise = [
$translationExtension->translate("indifferent", $lang, '', 'M', '') => 0,
$translationExtension->translate("majoritaire avec un autre repreneur", $lang, '', 'M', '') => 1,
$translationExtension->translate("majoritaire avec un fonds d'investissement", $lang, '', 'M', '') => 2,
$translationExtension->translate("majoritaire, le cedant restant en minoritaire", $lang, '', 'M', '') => 3,
$translationExtension->translate("minoritaire avec le chef d'entreprise actuel", $lang, '', 'M', '') => 4,
$translationExtension->translate("minoritaire avec un autre repreneur", $lang, '', 'M', '') => 5,
$translationExtension->translate("minoritaire avec un fonds d'investissement", $lang, '', 'M', '') => 6,
$translationExtension->translate("totale seul ou avec un ou des associés", $lang, '', 'M', '') => 7
];
$montant_apport_min = [
'0 k€' => 0,
'100 k€' => 100,
'200 k€' => 200,
'500 k€' => 500,
'1000 k€' => 1000,
'2000 k€' => 2000,
];
$montant_apport_max = [
'0 k€' => 0,
'100 k€' => 100,
'200 k€' => 200,
'500 k€' => 500,
'1000 k€' => 1000,
'2000 k€' => 2000,
'> 2000 k€' => "2000p",
];
$recherche_par = [
$translationExtension->translate("mots-cles de l'activite recherchee", $lang, '', 'M', '') => 'motscles',
$translationExtension->translate("secteur predefini", $lang, '', 'M', '') => 'secteurs'
];
$idPays = $this->getIdPaysByCodePays($codePays);
$pays = $this->arm->donne_option_select_pays_annuaire_repreneurs($idPays);
$regions = [];
$formFactory = Forms::createFormFactoryBuilder()->getFormFactory();
$form = $formFactory->createNamedBuilder('')
->add('id_pays', ChoiceType::class, [
'choices' => $pays,
])
->add('id_region', ChoiceType::class, [
'choices' => $regions,
])
->add('id_localisation', HiddenType::class, [
'data' => $parametres['id_localisation']
])
->add('ajouter', ButtonType::class)
->add('id_secteur_activite', ChoiceType::class, [
'choices' => $secteurs_activite1,
'data' => $parametres['id_secteur_activite']
])
->add('id_secteur_activite2', ChoiceType::class, [
'choices' => $secteurs_activite2,
'data' => $parametres['id_secteur_activite2']
])
->add('id_secteur_activite3', ChoiceType::class, [
'choices' => $secteurs_activite3,
'data' => $parametres['id_secteur_activite3']
])
->add('id_secteur', HiddenType::class, [
'data' => $parametres['id_secteur'],
])
->add('ajouter_secteur_activite', ButtonType::class)
->add('type_reprise', ChoiceType::class, [
'choices' => $type_reprise,
'data' => $parametres['type_reprise']
])
->add('montant_apport_min', ChoiceType::class, [
'choices' => $montant_apport_min,
'data' => $parametres['montant_apport_min']
])
->add('montant_apport_max', ChoiceType::class, [
'choices' => $montant_apport_max,
'data' => $parametres['montant_apport_max']
])
->add('recherche_par', ChoiceType::class, [
'required' => false,
'choices' => $recherche_par,
'expanded' => true,
'multiple' => false,
'data' => $parametres['recherche_par'],
'placeholder' => false,
'choice_value' => function ($choice) {
return $choice; // Utilisez la valeur du choix comme clé
}
])
->add('reference_mots_cles', TextType::class, [
'required' => false,
'attr' => [
'placeholder' => $translationExtension->translate("activite, competences, numero repreneur", $lang, '', 'M', '')
],
'data' => $parametres['reference_mots_cles'],
'attr' => [
'placeholder' => $translationExtension->translate("transport, services informatiques, ...", $lang, '', 'M', '')
]
])
->add('mots_cle_exact', HiddenType::class, [
'attr' => ['v-bind:value' => 'mots_cle_exact'],
'data' => $parametres['mots_cle_exact']
])
->add('type_recherche', HiddenType::class, [
'data' => 5,
])
->add('rechercher', SubmitType::class)
->setAction($this->generateUrl('vendre_entreprise_resultats_cv_repreneur', ['codePays' => $codePays]))
->setMethod('GET')
->getForm();
return $this->render(
'vendre_entreprise/recherche_avancee_cv_repreneur.html.twig',
[
/* 'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acquereurs_investisseurs' => $nb_acquereurs_investisseurs,
'nb_recherches_partenariats' => $nb_recherches_partenariats, */
'form' => $form->createView(),
'parametres' => $parametres,
'parametres_localisations' => $parametres_localisations,
'parametres_secteurs' => $parametres_secteurs,
'string_params' => $string_params,
'show_secteur_niveau_2' => $show_secteur_niveau_2,
'show_secteur_niveau_3' => $show_secteur_niveau_3
]
);
}
public function rechercheavanceeacquereurhistorique(Request $request, SecteursActiviteManagers $secteursActiviteManager, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $codePays): Response {
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$parametres_localisations = ParametersProvider::prepareLocalisationsParameters($localisationManager, $parametres);
$parametres_secteurs = ParametersProvider::prepareSecteursParameters($secteursActiviteManager, $parametres);
$string_params = $this->serializeParams($parametres);
/*
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_acquereurs_investisseurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_acquereurs_investisseurs;
*/
$lang = $request->getSession()->get('lang');
$idPays = $this->getIdPaysByCodePays($codePays);
$pays = $this->sm->donne_option_select_pays_acquereur_historique($idPays);
$regions = [];
$secteurs_activite1 = $secteursActiviteManager->donne_option_select_secteurs_activite_niveau_1();
if (isset($parametres['id_secteur_activite'])) {
$secteurs_activite2 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite']);
$show_secteur_niveau_2 = true;
} else {
$secteurs_activite2 = [];
$show_secteur_niveau_2 = false;
}
if (isset($parametres['id_secteur_activite2'])) {
$secteurs_activite3 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite2']);
$show_secteur_niveau_3 = true;
} else {
$secteurs_activite3 = [];
$show_secteur_niveau_3 = false;
}
/*
$operation = [
$translationExtension->translate("toutes", $lang, '', 'M', '') => '',
$translationExtension->translate("autre", $lang, '', 'M', '') => 'autre',
$translationExtension->translate("Fusion - Acquisition", $lang, '', 'M', '') => 'fusion_acquisition',
$translationExtension->translate("introduction en bourse", $lang, '', 'M', '') => 'introduction_bourse',
$translationExtension->translate("levee de fonds", $lang, '', 'M', '') => 'levee_fonds',
$translationExtension->translate("liquidation", $lang, '', 'M', '') => 'liquidation',
$translationExtension->translate("operation boursiere", $lang, '', 'M', '') => 'operationboursiere',
$translationExtension->translate("restructuration", $lang, '', 'M', '') => 'restructuration'
];
*/
$recherche_par = [
$translationExtension->translate("mots-cles de l'activite recherchee", $lang, '', 'M', '') => 'motscles',
$translationExtension->translate("secteur predefini", $lang, '', 'M', '') => 'secteurs'
];
$mot_cle_unique = [
$translationExtension->translate("le contenu de son actualité", $lang, '', 'M', '') => '',
$translationExtension->translate("la description de l'acquereur", $lang, '', 'M', '') => 1
];
/*
$expert_unique = [
$translationExtension->translate("toutes les actualites", $lang, '', 'M', '') => '',
$translationExtension->translate("actus expert uniquement", $lang, '', 'M', '') => 1,
];
*/
/*
$fonds = [
$translationExtension->translate("indifferent", $lang, '', 'M', '') => '',
$translationExtension->translate("oui", $lang, '', 'M', '') => 'oui',
$translationExtension->translate("non", $lang, '', 'M', '') => 'non',
]; */
$formFactory = Forms::createFormFactoryBuilder()->getFormFactory();
$form = $formFactory->createNamedBuilder('')
->add('id_pays', ChoiceType::class, [
'choices' => $pays,
])
->add('id_region', ChoiceType::class, [
'choices' => $regions,
])
->add('id_localisation', HiddenType::class, [
'data' => $parametres['id_localisation']
])
->add('ajouter', ButtonType::class)
->add('id_secteur_activite', ChoiceType::class, [
'choices' => $secteurs_activite1,
'data' => $parametres['id_secteur_activite']
])
->add('id_secteur_activite2', ChoiceType::class, [
'choices' => $secteurs_activite2,
'data' => $parametres['id_secteur_activite2']
])
->add('id_secteur_activite3', ChoiceType::class, [
'choices' => $secteurs_activite3,
'data' => $parametres['id_secteur_activite3']
])
->add('id_secteur', HiddenType::class, [
'data' => $parametres['id_secteur'],
])
->add('ajouter_secteur_activite', ButtonType::class)
/* ->add('operation', ChoiceType::class, [
'required' => false,
'choices' => $operation,
'data' => $parametres['operation']
]) */
->add('recherche_par', ChoiceType::class, [
'required' => false,
'choices' => $recherche_par,
'expanded' => true,
'multiple' => false,
'data' => $parametres['recherche_par'],
'placeholder' => false,
'choice_value' => function ($choice) {
return $choice; // Utilisez la valeur du choix comme clé
}
])
->add('reference_mots_cles', TextType::class, [
'required' => false,
'attr' => [
'placeholder' => $translationExtension->translate("nettoyage industriel, transport routier,…", $lang, '', 'M', '')
],
'data' => $parametres['reference_mots_cles'],
'attr' => [
'placeholder' => $translationExtension->translate("transport, services informatiques, ...", $lang, '', 'M', '')
]
])
->add('mot_cle_unique', ChoiceType::class, [
'required' => false,
'choices' => $mot_cle_unique,
/* 'expanded' => true,
'multiple' => false, */
'placeholder' => false,
'data' => $parametres['mot_cle_unique']
])
/* ->add('expert_unique', ChoiceType::class, [
'required' => false,
'choices' => $expert_unique,
'expanded' => true,
'multiple' => false,
'data' => $parametres['expert_unique']
]) */
->add('date', TextType::class, ['required' => false])
/* ->add('fonds', ChoiceType::class, [
'required' => false,
'choices' => $fonds,
'data' => $parametres['fonds']
]) */
->add('rechercher', SubmitType::class)
->setAction($this->generateUrl('vendre_entreprise_resultats_acquereur_historique', ['codePays' => $codePays]))
->setMethod('GET')
->getForm();
return $this->render(
'vendre_entreprise/recherche_avancee_acquereur_historique.html.twig',
[
/* 'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acquereurs_investisseurs' => $nb_acquereurs_investisseurs,
'nb_recherches_partenariats' => $nb_recherches_partenariats, */
'form' => $form->createView(),
'parametres' => $parametres,
'parametres_localisations' => $parametres_localisations,
'parametres_secteurs' => $parametres_secteurs,
'string_params' => $string_params,
'show_secteur_niveau_2' => $show_secteur_niveau_2,
'show_secteur_niveau_3' => $show_secteur_niveau_3
]
);
}
public function rechercheavanceeparticipationdefonds(Request $request, SecteursActiviteManagers $secteursActiviteManager, TranslationExtension $translationExtension, $codePays, LocalisationsManagers $localisationManager, ParametreSiteManagers $psm): Response {
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeParameters($parametres);
$parametres_localisations = ParametersProvider::prepareLocalisationsParameters($localisationManager, $parametres);
$parametres_secteurs = ParametersProvider::prepareSecteursParameters($secteursActiviteManager, $parametres);
$string_params = $this->serializeParams($parametres);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
/*
$repoVendeur = $this->getDoctrine()->getRepository(AnnoncesVendeur::class);
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$nb_annonces_cessions = $repoVendeur->donne_nb_annonces_vente_recherche($parametres);
$nb_actifs = $repoVendeur->donne_nb_annonces_vente_recherche_actif($parametres);
$nb_entreprises = $nb_annonces_cessions - $nb_actifs;
$nb_cibles_potentielles = $repoSociete->donne_nb_participations_fonds($parametres, "vendeur");
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
*/
$lang = $request->getSession()->get('lang');
$idPays = $this->getIdPaysByCodePays($codePays);
$actionnaires = $repoSociete->donne_liste_societe_gestion_select();
$pays = $this->sm->donne_option_select_pays_cible_potentielle($idPays);
$regions = [];
//$secteurs_activite = $secteursActiviteManager->donne_option_select_secteurs_activite_fonds();
$secteurs_activite1 = $secteursActiviteManager->donne_option_select_secteurs_activite_niveau_1();
if (isset($parametres['id_secteur_activite'])) {
$secteurs_activite2 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite']);
$show_secteur_niveau_2 = true;
} else {
$secteurs_activite2 = [];
$show_secteur_niveau_2 = false;
}
if (isset($parametres['id_secteur_activite2'])) {
$secteurs_activite3 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite2']);
$show_secteur_niveau_3 = true;
} else {
$secteurs_activite3 = [];
$show_secteur_niveau_3 = false;
}
$societe_cotee = [
$translationExtension->translate('indifferent', $lang, '', 'M', '') => '0',
$translationExtension->translate('oui', $lang, '', 'M', '') => 'oui',
$translationExtension->translate('non', $lang, '', 'M', '') => 'non',
];
$recherche_par = [
$translationExtension->translate("mots-cles de l'activite recherchee", $lang, '', 'M', '') => 'motscles',
$translationExtension->translate("secteur predefini", $lang, '', 'M', '') => 'secteurs'
];
$formFactory = Forms::createFormFactoryBuilder()->getFormFactory();
$form = $formFactory->createNamedBuilder('')
->add('id_gestionnaire_fonds', ChoiceType::class, [
'choices' => $actionnaires,
'data' => $parametres['id_gestionnaire_fonds']
])
->add('id_pays', ChoiceType::class, [
'choices' => $pays,
])
->add('id_region', ChoiceType::class, [
'choices' => $regions,
])
->add('id_localisation', HiddenType::class, [
'data' => $parametres['id_localisation']
])
->add('ajouter', ButtonType::class)
->add('recherche_par', ChoiceType::class, [
'required' => false,
'choices' => $recherche_par,
'expanded' => true,
'multiple' => false,
'data' => $parametres['recherche_par'],
'placeholder' => false,
'choice_value' => function ($choice) {
return $choice; // Utilisez la valeur du choix comme clé
}
])
->add('reference_mots_cles', TextType::class, [
'required' => false,
'data' => $parametres['reference_mots_cles'],
'attr' => [
'placeholder' => $translationExtension->translate("transport, services informatiques, ...", $lang, '', 'M', '')
]
])
/* ->add('id_secteur_activite_fonds', ChoiceType::class, [
'choices' => $secteurs_activite,
'data' => $parametres['id_secteur_activite_fonds']
]) */
->add('id_secteur_activite', ChoiceType::class, [
'choices' => $secteurs_activite1,
'data' => $parametres['id_secteur_activite']
])
->add('id_secteur_activite2', ChoiceType::class, [
'choices' => $secteurs_activite2,
'data' => $parametres['id_secteur_activite2']
])
->add('id_secteur_activite3', ChoiceType::class, [
'choices' => $secteurs_activite3,
'data' => $parametres['id_secteur_activite3']
])
->add('id_secteur', HiddenType::class, [
'data' => $parametres['id_secteur'],
])
->add('ajouter_secteur_activite', ButtonType::class)
->add('ca', TextType::class, ['required' => false])
->add('date', TextType::class, ['required' => false])
->add('societe_cotee', ChoiceType::class, [
'choices' => $societe_cotee,
'data' => $parametres['societe_cotee']
])
->add('type_recherche', HiddenType::class, [
'data' => 5,
])
->add('rechercher', SubmitType::class)
->setAction($this->generateUrl('vendre_entreprise_resultats_participations_fonds', ['codePays' => $codePays]))
->setMethod('GET')
->getForm();
// On récupère depuis Parametre Site
$anciennete_minimale_investissement_participation = $psm->getValueParamSiteByParamCodePays("anciennete_minimale_investissement_participation", "fr");
$anciennete_maximale_investissement_participation = $psm->getValueParamSiteByParamCodePays("anciennete_maximale_investissement_participation", "fr");
// annee_minimale vaut l'année en cours, moins l'ancienneté maximale fixée dans Parametres Site (par exemple 2025 - 15 ans => 2010)
$annee_minimale = (int) date('Y') - $anciennete_maximale_investissement_participation;
// annee_maximale vaut l'année en cours, moins l'ancienneté minimale fixée dans Parametres Site (par exemple 2025 - 5 ans => 2020)
$annee_maximale = (int) date('Y') - $anciennete_minimale_investissement_participation;
return $this->render(
'vendre_entreprise/recherche_avancee_participation_fonds.html.twig',
[
/* 'nb_actifs' => $nb_actifs,
'nb_entreprises' => $nb_entreprises,
'nb_cibles_potentielles' => $nb_cibles_potentielles,
'nb_recherches_partenariats' => $nb_recherches_partenariats, */
'form' => $form->createView(),
'parametres' => $parametres,
'parametres_localisations' => $parametres_localisations,
'parametres_secteurs' => $parametres_secteurs,
'string_params' => $string_params,
'show_secteur_niveau_2' => $show_secteur_niveau_2,
'show_secteur_niveau_3' => $show_secteur_niveau_3,
'annee_minimale' => $annee_minimale,
'annee_maximale' => $annee_maximale
]
);
}
public function rechercheavanceefondsacquereur(Request $request, SecteursActiviteManagers $secteursActiviteManager, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $codePays): Response {
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$parametres_localisations = ParametersProvider::prepareLocalisationsParameters($localisationManager, $parametres);
$parametres_secteurs = ParametersProvider::prepareSecteursParameters($secteursActiviteManager, $parametres);
$string_params = $this->serializeParams($parametres);
/*
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_acquereurs_investisseurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_acquereurs_investisseurs;
*/
$lang = $request->getSession()->get('lang');
$secteurs_activite1 = $secteursActiviteManager->donne_option_select_secteurs_activite_niveau_1();
//$secteurs_activite_fonds = $secteursActiviteManager->donne_option_select_secteurs_activite_fonds();
if (isset($parametres['id_secteur_activite'])) {
$secteurs_activite2 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite']);
$show_secteur_niveau_2 = true;
} else {
$secteurs_activite2 = [];
$show_secteur_niveau_2 = false;
}
if (isset($parametres['id_secteur_activite2'])) {
$secteurs_activite3 = $secteursActiviteManager->donne_option_select_secteurs_activite_enfant_by_secteur_activite_parent($parametres['id_secteur_activite2']);
$show_secteur_niveau_3 = true;
} else {
$secteurs_activite3 = [];
$show_secteur_niveau_3 = false;
}
$recherche_par = [
$translationExtension->translate("mots-cles de l'activite recherchee", $lang, '', 'M', '') => 'motscles',
$translationExtension->translate("secteur predefini", $lang, '', 'M', '') => 'secteurs'
];
//dd($parametres,$show_secteur_niveau_2, $show_secteur_niveau_3);
//$pays = $this->arm->donne_option_select_pays_annuaire_repreneurs(); // A faire avec liste pays recherchees acquéreur prêt à investir
//$regions = [];
$formFactory = Forms::createFormFactoryBuilder()->getFormFactory();
$form = $formFactory->createNamedBuilder('')
->add('id_secteur_activite', ChoiceType::class, [
'choices' => $secteurs_activite1,
'data' => $parametres['id_secteur_activite']
])
->add('id_secteur_activite2', ChoiceType::class, [
'choices' => $secteurs_activite2,
'data' => $parametres['id_secteur_activite2']
])
->add('id_secteur_activite3', ChoiceType::class, [
'choices' => $secteurs_activite3,
'data' => $parametres['id_secteur_activite3']
])
->add('id_secteur', HiddenType::class, [
'data' => $parametres['id_secteur'],
])
->add('ajouter_secteur_activite', ButtonType::class)
// ->add('id_secteur_activite_fonds', ChoiceType::class, [
// 'choices' => $secteurs_activite_fonds,
// 'data' => $parametres['id_secteur_activite_fonds']
// ])
->add('recherche_par', ChoiceType::class, [
'required' => false,
'choices' => $recherche_par,
'expanded' => true,
'multiple' => false,
'data' => $parametres['recherche_par'],
'placeholder' => false,
'choice_value' => function ($choice) {
return $choice; // Utilisez la valeur du choix comme clé
}
])
->add('reference_mots_cles', TextType::class, [
'required' => false,
'attr' => [
'placeholder' => $translationExtension->translate("transport, services informatiques, ...", $lang, '', 'M', '')
],
'data' => $parametres['reference_mots_cles']
])
/* ->add('code_naf', TextType::class, [
'required' => false,
'attr' => [
'placeholder' => $translationExtension->translate("ex : 58.36Z", $lang, '', 'M', '')
],
'data' => $parametres['code_naf']
]) */
->add('rechercher', SubmitType::class)
->setAction($this->generateUrl('vendre_entreprise_resultats_fonds_acquereur', ['codePays' => $codePays]))
->setMethod('GET')
->getForm();
return $this->render(
'vendre_entreprise/recherche_avancee_fonds_acquereur.html.twig',
[
/* 'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acquereurs_investisseurs' => $nb_acquereurs_investisseurs,
'nb_recherches_partenariats' => $nb_recherches_partenariats, */
'form' => $form->createView(),
'parametres' => $parametres,
'parametres_localisations' => $parametres_localisations,
'parametres_secteurs' => $parametres_secteurs,
'string_params' => $string_params,
'show_secteur_niveau_2' => $show_secteur_niveau_2,
'show_secteur_niveau_3' => $show_secteur_niveau_3
]
);
}
public function acquisition(Request $request, PaginatorInterface $paginator, ContainerBagInterface $container, LocalisationsManagers $localisationManager, LocalisationsRepository $localisationsRepo, TranslationExtension $translationExtension, ParametresDiversRepository $parametresDiversRepo, $type = null, $idLocalisation = null, $slug = null, $idSecteurActivite = null, $codePays): Response {
$lang = $request->getSession()->get('lang');
$parametres = $request->query->all();
$is_recherche_by_localisation = false;
$metaTitle = $metaDescription = null;
$arrayVarsTrans = [];
// Recherche standard
if ($idLocalisation || $idSecteurActivite) {
// Preparation des parametres
if ($idLocalisation) {
if ($type == 'd') {
$parametres['id_departement'] = $idLocalisation;
$child_type = null;
$parent_type = "r";
} elseif ($type == "r") {
$parametres['id_region'] = $idLocalisation;
$child_type = "d";
$parent_type = "p";
} else {
$parametres['id_pays'] = $idLocalisation;
$child_type = "r";
$parent_type = null;
}
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
if ($idSecteurActivite) {
$parametres['id_secteur_activite'] = $idSecteurActivite;
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
// Recherche par localisation
if ($idLocalisation) {
$localisations = $localisationManager->getLocalisationCompleteWithNavById($idLocalisation);
if (!$localisations) {
$this->addFlash('error', $translationExtension->translate('erreur de localisation', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_annonces_acquisition', ['codePays' => $codePays]);
}
$villesRepo = $this->getDoctrine()->getRepository(Villes::class);
$noms_ville = $villesRepo->donne_string_noms_villes_principales_dune_localisation($idLocalisation);
$sous_localisations = $localisationsRepo->getSubLevelLocalisations($idLocalisation);
$sous_localisations_numbers = [];
$prev_localisation = [];
foreach ($sous_localisations as $sous_localisation) {
$params = [];
if ($idSecteurActivite) {
$params['id_secteur_activite'] = $idSecteurActivite;
}
if ($type == "r") {
$params['id_departement'] = $sous_localisation['id_localisation'];
} else {
if ($idLocalisation == "99") {
$params['id_pays'] = $sous_localisation['id_localisation'];
$child_type = "p";
} else {
$params['id_region'] = $sous_localisation['id_localisation'];
}
}
$sous_localisation['type'] = $child_type;
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
if ($idLocalisation == 99) {
if ($sous_localisation['nom_localisation'] != "Confidentiel" && $annonces_numbers['nb_annonces_acquisition'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
} else {
if ($sous_localisation['nom_localisation'] != "Confidentiel" || $annonces_numbers['nb_annonces_acquisition'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
}
}
if (!$prev_localisation && $parent_type) {
$prev_localisation = isset($localisations[count($localisations) - 2]) ? $localisations[count($localisations) - 2] : null;
$prev_localisation['type'] = $parent_type;
}
$last_localisation = end($localisations);
$arrayVarsTrans['prefixe_localisation'] = $last_localisation['prefixe'];
$arrayVarsTrans['nom_localisation'] = strtoupper($last_localisation['nom_localisation']);
$metaTitle = '%$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'aquisition d\'ENTREPRISE %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'aquisition d\'entreprise %$prefixe_localisation%$ %$nom_localisation%$';
}
// Recherche par secteur d'activite
if ($idSecteurActivite) {
$secteurActivites = $this->sam->getTreeSecteursActivite($idSecteurActivite);
if (!$secteurActivites) {
$this->addFlash('error', $translationExtension->translate("erreur de secteur d'activité", $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_annonces_acquisition', ['codePays' => $codePays]);
}
$secteurActiviteRepo = $this->getDoctrine()->getRepository(SecteursActivite::class);
$sous_secteurs = $secteurActiviteRepo->getAllSecteursActiviteEnfantByIdSecteurParent($idSecteurActivite);
$sous_secteurs_numbers = [];
$prev_secteur = [];
foreach ($sous_secteurs as $sous_secteur) {
$params = [];
$params['id_secteur_activite'] = $sous_secteur['idSecteurActivite'];
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
$sous_secteurs_numbers[] = array_merge($sous_secteur, $annonces_numbers);
}
if (!$prev_secteur) {
$prev_secteur = isset($secteurActivites[count($secteurActivites) - 2]) ? $secteurActivites[count($secteurActivites) - 2] : null;
}
$last_secteur = end($secteurActivites);
$arrayVarsTrans['nomPourTitle'] = $last_secteur->getNomPourTitle();
// Si ce n'est pas une recherche croisée
if (!$idLocalisation) {
$metaTitle = '%$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'aquisition d\'ENTREPRISE %$nomPourTitle%$';
$metaDescription = 'consultez %$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'aquisition d\'entreprise %$nomPourTitle%$';
} else {
$metaTitle = '%$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'aquisition d\'ENTREPRISE %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'aquisition d\'entreprise %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
}
}
// Recherche avancée / dernières annonces
} else {
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
}
$is_recherche = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters() !== ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
if (isset($parametres['id_localisation']) && $parametres['id_localisation'] != "") {
$is_recherche_by_localisation = true;
}
$string_params = $string_params_without_page = $this->serializeParams($parametres);
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
// Si c'est une recherche, on calcule les nb à afficher
if ($is_recherche) {
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_investisseurs_acquereurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
} else {
// Sinon on récupère les nb stockés dans parametres_divers
$nb = $parametresDiversRepo->getListNombresAafficher();
$nb_annonces_acheteur = $nb->vendre_une_entreprise_nb_acheteurs;
$nb_annonces_acquisition = $nb->vendre_une_entreprise_nb_annonces_acquistions;
$nb_cvs = $nb->vendre_une_entreprise_nb_cv_repreneurs;
$nb_acquereurs_historiques = $nb->vendre_une_entreprise_nb_acquereurs_historique;
$nb_participations_fonds = $nb->vendre_une_entreprise_nb_participations_de_fonds;
$nb_acheteurs_potentiels = $nb->vendre_une_entreprise_nb_acheteurs_potentiels;
$nb_investisseurs_acquereurs = $nb->vendre_une_entreprise_nb_investisseurs_acquereurs;
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
}
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$dernieresAnnonces = $request->query->get('dernieresAnnonces');
$nb_total_annonces_prioritaires = $repoAcheteur->donne_nb_annonces_acheteur_prioritaires($parametres, 'nombre');
$liste_annonces_prioritaires = [];
if ((null == $request->get('page') || 1 == $request->get('page')) && (!isset($_GET['tri']) || null == $_GET['tri'] || '21' == $_GET['tri'] || '' == $_GET['tri']) && $dernieresAnnonces == null) {
$liste_annonces_prioritaires = $this->am->getAnnoncesPrioritairesAcquisition($parametres, 'entreprise', $login_utilisateur);
}
$liste_annonces = $this->am->getAnnoncesAcquisitionList($request, $paginator, $parametres, 'entreprise', $login_utilisateur);
$page = $request->query->get('page');
if ($page != null && $page != 1) {
$string_params .= "&page=" . $page;
}
$tri = isset($parametres['tri']) ? $parametres['tri'] : null;
$urlList = $request->getPathInfo();
$tri_default = null;
// Si aucun tri
if (!$tri) {
// On trie par pertinence s'il y a une localisation
if ($is_recherche_by_localisation) {
$tri_default = "pertinence";
}
// Sinon par CA si c'est une recherche
elseif ($is_recherche) {
$tri_default = "ca_desc";
} else {
$tri_default = "date_desc";
}
}
// Si ce n'est pas une recherche par loc / sec ou croisé
if ($metaTitle == null && $metaTitle == null) {
$metaTitle = '%$nb_annonces_acquisition%$ $$annonce$${p|annonces} de recherche d\'acquisition';
$metaDescription = 'consultez %$nb_annonces_acquisition%$ $$annonce $${p|annonces} de recherche d\'acquisition en fonction de vos critères de recherche.';
}
$arrayVarsTrans['nb_annonces_acquisition'] = $nb_annonces_acquisition;
if ($nb_annonces_acquisition > 1) {
$p = 'p';
} else {
$p = '';
}
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", $p, $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", $p, $arrayVarsTrans))
->setRobots('noindex');
$array_return = [
'metaTag' => $metaTag,
'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_investisseurs_acquereurs' => $nb_investisseurs_acquereurs,
'liste_annonces_prioritaires' => $liste_annonces_prioritaires,
'liste_annonces' => $liste_annonces,
'nb_total_annonces_prioritaires' => $nb_total_annonces_prioritaires,
'string_params' => $string_params,
'string_params_without_page' => $string_params_without_page,
'tri' => $tri,
'urlList' => $urlList,
'idLocalisation' => null,
'idSecteurActivite' => null,
'tri_default' => $tri_default,
'is_recherche_by_localisation' => $is_recherche_by_localisation,
'cdn_fusacq' => $container->get('app.CDN')['CDN_FUSACQ'],
];
if ($idLocalisation || $idSecteurActivite) {
if ($idLocalisation) {
$array_return['idLocalisation'] = $idLocalisation;
$array_return['idSecteurActivite'] = $idSecteurActivite ? $idSecteurActivite : null;
$array_return['slug'] = $slug;
$array_return['type'] = $type;
$array_return['localisations'] = $localisations;
$array_return['noms_ville'] = $noms_ville;
$array_return['sous_localisations_numbers'] = $sous_localisations_numbers;
$array_return['prev_localisation'] = $prev_localisation;
}
if ($idSecteurActivite) {
$array_return['idSecteurActivite'] = $idSecteurActivite;
$array_return['idLocalisation'] = $idLocalisation ? $idLocalisation : null;
$array_return['slug'] = $slug;
$array_return['secteurActivites'] = $secteurActivites;
$array_return['sous_secteurs_numbers'] = $sous_secteurs_numbers;
$array_return['prev_secteur'] = $prev_secteur;
}
if ($idLocalisation && $idSecteurActivite) {
$array_return['idLocalisation'] = $idLocalisation;
}
}
return $this->render(
'vendre_entreprise/acquisition.html.twig',
$array_return
);
}
public function cvrepreneur(Request $request, PaginatorInterface $paginator, LocalisationsManagers $localisationManager, LocalisationsRepository $localisationsRepo, TranslationExtension $translationExtension, AnnuairesManagers $annuairesManager, ParametresDiversRepository $parametresDiversRepo, $type = null, $idLocalisation = null, $slug = null, $idSecteurActivite = null, $codePays): Response {
$lang = $request->getSession()->get('lang');
$parametres = $request->query->all();
$is_recherche_by_localisation = false;
$metaTitle = $metaDescription = null;
$arrayVarsTrans = [];
// Recherche standard
if ($idLocalisation || $idSecteurActivite) {
// Preparation des parametres
if ($idLocalisation) {
if ($type == 'd') {
$parametres['id_departement'] = $idLocalisation;
$child_type = null;
$parent_type = "r";
} elseif ($type == "r") {
$parametres['id_region'] = $idLocalisation;
$child_type = "d";
$parent_type = "p";
} else {
$parametres['id_pays'] = $idLocalisation;
$child_type = "r";
$parent_type = null;
}
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
if ($idSecteurActivite) {
$parametres['id_secteur_activite'] = $idSecteurActivite;
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
// Recherche par localisation
if ($idLocalisation) {
$localisations = $localisationManager->getLocalisationCompleteWithNavById($idLocalisation);
if (!$localisations) {
$this->addFlash('error', $translationExtension->translate('erreur de localisation', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_cv_repreneur', ['codePays' => $codePays]);
}
$villesRepo = $this->getDoctrine()->getRepository(Villes::class);
$noms_ville = $villesRepo->donne_string_noms_villes_principales_dune_localisation($idLocalisation);
$sous_localisations = $localisationsRepo->getSubLevelLocalisations($idLocalisation);
$sous_localisations_numbers = [];
$prev_localisation = [];
foreach ($sous_localisations as $sous_localisation) {
$params = [];
if ($idSecteurActivite) {
$params['id_secteur_activite'] = $idSecteurActivite;
}
if ($type == "r") {
$params['id_departement'] = $sous_localisation['id_localisation'];
} else {
if ($idLocalisation == "99") {
$params['id_pays'] = $sous_localisation['id_localisation'];
$child_type = "p";
} else {
$params['id_region'] = $sous_localisation['id_localisation'];
}
}
$sous_localisation['type'] = $child_type;
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
if ($idLocalisation == 99) {
if ($sous_localisation['nom_localisation'] != "Confidentiel" && $annonces_numbers['nb_cvs'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
} else {
if ($sous_localisation['nom_localisation'] != "Confidentiel" || $annonces_numbers['nb_cvs'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
}
}
if (!$prev_localisation && $parent_type) {
$prev_localisation = isset($localisations[count($localisations) - 2]) ? $localisations[count($localisations) - 2] : null;
$prev_localisation['type'] = $parent_type;
}
$last_localisation = end($localisations);
$arrayVarsTrans['prefixe_localisation'] = $last_localisation['prefixe'];
$arrayVarsTrans['nom_localisation'] = strtoupper($last_localisation['nom_localisation']);
$metaTitle = '%$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise %$prefixe_localisation%$ %$nom_localisation%$';
}
// Recherche par secteur d'activite
if ($idSecteurActivite) {
$secteurActivites = $this->sam->getTreeSecteursActivite($idSecteurActivite);
if (!$secteurActivites) {
$this->addFlash('error', $translationExtension->translate("erreur de secteur d'activité", $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_cv_repreneur', ['codePays' => $codePays]);
}
$secteurActiviteRepo = $this->getDoctrine()->getRepository(SecteursActivite::class);
$sous_secteurs = $secteurActiviteRepo->getAllSecteursActiviteEnfantByIdSecteurParent($idSecteurActivite);
$sous_secteurs_numbers = [];
$prev_secteur = [];
foreach ($sous_secteurs as $sous_secteur) {
$params = [];
$params['id_secteur_activite'] = $sous_secteur['idSecteurActivite'];
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
$sous_secteurs_numbers[] = array_merge($sous_secteur, $annonces_numbers);
}
if (!$prev_secteur) {
$prev_secteur = isset($secteurActivites[count($secteurActivites) - 2]) ? $secteurActivites[count($secteurActivites) - 2] : null;
}
$last_secteur = end($secteurActivites);
$arrayVarsTrans['nomPourTitle'] = $last_secteur->getNomPourTitle();
// Si ce n'est pas une recherche croisée
if (!$idLocalisation) {
$metaTitle = '%$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise %$nomPourTitle%$ ';
$metaDescription = 'consultez %$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise %$nomPourTitle%$';
} else {
$metaTitle = '%$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
}
}
// Recherche avancée / dernières annonces
} else {
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
}
$is_recherche = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters() !== ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
if (isset($parametres['id_localisation']) && $parametres['id_localisation']) {
$is_recherche_by_localisation = true;
}
$string_params = $string_params_without_page = $this->serializeParams($parametres);
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
// Si c'est une recherche, on calcule les nb à afficher
if ($is_recherche) {
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_investisseurs_acquereurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
} else {
// Sinon on récupère les nb stockés dans parametres_divers
$nb = $parametresDiversRepo->getListNombresAafficher();
$nb_annonces_acheteur = $nb->vendre_une_entreprise_nb_acheteurs;
$nb_annonces_acquisition = $nb->vendre_une_entreprise_nb_annonces_acquistions;
$nb_cvs = $nb->vendre_une_entreprise_nb_cv_repreneurs;
$nb_acquereurs_historiques = $nb->vendre_une_entreprise_nb_acquereurs_historique;
$nb_participations_fonds = $nb->vendre_une_entreprise_nb_participations_de_fonds;
$nb_acheteurs_potentiels = $nb->vendre_une_entreprise_nb_acheteurs_potentiels;
$nb_investisseurs_acquereurs = $nb->vendre_une_entreprise_nb_investisseurs_acquereurs;
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
}
$liste_cvs = $annuairesManager->getCVsRepreneursListBis($request, $paginator, $parametres);
$tri = isset($parametres['tri']) ? $parametres['tri'] : null;
$page = $request->query->get('page');
if ($page != null && $page != 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->getPathInfo();
$tri_default = null;
// Si aucun tri
if (!$tri) {
// On trie par pertinence s'il y a une localisation
if ($is_recherche_by_localisation) {
$tri_default = "pertinence";
}
// Sinon par CA si c'est une recherche
// elseif ($is_recherche) {
// $tri_default = "ca_desc";
// } else {
// $tri_default = "date_desc";
// }
else {
$tri_default = "date_desc";
}
}
// Si ce n'est pas une recherche par loc / sec ou croisé
if ($metaTitle == null && $metaTitle == null) {
$metaTitle = '%$nb_cvs%$ CV de $$repreneur$${p|repreneur} d\'entreprise';
$metaDescription = 'consultez %$nb_cvs%$ CV de $$repreneur$${p|repreneurs} d\'entreprise en fonction de vos critères de recherche.';
}
$arrayVarsTrans['nb_cvs'] = $nb_cvs;
if ($nb_cvs > 1) {
$p = 'p';
} else {
$p = '';
}
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", $p, $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", $p, $arrayVarsTrans))
->setRobots('noindex');
$array_return = [
'metaTag' => $metaTag,
'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_investisseurs_acquereurs' => $nb_investisseurs_acquereurs,
'liste_cvs' => $liste_cvs,
'string_params' => $string_params,
'string_params_without_page' => $string_params_without_page,
'tri' => $tri,
'get' => isset($parametres['reference_mots_cles']) && trim($parametres['reference_mots_cles']) ? trim($parametres['reference_mots_cles']) : "_",
'urlList' => $urlList,
'idLocalisation' => null,
'idSecteurActivite' => null,
'tri_default' => $tri_default,
'is_recherche_by_localisation' => $is_recherche_by_localisation
];
if ($idLocalisation || $idSecteurActivite) {
if ($idLocalisation) {
$array_return['idLocalisation'] = $idLocalisation;
$array_return['idSecteurActivite'] = $idSecteurActivite ? $idSecteurActivite : null;
$array_return['slug'] = $slug;
$array_return['type'] = $type;
$array_return['localisations'] = $localisations;
$array_return['noms_ville'] = $noms_ville;
$array_return['sous_localisations_numbers'] = $sous_localisations_numbers;
$array_return['prev_localisation'] = $prev_localisation;
}
if ($idSecteurActivite) {
$array_return['idSecteurActivite'] = $idSecteurActivite;
$array_return['idLocalisation'] = $idLocalisation ? $idLocalisation : null;
$array_return['slug'] = $slug;
$array_return['secteurActivites'] = $secteurActivites;
$array_return['sous_secteurs_numbers'] = $sous_secteurs_numbers;
$array_return['prev_secteur'] = $prev_secteur;
}
if ($idLocalisation && $idSecteurActivite) {
$array_return['idLocalisation'] = $idLocalisation;
}
}
return $this->render(
'vendre_entreprise/cv_repreneur.html.twig',
$array_return
);
}
public function acquereurhistorique(Request $request, PaginatorInterface $paginator, LocalisationsManagers $localisationManager, LocalisationsRepository $localisationsRepo, TranslationExtension $translationExtension, ParametresDiversRepository $parametresDiversRepo, $type = null, $idLocalisation = null, $slug = null, $idSecteurActivite = null, $codePays): Response {
$lang = $request->getSession()->get('lang');
$parametres = $request->query->all();
$metaTitle = $metaDescription = null;
$arrayVarsTrans = [];
// Recherche standard
if ($idLocalisation || $idSecteurActivite) {
// Preparation des parametres
if ($idLocalisation) {
if ($type == 'd') {
$parametres['id_departement'] = $idLocalisation;
$child_type = null;
$parent_type = "r";
} elseif ($type == "r") {
$parametres['id_region'] = $idLocalisation;
$child_type = "d";
$parent_type = "p";
} else {
$parametres['id_pays'] = $idLocalisation;
$child_type = "r";
$parent_type = null;
}
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
if ($idSecteurActivite) {
$parametres['id_secteur_activite'] = $idSecteurActivite;
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
// Recherche par localisation
if ($idLocalisation) {
$localisations = $localisationManager->getLocalisationCompleteWithNavById($idLocalisation);
if (!$localisations) {
$this->addFlash('error', $translationExtension->translate('erreur de localisation', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_acquereur_historique', ['codePays' => $codePays]);
}
$villesRepo = $this->getDoctrine()->getRepository(Villes::class);
$noms_ville = $villesRepo->donne_string_noms_villes_principales_dune_localisation($idLocalisation);
$sous_localisations = $localisationsRepo->getSubLevelLocalisations($idLocalisation);
$sous_localisations_numbers = [];
$prev_localisation = [];
foreach ($sous_localisations as $sous_localisation) {
$params = [];
if ($idSecteurActivite) {
$params['id_secteur_activite'] = $idSecteurActivite;
}
if ($type == "r") {
$params['id_departement'] = $sous_localisation['id_localisation'];
} else {
if ($idLocalisation == "99") {
$params['id_pays'] = $sous_localisation['id_localisation'];
$child_type = "p";
} else {
$params['id_region'] = $sous_localisation['id_localisation'];
}
}
$sous_localisation['type'] = $child_type;
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
if ($idLocalisation == 99) {
if ($sous_localisation['nom_localisation'] != "Confidentiel" && $annonces_numbers['nb_acquereurs_historiques'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
} else {
if ($sous_localisation['nom_localisation'] != "Confidentiel" || $annonces_numbers['nb_acquereurs_historiques'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
}
}
if (!$prev_localisation && $parent_type) {
$prev_localisation = isset($localisations[count($localisations) - 2]) ? $localisations[count($localisations) - 2] : null;
$prev_localisation['type'] = $parent_type;
}
$last_localisation = end($localisations);
$arrayVarsTrans['prefixe_localisation'] = $last_localisation['prefixe'];
$arrayVarsTrans['nom_localisation'] = strtoupper($last_localisation['nom_localisation']);
$metaTitle = '%$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} %$prefixe_localisation%$ %$nom_localisation%$';
}
// Recherche par secteur d'activite
if ($idSecteurActivite) {
$secteurActivites = $this->sam->getTreeSecteursActivite($idSecteurActivite);
if (!$secteurActivites) {
$this->addFlash('error', $translationExtension->translate("erreur de secteur d'activité", $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_acquereur_historique', ['codePays' => $codePays]);
}
$secteurActiviteRepo = $this->getDoctrine()->getRepository(SecteursActivite::class);
$sous_secteurs = $secteurActiviteRepo->getAllSecteursActiviteEnfantByIdSecteurParent($idSecteurActivite);
$sous_secteurs_numbers = [];
$prev_secteur = [];
foreach ($sous_secteurs as $sous_secteur) {
$params = [];
$params['id_secteur_activite'] = $sous_secteur['idSecteurActivite'];
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
$sous_secteurs_numbers[] = array_merge($sous_secteur, $annonces_numbers);
}
if (!$prev_secteur) {
$prev_secteur = isset($secteurActivites[count($secteurActivites) - 2]) ? $secteurActivites[count($secteurActivites) - 2] : null;
}
$last_secteur = end($secteurActivites);
$arrayVarsTrans['nomPourTitle'] = $last_secteur->getNomPourTitle();
// Si ce n'est pas une recherche croisée
if (!$idLocalisation) {
$metaTitle = '%$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} %$nomPourTitle%$';
$metaDescription = 'consultez %$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} %$nomPourTitle%$';
} else {
$metaTitle = '%$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
}
}
// Recherche avancée / dernières annonces
} else {
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
}
$is_recherche = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters() !== ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $string_params_without_page = $this->serializeParams($parametres);
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
// Si c'est une recherche, on calcule les nb à afficher
if ($is_recherche) {
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_investisseurs_acquereurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
} else {
// Sinon on récupère les nb stockés dans parametres_divers
$nb = $parametresDiversRepo->getListNombresAafficher();
$nb_annonces_acheteur = $nb->vendre_une_entreprise_nb_acheteurs;
$nb_annonces_acquisition = $nb->vendre_une_entreprise_nb_annonces_acquistions;
$nb_cvs = $nb->vendre_une_entreprise_nb_cv_repreneurs;
$nb_acquereurs_historiques = $nb->vendre_une_entreprise_nb_acquereurs_historique;
$nb_participations_fonds = $nb->vendre_une_entreprise_nb_participations_de_fonds;
$nb_acheteurs_potentiels = $nb->vendre_une_entreprise_nb_acheteurs_potentiels;
$nb_investisseurs_acquereurs = $nb->vendre_une_entreprise_nb_investisseurs_acquereurs;
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
}
// Verifier si droit_acces Annuaire participation ou Fusacq Expert
$has_service = false;
//On verifie si l'utilisateur a le droit de consulter cette page
$user = $this->getUser();
if ($user) {
$has_service = $this->dm->checkIfThisUserHasDroitService($user, [2]); // 2 = annuaire_participations
} else {
$has_service = false;
}
/* $parametres['date'] = "12-12-2022";
$parametres['date_avant_apres'] = "0";
$parametres['reference_mots_cles'] = "med ";
$parametres['rdb_expert_unique'] = 1;
$parametres['id_secteur_activite'] = "1";
$parametres['code_naf'] = "1";
$parametres['id_localisation'] = "99";
$parametres['id_pays'] = "15"; */
$liste_acquereurs_historiques = $this->sm->getAcquereurHistoriqueList($request, $paginator, $parametres);
//dd($liste_acquereurs_historiques);
$page = $request->query->get('page');
if ($page != null && $page != 1) {
$string_params .= "&page=" . $page;
}
$tri = isset($parametres['tri']) ? $parametres['tri'] : null;
$urlList = $request->getPathInfo();
$show_modal = true;
if (isset($_COOKIE['show_modal_acquereur_historique']) && "false" == $_COOKIE['show_modal_acquereur_historique']) {
$show_modal = false;
}
$tri = isset($parametres['tri']) ? $parametres['tri'] : null;
$tri_default = null;
// Si aucun tri
if (!$tri) {
// On trie par CA si c'est une recherche
if ($is_recherche) {
$tri_default = "ca_desc";
} else {
$tri_default = "date_desc";
}
}
$is_recherche_by_one_localisation = $this->isRechercheByOneLocalisation($parametres);
$is_recherche_by_several_localisations = $this->isRechercheBySeveralLocalisations($parametres);
$is_recherche_by_one_sous_localisation_only = $this->isRechercheByOneSousLocalisationOnly($parametres);
$complement_titre = "";
$id_pays_recherche = null;
$text_pays_recherche = null;
$nb_acquereurs_pays = null;
$string_params_pays = null;
if ($is_recherche_by_one_localisation) {
if ($is_recherche_by_one_sous_localisation_only) {
$id_pays_recherche = $this->getPaysIdLocalisationBySousLocalisationId($parametres['id_localisation']);
$pays_recherche = $localisationManager->getNomLocalisationWithPrefixById($id_pays_recherche);
if ($pays_recherche) {
$text_pays_recherche = $pays_recherche[0]['nom_localisation'];
} else {
$text_pays_recherche = "";
}
$parametres_pays = $parametres;
$parametres_pays['id_localisation'] = ',p' . $id_pays_recherche . ',';
$nb_acquereurs_pays = $this->getAnnoncesNumbers($parametres_pays)['nb_acquereurs_historiques'];
$string_params_pays = str_replace($parametres['id_localisation'], ',p' . $id_pays_recherche . ',', $string_params_without_page);
// Si sous localisation en France
if ($id_pays_recherche == "33") {
$id_sous_localisation = substr(array_values(array_filter(explode(",", $parametres['id_localisation'])))[0], 1);
$sous_localisation = $localisationsRepo->findOneBy(['id_localisation' => $id_sous_localisation]);
if ($sous_localisation) {
$complement_titre = $sous_localisation->__get('prefixe') . ' ' . $sous_localisation->__get('nom_localisation');
}
} else {
$complement_titre = "dans cette localisation";
}
} else {
$id_localisation = substr(array_values(array_filter(explode(",", $parametres['id_localisation'])))[0], 1);
$pays = $localisationsRepo->findOneBy(['id_localisation' => $id_localisation]);
if ($pays) {
$complement_titre = $pays->__get('prefixe') . ' ' . $pays->__get('nom_localisation');
}
}
} elseif ($is_recherche_by_several_localisations) {
$complement_titre = "dans vos localisations";
}
// Si ce n'est pas une recherche par loc / sec ou croisé
if ($metaTitle == null && $metaTitle == null) {
$metaTitle = '%$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques}';
$metaDescription = 'consultez %$nb_acquereurs_historiques%$ $$acquereur historique$${p|acquereurs historiques} en fonction de vos critères de recherche.';
}
$arrayVarsTrans['nb_acquereurs_historiques'] = $nb_acquereurs_historiques;
if ($nb_acquereurs_historiques > 1) {
$p = 'p';
} else {
$p = '';
}
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", $p, $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", $p, $arrayVarsTrans))
->setRobots('noindex');
$array_return = [
'metaTag' => $metaTag,
'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_investisseurs_acquereurs' => $nb_investisseurs_acquereurs,
'liste_acquereurs_historiques' => $liste_acquereurs_historiques,
'string_params' => $string_params,
'string_params_without_page' => $string_params_without_page,
'tri' => $tri,
'get' => isset($parametres['reference_mots_cles']) && trim($parametres['reference_mots_cles']) ? trim($parametres['reference_mots_cles']) : "_",
'urlList' => $urlList,
'idLocalisation' => null,
'idSecteurActivite' => null,
'tri_default' => $tri_default,
'show_modal' => $show_modal,
'has_service' => $has_service,
'is_recherche_by_one_sous_localisation_only' => $is_recherche_by_one_sous_localisation_only,
'id_pays_recherche' => $id_pays_recherche,
'text_pays_recherche' => $text_pays_recherche,
'string_params_pays' => $string_params_pays,
'nb_acquereurs_pays' => $nb_acquereurs_pays,
'complement_titre' => $complement_titre
];
if ($idLocalisation || $idSecteurActivite) {
if ($idLocalisation) {
$array_return['idLocalisation'] = $idLocalisation;
$array_return['idSecteurActivite'] = $idSecteurActivite ? $idSecteurActivite : null;
$array_return['slug'] = $slug;
$array_return['type'] = $type;
$array_return['localisations'] = $localisations;
$array_return['noms_ville'] = $noms_ville;
$array_return['sous_localisations_numbers'] = $sous_localisations_numbers;
$array_return['prev_localisation'] = $prev_localisation;
}
if ($idSecteurActivite) {
$array_return['idSecteurActivite'] = $idSecteurActivite;
$array_return['idLocalisation'] = $idLocalisation ? $idLocalisation : null;
$array_return['slug'] = $slug;
$array_return['secteurActivites'] = $secteurActivites;
$array_return['sous_secteurs_numbers'] = $sous_secteurs_numbers;
$array_return['prev_secteur'] = $prev_secteur;
}
if ($idLocalisation && $idSecteurActivite) {
$array_return['idLocalisation'] = $idLocalisation;
}
}
return $this->render(
'vendre_entreprise/acquereur_historique.html.twig',
$array_return
);
}
public function detailacquereurhistorique(Request $request, BuzzManagers $buzzManager, LocalisationsRepository $localisationsRepository, TranslationExtension $translationExtension, GoogleTag $googleTag, CommandesRepository $cr, $idSociete, $codePays): Response {
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres);
// Verifier si droit_acces Annuaire participation ou Fusacq Expert
$has_service = false;
$hasCommande = false;
$lignePanier = false;
$hasForfait = false;
$isNoLongerAvailable = false;
$forfaitAUtiliser = false;
//On verifie si l'utilisateur a le droit de consulter cette page
$user = $this->getUser();
if ($user) {
$has_service = $this->dm->checkIfThisUserHasDroitService($user, [2]); // 2 = annuaire_participations
$lignePanier = $this->em->getRepository(Panier::class)->findOneBy(
['login_utilisateur' => $user->_get('login_utilisateur'), "type_object" => 'annonce_AH', "id_object" => $idSociete]
);
$forfaitAUtiliser = $this->dam->getFrofaitAnnonceToUse($user);
if (!empty($forfaitAUtiliser)) {
$hasForfait = true;
}
// On regarde si l'acquéreur historique a été commandé dans la table commandes
$hasCommande = $cr->hasAnnonceCommande($user->_get('login_utilisateur'), $idSociete, "acquereur_historique");
} else {
$has_service = false;
}
$societe = $this->sm->getSocieteById($idSociete);
if ($has_service) {
$titre_ariane = $societe->_get('raison_sociale');
} else {
$titre_ariane = $societe->_get('resume_activite');
}
if ($societe) {
if ($societe->_get('mode_societe') != "publique") {
// Si la société a été commandé, mais qu'elle n'est plus publique
if ($hasCommande) {
$isNoLongerAvailable = true;
}
}
// On efface les anciens parametres s'ils existent, puis on insert les nouveaux
$googleTag->removeParametresPub();
if ($societe->_get('id_pays')) {
$googleTag->setIdPays($societe->_get('id_pays'));
}
if ($societe->_get('id_region')) {
$googleTag->setIdRegion($societe->_get('id_region'));
}
if ($societe->_get('id_secteur_activite')) {
$googleTag->setIdSecteurActivite($societe->_get('id_secteur_activite'));
}
if (isset($parametres['recherche_par']) && $parametres['recherche_par'] == "motscles" && $parametres['reference_mots_cles'] == "") {
$parametres['recherche_par'] = null;
}
$operations = $buzzManager->getOperationsAcquereurHistorique($idSociete, $parametres);
$nb_operation = count($operations);
if (isset($societe) && 'publique' == $societe->_get('mode_societe')) {
$actualites = $this->sm->getActualitePrincipaleSocieteParIdSociete($idSociete);
} else {
$actualites = [];
}
$nb_actualite = count($actualites);
$colorClass = "vert";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$btnClass = "btn-vert";
$bgColor = "#5F9779";
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
$previousAnnonce = $this->sm->getIndexNAcquereurHistoriqueList($parametres, "", $page, $index - 1);
$nextAnnonce = $this->sm->getIndexNAcquereurHistoriqueList($parametres, "", $page, $index + 1);
$metaTitle = '%$resume_activite%$, acquéreur historique';
$metaDescription = 'Consultez cet acquéreur historique, %$resume_activite%$';
$arrayVarsTrans['resume_activite'] = $societe->_get('resume_activite');
$lang = $request->getSession()->get('lang');
$from_commande = $request->query->get('from_commande') ? $request->query->get('from_commande') : 0;
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setRobots('noindex');
return $this->render(
'vendre_entreprise/detail_acquereur_historique.html.twig',
[
'metaTag' => $metaTag,
'societe' => $societe,
'string_params' => $string_params,
'titre_ariane' => $titre_ariane,
'operations' => $operations,
'nb_operation' => $nb_operation,
'nb_actualite' => $nb_actualite,
'actualites' => $actualites,
'colorClass' => $colorClass,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'btnClass' => $btnClass,
'bgColor' => $bgColor,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'has_service' => $has_service,
'googleTag' => $googleTag,
'lignePanier' => $lignePanier,
'hasForfait' => $hasForfait,
'forfaitAUtiliser' => $forfaitAUtiliser,
'hasCommande' => $hasCommande,
'isNoLongerAvailable' => $isNoLongerAvailable,
'from_commande' => $from_commande
]
);
} else {
$lang = $request->getSession()->get('lang');
$this->addFlash('error', $translationExtension->translate('société introuvable', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_acquereurs_historiques', ['codePays' => $codePays]);
}
}
public function participationsdefonds(Request $request, PaginatorInterface $paginator, LocalisationsManagers $localisationManager, LocalisationsRepository $localisationsRepo, TranslationExtension $translationExtension, ParametresDiversRepository $parametresDiversRepo, ParametreSiteManagers $parametreSiteManager, $type = null, $idLocalisation = null, $slug = null, $idSecteurActivite = null, $codePays): Response {
$lang = $request->getSession()->get('lang');
$parametres = $request->query->all();
$metaTitle = $metaDescription = null;
$arrayVarsTrans = [];
// Recherche standard
if ($idLocalisation || $idSecteurActivite) {
// Preparation des parametres
if ($idLocalisation) {
if ($type == 'd') {
$parametres['id_departement'] = $idLocalisation;
$child_type = null;
$parent_type = "r";
} elseif ($type == "r") {
$parametres['id_region'] = $idLocalisation;
$child_type = "d";
$parent_type = "p";
} else {
$parametres['id_pays'] = $idLocalisation;
$child_type = "r";
$parent_type = null;
}
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
if ($idSecteurActivite) {
$parametres['id_secteur_activite'] = $idSecteurActivite;
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
// Recherche par localisation
if ($idLocalisation) {
$localisations = $localisationManager->getLocalisationCompleteWithNavById($idLocalisation);
if (!$localisations) {
$this->addFlash('error', $translationExtension->translate('erreur de localisation', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_participations_fonds', ['codePays' => $codePays]);
}
$villesRepo = $this->getDoctrine()->getRepository(Villes::class);
$noms_ville = $villesRepo->donne_string_noms_villes_principales_dune_localisation($idLocalisation);
$sous_localisations = $localisationsRepo->getSubLevelLocalisations($idLocalisation);
$sous_localisations_numbers = [];
$prev_localisation = [];
foreach ($sous_localisations as $sous_localisation) {
$params = [];
if ($idSecteurActivite) {
$params['id_secteur_activite'] = $idSecteurActivite;
}
if ($type == "r") {
$params['id_departement'] = $sous_localisation['id_localisation'];
} else {
if ($idLocalisation == "99") {
$params['id_pays'] = $sous_localisation['id_localisation'];
$child_type = "p";
} else {
$params['id_region'] = $sous_localisation['id_localisation'];
}
}
$sous_localisation['type'] = $child_type;
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
if ($idLocalisation == 99) {
if ($sous_localisation['nom_localisation'] != "Confidentiel" && $annonces_numbers['nb_participations_fonds'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
} else {
if ($sous_localisation['nom_localisation'] != "Confidentiel" || $annonces_numbers['nb_participations_fonds'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
}
}
if (!$prev_localisation && $parent_type) {
$prev_localisation = isset($localisations[count($localisations) - 2]) ? $localisations[count($localisations) - 2] : null;
$prev_localisation['type'] = $parent_type;
}
$last_localisation = end($localisations);
$arrayVarsTrans['prefixe_localisation'] = $last_localisation['prefixe'];
$arrayVarsTrans['nom_localisation'] = strtoupper($last_localisation['nom_localisation']);
$metaTitle = '%$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement %$prefixe_localisation%$ %$nom_localisation%$';
}
// Recherche par secteur d'activite
if ($idSecteurActivite) {
$secteurActivites = $this->sam->getTreeSecteursActivite($idSecteurActivite);
if (!$secteurActivites) {
$this->addFlash('error', $translationExtension->translate("erreur de secteur d'activité", $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_participations_fonds', ['codePays' => $codePays]);
}
$secteurActiviteRepo = $this->getDoctrine()->getRepository(SecteursActivite::class);
$sous_secteurs = $secteurActiviteRepo->getAllSecteursActiviteEnfantByIdSecteurParent($idSecteurActivite);
$sous_secteurs_numbers = [];
$prev_secteur = [];
foreach ($sous_secteurs as $sous_secteur) {
$params = [];
$params['id_secteur_activite'] = $sous_secteur['idSecteurActivite'];
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
$sous_secteurs_numbers[] = array_merge($sous_secteur, $annonces_numbers);
}
if (!$prev_secteur) {
$prev_secteur = isset($secteurActivites[count($secteurActivites) - 2]) ? $secteurActivites[count($secteurActivites) - 2] : null;
}
$last_secteur = end($secteurActivites);
$arrayVarsTrans['nomPourTitle'] = $last_secteur->getNomPourTitle();
// Si ce n'est pas une recherche croisée
if (!$idLocalisation) {
$metaTitle = '%$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement %$nomPourTitle%$';
$metaDescription = 'consultez %$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement %$nomPourTitle%$';
} else {
$metaTitle = '%$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
}
}
// Recherche avancée / dernières annonces
} else {
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
}
$is_recherche = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters() !== ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $string_params_without_page = $this->serializeParams($parametres);
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
// Si c'est une recherche, on calcule les nb à afficher
if ($is_recherche) {
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_investisseurs_acquereurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
} else {
// Sinon on récupère les nb stockés dans parametres_divers
$nb = $parametresDiversRepo->getListNombresAafficher();
$nb_annonces_acheteur = $nb->vendre_une_entreprise_nb_acheteurs;
$nb_annonces_acquisition = $nb->vendre_une_entreprise_nb_annonces_acquistions;
$nb_cvs = $nb->vendre_une_entreprise_nb_cv_repreneurs;
$nb_acquereurs_historiques = $nb->vendre_une_entreprise_nb_acquereurs_historique;
$nb_participations_fonds = $nb->vendre_une_entreprise_nb_participations_de_fonds;
$nb_acheteurs_potentiels = $nb->vendre_une_entreprise_nb_acheteurs_potentiels;
$nb_investisseurs_acquereurs = $nb->vendre_une_entreprise_nb_investisseurs_acquereurs;
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
}
$liste_annonces = $this->sm->getParticipationsFondsList($request, $paginator, $parametres, "", "acheteur");
$show_modal = true;
if (isset($_COOKIE['show_modal_cible_potentielle']) && false == $_COOKIE['show_modal_cible_potentielle']) {
$show_modal = false;
}
// Verifier si droit_acces Annuaire participation ou Fusacq Expert
$has_service = false;
//On verifie si l'utilisateur a le droit de consulter cette page
$user = $this->getUser();
if ($user) {
$has_service = $this->dm->checkIfThisUserHasDroitService($user, [2]); // 2 = annuaire_participations
} else {
$has_service = false;
}
$page = $request->query->get('page');
if ($page != null && $page != 1) {
$string_params .= "&page=" . $page;
}
$tri = isset($parametres['tri']) ? $parametres['tri'] : null;
$tri_default = null;
// Si aucun tri
if (!$tri) {
// On trie par CA si c'est une recherche
if ($is_recherche) {
$tri_default = "ca_desc";
} else {
$tri_default = "date_desc";
}
}
$urlList = $request->getPathInfo();
$is_recherche_by_one_localisation = $this->isRechercheByOneLocalisation($parametres);
$is_recherche_by_several_localisations = $this->isRechercheBySeveralLocalisations($parametres);
$is_recherche_by_one_sous_localisation_only = $this->isRechercheByOneSousLocalisationOnly($parametres);
$complement_titre = "";
$id_pays_recherche = null;
$text_pays_recherche = null;
$nb_acquereurs_pays = null;
$string_params_pays = null;
if ($is_recherche_by_one_localisation) {
if ($is_recherche_by_one_sous_localisation_only) {
$id_pays_recherche = $this->getPaysIdLocalisationBySousLocalisationId($parametres['id_localisation']);
$pays_recherche = $localisationManager->getNomLocalisationWithPrefixById($id_pays_recherche);
if ($pays_recherche) {
$text_pays_recherche = $pays_recherche[0]['nom_localisation'];
} else {
$text_pays_recherche = "";
}
$parametres_pays = $parametres;
$parametres_pays['id_localisation'] = ',p' . $id_pays_recherche . ',';
$nb_acquereurs_pays = $this->getAnnoncesNumbers($parametres_pays)['nb_participations_fonds'];
$string_params_pays = str_replace($parametres['id_localisation'], ',p' . $id_pays_recherche . ',', $string_params_without_page);
// Si sous localisation en France
if ($id_pays_recherche == "33") {
$id_sous_localisation = substr(array_values(array_filter(explode(",", $parametres['id_localisation'])))[0], 1);
$sous_localisation = $localisationsRepo->findOneBy(['id_localisation' => $id_sous_localisation]);
if ($sous_localisation) {
$complement_titre = $sous_localisation->__get('prefixe') . ' ' . $sous_localisation->__get('nom_localisation');
}
} else {
$complement_titre = "dans cette localisation";
}
} else {
$id_localisation = substr(array_values(array_filter(explode(",", $parametres['id_localisation'])))[0], 1);
$pays = $localisationsRepo->findOneBy(['id_localisation' => $id_localisation]);
if ($pays) {
$complement_titre = $pays->__get('prefixe') . ' ' . $pays->__get('nom_localisation');
}
}
} elseif ($is_recherche_by_several_localisations) {
$complement_titre = "dans vos localisations";
}
// Si ce n'est pas une recherche par loc / sec ou croisé
if ($metaTitle == null && $metaTitle == null) {
$metaTitle = '%$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement';
$metaDescription = 'consultez %$nb_participations_fonds%$ $$participation$${p|participations} de fonds d\'investissement en fonction de vos critères de recherche.';
}
$arrayVarsTrans['nb_participations_fonds'] = $nb_participations_fonds;
if ($nb_participations_fonds > 1) {
$p = 'p';
} else {
$p = '';
}
$id_participation_exemple = $parametreSiteManager->getValueParamSiteByParamCodePays("id_participation_exemple", $codePays);
$participation_exemple = $this->sm->getSocieteById($id_participation_exemple);
$url_participation_exemple = $this->generateUrl('participation_fonds_detail', ['idParticipation' => $id_participation_exemple, 'slug' => Utils::slugify($participation_exemple->_get('resume_activite')), 'codePays' => $codePays]);
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", $p, $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", $p, $arrayVarsTrans))
->setRobots('noindex');
$array_return = [
'metaTag' => $metaTag,
'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_investisseurs_acquereurs' => $nb_investisseurs_acquereurs,
'liste_annonces' => $liste_annonces,
'show_modal' => $show_modal,
'has_service' => $has_service,
'string_params' => $string_params,
'string_params_without_page' => $string_params_without_page,
'urlList' => $urlList,
'tri' => $tri,
'from' => 'acheteurs_potentiels',
'tri_default' => $tri_default,
'idLocalisation' => null,
'idSecteurActivite' => null,
'is_recherche_by_one_sous_localisation_only' => $is_recherche_by_one_sous_localisation_only,
'id_pays_recherche' => $id_pays_recherche,
'text_pays_recherche' => $text_pays_recherche,
'string_params_pays' => $string_params_pays,
'nb_acquereurs_pays' => $nb_acquereurs_pays,
'complement_titre' => $complement_titre,
'url_participation_exemple' => $url_participation_exemple
];
if ($idLocalisation || $idSecteurActivite) {
if ($idLocalisation) {
$array_return['idLocalisation'] = $idLocalisation;
$array_return['idSecteurActivite'] = $idSecteurActivite ? $idSecteurActivite : null;
$array_return['slug'] = $slug;
$array_return['type'] = $type;
$array_return['localisations'] = $localisations;
$array_return['noms_ville'] = $noms_ville;
$array_return['sous_localisations_numbers'] = $sous_localisations_numbers;
$array_return['prev_localisation'] = $prev_localisation;
}
if ($idSecteurActivite) {
$array_return['idSecteurActivite'] = $idSecteurActivite;
$array_return['idLocalisation'] = $idLocalisation ? $idLocalisation : null;
$array_return['slug'] = $slug;
$array_return['secteurActivites'] = $secteurActivites;
$array_return['sous_secteurs_numbers'] = $sous_secteurs_numbers;
$array_return['prev_secteur'] = $prev_secteur;
}
if ($idLocalisation && $idSecteurActivite) {
$array_return['idLocalisation'] = $idLocalisation;
}
}
return $this->render(
'vendre_entreprise/participations_de_fonds.html.twig',
$array_return
);
}
public function fondsacquereur(Request $request, PaginatorInterface $paginator, LocalisationsManagers $localisationManager, LocalisationsRepository $localisationsRepo, TranslationExtension $translationExtension, ParametresDiversRepository $parametresDiversRepo, $type = null, $idLocalisation = null, $slug = null, $idSecteurActivite = null, $codePays): Response {
$lang = $request->getSession()->get('lang');
$parametres = $request->query->all();
$metaTitle = $metaDescription = null;
$arrayVarsTrans = [];
// Recherche standard
if ($idLocalisation || $idSecteurActivite) {
// Preparation des parametres
if ($idLocalisation) {
if ($type == 'd') {
$parametres['id_departement'] = $idLocalisation;
$child_type = null;
$parent_type = "r";
} elseif ($type == "r") {
$parametres['id_region'] = $idLocalisation;
$child_type = "d";
$parent_type = "p";
} else {
$parametres['id_pays'] = $idLocalisation;
$child_type = "r";
$parent_type = null;
}
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
if ($idSecteurActivite) {
$parametres['id_secteur_activite'] = $idSecteurActivite;
$parametres = ParametersProvider::prepareRechercheStandardParameters($parametres);
}
// Recherche par localisation
if ($idLocalisation) {
$localisations = $localisationManager->getLocalisationCompleteWithNavById($idLocalisation);
if (!$localisations) {
$this->addFlash('error', $translationExtension->translate('erreur de localisation', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_fonds_acquereur', ['codePays' => $codePays]);
}
$villesRepo = $this->getDoctrine()->getRepository(Villes::class);
$noms_ville = $villesRepo->donne_string_noms_villes_principales_dune_localisation($idLocalisation);
$sous_localisations = $localisationsRepo->getSubLevelLocalisations($idLocalisation);
$sous_localisations_numbers = [];
$prev_localisation = [];
foreach ($sous_localisations as $sous_localisation) {
$params = [];
if ($idSecteurActivite) {
$params['id_secteur_activite'] = $idSecteurActivite;
}
if ($type == "r") {
$params['id_departement'] = $sous_localisation['id_localisation'];
} else {
if ($idLocalisation == "99") {
$params['id_pays'] = $sous_localisation['id_localisation'];
$child_type = "p";
} else {
$params['id_region'] = $sous_localisation['id_localisation'];
}
}
$sous_localisation['type'] = $child_type;
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
if ($idLocalisation == 99) {
if ($sous_localisation['nom_localisation'] != "Confidentiel" && $annonces_numbers['nb_investisseurs_acquereurs'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
} else {
if ($sous_localisation['nom_localisation'] != "Confidentiel" || $annonces_numbers['nb_investisseurs_acquereurs'] != 0) {
$sous_localisations_numbers[] = array_merge($sous_localisation, $annonces_numbers);
}
}
}
if (!$prev_localisation && $parent_type) {
$prev_localisation = isset($localisations[count($localisations) - 2]) ? $localisations[count($localisations) - 2] : null;
$prev_localisation['type'] = $parent_type;
}
$last_localisation = end($localisations);
$arrayVarsTrans['prefixe_localisation'] = $last_localisation['prefixe'];
$arrayVarsTrans['nom_localisation'] = strtoupper($last_localisation['nom_localisation']);
$metaTitle = '%$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} %$prefixe_localisation%$ %$nom_localisation%$';
}
// Recherche par secteur d'activite
if ($idSecteurActivite) {
$secteurActivites = $this->sam->getTreeSecteursActivite($idSecteurActivite);
if (!$secteurActivites) {
$this->addFlash('error', $translationExtension->translate("erreur de secteur d'activité", $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_resultats_fonds_acquereur', ['codePays' => $codePays]);
}
$secteurActiviteRepo = $this->getDoctrine()->getRepository(SecteursActivite::class);
$sous_secteurs = $secteurActiviteRepo->getAllSecteursActiviteEnfantByIdSecteurParent($idSecteurActivite);
$sous_secteurs_numbers = [];
$prev_secteur = [];
foreach ($sous_secteurs as $sous_secteur) {
$params = [];
$params['id_secteur_activite'] = $sous_secteur['idSecteurActivite'];
$params = ParametersProvider::prepareRechercheStandardParameters($params);
$annonces_numbers = $this->getAnnoncesNumbers($params);
$sous_secteurs_numbers[] = array_merge($sous_secteur, $annonces_numbers);
}
if (!$prev_secteur) {
$prev_secteur = isset($secteurActivites[count($secteurActivites) - 2]) ? $secteurActivites[count($secteurActivites) - 2] : null;
}
$last_secteur = end($secteurActivites);
$arrayVarsTrans['nomPourTitle'] = ($last_secteur) ? $last_secteur->getNomPourTitle() : "";
// Si ce n'est pas une recherche croisée
if (!$idLocalisation) {
$metaTitle = '%$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} %$nomPourTitle%$';
$metaDescription = 'consultez %$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} %$nomPourTitle%$';
} else {
$metaTitle = '%$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
$metaDescription = 'consultez %$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} %$nomPourTitle%$ %$prefixe_localisation%$ %$nom_localisation%$';
}
}
// Recherche avancée / dernières annonces
} else {
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
}
$is_recherche = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters() !== ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $string_params_without_page = $this->serializeParams($parametres);
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
// Si c'est une recherche, on calcule les nb à afficher
if ($is_recherche) {
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_investisseurs_acquereurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
} else {
// Sinon on récupère les nb stockés dans parametres_divers
$nb = $parametresDiversRepo->getListNombresAafficher();
$nb_annonces_acheteur = $nb->vendre_une_entreprise_nb_acheteurs;
$nb_annonces_acquisition = $nb->vendre_une_entreprise_nb_annonces_acquistions;
$nb_cvs = $nb->vendre_une_entreprise_nb_cv_repreneurs;
$nb_acquereurs_historiques = $nb->vendre_une_entreprise_nb_acquereurs_historique;
$nb_participations_fonds = $nb->vendre_une_entreprise_nb_participations_de_fonds;
$nb_acheteurs_potentiels = $nb->vendre_une_entreprise_nb_acheteurs_potentiels;
$nb_investisseurs_acquereurs = $nb->vendre_une_entreprise_nb_investisseurs_acquereurs;
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
}
$liste_fonds = $this->sm->getAcquereurInvestisseurList($request, $paginator, $parametres);
$tri = isset($parametres['tri']) ? $parametres['tri'] : null;
$tri_default = null;
// Si aucun tri
if (!$tri) {
// On trie par CA si c'est une recherche
if ($is_recherche) {
$tri_default = "ca_desc";
} else {
$tri_default = "date_desc";
}
}
$page = $request->query->get('page');
if ($page != null && $page != 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->getPathInfo();
// Verifier si droit_acces Annuaire participation ou Fusacq Expert
$has_service = false;
//On verifie si l'utilisateur a le droit de consulter cette page
$user = $this->getUser();
if ($user) {
$has_service = $this->dm->checkIfThisUserHasDroitService($user, [47]); // 47 = annuaire fond investissement
} else {
$has_service = false;
}
// Si ce n'est pas une recherche par loc / sec ou croisé
if ($metaTitle == null && $metaTitle == null) {
$metaTitle = '%$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs}';
$metaDescription = 'consultez %$nb_investisseurs_acquereurs%$ $$investisseur acquéreur$${p|investisseurs acquéreurs} en fonction de vos critères de recherche.';
}
$arrayVarsTrans['nb_investisseurs_acquereurs'] = $nb_investisseurs_acquereurs;
if ($nb_investisseurs_acquereurs > 1) {
$p = 'p';
} else {
$p = '';
}
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", $p, $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", $p, $arrayVarsTrans))
->setRobots('noindex');
$array_return = [
'metaTag' => $metaTag,
'nb_annonces' => $nb_annonces,
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_investisseurs_acquereurs' => $nb_investisseurs_acquereurs,
'liste_fonds' => $liste_fonds,
/* 'show_modal' => $show_modal, */
'has_service' => $has_service,
'string_params' => $string_params,
'string_params_without_page' => $string_params_without_page,
'urlList' => $urlList,
'tri' => $tri,
'tri_default' => $tri_default,
'idLocalisation' => null,
'idSecteurActivite' => null,
'is_recherche' => $is_recherche
];
if ($idLocalisation || $idSecteurActivite) {
if ($idLocalisation) {
$array_return['idLocalisation'] = $idLocalisation;
$array_return['idSecteurActivite'] = $idSecteurActivite ? $idSecteurActivite : null;
$array_return['slug'] = $slug;
$array_return['type'] = $type;
$array_return['localisations'] = $localisations;
$array_return['noms_ville'] = $noms_ville;
$array_return['sous_localisations_numbers'] = $sous_localisations_numbers;
$array_return['prev_localisation'] = $prev_localisation;
}
if ($idSecteurActivite) {
$array_return['idSecteurActivite'] = $idSecteurActivite;
$array_return['idLocalisation'] = $idLocalisation ? $idLocalisation : null;
$array_return['slug'] = $slug;
$array_return['secteurActivites'] = $secteurActivites;
$array_return['sous_secteurs_numbers'] = $sous_secteurs_numbers;
$array_return['prev_secteur'] = $prev_secteur;
}
if ($idLocalisation && $idSecteurActivite) {
$array_return['idLocalisation'] = $idLocalisation;
}
}
return $this->render(
'vendre_entreprise/fonds_acquereur.html.twig',
$array_return
);
}
public function redirectiononglet(Request $request): Response {
$onglet = null !== $request->get('onglet') ? $request->get('onglet') : null;
$idAnnonce = $request->get('idAnnonce');
$codePays = $request->get('codePays');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce);
if ($annonce['type_raprochement'] == "partenaire") {
switch ($onglet) {
case 1:
return $this->forward('App\Controller\VendreEntrepriseController::presentationpartenariat', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 2:
return $this->forward('App\Controller\VendreEntrepriseController::partenairerecherche', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 3:
return $this->forward('App\Controller\VendreEntrepriseController::initiateurpartenariat', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 4:
return $this->forward('App\Controller\VendreEntrepriseController::complementinformation', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 5:
return $this->forward('App\Controller\VendreEntrepriseController::infossectorielles', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 7:
return $this->forward('App\Controller\VendreEntrepriseController::contacterdeposant', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
default:
return $this->forward('App\Controller\VendreEntrepriseController::presentationpartenariat', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
}
} else {
switch ($onglet) {
case 1:
return $this->forward('App\Controller\VendreEntrepriseController::descriptiongenerale', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 2:
return $this->forward('App\Controller\VendreEntrepriseController::elementschiffres', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 3:
return $this->forward('App\Controller\VendreEntrepriseController::informationsacquereur', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 4:
return $this->forward('App\Controller\VendreEntrepriseController::complementinformation', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 5:
return $this->forward('App\Controller\VendreEntrepriseController::infossectorielles', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 6:
return $this->forward('App\Controller\VendreEntrepriseController::transactionscomparables', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
case 7:
return $this->forward('App\Controller\VendreEntrepriseController::contacterdeposant', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
default:
return $this->forward('App\Controller\VendreEntrepriseController::descriptiongenerale', ['idAnnonce' => $idAnnonce, 'codePays' => $codePays, 'request' => $request]);
break;
}
}
}
public function redirectionfonds(Request $request): Response {
$onglet = null !== $request->get('onglet') ? $request->get('onglet') : null;
$idFonds = $request->get('idFonds');
$codePays = $request->get('codePays');
$request->from = "investisseur-acquereur";
$pageInvest = $request->get('pageInvest', 1);
$pageActu = $request->get('pageActu', 1);
switch ($onglet) {
case 1:
return $this->forward('App\Controller\AnnuaireFondsInvestissementController::strategieinvestissement', ['idFonds' => $idFonds, 'codePays' => $codePays, 'request' => $request]);
break;
case 2:
return $this->forward('App\Controller\AnnuaireFondsInvestissementController::criteresinvestissement', ['idFonds' => $idFonds, 'codePays' => $codePays, 'request' => $request]);
break;
case 3:
return $this->forward('App\Controller\AnnuaireFondsInvestissementController::investissementreference', ['idFonds' => $idFonds, 'codePays' => $codePays, 'pageInvest' => $pageInvest, 'request' => $request]);
break;
case 4:
return $this->forward('App\Controller\AnnuaireFondsInvestissementController::actualitepubliee', ['idFonds' => $idFonds, 'codePays' => $codePays, 'pageActu' => $pageActu, 'request' => $request]);
break;
default:
return $this->forward('App\Controller\AnnuaireFondsInvestissementController::strategieinvestissement', ['idFonds' => $idFonds, 'codePays' => $codePays, 'request' => $request]);
break;
}
}
public function redirectionrechercheavancee(Request $request): Response {
$type = null !== $request->get('type') ? $request->get('type') : null;
$codePays = $request->get('codePays');
switch ($type) {
case 'acquisition':
return $this->forward('App\Controller\VendreEntrepriseController::rechercheavanceeannonceacquisition', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
case 'cv_repreneur':
return $this->forward('App\Controller\VendreEntrepriseController::rechercheavanceecvrepreneur', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
case 'acquereur_historique':
return $this->forward('App\Controller\VendreEntrepriseController::rechercheavanceeacquereurhistorique', ['codePays' => $codePays, 'request' => $request]);
break;
case 'participation_fonds':
return $this->forward('App\Controller\VendreEntrepriseController::rechercheavanceeparticipationdefonds', ['codePays' => $codePays, 'request' => $request]);
break;
case 'investisseur_acquereur':
return $this->forward('App\Controller\VendreEntrepriseController::rechercheavanceefondsacquereur', ['codePays' => $codePays, 'request' => $request]);
break;
default:
$type = null;
return $this->forward('App\Controller\VendreEntrepriseController::rechercheavanceeannonceacquisition', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
}
}
public function redirectionrecherchestandard(Request $request): Response {
$type = null !== $request->get('type') ? $request->get('type') : null;
$codePays = $request->get('codePays');
switch ($type) {
case 'acquisition':
return $this->forward('App\Controller\VendreEntrepriseController::recherchestandardacquisition', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
case 'cv_repreneur':
return $this->forward('App\Controller\VendreEntrepriseController::recherchestandardcvrepreneur', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
case 'acquereur_historique':
return $this->forward('App\Controller\VendreEntrepriseController::recherchestandardacquereurhistorique', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
case 'participation_fonds':
return $this->forward('App\Controller\VendreEntrepriseController::recherchestandardparticipationdefonds', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
case 'investisseur_acquereur':
return $this->forward('App\Controller\VendreEntrepriseController::recherchestandardfondsacquereur', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
default:
$type = null;
return $this->forward('App\Controller\VendreEntrepriseController::recherchestandardacquisition', ['codePays' => $codePays, 'type' => $type, 'request' => $request]);
break;
}
}
public function presentationpartenariat(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = "reprendre-entreprise";
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
} elseif ($from == "reprendre-entreprise") {
$colorClass = "bleu";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
} else {
$colorClass = "vert";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
//$btnContactClass = "btn-vert";
$bgColor = "#5F9779";
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($annonce['type_raprochement'] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
$chiffre_afaire_max_recherche = '';
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
$chiffre_afaire_max_recherche = '
<tr>
<td class="intitule">CA max recherche</td>
<td class="detail_texte"> ' . (int) $annonce['ca_max'] . ' k€</td>
</tr>
';
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce['date_parution'] == $annonce['date_parution_initiale']) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$localisation_siege = $annonce['nom_localisation'];
$tab_detail_partenariat = $this->am->get_tab_info_partenariat($idAnnonce);
$type_partenariat = $tab_detail_partenariat['type_partenariat'];
$type_partenaire = $tab_detail_partenariat['type_partenaire'];
$stade_dev_deposant = $tab_detail_partenariat['stade_dev_deposant'];
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$next = $canonical . '?onglet=2';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$metaTitle = 'partenariat, %$titre_annonce%$';
$metaDescription = 'consultez l\'annonce de partenariat, %$titre_annonce%$';
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setNext($next);
return $this->render('vendre_entreprise/presentation_partenariat.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'localisation_siege' => $localisation_siege,
'type_partenariat' => $type_partenariat,
'colorClass' => $colorClass,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function partenairerecherche(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = "reprendre-entreprise";
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
} elseif ($from == "reprendre-entreprise") {
$colorClass = "bleu";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
} else {
$colorClass = "vert";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
//$btnContactClass = "btn-vert";
$bgColor = "#5F9779";
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$localisation_siege = $annonce['nom_localisation'];
$tab_detail_partenariat = $this->am->get_tab_info_partenariat($idAnnonce);
$type_partenariat = $tab_detail_partenariat['type_partenariat'];
$type_partenaire = $tab_detail_partenariat['type_partenaire'];
$stade_dev_deposant = $tab_detail_partenariat['stade_dev_deposant'];
$partenaire_recherche = "";
$nbColaborateur = "";
$ca = "";
$ca_min = number_format((int) $annonce["ca_min"], 0, ',', ' ');
$ca_max = number_format((int) $annonce["ca_max"], 0, ',', ' ');
$nb_personnes_max = number_format((int) $annonce["nb_personnes_max"], 0, ',', ' ');
$nb_personnes_min = number_format((int) $annonce["nb_personnes_min"], 0, ',', ' ');
if ($type_partenaire == 'personne_physique') {
$partenaire_recherche = "une personne physique";
} elseif ($type_partenaire == 'personne_morale') {
$partenaire_recherche = "une societe";
if ($annonce["nb_personnes_min"] != "" && $annonce["nb_personnes_max"] != "") {
$nbColaborateur = $annonce["nb_personnes_min"] . ' < nb < ' . $annonce["nb_personnes_max"];
}
if ($nb_personnes_min != "" && $nb_personnes_max != "") {
if ($annonce["nb_personnes_max"] > 1000) {
$nbColaborateur = ' nb > ' . $nb_personnes_min;
}
} else {
$nbColaborateur = $nb_personnes_min . ' < nb < ' . $nb_personnes_max;
}
if ($nb_personnes_min == "" && $nb_personnes_max != "") {
$nbColaborateur = ' nb < ' . $nb_personnes_max;
}
if ($nb_personnes_min != "" && $nb_personnes_max == "") {
$nbColaborateur = ' nb > ' . $nb_personnes_min;
}
if ($nb_personnes_min == "" && $nb_personnes_max == "") {
$nbColaborateur = ' non renseigne';
}
if ($ca_min != "" && $annonce["ca_max"] != "") {
if ($ca_max > 100000) {
$ca = 'CA > ' . $ca_min . 'k€';
} else {
$ca = $ca_min . 'k€ < CA < ' . $ca_max . 'k€';
}
}
if ($ca_min == "" && $this->details ["ca_max"] != "") {
$ca = ' CA < ' . $ca_max . 'k€';
}
if ($ca_min != "" && $ca_max == "") {
$ca = ' CA > ' . $ca_min . 'k€';
}
if ($ca_min == "" && $ca_max == "") {
$ca = ' ' . $translationExtension->translate("non renseigne", $lang, '', 'm', '');
}
} else {
$partenaire_recherche = "non renseigne";
}
$localisation_souhaitee = $annonce["nom_localisation"];
if (empty($localisation_souhaitee)) {
$localisation_souhaitee = $translationExtension->translate("non renseigne", $lang, '', 'm', '');
}
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$prev = $canonical . '?onglet=1';
$next = $canonical . '?onglet=3';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$metaTitle = 'partenaire recherché, %$titre_annonce%$';
$metaDescription = 'consultez le partenaire recherché pour l\'annonce de partenariat, %$titre_annonce%$';
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/partenaire_recherche.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'localisation_siege' => $localisation_siege,
'type_partenariat' => $type_partenariat,
'nbColaborateur' => $nbColaborateur,
'ca' => $ca,
'partenaire_recherche' => $partenaire_recherche,
'type_partenaire' => $type_partenaire,
'localisation_souhaitee' => $localisation_souhaitee,
'colorClass' => $colorClass,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function initiateurpartenariat(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
//$from = $request->query->get('from');
$from = "reprendre-entreprise";
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
} elseif ($from == "reprendre-entreprise") {
$colorClass = "bleu";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
} else {
$colorClass = "vert";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
//$btnContactClass = "btn-vert";
$bgColor = "#5F9779";
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$localisation_siege = $annonce['nom_localisation'];
$tab_detail_partenariat = $this->am->get_tab_info_partenariat($idAnnonce);
$type_partenariat = $tab_detail_partenariat['type_partenariat'];
$type_partenaire = $tab_detail_partenariat['type_partenaire'];
$stade_dev_deposant = $tab_detail_partenariat['stade_dev_deposant'];
if ($stade_dev_deposant == 'projet_creation') {
$stade_dev_deposant_claire = "un projet a l'etude de creation d'entreprise";
} elseif ($stade_dev_deposant == 'societe_creation') {
$stade_dev_deposant_claire = "une societe actuellement en cours de creation";
} elseif ($stade_dev_deposant == 'premier_exercice') {
$stade_dev_deposant_claire = "une societe dans son premier exercice";
} elseif ($stade_dev_deposant == 'jeune_societe') {
$stade_dev_deposant_claire = "une jeune societe (de 1 a 3 ans d'existence)";
} elseif ($stade_dev_deposant == 'societe_etablie') {
$stade_dev_deposant_claire = "une societe etablie (de 3 a 10 ans d'existence)";
} elseif ($stade_dev_deposant == 'societe_mature') {
$stade_dev_deposant_claire = "une societe mature (plus de 10 ans d'existence)";
} else {
$stade_dev_deposant_claire = "";
}
$initiateur_partenariat = "";
$titre_info = "";
if ($annonce['type_acquereur'] == "personne") {
if (!empty($stade_dev_deposant)) {
$initiateur_partenariat = "une personne physique qui represente " . lcfirst($stade_dev_deposant);
} else {
$initiateur_partenariat = "non renseigne";
}
$titre_info = "informations sur le porteur de projet";
} elseif ($annonce['type_acquereur'] == "societe") {
if (!empty($stade_dev_deposant)) {
$initiateur_partenariat = ucfirst($stade_dev_deposant);
} else {
$initiateur_partenariat = "non renseigne";
}
$titre_info = "informations sur la societe qui recherche";
} else {
$initiateur_partenariat = "non renseigne";
$titre_info = "informations sur la societe qui recherche";
}
$id_localisation_deposant = $tab_detail_partenariat['id_localisation_deposant'];
$localisation_deposant = $this->lm->getStringNomLocalisationById($id_localisation_deposant);
if (empty($localisation_deposant)) {
$localisation_deposant = "non renseigne";
}
$tab_infos = [];
$profil = $this->test_si_affichage_acquereur_ou_repreneur($annonce['type_acquereur'], $annonce['profil_deposant']);
if ($profil != "repreneur") {
$date_creation_societe = $annonce["date_creation_societe"];
if ($annonce["date_creation_societe"] == "") {
$date_creation_societe = "non renseignee";
}
$nb_personnes_societe = $annonce["nb_personnes_societe"];
if ($annonce["nb_personnes_societe"] == "") {
$nb_personnes_societe = "non renseigne";
}
$ca_societe = (int) $annonce["ca_societe"] . ' k€';
if ($annonce["ca_societe"] == "") {
$ca_societe = "non renseigne";
}
$res_net_societe = (int) $annonce["res_net_societe"] . ' k€';
if ($annonce["res_net_societe"] == "") {
$res_net_societe = "non renseigne";
}
$description_activite_acheteur = $annonce["description_activite_societe"];
if ($annonce["description_activite_societe"] == "") {
$description_activite_acheteur = "non renseignee";
}
if ($annonce["date_creation_societe"] == "") {
$anciennete_de_la_societe = "non renseignee";
} else {
$annee_actuelle = date('Y');
$diff = $annee_actuelle - $annonce["date_creation_societe"];
if ($diff < 5) {
$anciennete_de_la_societe = "moins de 5 ans";
}
if ($diff >= 5 && $diff <= 10) {
$anciennete_de_la_societe = "entre 5 et 10 ans";
}
if ($diff > 10) {
$anciennete_de_la_societe = "plus de 10 ans";
}
}
$tab_infos['date_creation_societe'] = $date_creation_societe;
$tab_infos['nb_personnes_societe'] = $nb_personnes_societe;
$tab_infos['ca_societe'] = $ca_societe;
$tab_infos['res_net_societe'] = $res_net_societe;
$tab_infos['description_activite_acheteur'] = $description_activite_acheteur;
$tab_infos['anciennete_de_la_societe'] = $anciennete_de_la_societe;
} else {
$annee_naissance_repreneur = $annonce["annee_naissance_repreneur"];
if ($annonce["annee_naissance_repreneur"] == "") {
$annee_naissance_repreneur = 0;
}
$annee_actuelle = date('Y');
$age_repreneur = $annee_actuelle - (int) $annee_naissance_repreneur;
if ($annonce["annee_naissance_repreneur"] == "") {
$age_repreneur = "non renseigne";
}
$apport_perso_repreneur = $annonce["apport_perso_repreneur"] . " k€";
if ($annonce["apport_perso_repreneur"] == "") {
$apport_perso_repreneur = "non renseigne";
}
$domaine_de_competence = $annonce["liste_secteurs_affichage"];
if ($annonce["liste_secteurs_affichage"] == "") {
$domaine_de_competence = "non renseigne";
}
$formation_repreneur = $annonce["formation_repreneur"];
if ($annonce["formation_repreneur"] == "") {
$formation_repreneur = "non renseignee";
}
$parcours_pro_repreneur = $annonce["parcours_pro_repreneur"];
if ($annonce["parcours_pro_repreneur"] == "") {
$parcours_pro_repreneur = "non renseigne";
}
$tab_infos['age_repreneur'] = $age_repreneur;
$tab_infos['apport_perso_repreneur'] = $apport_perso_repreneur;
$tab_infos['domaine_de_competence'] = $domaine_de_competence;
$tab_infos['formation_repreneur'] = $formation_repreneur;
$tab_infos['parcours_pro_repreneur'] = $parcours_pro_repreneur;
}
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$prev = $canonical . '?onglet=2';
$next = $canonical . '?onglet=4';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$metaTitle = 'initiateur du partenariat, %$titre_annonce%$';
$metaDescription = 'consultez l\'initiateur du partenariat pour l\'annonce de partenariat, %$titre_annonce%$';
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/initiateur_partenariat.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'localisation_siege' => $localisation_siege,
'type_partenariat' => $type_partenariat,
'type_partenaire' => $type_partenaire,
'initiateur_partenariat' => $initiateur_partenariat,
'stade_dev_deposant_claire' => $stade_dev_deposant_claire,
'titre_info' => $titre_info,
'profil' => $profil,
'tab_infos' => $tab_infos,
'localisation_deposant' => $localisation_deposant,
'colorClass' => $colorClass,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function complementinformation(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$arrayVarsTrans = [];
if ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
$colorClass = "bleu";
$colorImportant = "bleu-important";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
$type_annonce = "partenaire";
$fromOnglet = 1;
$btnContactClass = "btn-bleu-annonce";
$metaTitle = 'complément d\'information sur le partenariat, %$titre_annonce%$';
$metaDescription = 'consultez les compléments d\'information sur le partenariat, %$titre_annonce%$';
$prev = $canonical . '?from=reprendre-entreprise&onglet=3';
$next = $canonical . '?from=reprendre-entreprise&onglet=5';
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5F9779";
$type_annonce = "entreprise";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTitle = 'complément d\'information sur l\'acquéreur d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
$metaDescription = 'consultez les compléments d\'information sur l\'acquéreur d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
$prev = $canonical . '?onglet=3';
$next = $canonical . '?onglet=5';
}
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
$metaTitle = 'complément d\'information sur le partenariat, %$titre_annonce%$';
$metaDescription = 'consultez les compléments d\'information sur le partenariat, %$titre_annonce%$';
$prev = $canonical . '?from=ouvrir-capital&onglet=3';
$next = $canonical . '?from=ouvrir-capital&onglet=5';
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/complement_information.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function infossectorielles(TranslationExtension $translationExtension, ActualitesManagers $actuManager, LocalisationsManagers $localisationManager, Request $request, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$arrayVarsTrans = [];
if ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
$colorClass = "bleu";
$colorImportant = "bleu-important";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
$type_annonce = "partenaire";
$fromOnglet = 1;
$btnContactClass = "btn-bleu-annonce";
$metaTitle = 'Informations sectorielles, %$titre_annonce%$';
$metaDescription = 'consultez les informations sectorielles pour l\'annonce de partenariat, %$titre_annonce%$';
$next = $canonical . '?from=reprendre-entreprise&onglet=7';
$prev = $canonical . '?from=reprendre-entreprise&onglet=4';
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5F9779";
$type_annonce = "entreprise";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTitle = 'Informations sectorielles d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
$metaDescription = 'Consultez les informations sectorielles d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
$next = $canonical . '?onglet=6';
$prev = $canonical . '?onglet=4';
}
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
$metaTitle = 'Informations sectorielles, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'consultez les informations sectorielles pour l\'annonce de partenariat, %$titre_annonce%$';
$next = $canonical . '?from=ouvrir-capital&onglet=6';
$prev = $canonical . '?from=ouvrir-capital&onglet=4';
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$dernieresActualitesSecteur = $actuManager->getDernieresActualitesSecteurAnnonceAcheteur($idAnnonce);
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/infos_sectorielles.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'dernieresActualitesSecteur' => $dernieresActualitesSecteur,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function transactionscomparables(TranslationExtension $translationExtension, ValorisationsManagers $vm, LocalisationsManagers $localisationManager, ActualitesManagers $actuManager, Request $request, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
$colorClass = "bleu";
$colorImportant = "bleu-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
$type_annonce = "entreprise";
$fromOnglet = 1;
$btnContactClass = "btn-bleu-annonce";
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5F9779";
$type_annonce = "entreprise";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
}
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$valorisations = $vm->donne_valorisations_du_secteur($idAnnonce);
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$prev = $canonical . '?onglet=5';
$next = $canonical . '?onglet=7';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTitle = 'Transactions comparables d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Consultez les transactions comparables d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/transactions_comparables.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'valorisations' => $valorisations,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function contacterdeposant(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, ValorisationsManagers $vm, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur);
$session = $request->getSession();
$lignePanier = null;
$dejaCommande = null;
$forfaitAUtiliser = null;
$hasForfait = false;
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
if ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
$colorClass = "bleu";
$colorImportant = "bleu-important";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
$btnContactClass = "btn-bleu-annonce";
$typeAnnoncePanier = "annonce_A_partenariat";
$metaTitle = 'contacter le déposant du partenariat, %$titre_annonce%$';
$metaDescription = 'contactez le déposant de l\'annonce de partenariat, %$titre_annonce%$';
$prev = $canonical . '?from=reprendre-entreprise&onglet=5';
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5F9779";
$btnContactClass = "btn-vert-annonce";
$typeAnnoncePanier = "annonce_A_acquisition";
$metaTitle = 'Contacter le déposant d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Contactez le déposant de l\'annonce de recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$prev = $canonical . '?onglet=6';
}
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$btnContactClass = "btn-orange-new";
$metaTitle = 'vente d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'consultez l\'annonce de cession d\'entrprise : %$titre_annonce%$ - %$nom_localisation%$ ';
$prev = $canonical . '?from=ouvrir-capital&onglet=6';
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce['date_parution'] == $annonce['date_parution_initiale']) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$localisation_siege = $annonce['nom_localisation'];
if ($session) {
$userIdentity = $session->get('user');
if (!empty($userIdentity)) {
$lignePanier = $this->em->getRepository(Panier::class)->findOneBy(
['login_utilisateur' => $userIdentity->_get('login_utilisateur'), "type_object" => $typeAnnoncePanier, "id_object" => $idAnnonce]
);
$dejaCommande = $this->cm->hasAnnonceCommande($userIdentity->_get('login_utilisateur'), $idAnnonce, 'acheteur');
$forfaitAUtiliser = $this->dm->getFrofaitAnnonceToUse($userIdentity);
if (!empty($forfaitAUtiliser)) {
$hasForfait = true;
}
}
}
$valorisations = $vm->donne_valorisations_du_secteur($idAnnonce);
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeParameters($parametres);
$string_params = $this->serializeParams($parametres);
$page = $request->query->get('page', 1);
if ($page != null) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
$index = (int) $request->query->get('index');
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "partenaire", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev);
return $this->render('vendre_entreprise/contacter_deposant.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'secteurActivite' => $secteurActivite,
'date' => $date,
'localisation_siege' => $localisation_siege,
'valorisations' => $valorisations,
'colorClass' => $colorClass,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'fromAlaUne' => $fromAlaUne,
'lignePanier' => $lignePanier,
'dejaCommande' => $dejaCommande,
'forfaitAUtiliser' => $forfaitAUtiliser,
'hasForfait' => $hasForfait,
'lang' => $lang,
'typeAnnoncePanier' => $typeAnnoncePanier,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'btnContactClass' => $btnContactClass,
'colorImportant' => $colorImportant
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function detailsannonce(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, ActualitesManagers $actuManager, ValorisationsManagers $vm, GoogleTag $googleTag, ConsultationsAnnonce $consultations_annonce, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from', 'acheteur');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if(!$annonce){// annonce non publique mais deja commandé
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur,"acheteur",false);
$fakeAnnonce = new AnnoncesAcheteur();
$fakeAnnonce->_set('id_annonce_acheteur', $annonce["id_annonce_acheteur"]);
$fakeAnnonce->_set('type_raprochement', 'acquisition');
$annone_retiree_deja_commande = $this->authChecker->isGranted(AnnonceCommandVoter::ANNONCE_COMMANDE, $fakeAnnonce);
}// annonce non publique mais deja commandé
if ( (isset($annonce) && 'publique' == $annonce['mode_annonce']) || ($annone_retiree_deja_commande) ) {
// On efface les anciens parametres s'ils existent, puis on insert les nouveaux
$googleTag->removeParametresPub();
if ($annonce['id_pays']) {
$googleTag->setIdPays($annonce['id_pays']);
}
if ($annonce['id_region']) {
$googleTag->setIdRegion($annonce['id_region']);
}
if ($annonce['id_departement']) {
$googleTag->setIdDepartement($annonce['id_departement']);
}
if ($annonce['id_secteur_activite']) {
$googleTag->setIdSecteurActivite($annonce['id_secteur_activite']);
}
//stats annonce
$statsAnnonce = $this->em->getRepository(StatistiquesNbConsultationsAnnoncesAcheteurEntity::class)->find($idAnnonce);
if (empty($statsAnnonce)) {
$statsAnnonce = new StatistiquesNbConsultationsAnnoncesAcheteurEntity();
$statsAnnonce->_set("id_annonce", $idAnnonce);
$statsAnnonce->_set("nb_consultations", 1);
$this->em->persist($statsAnnonce);
$this->em->flush();
} else {
/* $nb = $statsAnnonce->_get("nb_consultations") + 1;
$statsAnnonce->_set("nb_consultations", $nb);
$this->em->persist($statsAnnonce);
$this->em->flush(); */
// On incrémente de 1 le nb de consultation
$consultations_annonce->incrementeConsultation('acheteur', $idAnnonce);
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
$badgeClass = "badge_ouvrir_capital";
$metaTitle = 'acquéreur prêt à investir %$titre_annonce%$';
$metaDescription = 'Consultez l\'acquéreur prêt à investir %$titre_annonce%$';
} else {
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5f9779";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
$badgeClass = "badge_acquisition";
$metaTitle = 'Recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Consultez l\'annonce de recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
}
if ($from == "ouvrir-capital" && $annonce["type_raprochement"] != "partenaire") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
} elseif ($annonce["type_raprochement"] == "partenaire") {
$metaTitle = 'recherche de partenariat %$titre_annonce%$';
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
if ($annonce["type_raprochement"] == "partenaire") {
if ($from != "ouvrir-capital") {
$colorClass = "bleu";
$colorImportant = "bleu-important";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
$fromOnglet = 1;
$btnContactClass = "btn-bleu-annonce";
$badgeClass = "badge_cession";
}
$type_annonce = "partenaire";
$typeAnnoncePanier = "annonce_A_partenariat";
$tab_detail_partenariat = $this->am->get_tab_info_partenariat($idAnnonce);
$type_partenariat = $tab_detail_partenariat['type_partenariat'];
$type_partenaire = $tab_detail_partenariat['type_partenaire'];
$stade_dev_deposant = $tab_detail_partenariat['stade_dev_deposant'];
$partenaire_recherche = "";
$nbColaborateur = "";
$ca = "";
$ca_min = number_format((int) $annonce["ca_min"], 0, ',', ' ');
$ca_max = number_format((int) $annonce["ca_max"], 0, ',', ' ');
$nb_personnes_max = number_format((int) $annonce["nb_personnes_max"], 0, ',', ' ');
$nb_personnes_min = number_format((int) $annonce["nb_personnes_min"], 0, ',', ' ');
if ($type_partenaire == 'personne_physique') {
$partenaire_recherche = "une personne physique";
} elseif ($type_partenaire == 'personne_morale') {
$partenaire_recherche = "une societe";
if ($annonce["nb_personnes_min"] != "" && $annonce["nb_personnes_max"] != "") {
$nbColaborateur = $annonce["nb_personnes_min"] . ' < nb < ' . $annonce["nb_personnes_max"];
}
if ($nb_personnes_min != "" && $nb_personnes_max != "") {
if ($annonce["nb_personnes_max"] > 1000) {
$nbColaborateur = ' nb > ' . $nb_personnes_min;
}
} else {
$nbColaborateur = $nb_personnes_min . ' < nb < ' . $nb_personnes_max;
}
if ($nb_personnes_min == "" && $nb_personnes_max != "") {
$nbColaborateur = ' nb < ' . $nb_personnes_max;
}
if ($nb_personnes_min != "" && $nb_personnes_max == "") {
$nbColaborateur = ' nb > ' . $nb_personnes_min;
}
if ($nb_personnes_min == "" && $nb_personnes_max == "") {
$nbColaborateur = ' non renseigne';
}
if ($ca_min != "" && $annonce["ca_max"] != "") {
if ($ca_max > 100000) {
$ca = 'CA > ' . $ca_min . 'k€';
} else {
$ca = $ca_min . 'k€ < CA < ' . $ca_max . 'k€';
}
}
if ($ca_min == "" && $this->details ["ca_max"] != "") {
$ca = ' CA < ' . $ca_max . 'k€';
}
if ($ca_min != "" && $ca_max == "") {
$ca = ' CA > ' . $ca_min . 'k€';
}
if ($ca_min == "" && $ca_max == "") {
$ca = ' ' . $translationExtension->translate("non renseigne", $lang, '', 'm', '');
}
} else {
$partenaire_recherche = "non renseigne";
}
$localisation_souhaitee = $annonce["nom_localisation"];
if (empty($localisation_souhaitee)) {
$localisation_souhaitee = $translationExtension->translate("non renseigne", $lang, '', 'm', '');
}
if ($stade_dev_deposant == 'projet_creation') {
$stade_dev_deposant_claire = "un projet a l'etude de creation d'entreprise";
} elseif ($stade_dev_deposant == 'societe_creation') {
$stade_dev_deposant_claire = "une societe actuellement en cours de creation";
} elseif ($stade_dev_deposant == 'premier_exercice') {
$stade_dev_deposant_claire = "une societe dans son premier exercice";
} elseif ($stade_dev_deposant == 'jeune_societe') {
$stade_dev_deposant_claire = "une jeune societe (de 1 a 3 ans d'existence)";
} elseif ($stade_dev_deposant == 'societe_etablie') {
$stade_dev_deposant_claire = "une societe etablie (de 3 a 10 ans d'existence)";
} elseif ($stade_dev_deposant == 'societe_mature') {
$stade_dev_deposant_claire = "une societe mature (plus de 10 ans d'existence)";
} else {
$stade_dev_deposant_claire = "";
}
$initiateur_partenariat = "";
$titre_info = "";
if ($annonce['type_acquereur'] == "personne") {
if (!empty($stade_dev_deposant)) {
$initiateur_partenariat = "une personne physique qui represente " . lcfirst($stade_dev_deposant);
} else {
$initiateur_partenariat = "non renseigne";
}
$titre_info = "informations sur le porteur de projet";
} elseif ($annonce['type_acquereur'] == "societe") {
if (!empty($stade_dev_deposant)) {
$initiateur_partenariat = ucfirst($stade_dev_deposant);
} else {
$initiateur_partenariat = "non renseigne";
}
$titre_info = "informations sur la societe qui recherche";
} else {
$initiateur_partenariat = "non renseigne";
$titre_info = "informations sur la societe qui recherche";
}
$id_localisation_deposant = $tab_detail_partenariat['id_localisation_deposant'];
$localisation_deposant = $this->lm->getStringNomLocalisationById($id_localisation_deposant);
if (empty($localisation_deposant)) {
$localisation_deposant = "non renseigne";
}
$tab_infos = [];
$profil = $this->test_si_affichage_acquereur_ou_repreneur($annonce['type_acquereur'], $annonce['profil_deposant']);
if ($profil != "repreneur") {
$date_creation_societe = $annonce["date_creation_societe"];
if ($annonce["date_creation_societe"] == "") {
$date_creation_societe = "non renseignee";
}
$nb_personnes_societe = $annonce["nb_personnes_societe"];
if ($annonce["nb_personnes_societe"] == "") {
$nb_personnes_societe = "non renseigne";
}
$ca_societe = (int) $annonce["ca_societe"] . ' k€';
if ($annonce["ca_societe"] == "") {
$ca_societe = "non renseigne";
}
$res_net_societe = (int) $annonce["res_net_societe"] . ' k€';
if ($annonce["res_net_societe"] == "") {
$res_net_societe = "non renseigne";
}
$description_activite_acheteur = $annonce["description_activite_societe"];
if ($annonce["description_activite_societe"] == "") {
$description_activite_acheteur = "non renseignee";
}
if ($annonce["date_creation_societe"] == "") {
$anciennete_de_la_societe = "non renseignee";
} else {
$annee_actuelle = date('Y');
$diff = $annee_actuelle - $annonce["date_creation_societe"];
if ($diff < 5) {
$anciennete_de_la_societe = "moins de 5 ans";
}
if ($diff >= 5 && $diff <= 10) {
$anciennete_de_la_societe = "entre 5 et 10 ans";
}
if ($diff > 10) {
$anciennete_de_la_societe = "plus de 10 ans";
}
}
$tab_infos['date_creation_societe'] = $date_creation_societe;
$tab_infos['nb_personnes_societe'] = $nb_personnes_societe;
$tab_infos['ca_societe'] = $ca_societe;
$tab_infos['res_net_societe'] = $res_net_societe;
$tab_infos['description_activite_acheteur'] = $description_activite_acheteur;
$tab_infos['anciennete_de_la_societe'] = $anciennete_de_la_societe;
} else {
$annee_naissance_repreneur = $annonce["annee_naissance_repreneur"];
if ($annonce["annee_naissance_repreneur"] == "") {
$annee_naissance_repreneur = 0;
}
$annee_actuelle = date('Y');
$age_repreneur = $annee_actuelle - (int) $annee_naissance_repreneur;
if ($annonce["annee_naissance_repreneur"] == "") {
$age_repreneur = "non renseigne";
}
$apport_perso_repreneur = $annonce["apport_perso_repreneur"] . " k€";
if ($annonce["apport_perso_repreneur"] == "") {
$apport_perso_repreneur = "non renseigne";
}
$domaine_de_competence = $annonce["liste_secteurs_affichage"];
if ($annonce["liste_secteurs_affichage"] == "") {
$domaine_de_competence = "non renseigne";
}
$formation_repreneur = $annonce["formation_repreneur"];
if ($annonce["formation_repreneur"] == "") {
$formation_repreneur = "non renseignee";
}
$parcours_pro_repreneur = $annonce["parcours_pro_repreneur"];
if ($annonce["parcours_pro_repreneur"] == "") {
$parcours_pro_repreneur = "non renseigne";
}
$tab_infos['age_repreneur'] = $age_repreneur;
$tab_infos['apport_perso_repreneur'] = $apport_perso_repreneur;
$tab_infos['domaine_de_competence'] = $domaine_de_competence;
$tab_infos['formation_repreneur'] = $formation_repreneur;
$tab_infos['parcours_pro_repreneur'] = $parcours_pro_repreneur;
}
$template = 'vendre_entreprise/details_annonce_recherche_partenariat.html.twig';
} else {
$type_annonce = "entreprise";
$typeAnnoncePanier = "annonce_A_acquisition";
$tab_detail_partenariat = null;
$type_partenariat = null;
$type_partenaire = null;
$stade_dev_deposant = null;
$partenaire_recherche = null;
$nbColaborateur = null;
$ca = null;
$ca_min = null;
$ca_max = null;
$nb_personnes_max = null;
$nb_personnes_min = null;
$localisation_souhaitee = null;
$stade_dev_deposant_claire = null;
$initiateur_partenariat = null;
$titre_info = null;
$localisation_deposant = null;
$tab_infos = null;
$profil = null;
$template = 'vendre_entreprise/details_annonce.html.twig';
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$dernieresActualitesSecteur = $actuManager->getDernieresActualitesSecteurAnnonceAcheteur($idAnnonce);
$valorisations = $vm->donne_valorisations_du_secteur($idAnnonce);
$current_year = date('Y');
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital" && $annonce["type_raprochement"] != "partenaire") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$dernieresAnnonces = $request->query->get('dernieresAnnonces');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical);
if(!empty($annone_retiree_deja_commande) && $annone_retiree_deja_commande == true ){
$this->get('session')->getFlashBag()->clear(); // Clear tous les flashbags
$this->addFlash('error_annonce_commande_retiree',"Attention : cette annonce n’est plus en ligne actuellement");
}
return $this->render($template, [
'metaTag' => $metaTag,
'annonce' => $annonce,
'secteurActivite' => $secteurActivite,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'current_year' => $current_year,
'date' => $date,
'dernieresActualitesSecteur' => $dernieresActualitesSecteur,
'valorisations' => $valorisations,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'badgeClass' => $badgeClass,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'dernieresAnnonces' => $dernieresAnnonces,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass,
'lang' => $lang,
'type_partenariat' => $type_partenariat,
'nbColaborateur' => $nbColaborateur,
'ca' => $ca,
'partenaire_recherche' => $partenaire_recherche,
'type_partenaire' => $type_partenaire,
'localisation_souhaitee' => $localisation_souhaitee,
'initiateur_partenariat' => $initiateur_partenariat,
'stade_dev_deposant_claire' => $stade_dev_deposant_claire,
'titre_info' => $titre_info,
'profil' => $profil,
'tab_infos' => $tab_infos,
'localisation_deposant' => $localisation_deposant,
'googleTag' => $googleTag,
"annone_retiree_deja_commande"=>$annone_retiree_deja_commande??NULL,
]);
} else {
$lang = $request->getSession()->get('lang');
$this->addFlash('error', $translationExtension->translate('annonce introuvable : l’annonce a été supprimée, remise en attente ou est en cours de modification', $lang, '', 'M', ''));
return $this->redirectToRoute('vendre_entreprise_annonces_acquisition_entreprise', ['codePays' => $codePays]);
}
}
public function contacterDeposantAnnonceAcheteur(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, ActualitesManagers $actuManager, ValorisationsManagers $vm, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from', 'acheteur');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
$session = $request->getSession();
$lignePanier = null;
$dejaCommande = null;
$forfaitAUtiliser = null;
$hasForfait = false;
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
$badgeClass = "badge_ouvrir_capital";
$metaTitle = 'acquéreur prêt à investir %$titre_annonce%$';
$metaDescription = 'Consultez l\'acquéreur prêt à investir %$titre_annonce%$';
} else {
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5f9779";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
$badgeClass = "badge_acquisition";
$metaTitle = 'Recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Consultez l\'annonce de recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
}
if ($from == "ouvrir-capital" && $annonce["type_raprochement"] != "partenaire") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
} elseif ($annonce["type_raprochement"] == "partenaire") {
$metaTitle = 'recherche de partenariat %$titre_annonce%$';
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
if ($annonce["type_raprochement"] == "partenaire") {
if ($from != "ouvrir-capital") {
$colorClass = "bleu";
$colorImportant = "bleu-important";
$ongletClass = "onglet6";
$titreClass = "titre_annonce";
$bgColor = "#4B7389";
$fromOnglet = 1;
$btnContactClass = "btn-bleu-annonce";
$badgeClass = "badge_cession";
}
$type_annonce = "partenaire";
$typeAnnoncePanier = "annonce_A_partenariat";
$template = 'vendre_entreprise/contacter_deposant_annonce_recherche_partenariat.html.twig';
} else {
$type_annonce = "entreprise";
$typeAnnoncePanier = "annonce_A_acquisition";
$template = 'vendre_entreprise/contacter_deposant_annonce_acheteur.html.twig';
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
if ($session) {
$userIdentity = $session->get('user');
if (!empty($userIdentity)) {
$lignePanier = $this->em->getRepository(Panier::class)->findOneBy(
['login_utilisateur' => $userIdentity->_get('login_utilisateur'), "type_object" => $typeAnnoncePanier, "id_object" => $idAnnonce]
);
$dejaCommande = $this->cm->hasAnnonceCommande($userIdentity->_get('login_utilisateur'), $idAnnonce, 'acheteur');
$forfaitAUtiliser = $this->dm->getFrofaitAnnonceToUse($userIdentity);
if (!empty($forfaitAUtiliser)) {
$hasForfait = true;
}
}
}
$current_year = date('Y');
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital" && $annonce["type_raprochement"] != "partenaire") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, $type_annonce, $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$dernieresAnnonces = $request->query->get('dernieresAnnonces');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical);
$valorisations = $vm->donne_valorisations_du_secteur($idAnnonce);
return $this->render($template, [
'metaTag' => $metaTag,
'annonce' => $annonce,
'secteurActivite' => $secteurActivite,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'current_year' => $current_year,
'date' => $date,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'badgeClass' => $badgeClass,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'dernieresAnnonces' => $dernieresAnnonces,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass,
'typeAnnoncePanier' => $typeAnnoncePanier,
'lignePanier' => $lignePanier,
'dejaCommande' => $dejaCommande,
'forfaitAUtiliser' => $forfaitAUtiliser,
'hasForfait' => $hasForfait,
'lang' => $lang,
'valorisations' => $valorisations
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function descriptiongenerale(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from', 'acheteur');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
$metaTitle = 'acquéreur prêt à investir %$titre_annonce%$';
$metaDescription = 'Consultez l\'acquéreur prêt à investir %$titre_annonce%$';
} else {
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5f9779";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
$metaTitle = 'Recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Consultez l\'annonce de recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
} elseif ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$next = $canonical . '?onglet=2';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "entreprise", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "entreprise", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setNext($next);
return $this->render('vendre_entreprise/description_generale.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'secteurActivite' => $secteurActivite,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function elementschiffres(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
} else {
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5f9779";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
} elseif ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
$date = DateProvider::donne_date_format_affichage($annonce['date_parution']);
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$next = $canonical . '?onglet=3';
$prev = $canonical . '?onglet=1';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "entreprise", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "entreprise", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTitle = 'éléments chiffrés d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Consultez les éléments chiffrés d\'une recherche d\'acquisition d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/elements_chiffres.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'secteurActivite' => $secteurActivite,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function informationsacquereur(Request $request, TranslationExtension $translationExtension, LocalisationsManagers $localisationManager, $idAnnonce, $codePays): Response {
$user = $this->getUser();
$login_utilisateur = isset($user) ? $user->_get('login_utilisateur') : null;
$from = $request->query->get('from');
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, $login_utilisateur, $from);
if (isset($annonce) && 'publique' == $annonce['mode_annonce']) {
if ($from == "ouvrir-capital") {
$colorClass = "orange-new";
$colorImportant = "orange-new-important";
$ongletClass = "onglet8";
$titreClass = "titre_annonce_orange";
$bgColor = "#eb885c";
$fromOnglet = 3;
$btnContactClass = "btn-orange-new";
} else {
$colorClass = "vert";
$colorImportant = "vert-important";
$ongletClass = "onglet7";
$titreClass = "titre_annonce_vert";
$bgColor = "#5f9779";
$fromOnglet = 2;
$btnContactClass = "btn-vert-annonce";
}
$lang = $request->getSession()->get('lang');
$secteurActivite = $this->getDoctrine()->getRepository(SecteursActivite::class)->getNomSecteurActivitieById($annonce['id_secteur_activite'])[0];
if ($from == "ouvrir-capital") {
$type_acquisition = $translationExtension->translate("acquéreur prêt à investir", $lang, '', 'M', '');
} elseif ($annonce["type_raprochement"] == "partenaire") {
$type_acquisition = $translationExtension->translate("recherche de partenariat", $lang, '', 'M', '');
} else {
$type_acquisition = $translationExtension->translate("recherche d'acquisition", $lang, '', 'M', '');
}
if ($annonce["date_parution"] == $annonce["date_parution_initiale"]) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
$current_year = date('Y');
$http_host = $request->server->get('HTTP_HOST');
$url = substr($request->server->get('REDIRECT_URL'), 0, -4);
$canonical = $http_host . $url;
$next = $canonical . '?onglet=4';
$prev = $canonical . '?onglet=2';
$parametres = $request->query->all();
$parametres = ParametersProvider::prepareRechercheAvanceeAnnonceAcheteurParameters($parametres);
$string_params = $this->serializeParams($parametres) . "&from=" . $from;
$index = (int) $request->query->get('index');
$page = (int) $request->query->get('page', 1);
if ($page > 1) {
$string_params .= "&page=" . $page;
}
$urlList = $request->query->get('urlList');
$urlRetourList = $urlList ? $urlList . '?' . $string_params : null;
if ($from == "ouvrir-capital") {
$parametres['from_list'] = "acquereur_investisseur";
}
$previousAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "entreprise", $page, $index - 1);
$nextAnnonce = $this->am->getIndexNAnnonceAcquisitionList($parametres, "entreprise", $page, $index + 1);
$fromAlaUne = $request->query->get('fromAlaUne');
$arrayVarsTrans = [];
$arrayVarsTrans['titre_annonce'] = $annonce['titre_annonce'];
$arrayVarsTrans['nom_localisation'] = $this->donneNomLocalisationPourTitle($annonce);
$metaTitle = 'Informations sur l\'acquéreur d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$ ';
$metaDescription = 'Consultez les informations sur l\'acquéreur d\'entreprise, %$titre_annonce%$ - %$nom_localisation%$';
$metaTag = $this->metaTag
->setTitle($translationExtension->translate($metaTitle, $lang, "", "M", "", $arrayVarsTrans))
->setDescription($translationExtension->translate($metaDescription, $lang, "", "M", "", $arrayVarsTrans))
->setCanonical($canonical)
->setPrev($prev)
->setNext($next);
return $this->render('vendre_entreprise/informations_acquereur.html.twig', [
'metaTag' => $metaTag,
'annonce' => $annonce,
'secteurActivite' => $secteurActivite,
'type_acquisition' => $type_acquisition,
'terme_pour_la_date' => $terme_pour_la_date,
'current_year' => $current_year,
'colorClass' => $colorClass,
'colorImportant' => $colorImportant,
'ongletClass' => $ongletClass,
'titreClass' => $titreClass,
'bgColor' => $bgColor,
'from' => $from,
'urlList' => $urlList,
'urlRetourList' => $urlRetourList,
'string_params' => $string_params,
'previousAnnonce' => $previousAnnonce,
'nextAnnonce' => $nextAnnonce,
'index' => $index,
'indexPrevious' => $index - 1,
'indexNext' => $index + 1,
'fromAlaUne' => $fromAlaUne,
'fromOnglet' => $fromOnglet,
'btnContactClass' => $btnContactClass
]);
} else {
return $this->redirectToRoute('index', ['codePays' => substr($codePays, 1, 2)]);
}
}
public function imprimerAnnonceAcheteur($idAnnonce, $codePays, $lang, TranslationExtension $translationExtension, CommandesRepository $cr, TelephoneInternational $ti, CommandesManagers $cm) {
$user = $this->getUser();
$annonce = $this->am->getAnnonceAcheteurById($idAnnonce, null, null, false);
$coordonnees = [];
$annee_passee = false; // Variable pour savoir si 1 an est passé depuis la commande, si oui, on n'affiche pas les coordonnées complètes (RGPD)
if ($annonce == null) {
throw $this->createNotFoundException('Annonce introuvable');
}
// Si l'utilisateur a déjà commandé cette annonce
if ($user && $cr->hasAnnonceCommande($user->_get('login_utilisateur'), $idAnnonce, "acheteur")) {
$coordonnees['nom_contact'] = $annonce['nom_contact'];
$coordonnees['email'] = $annonce['email'];
$coordonnees['telephone'] = $annonce['telephone'] ? $ti->getInternationalPhone($annonce['telephone'], $annonce['indicatif_telephone'])['affichage'] : null;
$coordonnees['commentaires'] = $annonce['commentaires'];
$commande = $cm->getArrayCommandeByIdElement($idAnnonce, "acheteur");
if ($commande) {
$annee_passee = $commande['annee_passee'];
}
} elseif ('publique' != $annonce['mode_annonce']) {
throw $this->createNotFoundException('Annonce introuvable');
}
if ($annonce['date_parution'] == $annonce['date_parution_initiale']) {
$terme_pour_la_date = "poste le ";
} else {
$terme_pour_la_date = "mise a jour le ";
}
if ($annonce['type_raprochement'] == "partenaire") {
$tab_detail_partenariat = $this->am->get_tab_info_partenariat($idAnnonce);
$type_partenariat = $tab_detail_partenariat['type_partenariat'];
$type_partenaire = $tab_detail_partenariat['type_partenaire'];
$stade_dev_deposant = $tab_detail_partenariat['stade_dev_deposant'];
$partenaire_recherche = "";
$nbColaborateur = "";
$ca = "";
$ca_min = number_format((int) $annonce["ca_min"], 0, ',', ' ');
$ca_max = number_format((int) $annonce["ca_max"], 0, ',', ' ');
$nb_personnes_max = number_format((int) $annonce["nb_personnes_max"], 0, ',', ' ');
$nb_personnes_min = number_format((int) $annonce["nb_personnes_min"], 0, ',', ' ');
if ($type_partenaire == 'personne_physique') {
$partenaire_recherche = "une personne physique";
} elseif ($type_partenaire == 'personne_morale') {
$partenaire_recherche = "une societe";
if ($annonce["nb_personnes_min"] != "" && $annonce["nb_personnes_max"] != "") {
$nbColaborateur = $annonce["nb_personnes_min"] . ' < nb < ' . $annonce["nb_personnes_max"];
}
if ($nb_personnes_min != "" && $nb_personnes_max != "") {
if ($annonce["nb_personnes_max"] > 1000) {
$nbColaborateur = ' nb > ' . $nb_personnes_min;
}
} else {
$nbColaborateur = $nb_personnes_min . ' < nb < ' . $nb_personnes_max;
}
if ($nb_personnes_min == "" && $nb_personnes_max != "") {
$nbColaborateur = ' nb < ' . $nb_personnes_max;
}
if ($nb_personnes_min != "" && $nb_personnes_max == "") {
$nbColaborateur = ' nb > ' . $nb_personnes_min;
}
if ($nb_personnes_min == "" && $nb_personnes_max == "") {
$nbColaborateur = ' non renseigne';
}
if ($ca_min != "" && $annonce["ca_max"] != "") {
if ($ca_max > 100000) {
$ca = 'CA > ' . $ca_min . 'k€';
} else {
$ca = $ca_min . ' k€ < CA < ' . $ca_max . ' k€';
}
}
if ($ca_min == "" && $this->details ["ca_max"] != "") {
$ca = ' CA < ' . $ca_max . ' k€';
}
if ($ca_min != "" && $ca_max == "") {
$ca = ' CA > ' . $ca_min . ' k€';
}
if ($ca_min == "" && $ca_max == "") {
$ca = ' ' . $translationExtension->translate("non renseigne", $lang, '', 'm', '');
}
$localisation_souhaitee = $annonce["nom_localisation"];
if (empty($localisation_souhaitee)) {
$localisation_souhaitee = $translationExtension->translate("non renseigne", $lang, '', 'm', '');
}
} else {
$partenaire_recherche = "non renseigne";
}
if ($stade_dev_deposant == 'projet_creation') {
$stade_dev_deposant_claire = "un projet a l'etude de creation d'entreprise";
} elseif ($stade_dev_deposant == 'societe_creation') {
$stade_dev_deposant_claire = "une societe actuellement en cours de creation";
} elseif ($stade_dev_deposant == 'premier_exercice') {
$stade_dev_deposant_claire = "une societe dans son premier exercice";
} elseif ($stade_dev_deposant == 'jeune_societe') {
$stade_dev_deposant_claire = "une jeune societe (de 1 a 3 ans d'existence)";
} elseif ($stade_dev_deposant == 'societe_etablie') {
$stade_dev_deposant_claire = "une societe etablie (de 3 a 10 ans d'existence)";
} elseif ($stade_dev_deposant == 'societe_mature') {
$stade_dev_deposant_claire = "une societe mature (plus de 10 ans d'existence)";
} else {
$stade_dev_deposant_claire = "";
}
$initiateur_partenariat = "";
$titre_info = "";
if ($annonce['type_acquereur'] == "personne") {
if (!empty($stade_dev_deposant)) {
$initiateur_partenariat = "une personne physique qui represente " . lcfirst($stade_dev_deposant);
} else {
$initiateur_partenariat = "non renseigne";
}
$titre_info = "informations sur le porteur de projet";
} elseif ($annonce['type_acquereur'] == "societe") {
if (!empty($stade_dev_deposant)) {
$initiateur_partenariat = ucfirst($stade_dev_deposant);
} else {
$initiateur_partenariat = "non renseigne";
}
$titre_info = "informations sur la societe qui recherche";
} else {
$initiateur_partenariat = "non renseigne";
$titre_info = "informations sur la societe qui recherche";
}
$tab_infos = [];
$profil = $this->test_si_affichage_acquereur_ou_repreneur($annonce['type_acquereur'], $annonce['profil_deposant']);
if ($profil != "repreneur") {
$date_creation_societe = $annonce["date_creation_societe"];
if ($annonce["date_creation_societe"] == "") {
$date_creation_societe = "non renseignee";
}
$nb_personnes_societe = $annonce["nb_personnes_societe"];
if ($annonce["nb_personnes_societe"] == "") {
$nb_personnes_societe = "non renseigne";
}
$ca_societe = (int) $annonce["ca_societe"] . ' k€';
if ($annonce["ca_societe"] == "") {
$ca_societe = "non renseigne";
}
$res_net_societe = (int) $annonce["res_net_societe"] . ' k€';
if ($annonce["res_net_societe"] == "") {
$res_net_societe = "non renseigne";
}
$description_activite_acheteur = $annonce["description_activite_societe"];
if ($annonce["description_activite_societe"] == "") {
$description_activite_acheteur = "non renseignee";
}
if ($annonce["date_creation_societe"] == "") {
$anciennete_de_la_societe = "non renseignee";
} else {
$annee_actuelle = date('Y');
$diff = $annee_actuelle - $annonce["date_creation_societe"];
if ($diff < 5) {
$anciennete_de_la_societe = "moins de 5 ans";
}
if ($diff >= 5 && $diff <= 10) {
$anciennete_de_la_societe = "entre 5 et 10 ans";
}
if ($diff > 10) {
$anciennete_de_la_societe = "plus de 10 ans";
}
}
$tab_infos['date_creation_societe'] = $date_creation_societe;
$tab_infos['nb_personnes_societe'] = $nb_personnes_societe;
$tab_infos['ca_societe'] = $ca_societe;
$tab_infos['res_net_societe'] = $res_net_societe;
$tab_infos['description_activite_acheteur'] = $description_activite_acheteur;
$tab_infos['anciennete_de_la_societe'] = $anciennete_de_la_societe;
} else {
$annee_naissance_repreneur = $annonce["annee_naissance_repreneur"];
if ($annonce["annee_naissance_repreneur"] == "") {
$annee_naissance_repreneur = 0;
}
$annee_actuelle = date('Y');
$age_repreneur = $annee_actuelle - (int) $annee_naissance_repreneur;
if ($annonce["annee_naissance_repreneur"] == "") {
$age_repreneur = "non renseigne";
}
$apport_perso_repreneur = number_format($annonce["apport_perso_repreneur"], 0, ',', ' ') . " k€";
if ($annonce["apport_perso_repreneur"] == "") {
$apport_perso_repreneur = "non renseigne";
}
$domaine_de_competence = $annonce["liste_secteurs_affichage"];
if ($annonce["liste_secteurs_affichage"] == "") {
$domaine_de_competence = "non renseigne";
}
$formation_repreneur = $annonce["formation_repreneur"];
if ($annonce["formation_repreneur"] == "") {
$formation_repreneur = "non renseignee";
}
$parcours_pro_repreneur = $annonce["parcours_pro_repreneur"];
if ($annonce["parcours_pro_repreneur"] == "") {
$parcours_pro_repreneur = "non renseigne";
}
$tab_infos['age_repreneur'] = $age_repreneur;
$tab_infos['apport_perso_repreneur'] = $apport_perso_repreneur;
$tab_infos['domaine_de_competence'] = $domaine_de_competence;
$tab_infos['formation_repreneur'] = $formation_repreneur;
$tab_infos['parcours_pro_repreneur'] = $parcours_pro_repreneur;
}
$id_localisation_deposant = $tab_detail_partenariat['id_localisation_deposant'];
$localisation_deposant = $this->lm->getStringNomLocalisationById($id_localisation_deposant);
if (empty($localisation_deposant)) {
$localisation_deposant = "non renseigne";
}
$array_parameters = [
'lang' => $lang,
'annonce' => $annonce,
'terme_pour_la_date' => $terme_pour_la_date,
'type_partenariat' => $type_partenariat,
'nbColaborateur' => $nbColaborateur,
'ca' => $ca,
'partenaire_recherche' => $partenaire_recherche,
'type_partenaire' => $type_partenaire,
'localisation_souhaitee' => $localisation_souhaitee,
'stade_dev_deposant_claire' => $stade_dev_deposant_claire,
'titre_info' => $titre_info,
'profil' => $profil,
'tab_infos' => $tab_infos,
'localisation_deposant' => $localisation_deposant,
'coordonnees' => $coordonnees,
'annee_passee' => $annee_passee
];
} else {
$current_year = date('Y');
$array_parameters = [
'lang' => $lang,
'annonce' => $annonce,
'terme_pour_la_date' => $terme_pour_la_date,
'current_year' => $current_year,
'coordonnees' => $coordonnees,
'annee_passee' => $annee_passee
];
}
return $this->pf->generatePDFviewBrowser(
'templates_pdf/vendre_entreprise/annonce_acheteur_details.html.twig',
$array_parameters,
'annonce_a' . $annonce['id_annonce_acheteur'],
'annonce_acheteur_title'
);
}
private function test_si_affichage_acquereur_ou_repreneur($type_acquereur, $profil_deposant) {
if ($type_acquereur == "personne") {
$res = "repreneur";
} elseif ($type_acquereur == "societe") {
$res = "acquereur";
} else {
if ($profil_deposant == "repreneur") {
$res = "repreneur";
} else {
$res = "acquereur";
}
}
return $res;
}
private function serializeParams($parametres) {
$string_params = "";
foreach ($parametres as $name => $value) {
if ($name != "rechercher" && $name != "type" && $name != "array_localisation") {
if ($string_params == "") {
$string_params .= $name . "=" . $value;
} else {
$string_params .= "&" . $name . "=" . $value;
}
}
}
return $string_params;
}
private function getAnnoncesNumbers($parametres) {
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$repoAnnuaireRepreneur = $this->getDoctrine()->getRepository(AnnuaireRepreneurs::class);
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$nb_annonces_acheteur = $repoAcheteur->donne_nb_annonces_achat($parametres);
$nb_recherches_partenariats = $repoAcheteur->donne_nb_annonces_achat_recherche_partenaire($parametres);
$nb_annonces_acquisition = $nb_annonces_acheteur - $nb_recherches_partenariats;
$nb_cvs = $repoAnnuaireRepreneur->donne_nb_cv_repreneurs($parametres);
$nb_acquereurs_historiques = $repoSociete->donne_nb_acquereurs_historiques($parametres);
$nb_participations_fonds = $repoSociete->donne_nb_participations_fonds($parametres, "acheteur");
$nb_acheteurs_potentiels = $nb_acquereurs_historiques + $nb_participations_fonds;
$nb_investisseurs_acquereurs = $repoSociete->donne_nb_investisseurs_acquereurs($parametres);
$nb_annonces = $nb_annonces_acquisition + $nb_cvs + $nb_acheteurs_potentiels + $nb_investisseurs_acquereurs;
return [
'nb_annonces_acquisition' => $nb_annonces_acquisition,
'nb_cvs' => $nb_cvs,
'nb_acquereurs_historiques' => $nb_acquereurs_historiques,
'nb_participations_fonds' => $nb_participations_fonds,
'nb_acheteurs_potentiels' => $nb_acheteurs_potentiels,
'nb_investisseurs_acquereurs' => $nb_investisseurs_acquereurs,
'nb_annonces' => $nb_annonces
];
}
private function getNbAnnoncesBySecteursActivite($type = "entreprise") {
$secteurs = $this->sam->getListeSecteursActiviteOrderedByIdPere();
$array_result = [];
if ($type == "entreprise") {
$repoAcheteur = $this->getDoctrine()->getRepository(AnnoncesAcheteur::class);
$annonces_secteur = $repoAcheteur->donne_tableau_annonces_achat_par_secteur_niveau2($type);
} elseif ($type == "partenaire") {
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$annonces_secteur = $repoSociete->donne_tableau_cibles_potentielles_par_secteur();
} elseif ($type == "acquereur_historique") {
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$annonces_secteur = $repoSociete->donne_tableau_acquereurs_historiques_par_secteur_niveau2();
} elseif ($type == "participation_fonds") {
$repoSociete = $this->getDoctrine()->getRepository(Societes::class);
$annonces_secteur = $repoSociete->donne_tableau_participation_fonds_par_secteur_niveau2();
}
foreach ($secteurs[0] as $id_secteur_pere => $secteur_pere) {
$row = [];
$nb_annonce_row = 0;
$row[0] = ['id_secteur_activite' => $id_secteur_pere, 'nom_secteur_activite' => $secteur_pere['nomSecteurActivite'], 'nom_pour_title' => $secteur_pere['nomPourTitle'], 'nb' => 0];
foreach ($secteurs[$id_secteur_pere] as $id_secteur => $secteur) {
$data = ['id_secteur_activite' => $id_secteur, 'nom_secteur_activite' => $secteur['nomSecteurActivite'], 'nom_pour_title' => $secteur['nomPourTitle']];
$data['nb'] = isset($annonces_secteur[$id_secteur]) ? $annonces_secteur[$id_secteur] : 0;
$row[] = $data;
$nb_annonce_row += $data['nb'];
}
$row[0]['nb'] = $nb_annonce_row;
$array_result[] = $row;
}
return $array_result;
}
/**
* @param type $codePays
* @return type
*/
private function getIdPaysByCodePays($codePays) {
return $this->container->get("id_pays_by_code_pays")->getIdPaysByCodePays($codePays);
}
/**
* @param array $parameters
* @return bool
* Pour determiner si une recherche est uniquement sur une sous localisation (region ou departement)
*/
private function isRechercheByOneSousLocalisationOnly($parameters) {
$id_localisation = isset($parameters['id_localisation']) ? $parameters['id_localisation'] : '';
$array_loc = array_values(array_filter(explode(",", $id_localisation)));
if (count($array_loc) == 1) {
$localisation = $array_loc[0];
$firstLetter = substr($localisation, 0, 1);
if ($firstLetter == "r" || $firstLetter == "d") {
return true;
} else {
return false;
}
} else {
return false;
}
}
private function isRechercheByOneLocalisation($parameters) {
$id_localisation = isset($parameters['id_localisation']) ? $parameters['id_localisation'] : '';
$array_loc = array_values(array_filter(explode(",", $id_localisation)));
return count($array_loc) == 1;
}
private function isRechercheBySeveralLocalisations($parameters) {
$id_localisation = isset($parameters['id_localisation']) ? $parameters['id_localisation'] : '';
$array_loc = array_values(array_filter(explode(",", $id_localisation)));
return count($array_loc) > 1;
}
/**
* @param $id_sous_localisation
* @return $id_localisation_pays
* Determine l'id_localisation du pays en fonction de la sous localisation (region ou departement) en paramètre
*/
private function getPaysIdLocalisationBySousLocalisationId($id_sous_localisation) {
// exemple de format : ,r33_01,
$id_sous_localisation = array_values(array_filter(explode(",", $id_sous_localisation)))[0];
$id_localisation_pays = substr($id_sous_localisation, 1, strpos($id_sous_localisation, '_') - 1);
return $id_localisation_pays;
}
private function donneNomLocalisationPourTitle($annonce) {
$nom_localisation = "";
if (isset($annonce['nom_localisation']) && $annonce['nom_localisation'] != "Confidentiel") {
$nom_localisation .= $annonce['nom_localisation'];
}
return $nom_localisation;
}
/**
*
* @param type $codePays
* @return type
*/
private function getVersionByCodePays($codePays) {
return Utils::codePaysWithoutDash($codePays);
}
}