is_option_mode_service_consulte_enabled() === true ?
'LEFT JOIN '.DB_PREFIXE.'consultation_entrante
ON dossier.dossier = consultation_entrante.dossier
' :
'';
$table .=
"LEFT JOIN
(SELECT
dossier,
external_uid
FROM
".DB_PREFIXE."lien_id_interne_uid_externe
WHERE object = 'dossier'
AND category = 'platau'
) AS dossier_platau
ON
dossier_platau.dossier = dossier.dossier
LEFT JOIN
(SELECT
dossier,
external_uid
FROM
".DB_PREFIXE."lien_id_interne_uid_externe
WHERE object = 'dossier_consultation'
AND category = 'platau'
) AS consultation_platau
ON
consultation_platau.dossier = dossier.dossier
LEFT JOIN
(SELECT
dossier,
ARRAY_TO_STRING(ARRAY_AGG(external_uid ORDER BY external_uid ASC), ', ') AS external_uid
FROM
".DB_PREFIXE."lien_id_interne_uid_externe
WHERE
object = 'piece'
AND category = 'platau'
GROUP BY
dossier) AS pieces_platau
ON
pieces_platau.dossier = dossier.dossier
LEFT JOIN
(SELECT
dossier,
ARRAY_TO_STRING(ARRAY_AGG(object || ' : ' || external_uid), ', ') AS external_uid
FROM
".DB_PREFIXE."lien_id_interne_uid_externe
WHERE
object != 'piece'
AND object != 'dossier'
AND object != 'dossier_consultation'
AND category = 'platau'
GROUP BY
dossier) AS autres_platau
ON
autres_platau.dossier = dossier.dossier
";
$table .= sprintf('
LEFT JOIN (
%1$slien_dossier_demandeur AS lien_dossier_demandeur_delegataire
JOIN %1$sdemandeur as demandeur_delegataire
ON lien_dossier_demandeur_delegataire.demandeur = demandeur_delegataire.demandeur AND demandeur_delegataire.type_demandeur = \'delegataire\'
)
ON dossier.dossier = lien_dossier_demandeur_delegataire.dossier AND lien_dossier_demandeur_delegataire.petitionnaire_principal IS FALSE
LEFT JOIN %1$sdonnees_techniques
ON donnees_techniques.dossier_instruction = dossier.dossier
LEFT JOIN %1$sarchitecte
ON architecte.architecte = donnees_techniques.architecte',
DB_PREFIXE) ;
// Permet l'ajout de la commune si l'option est activé
$champAffiche_debut_num_dossier = array(
'dossier.dossier as "'._("dossier").'"',
'dossier.dossier_libelle as "'._("dossier").'"',
);
if ($f->is_option_dossier_commune_enabled() === true) {
$champAffiche_debut_num_dossier[] = "commune.libelle as \""._("commune")."\"";
}
// Modifie la méthode de récupération de la nature des travaux
$champAffiche_debut_commun = array(
$case_demandeur.' as "'._("petitionnaire").'"',
$case_correspondant.' as "'.__("correspondant").'"',
'TRIM(CONCAT(architecte.nom, \' \', architecte.prenom)) as "'.__("architecte (nom)").'"',
'architecte.nom_cabinet as "'.__("architecte (cabinet)").'"',
$trim_concat_terrain.'as "'.__("localisation").'"',
'dossier_autorisation_type_detaille.libelle as "'._("nature_dossier").'"',
'donnees_techniques.co_tot_log_nb as "'.__("nombre de logements créés").'"',
$surface_cree.' as "'.__("surface créée").'"',
$famille_travaux_libelle.' as "'.__("Famille de travaux").'"',
'nature_travaux.nature_travaux_libelle as "'.__("Nature de travaux").'"',
'description_projet as "'.__("Description du projet").'"',
'to_char(dossier.date_depot ,\'DD/MM/YYYY\') as "'._("date_depot").'"',
'to_char(dossier.date_complet ,\'DD/MM/YYYY\') as "'._("date_complet").'"',
'CASE WHEN dossier.incomplet_notifie IS TRUE AND dossier.incompletude IS TRUE
THEN to_char(dossier.date_limite_incompletude ,\'DD/MM/YYYY\')
ELSE to_char(dossier.date_limite ,\'DD/MM/YYYY\')
END as "'._("date_limite").'"',
);
$champAffiche_demat = array(
'dossier_platau.external_uid as "dossier Plat\'AU"',
'consultation_platau.external_uid as "consultation Plat\'AU"',
'pieces_platau.external_uid as "pièce(s) Plat\'AU"',
'autres_platau.external_uid as "autres objets Plat\'AU"',
);
$champAffiche_demat_sc = array();
if ($f->is_option_mode_service_consulte_enabled() === true) {
$champAffiche_demat_sc = array(
'consultation_entrante.service_consultant_id as "'.__('Service consultant : identifiant').'"',
'consultation_entrante.service_consultant_libelle as "'.__('Service consultant : libellé').'"',
);
}
// Redéfinit la liste des champs à afficher
$champAffiche = array_merge(
$champAffiche_debut_num_dossier,
$champAffiche_debut_commun,
array('instructeur.nom as "'.__("instructeur").'"',
'division.code as "'.__("division").'"',
),
$champAffiche_fin_commun,
$champAffiche_demat,
$champAffiche_demat_sc
);
?>