501 |
"is_notifiable_by_task_manual", |
"is_notifiable_by_task_manual", |
502 |
"is_portail_notification_sans_annexe" |
"is_portail_notification_sans_annexe" |
503 |
), |
), |
504 |
"method" => "notifier_demandeur_principal", |
"method" => "notifier_demandeur_principal_via_portal", |
505 |
"permission_suffix" => "modifier", |
"permission_suffix" => "modifier", |
506 |
); |
); |
507 |
|
|
1645 |
} |
} |
1646 |
|
|
1647 |
/** |
/** |
1648 |
|
* Renvoie sous la forme d'un tableau la liste des événements pouvant être ajoutés au dossier |
1649 |
|
* dont l'identifiant a été passé en paramètre dans l'url. |
1650 |
|
* |
1651 |
|
* @return array |
1652 |
|
*/ |
1653 |
|
function get_var_sql_forminc__sql_evenement() { |
1654 |
|
// Récupération du numéro de dossier |
1655 |
|
$dossier = $this->getParameter("idxformulaire"); |
1656 |
|
// Si changement de décision par instructeur commune |
1657 |
|
$filter = ''; |
1658 |
|
if ($this->f->isUserInstructeur() === true |
1659 |
|
&& $this->getDivisionFromDossier($dossier) != $_SESSION["division"] |
1660 |
|
&& $this->isInstrCanChangeDecision($dossier) === true) { |
1661 |
|
$filter = "AND evenement.type IN ('arrete', 'changement_decision')"; |
1662 |
|
} |
1663 |
|
// Récupération du libellé, de l'identifiant des évènement et d'un booléen permettant |
1664 |
|
// de déterminer si il s'agit d'évènements suggérés. |
1665 |
|
$qres = $this->f->get_all_results_from_db_query( |
1666 |
|
sprintf( |
1667 |
|
'SELECT |
1668 |
|
DISTINCT(evenement.evenement), |
1669 |
|
evenement.libelle, |
1670 |
|
-- Si l evenement est suggérés alors il sera lié à la table des événements suggérés du dossier |
1671 |
|
CASE WHEN evenement_suggere_dossier.evenement IS NULL |
1672 |
|
THEN FALSE |
1673 |
|
ELSE TRUE |
1674 |
|
END AS is_suggested |
1675 |
|
FROM |
1676 |
|
-- Jointures permettant de récupérer la liste des évènements compatibles avec le dossier |
1677 |
|
-- selon le type de dossier et l état du dossier. |
1678 |
|
%1$sevenement |
1679 |
|
JOIN %1$slien_dossier_instruction_type_evenement |
1680 |
|
ON evenement.evenement = lien_dossier_instruction_type_evenement.evenement |
1681 |
|
JOIN %1$stransition |
1682 |
|
ON evenement.evenement = transition.evenement |
1683 |
|
JOIN %1$sdossier |
1684 |
|
ON lien_dossier_instruction_type_evenement.dossier_instruction_type = dossier.dossier_instruction_type |
1685 |
|
AND transition.etat = dossier.etat |
1686 |
|
-- Jointures avec une sous requêtes servant à récupérer la liste des évènements suggérés du dossier. |
1687 |
|
LEFT JOIN ( |
1688 |
|
SELECT |
1689 |
|
lien_sig_contrainte_evenement.evenement, |
1690 |
|
dossier.dossier |
1691 |
|
FROM |
1692 |
|
%1$slien_sig_contrainte_evenement |
1693 |
|
JOIN %1$ssig_contrainte |
1694 |
|
ON lien_sig_contrainte_evenement.sig_contrainte = sig_contrainte.sig_contrainte |
1695 |
|
JOIN %1$slien_sig_contrainte_dossier_instruction_type |
1696 |
|
ON sig_contrainte.sig_contrainte = lien_sig_contrainte_dossier_instruction_type.sig_contrainte |
1697 |
|
JOIN %1$slien_sig_contrainte_om_collectivite |
1698 |
|
ON sig_contrainte.sig_contrainte = lien_sig_contrainte_om_collectivite.sig_contrainte |
1699 |
|
JOIN %1$scontrainte |
1700 |
|
ON sig_contrainte.libelle = contrainte.libelle |
1701 |
|
JOIN %1$sdossier_contrainte |
1702 |
|
ON contrainte.contrainte = dossier_contrainte.contrainte |
1703 |
|
JOIN %1$sdossier |
1704 |
|
ON dossier_contrainte.dossier = dossier.dossier |
1705 |
|
AND lien_sig_contrainte_dossier_instruction_type.dossier_instruction_type = dossier.dossier_instruction_type |
1706 |
|
JOIN %1$som_collectivite |
1707 |
|
ON lien_sig_contrainte_om_collectivite.om_collectivite = om_collectivite.om_collectivite |
1708 |
|
AND (dossier.om_collectivite = om_collectivite.om_collectivite |
1709 |
|
OR om_collectivite.niveau = \'2\') |
1710 |
|
) AS evenement_suggere_dossier |
1711 |
|
ON evenement.evenement = evenement_suggere_dossier.evenement |
1712 |
|
AND dossier.dossier = evenement_suggere_dossier.dossier |
1713 |
|
WHERE |
1714 |
|
dossier.dossier = \'%2$s\' |
1715 |
|
%3$s |
1716 |
|
ORDER BY |
1717 |
|
is_suggested DESC, |
1718 |
|
evenement.libelle', |
1719 |
|
DB_PREFIXE, |
1720 |
|
$this->f->db->escapeSimple($dossier), |
1721 |
|
$filter |
1722 |
|
), |
1723 |
|
array( |
1724 |
|
"origin" => __METHOD__ |
1725 |
|
) |
1726 |
|
); |
1727 |
|
return $qres['result']; |
1728 |
|
} |
1729 |
|
|
1730 |
|
/** |
1731 |
|
* Récupère un tableau contenant des évènements de la forme : |
1732 |
|
* $events = array( |
1733 |
|
* 1 => array( |
1734 |
|
* 'libelle' => 'evenement_libelle', |
1735 |
|
* 'evenement' => 'identifiant_evenement', |
1736 |
|
* 'is_suggested' => true/false -> booleen indiquant si c'est un événement suggéré |
1737 |
|
* )) |
1738 |
|
* Et le transforme pour pouvoir l'utiliser pour le remplissage d'un select de formulaire. |
1739 |
|
* |
1740 |
|
* Le format de sorti est le suivant : |
1741 |
|
* $select = array( |
1742 |
|
* 0 => array( -> liste des id des événements |
1743 |
|
* '0' => '', |
1744 |
|
* '1' => array( |
1745 |
|
* '0' => array(), -> liste des id des événements suggérés |
1746 |
|
* '1' => array(), -> liste des libelles des événements suggérés |
1747 |
|
* ), |
1748 |
|
* ..., |
1749 |
|
* n => 'id_evenement_n' |
1750 |
|
* ), |
1751 |
|
* 1 => array( |
1752 |
|
* '0' => '__('choisir')." ".__('evenement')', |
1753 |
|
* '1' => '💡 Suggestions', |
1754 |
|
* ..., |
1755 |
|
* 'n' => 'libelle_evenement_n', |
1756 |
|
* ) |
1757 |
|
* ) |
1758 |
|
* |
1759 |
|
* @param array tableau des événements |
1760 |
|
* @return array |
1761 |
|
*/ |
1762 |
|
protected function convert_events_array_to_select_format($events) { |
1763 |
|
// Remplissage du tableau du select en incluant le groupe des instructions suggérées. |
1764 |
|
$contenu = array( |
1765 |
|
0 => array("",), |
1766 |
|
1 => array(__('choisir')." ".__('evenement'),) |
1767 |
|
); |
1768 |
|
|
1769 |
|
if (! empty($events)) { |
1770 |
|
// S'il y a des évènements suggérés extraction de ces événements et mise en place du groupe |
1771 |
|
$suggested_event_group = array_filter($events, function($a) { |
1772 |
|
return $a['is_suggested'] === 't'; |
1773 |
|
}); |
1774 |
|
if (! empty($suggested_event_group)) { |
1775 |
|
// Prépare les données qui permettront d'afficher le groupe des événements |
1776 |
|
// suggérés. |
1777 |
|
$values = array(); |
1778 |
|
$labels = array(); |
1779 |
|
foreach ($suggested_event_group as $index => $suggested_event) { |
1780 |
|
$values[] = $suggested_event['evenement']; |
1781 |
|
$labels[] = $suggested_event['libelle']; |
1782 |
|
// Supprime les évènements suggérés de la liste des évènements |
1783 |
|
unset($events[$index]); |
1784 |
|
} |
1785 |
|
// Remplissage du select pour le groupe |
1786 |
|
$contenu[0][] = array($values, $labels); |
1787 |
|
$contenu[1][] = __('💡 Suggestions'); |
1788 |
|
} |
1789 |
|
|
1790 |
|
// Remplissage du select |
1791 |
|
foreach ($events as $event) { |
1792 |
|
$contenu[0][] = $event['evenement']; |
1793 |
|
$contenu[1][] = $event['libelle']; |
1794 |
|
} |
1795 |
|
} |
1796 |
|
return $contenu; |
1797 |
|
} |
1798 |
|
|
1799 |
|
/** |
1800 |
* SETTER_FORM - setSelect. |
* SETTER_FORM - setSelect. |
1801 |
* |
* |
1802 |
* @return void |
* @return void |
1874 |
* événements disponibles. |
* événements disponibles. |
1875 |
*/ |
*/ |
1876 |
if ($maj == 0) { |
if ($maj == 0) { |
1877 |
// Récupération des événements par une jointure entre la table dossier |
$evenements = $this->get_var_sql_forminc__sql_evenement(); |
1878 |
// et la table transition et la table evenement et la table |
$form->setSelect("evenement", $this->convert_events_array_to_select_format($evenements)); |
|
// lien_dossier_instruction_type_evenement en fonction de l'identifiant |
|
|
// du dossier d'instruction en cours |
|
|
$sql = "SELECT |
|
|
evenement.evenement, |
|
|
evenement.libelle as lib |
|
|
FROM ".DB_PREFIXE."dossier |
|
|
INNER JOIN ".DB_PREFIXE."lien_dossier_instruction_type_evenement |
|
|
ON dossier.dossier_instruction_type=lien_dossier_instruction_type_evenement.dossier_instruction_type |
|
|
INNER JOIN ".DB_PREFIXE."evenement |
|
|
ON evenement.evenement=lien_dossier_instruction_type_evenement.evenement |
|
|
INNER JOIN ".DB_PREFIXE."transition |
|
|
ON evenement.evenement = transition.evenement |
|
|
AND dossier.etat=transition.etat |
|
|
WHERE dossier.dossier='".$this->getParameter("idxformulaire")."' "; |
|
|
|
|
|
// Si changement de décision par instructeur commune |
|
|
if($this->f->isUserInstructeur() === true |
|
|
&& $this->getDivisionFromDossier($this->getParameter("idxformulaire")) != $_SESSION["division"] |
|
|
&& $this->isInstrCanChangeDecision($this->getParameter("idxformulaire")) === true) { |
|
|
$sql .= "AND evenement.type IN ('arrete', 'changement_decision') "; |
|
|
} |
|
|
$sql .= "ORDER BY evenement.libelle, evenement.action"; |
|
|
$res = $this->f->db->query($sql); |
|
|
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
|
|
$this->f->isDatabaseError($res); |
|
|
// Remplissage du tableau du select |
|
|
$contenu = array( |
|
|
0 => array("",), |
|
|
1 => array(_('choisir')." "._('evenement'),) |
|
|
); |
|
|
while ($row=& $res->fetchRow()) { |
|
|
$contenu[0][] = $row[0]; |
|
|
$contenu[1][] = $row[1]; |
|
|
} |
|
|
$form->setSelect("evenement", $contenu); |
|
|
|
|
1879 |
} else { |
} else { |
1880 |
// Instanciation de l'événement pour récupérer son libellé |
// Instanciation de l'événement pour récupérer son libellé |
1881 |
$evenement = $this->f->get_inst__om_dbform(array( |
$evenement = $this->f->get_inst__om_dbform(array( |
2122 |
} else { |
} else { |
2123 |
$sql = $this->get_var_sql_forminc__sql("signataire_arrete_defaut"); |
$sql = $this->get_var_sql_forminc__sql("signataire_arrete_defaut"); |
2124 |
} |
} |
2125 |
$res = $this->f->db->query($sql); |
|
2126 |
$this->f->addToLog(__METHOD__."(): db->query(\"".$sql."\")", VERBOSE_MODE); |
$qres = $this->f->get_all_results_from_db_query($sql, array( |
2127 |
$this->f->isDatabaseError($res); |
"origin" => __METHOD__)); |
2128 |
$row = $res->fetchrow(DB_FETCHMODE_ASSOC); |
$row = array_shift($qres['result']); |
2129 |
if (isset($row["signataire_arrete"]) |
if (isset($row["signataire_arrete"]) |
2130 |
&& is_numeric($row["signataire_arrete"])) { |
&& is_numeric($row["signataire_arrete"])) { |
2131 |
// |
// |
2397 |
* - avis_decision |
* - avis_decision |
2398 |
*/ |
*/ |
2399 |
// Récupération de tous les paramètres de l'événement sélectionné |
// Récupération de tous les paramètres de l'événement sélectionné |
2400 |
$sql = "SELECT * FROM ".DB_PREFIXE."evenement |
// TODO : remplacer cette requête par l'instanciation de l'événement |
2401 |
WHERE evenement=".$this->valF['evenement']; |
$qres = $this->f->get_all_results_from_db_query( |
2402 |
$res = $this->f->db->query($sql); |
sprintf( |
2403 |
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
'SELECT |
2404 |
$this->f->isDatabaseError($res); |
* |
2405 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
FROM |
2406 |
|
%1$sevenement |
2407 |
|
WHERE |
2408 |
|
evenement = %2$d', |
2409 |
|
DB_PREFIXE, |
2410 |
|
intval($this->valF['evenement']) |
2411 |
|
), |
2412 |
|
array( |
2413 |
|
"origin" => __METHOD__, |
2414 |
|
) |
2415 |
|
); |
2416 |
|
foreach ($qres['result'] as $row) { |
2417 |
// Récupération de l'identifiant de l'action |
// Récupération de l'identifiant de l'action |
2418 |
// si une action est paramétrée dans l'événement |
// si une action est paramétrée dans l'événement |
2419 |
$this->valF['action'] = NULL; |
$this->valF['action'] = NULL; |
2454 |
} |
} |
2455 |
} |
} |
2456 |
// Récupération de toutes les valeurs du dossier d'instruction en cours |
// Récupération de toutes les valeurs du dossier d'instruction en cours |
2457 |
$sql = "SELECT * FROM ".DB_PREFIXE."dossier |
// TODO : remplacer cette requête par l'instanciation de l'objet |
2458 |
WHERE dossier='".$this->valF['dossier']."'"; |
$qres = $this->f->get_all_results_from_db_query( |
2459 |
$res = $this->f->db->query($sql); |
sprintf( |
2460 |
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
'SELECT |
2461 |
$this->f->isDatabaseError($res); |
* |
2462 |
$row=& $res->fetchRow(DB_FETCHMODE_ASSOC); |
FROM |
2463 |
|
%1$sdossier |
2464 |
|
WHERE |
2465 |
|
dossier = \'%2$s\'', |
2466 |
|
DB_PREFIXE, |
2467 |
|
$this->f->db->escapeSimple($this->valF['dossier']) |
2468 |
|
), |
2469 |
|
array( |
2470 |
|
"origin" => __METHOD__, |
2471 |
|
) |
2472 |
|
); |
2473 |
|
$row = array_shift($qres['result']); |
2474 |
$this->updateArchiveData($row); |
$this->updateArchiveData($row); |
2475 |
|
|
2476 |
// Récupération de la duree de validite du dossier d'autorisation |
// Récupération de la duree de validite du dossier d'autorisation |
3054 |
$valF_dt = array(); |
$valF_dt = array(); |
3055 |
// |
// |
3056 |
// Récupération des paramètres de l'action |
// Récupération des paramètres de l'action |
3057 |
$sql = "SELECT * FROM ".DB_PREFIXE."action |
// TODO : remplacer cette requête par l'instanciation de l'action |
3058 |
WHERE action='".$this->valF['action']."'"; |
$qres = $this->f->get_all_results_from_db_query( |
3059 |
$res = $this->f->db->query($sql); |
sprintf( |
3060 |
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
'SELECT |
3061 |
$this->f->isDatabaseError($res); |
* |
3062 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
FROM |
3063 |
|
%1$saction |
3064 |
|
WHERE |
3065 |
|
action = \'%2$s\'', |
3066 |
|
DB_PREFIXE, |
3067 |
|
$this->f->db->escapeSimple($this->valF['action']) |
3068 |
|
), |
3069 |
|
array( |
3070 |
|
"origin" => __METHOD__ |
3071 |
|
) |
3072 |
|
); |
3073 |
|
foreach ($qres['result'] as $row) { |
3074 |
|
|
3075 |
// pour chacune des regles, on applique la regle |
// pour chacune des regles, on applique la regle |
3076 |
if ($row['regle_delai'] != '') { |
if ($row['regle_delai'] != '') { |
3852 |
} |
} |
3853 |
|
|
3854 |
/** |
/** |
3855 |
* Crée une instance et une tache de notification pour le demandeur |
* Crée une instance de notification et une tache notification_instruction de catégorie portal |
3856 |
* principal. |
* pour le demandeur principal. |
3857 |
* |
* |
3858 |
* @return boolean true si le traitement à réussi |
* @return boolean true si le traitement à réussi |
3859 |
*/ |
*/ |
3860 |
protected function notifier_demandeur_principal() { |
protected function notifier_demandeur_principal_via_portal() { |
3861 |
$this->begin_treatment(__METHOD__); |
$this->begin_treatment(__METHOD__); |
3862 |
$message = ''; |
$message = ''; |
3863 |
// Récupération des informations concernant le demandeur |
// Récupération des informations concernant le demandeur |
3882 |
return $this->end_treatment(__METHOD__, false); |
return $this->end_treatment(__METHOD__, false); |
3883 |
} |
} |
3884 |
// Création de la tâche en lui donnant l'id de la notification |
// Création de la tâche en lui donnant l'id de la notification |
3885 |
$notification_by_task = $this->notification_by_task($idNotification, $dossier); |
$notification_by_task = $this->notification_by_task($idNotification, $dossier, PORTAL); |
3886 |
if ($notification_by_task === false) { |
if ($notification_by_task === false) { |
3887 |
$this->addToMessage( |
$this->addToMessage( |
3888 |
__("Erreur lors de la génération de la notification au(x) pétitionnaire(s).") |
__("Erreur lors de la génération de la notification au(x) pétitionnaire(s).") |
4207 |
)); |
)); |
4208 |
|
|
4209 |
// Récupération des paramètres de l'action |
// Récupération des paramètres de l'action |
4210 |
$sql = sprintf( |
// TODO : remplacer cette requête par l'instanciation de l'action |
4211 |
'SELECT |
$qres = $this->f->get_all_results_from_db_query( |
4212 |
* |
sprintf( |
4213 |
FROM |
'SELECT |
4214 |
%1$saction |
* |
4215 |
WHERE |
FROM |
4216 |
action = \'%2$s\'', |
%1$saction |
4217 |
DB_PREFIXE, |
WHERE |
4218 |
$this->f->db->escapeSimple($evenement->getVal('action')) |
action = \'%2$s\'', |
4219 |
|
DB_PREFIXE, |
4220 |
|
$this->f->db->escapeSimple($evenement->getVal('action')) |
4221 |
|
), |
4222 |
|
array( |
4223 |
|
"origin" => __METHOD__ |
4224 |
|
) |
4225 |
); |
); |
4226 |
$res = $this->f->db->query($sql); |
foreach ($qres['result'] as $row) { |
|
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
|
|
$this->f->isDatabaseError($res); |
|
|
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){ |
|
4227 |
// application des regles sur le courrier + delai |
// application des regles sur le courrier + delai |
4228 |
if(preg_match("/date_evenement/",$row['regle_date_limite'])){ |
if(preg_match("/date_evenement/",$row['regle_date_limite'])){ |
4229 |
$valF['date_limite']= $this->regle($row['regle_date_limite'], 'regle_date_limite'); |
$valF['date_limite']= $this->regle($row['regle_date_limite'], 'regle_date_limite'); |
4344 |
|
|
4345 |
if($restriction == "" || $this->restriction_valid ){ |
if($restriction == "" || $this->restriction_valid ){ |
4346 |
// Récupération de tous les paramètres de l'événement sélectionné |
// Récupération de tous les paramètres de l'événement sélectionné |
4347 |
$sql = "SELECT * FROM ".DB_PREFIXE."evenement |
// TODO : remplacer cette requête par l'instanciation de l'evenement |
4348 |
WHERE evenement=".$this->valF['evenement']; |
$qres = $this->f->get_all_results_from_db_query( |
4349 |
$res = $this->f->db->query($sql); |
sprintf( |
4350 |
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
'SELECT |
4351 |
$this->f->isDatabaseError($res); |
* |
4352 |
|
FROM |
4353 |
|
%1$sevenement |
4354 |
|
WHERE |
4355 |
|
evenement = %2$d', |
4356 |
|
DB_PREFIXE, |
4357 |
|
intval($this->valF['evenement']) |
4358 |
|
), |
4359 |
|
array( |
4360 |
|
"origin" => __METHOD__ |
4361 |
|
) |
4362 |
|
); |
4363 |
$current_id = $this->getVal($this->clePrimaire); |
$current_id = $this->getVal($this->clePrimaire); |
4364 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
foreach ($qres['result'] as $row) { |
4365 |
// Si la date de retour signature est éditée on vérifie si il existe un événement automatique |
// Si la date de retour signature est éditée on vérifie si il existe un événement automatique |
4366 |
if ($this->getVal('date_retour_signature') == "" AND |
if ($this->getVal('date_retour_signature') == "" AND |
4367 |
$this->valF['date_retour_signature'] != "" AND |
$this->valF['date_retour_signature'] != "" AND |
5525 |
$dossier = $this->getVal("dossier"); |
$dossier = $this->getVal("dossier"); |
5526 |
} |
} |
5527 |
//Requête pour récupérer les informations essentiels sur le dossier d'instruction |
//Requête pour récupérer les informations essentiels sur le dossier d'instruction |
5528 |
$sql = "SELECT dossier.dossier as dossier, |
$qres = $this->f->get_all_results_from_db_query( |
5529 |
dossier_autorisation.dossier_autorisation as dossier_autorisation, |
sprintf( |
5530 |
to_char(dossier.date_demande, 'YYYY/MM') as date_demande_initiale, |
'SELECT |
5531 |
dossier_instruction_type.code as dossier_instruction_type, |
dossier.dossier AS dossier, |
5532 |
etat_dossier_autorisation.libelle as statut, |
dossier_autorisation.dossier_autorisation AS dossier_autorisation, |
5533 |
dossier_autorisation_type.code as dossier_autorisation_type, |
to_char(dossier.date_demande, \'YYYY/MM\') AS date_demande_initiale, |
5534 |
groupe.code as groupe_instruction, |
dossier_instruction_type.code AS dossier_instruction_type, |
5535 |
CASE WHEN dossier.erp IS TRUE |
etat_dossier_autorisation.libelle AS statut, |
5536 |
THEN 'true' |
dossier_autorisation_type.code AS dossier_autorisation_type, |
5537 |
ELSE 'false' |
groupe.code AS groupe_instruction, |
5538 |
END as erp |
CASE WHEN dossier.erp IS TRUE |
5539 |
FROM ".DB_PREFIXE."dossier |
THEN \'true\' |
5540 |
LEFT JOIN ".DB_PREFIXE."dossier_instruction_type |
ELSE \'false\' |
5541 |
|
END AS erp |
5542 |
|
FROM |
5543 |
|
%1$sdossier |
5544 |
|
LEFT JOIN %1$sdossier_instruction_type |
5545 |
ON dossier.dossier_instruction_type = dossier_instruction_type.dossier_instruction_type |
ON dossier.dossier_instruction_type = dossier_instruction_type.dossier_instruction_type |
5546 |
LEFT JOIN ".DB_PREFIXE."dossier_autorisation |
LEFT JOIN %1$sdossier_autorisation |
5547 |
ON dossier.dossier_autorisation = dossier_autorisation.dossier_autorisation |
ON dossier.dossier_autorisation = dossier_autorisation.dossier_autorisation |
5548 |
LEFT JOIN ".DB_PREFIXE."etat_dossier_autorisation |
LEFT JOIN %1$setat_dossier_autorisation |
5549 |
ON dossier_autorisation.etat_dossier_autorisation = etat_dossier_autorisation.etat_dossier_autorisation |
ON dossier_autorisation.etat_dossier_autorisation = etat_dossier_autorisation.etat_dossier_autorisation |
5550 |
LEFT JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille |
LEFT JOIN %1$sdossier_autorisation_type_detaille |
5551 |
ON dossier_autorisation.dossier_autorisation_type_detaille = dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
ON dossier_autorisation.dossier_autorisation_type_detaille = dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
5552 |
LEFT JOIN ".DB_PREFIXE."dossier_autorisation_type |
LEFT JOIN %1$sdossier_autorisation_type |
5553 |
ON dossier_autorisation_type_detaille.dossier_autorisation_type = dossier_autorisation_type.dossier_autorisation_type |
ON dossier_autorisation_type_detaille.dossier_autorisation_type = dossier_autorisation_type.dossier_autorisation_type |
5554 |
LEFT JOIN ".DB_PREFIXE."groupe |
LEFT JOIN %1$sgroupe |
5555 |
ON dossier_autorisation_type.groupe = groupe.groupe |
ON dossier_autorisation_type.groupe = groupe.groupe |
5556 |
WHERE dossier.dossier = '".$dossier."'"; |
WHERE |
5557 |
$res = $this->f->db->query($sql); |
dossier.dossier = \'%2$s\'', |
5558 |
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
DB_PREFIXE, |
5559 |
$this->f->isDatabaseError($res); |
$this->f->db->escapeSimple($dossier) |
5560 |
//Le résultat est récupéré dans un objet |
), |
5561 |
$row =& $res->fetchRow(DB_FETCHMODE_OBJECT); |
array( |
5562 |
|
"origin" => __METHOD__, |
5563 |
|
) |
5564 |
|
); |
5565 |
|
$row = array_shift($qres['result']); |
5566 |
|
|
5567 |
//Si il y a un résultat |
//Si il y a un résultat |
5568 |
if ($row !== null) { |
if (! empty($row)) { |
5569 |
|
|
5570 |
// Instrance de la classe dossier |
// Instrance de la classe dossier |
5571 |
$inst_dossier = $this->get_inst_dossier($dossier); |
$inst_dossier = $this->get_inst_dossier($dossier); |
5572 |
|
// TODO : améliorer ce code |
5573 |
|
// |
5574 |
|
// Avant l e résultat été récupéré dans un objet à partir de la requête mais en modifiant pour |
5575 |
|
// utiliser la méthode get_all_results_from_db_query() c'est maintenant un tableau |
5576 |
|
// qu'on obtiens. Pour garder le même fonctionnement on transforme le tableau des |
5577 |
|
// valeurs issues de la requête en objet. |
5578 |
|
$metadata = (object)$row; |
5579 |
// Insère l'attribut version à l'objet |
// Insère l'attribut version à l'objet |
5580 |
$row->version = $inst_dossier->get_di_numero_suffixe(); |
$metadata->version = $inst_dossier->get_di_numero_suffixe(); |
5581 |
|
|
5582 |
//Alors on créé l'objet dossier_instruction |
//Alors on créé l'objet dossier_instruction |
5583 |
$this->specificMetadata = $row; |
$this->specificMetadata = $metadata; |
5584 |
|
|
5585 |
} |
} |
5586 |
} |
} |
5633 |
$return = array(); |
$return = array(); |
5634 |
|
|
5635 |
// Récupération de toutes les valeurs du dossier d'instruction en cours |
// Récupération de toutes les valeurs du dossier d'instruction en cours |
5636 |
$sql = "SELECT * FROM ".DB_PREFIXE."dossier |
// TODO : remplacer cette requête par une instanciation de l'objet |
5637 |
WHERE dossier='".$this->valF['dossier']."'"; |
$qres = $this->f->get_all_results_from_db_query( |
5638 |
$res = $this->f->db->query($sql); |
sprintf( |
5639 |
$this->addToLog(__METHOD__."(): db->query(\"".$sql."\");", VERBOSE_MODE); |
'SELECT |
5640 |
$this->f->isDatabaseError($res); |
* |
5641 |
|
FROM |
5642 |
|
%1$sdossier |
5643 |
|
WHERE |
5644 |
|
dossier = \'%2$s\'', |
5645 |
|
DB_PREFIXE, |
5646 |
|
$this->f->db->escapeSimple($this->valF['dossier']) |
5647 |
|
), |
5648 |
|
array( |
5649 |
|
'origin' => __METHOD__ |
5650 |
|
) |
5651 |
|
); |
5652 |
|
|
5653 |
// |
foreach ($qres['result'] as $row) { |
|
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
|
5654 |
|
|
5655 |
// Récupération de la valeur actuelle du délai, de l'accord tacite, |
// Récupération de la valeur actuelle du délai, de l'accord tacite, |
5656 |
// de l'état et de l'avis du dossier d'instruction |
// de l'état et de l'avis du dossier d'instruction |
5970 |
*/ |
*/ |
5971 |
function getArreteMetadata() { |
function getArreteMetadata() { |
5972 |
|
|
5973 |
//Récupération de la dernière instruction dont l'événement est de type 'arrete' |
//Récupération de la dernière instruction dont l'événement est de type 'arrete' |
5974 |
$this->metadonneesArrete = array("nomsignataire"=>"", "qualitesignataire"=>"", |
$this->metadonneesArrete = array("nomsignataire"=>"", "qualitesignataire"=>"", |
5975 |
"decisionarrete"=>"", "datenotification"=>"", "datesignaturearrete"=>"", |
"decisionarrete"=>"", "datenotification"=>"", "datesignaturearrete"=>"", |
5976 |
"datecontrolelegalite"=>"", "ap_numrue"=>"", "ap_nomdelavoie"=>"", |
"datecontrolelegalite"=>"", "ap_numrue"=>"", "ap_nomdelavoie"=>"", |
5977 |
"ap_codepostal"=>"", "ap_ville"=>""); |
"ap_codepostal"=>"", "ap_ville"=>""); |
5978 |
|
|
5979 |
$sqlArrete = "SELECT |
$qres = $this->f->get_all_results_from_db_query( |
5980 |
signataire_arrete.prenom || ' ' ||signataire_arrete.nom as \"nomsignataire\", |
sprintf( |
5981 |
signataire_arrete.qualite as \"qualitesignataire\", |
'SELECT |
5982 |
instruction.etat as \"decisionarrete\", |
signataire_arrete.prenom || \' \' ||signataire_arrete.nom as nomsignataire, |
5983 |
instruction.date_retour_rar as \"datenotification\", |
signataire_arrete.qualite as qualitesignataire, |
5984 |
instruction.date_retour_signature as \"datesignaturearrete\", |
instruction.etat as decisionarrete, |
5985 |
instruction.date_retour_controle_legalite as \"datecontrolelegalite\", |
instruction.date_retour_rar as datenotification, |
5986 |
dossier.terrain_adresse_voie_numero as \"ap_numrue\", |
instruction.date_retour_signature as datesignaturearrete, |
5987 |
dossier.terrain_adresse_voie as \"ap_nomdelavoie\", |
instruction.date_retour_controle_legalite as datecontrolelegalite, |
5988 |
dossier.terrain_adresse_code_postal as \"ap_codepostal\", |
dossier.terrain_adresse_voie_numero as ap_numrue, |
5989 |
dossier.terrain_adresse_localite as \"ap_ville\" |
dossier.terrain_adresse_voie as ap_nomdelavoie, |
5990 |
FROM ".DB_PREFIXE."instruction |
dossier.terrain_adresse_code_postal as ap_codepostal, |
5991 |
LEFT JOIN ".DB_PREFIXE."signataire_arrete ON |
dossier.terrain_adresse_localite as ap_ville |
5992 |
instruction.signataire_arrete = signataire_arrete.signataire_arrete |
FROM |
5993 |
LEFT JOIN ".DB_PREFIXE."dossier ON |
%1$sinstruction |
5994 |
instruction.dossier = dossier.dossier |
LEFT JOIN %1$ssignataire_arrete |
5995 |
LEFT JOIN ".DB_PREFIXE."donnees_techniques ON |
ON instruction.signataire_arrete = signataire_arrete.signataire_arrete |
5996 |
donnees_techniques.dossier_instruction = dossier.dossier |
LEFT JOIN %1$sdossier |
5997 |
WHERE instruction.instruction = ".$this->getVal("instruction"); |
ON instruction.dossier = dossier.dossier |
5998 |
$resArrete = $this->f->db->query($sqlArrete); |
LEFT JOIN %1$sdonnees_techniques |
5999 |
$this->addToLog(__METHOD__."(): db->query(\"".$sqlArrete."\");", VERBOSE_MODE); |
ON donnees_techniques.dossier_instruction = dossier.dossier |
6000 |
$this->f->isDatabaseError($resArrete); |
WHERE |
6001 |
$this->metadonneesArrete = $resArrete->fetchRow(DB_FETCHMODE_ASSOC); |
instruction.instruction = %2$d', |
6002 |
|
DB_PREFIXE, |
6003 |
|
intval($this->getVal('instruction')) |
6004 |
|
), |
6005 |
|
array( |
6006 |
|
'origin' => __METHOD__ |
6007 |
|
) |
6008 |
|
); |
6009 |
|
$this->metadonneesArrete = array_shift($qres['result']); |
6010 |
} |
} |
6011 |
|
|
6012 |
/** |
/** |
6916 |
"idx" => $idx, |
"idx" => $idx, |
6917 |
)); |
)); |
6918 |
|
|
6919 |
/** |
$qres = $this->f->get_all_results_from_db_query( |
6920 |
* |
sprintf( |
6921 |
*/ |
'SELECT |
6922 |
// |
*, |
6923 |
$sql = "SELECT *, bible.libelle as bible_lib |
bible.libelle as bible_lib |
6924 |
FROM ".DB_PREFIXE."bible |
FROM |
6925 |
LEFT OUTER JOIN ".DB_PREFIXE."dossier_autorisation_type |
%1$sbible |
6926 |
ON bible.dossier_autorisation_type=dossier_autorisation_type.dossier_autorisation_type |
LEFT OUTER JOIN %1$sdossier_autorisation_type |
6927 |
LEFT JOIN ".DB_PREFIXE."om_collectivite |
ON bible.dossier_autorisation_type = dossier_autorisation_type.dossier_autorisation_type |
6928 |
ON bible.om_collectivite = om_collectivite.om_collectivite |
LEFT JOIN %1$som_collectivite |
6929 |
WHERE (evenement=".$evenement." OR evenement IS NULL) |
ON bible.om_collectivite = om_collectivite.om_collectivite |
6930 |
AND (complement=".$complement." OR complement IS NULL) |
WHERE |
6931 |
AND (bible.dossier_autorisation_type IS NULL |
(evenement = %2$d |
6932 |
OR dossier_autorisation_type.code ='".$code_da_type."') |
OR evenement IS NULL) |
6933 |
AND (om_collectivite.niveau = '2' |
AND (complement = %3$d |
6934 |
OR bible.om_collectivite = ".$dossier->getVal("om_collectivite").") |
OR complement IS NULL) |
6935 |
ORDER BY bible_lib ASC"; |
AND (bible.dossier_autorisation_type IS NULL |
6936 |
$res = $this->f->db->query($sql); |
OR dossier_autorisation_type.code = \'%4$s\') |
6937 |
$this->f->addToLog(__METHOD__.": db->query(\"".$sql."\");", VERBOSE_MODE); |
AND (om_collectivite.niveau = \'2\' |
6938 |
$this->f->isDatabaseError($res); |
OR bible.om_collectivite = %5$d) |
6939 |
|
ORDER BY |
6940 |
|
bible_lib ASC', |
6941 |
|
DB_PREFIXE, |
6942 |
|
intval($evenement), |
6943 |
|
intval($complement), |
6944 |
|
$this->f->db->escapeSimple($code_da_type), |
6945 |
|
intval($dossier->getVal("om_collectivite")) |
6946 |
|
), |
6947 |
|
array( |
6948 |
|
'origin' => __METHOD__ |
6949 |
|
) |
6950 |
|
); |
6951 |
// |
// |
6952 |
echo "<form method=\"post\" name=\"f3\" action=\"#\">\n"; |
echo "<form method=\"post\" name=\"f3\" action=\"#\">\n"; |
6953 |
// |
// |
6954 |
if ($res->numrows() > 0) { |
if (count($qres['result']) > 0) { |
6955 |
// |
// |
6956 |
echo "\t<table id='tab-bible' width='100%'>\n"; |
echo "\t<table id='tab-bible' width='100%'>\n"; |
6957 |
// |
// |
6962 |
// |
// |
6963 |
$i = 0; |
$i = 0; |
6964 |
// |
// |
6965 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
foreach ($qres['result'] as $row) { |
6966 |
// |
// |
6967 |
echo "\t\t<tr"; |
echo "\t\t<tr"; |
6968 |
echo " class=\"".($i % 2 == 0 ? "odd" : "even")."\""; |
echo " class=\"".($i % 2 == 0 ? "odd" : "even")."\""; |
7039 |
|
|
7040 |
// Si consultation liée, récupération du retour d'avis |
// Si consultation liée, récupération du retour d'avis |
7041 |
if($instEvenement->getVal('consultation') == 'Oui'){ |
if($instEvenement->getVal('consultation') == 'Oui'){ |
7042 |
$sql = sprintf( |
|
7043 |
'(SELECT |
$qres = $this->f->get_all_results_from_db_query( |
7044 |
date_retour, |
sprintf( |
7045 |
avis_consultation.libelle as avis_consultation, |
'SELECT |
7046 |
COALESCE(service.libelle, tiers_consulte.libelle) as service |
date_retour, |
7047 |
FROM |
avis_consultation.libelle as avis_consultation, |
7048 |
%1$sconsultation |
COALESCE(service.libelle, tiers_consulte.libelle) as service |
7049 |
LEFT JOIN %1$stiers_consulte ON consultation.tiers_consulte = tiers_consulte.tiers_consulte |
FROM |
7050 |
LEFT JOIN %1$sservice ON consultation.service = service.service |
%1$sconsultation |
7051 |
LEFT JOIN %1$savis_consultation ON consultation.avis_consultation = avis_consultation.avis_consultation |
LEFT JOIN %1$stiers_consulte |
7052 |
WHERE |
ON consultation.tiers_consulte = tiers_consulte.tiers_consulte |
7053 |
dossier = \'%2$s\' |
LEFT JOIN %1$sservice |
7054 |
AND consultation.visible)', |
ON consultation.service = service.service |
7055 |
DB_PREFIXE, |
LEFT JOIN %1$savis_consultation |
7056 |
$this->f->db->escapeSimple($idx) |
ON consultation.avis_consultation = avis_consultation.avis_consultation |
7057 |
|
WHERE |
7058 |
|
dossier = \'%2$s\' |
7059 |
|
AND consultation.visible', |
7060 |
|
DB_PREFIXE, |
7061 |
|
$this->f->db->escapeSimple($idx) |
7062 |
|
), |
7063 |
|
array( |
7064 |
|
'origin' => __METHOD__ |
7065 |
|
) |
7066 |
); |
); |
|
$res = $this->f->db->query($sql); |
|
|
$this->f->isDatabaseError($res); |
|
7067 |
// Récupération des consultations |
// Récupération des consultations |
7068 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){ |
foreach ($qres['result'] as $row) { |
7069 |
$correct=false; |
$correct=false; |
7070 |
// date retour |
// date retour |
7071 |
if ($row['date_retour']<>""){ |
if ($row['date_retour']<>""){ |
7207 |
if (preg_match('/[A-Za-z]{2,3}/', $idx, $matches) !== false) { |
if (preg_match('/[A-Za-z]{2,3}/', $idx, $matches) !== false) { |
7208 |
$code_da_type = $matches[0]; |
$code_da_type = $matches[0]; |
7209 |
} |
} |
|
// |
|
|
$sql = "SELECT * FROM ".DB_PREFIXE."bible |
|
|
LEFT OUTER JOIN ".DB_PREFIXE."dossier_autorisation_type |
|
|
ON bible.dossier_autorisation_type= |
|
|
dossier_autorisation_type.dossier_autorisation_type |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."om_collectivite |
|
|
ON bible.om_collectivite = om_collectivite.om_collectivite |
|
|
WHERE (evenement =".$event." or evenement IS NULL) and |
|
|
(complement=".$compnb." OR complement IS NULL) and |
|
|
automatique='Oui' and |
|
|
(dossier_autorisation_type.code ='".$code_da_type."' or |
|
|
bible.dossier_autorisation_type IS NULL) and |
|
|
(om_collectivite.niveau = '2' OR bible.om_collectivite = ".$dossier->getVal("om_collectivite").")"; |
|
7210 |
|
|
7211 |
$res = $this->f->db->query($sql); |
$qres = $this->f->get_all_results_from_db_query( |
7212 |
$this->f->isDatabaseError($res); |
sprintf( |
7213 |
|
'SELECT |
7214 |
|
* |
7215 |
|
FROM |
7216 |
|
%1$sbible |
7217 |
|
LEFT OUTER JOIN %1$sdossier_autorisation_type |
7218 |
|
ON bible.dossier_autorisation_type = |
7219 |
|
dossier_autorisation_type.dossier_autorisation_type |
7220 |
|
LEFT JOIN %1$som_collectivite |
7221 |
|
ON bible.om_collectivite = om_collectivite.om_collectivite |
7222 |
|
WHERE |
7223 |
|
(evenement = %2$d |
7224 |
|
OR evenement IS NULL) |
7225 |
|
AND (complement = %3$d |
7226 |
|
OR complement IS NULL) |
7227 |
|
AND automatique = \'Oui\' |
7228 |
|
AND (dossier_autorisation_type.code = \'%4$s\' |
7229 |
|
OR bible.dossier_autorisation_type IS NULL) |
7230 |
|
AND (om_collectivite.niveau = \'2\' |
7231 |
|
OR bible.om_collectivite = %5$d)', |
7232 |
|
DB_PREFIXE, |
7233 |
|
intval($event), |
7234 |
|
intval($compnb), |
7235 |
|
$this->f->db->escapeSimple($code_da_type), |
7236 |
|
intval($dossier->getVal("om_collectivite")) |
7237 |
|
), |
7238 |
|
array( |
7239 |
|
"origin" => __METHOD__ |
7240 |
|
) |
7241 |
|
); |
7242 |
$temp = ""; |
$temp = ""; |
7243 |
while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){ |
foreach ($qres['result'] as $row) { |
7244 |
// Remplacement des retours à la ligne par des br |
// Remplacement des retours à la ligne par des br |
7245 |
$temp .= preg_replace( |
$temp .= preg_replace( |
7246 |
'#(\\\r|\\\r\\\n|\\\n)#', '<br/>', $row['contenu'] |
'#(\\\r|\\\r\\\n|\\\n)#', '<br/>', $row['contenu'] |
7393 |
// Données du select - On récupère ici la liste de tous les états disponibles |
// Données du select - On récupère ici la liste de tous les états disponibles |
7394 |
// dans la table om_etat qui ont un id qui commence par la cahine de caractères |
// dans la table om_etat qui ont un id qui commence par la cahine de caractères |
7395 |
// 'bordereau_' |
// 'bordereau_' |
7396 |
$sql = "SELECT om_etat.id, om_etat.libelle |
$qres = $this->f->get_all_results_from_db_query( |
7397 |
FROM ".DB_PREFIXE."om_etat |
sprintf( |
7398 |
WHERE om_etat.id LIKE 'bordereau_%' |
'SELECT |
7399 |
ORDER BY om_etat.id"; |
om_etat.id, |
7400 |
$res = $this->f->db->query($sql); |
om_etat.libelle |
7401 |
$this->f->addToLog(__METHOD__.": db->query(\"".$sql."\")", VERBOSE_MODE); |
FROM |
7402 |
$this->f->isDatabaseError($res); |
%1$som_etat |
7403 |
|
WHERE |
7404 |
|
om_etat.id LIKE \'bordereau_%%\' |
7405 |
|
ORDER BY |
7406 |
|
om_etat.id', |
7407 |
|
DB_PREFIXE |
7408 |
|
), |
7409 |
|
array( |
7410 |
|
"origin" => __METHOD__ |
7411 |
|
) |
7412 |
|
); |
7413 |
// Données du select |
// Données du select |
7414 |
$contenu = array( |
$contenu = array( |
7415 |
0 => array("", ), |
0 => array("", ), |
7416 |
1 => array(_("choisir bordereau")), |
1 => array(_("choisir bordereau")), |
7417 |
); |
); |
7418 |
while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
foreach ($qres['result'] as $row) { |
7419 |
$contenu[0][] = $row['id']; |
$contenu[0][] = $row['id']; |
7420 |
$contenu[1][] = $row['libelle']; |
$contenu[1][] = $row['libelle']; |
7421 |
} |
} |
7427 |
|
|
7428 |
// Données du select - On récupère ici la liste de tous toutes les collectivités |
// Données du select - On récupère ici la liste de tous toutes les collectivités |
7429 |
// de niveau 1 |
// de niveau 1 |
7430 |
$sql = "SELECT om_collectivite, libelle |
$qres = $this->f->get_all_results_from_db_query( |
7431 |
FROM ".DB_PREFIXE."om_collectivite |
sprintf( |
7432 |
WHERE niveau = '1' ORDER BY libelle"; |
'SELECT |
7433 |
$res = $this->f->db->query($sql); |
om_collectivite, |
7434 |
$this->f->addToLog(__METHOD__.": db->query(\"".$sql."\")", VERBOSE_MODE); |
libelle |
7435 |
$this->f->isDatabaseError($res); |
FROM |
7436 |
|
%1$som_collectivite |
7437 |
|
WHERE |
7438 |
|
niveau = \'1\' |
7439 |
|
ORDER BY |
7440 |
|
libelle', |
7441 |
|
DB_PREFIXE |
7442 |
|
), |
7443 |
|
array( |
7444 |
|
"origin" => __METHOD__ |
7445 |
|
) |
7446 |
|
); |
7447 |
// La valeur par défaut du select est Toutes |
// La valeur par défaut du select est Toutes |
7448 |
$list_collectivites = array( |
$list_collectivites = array( |
7449 |
0 => array("", ), |
0 => array("", ), |
7453 |
$id_colls = ""; |
$id_colls = ""; |
7454 |
// On stocke dans $id_colls l'id de toutes les collectivités de niveau 1 séparées |
// On stocke dans $id_colls l'id de toutes les collectivités de niveau 1 séparées |
7455 |
// par des virgules, pour un traitement plus facile dans la requête de sous-état |
// par des virgules, pour un traitement plus facile dans la requête de sous-état |
7456 |
while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) { |
foreach ($qres['result'] as $row) { |
7457 |
if ($id_colls != "") { |
if ($id_colls != "") { |
7458 |
$id_colls .= ","; |
$id_colls .= ","; |
7459 |
} |
} |
7598 |
|
|
7599 |
if ($qres['result'] == "1") { |
if ($qres['result'] == "1") { |
7600 |
// Récupération de la date d'envoi de l'instruction bippé |
// Récupération de la date d'envoi de l'instruction bippé |
7601 |
$sql = "SELECT to_char(date_envoi_rar,'DD/MM/YYYY') as date_envoi_rar, instruction FROM ".DB_PREFIXE."instruction WHERE code_barres='".$code_barres."'"; |
$qres = $this->f->get_all_results_from_db_query( |
7602 |
$res = $this->f->db->query($sql); |
sprintf( |
7603 |
$this->f->addToLog(__METHOD__.": db->query(\"".$sql."\")", VERBOSE_MODE); |
'SELECT |
7604 |
$this->f->isDatabaseError($res); |
to_char(date_envoi_rar, \'DD/MM/YYYY\') as date_envoi_rar, |
7605 |
$row =& $res->fetchRow(DB_FETCHMODE_ASSOC); |
instruction |
7606 |
|
FROM |
7607 |
|
%1$sinstruction |
7608 |
|
WHERE |
7609 |
|
code_barres = \'%2$s\'', |
7610 |
|
DB_PREFIXE, |
7611 |
|
$this->f->db->escapeSimple($code_barres) |
7612 |
|
), |
7613 |
|
array( |
7614 |
|
'origin' => __METHOD__ |
7615 |
|
) |
7616 |
|
); |
7617 |
|
$row = array_shift($qres['result']); |
7618 |
// Si pas de date ou correspond à la date du formulaire on |
// Si pas de date ou correspond à la date du formulaire on |
7619 |
// effectue le traitement |
// effectue le traitement |
7620 |
if ($row["date_envoi_rar"] == "" || $row["date_envoi_rar"] == $date) { |
if ($row["date_envoi_rar"] == "" || $row["date_envoi_rar"] == $date) { |
7910 |
if ($this->f->get_submitted_post_value('validation') !== null) { |
if ($this->f->get_submitted_post_value('validation') !== null) { |
7911 |
if(!empty($type_mise_a_jour) and !empty($date) and !empty($code_barres)) { |
if(!empty($type_mise_a_jour) and !empty($date) and !empty($code_barres)) { |
7912 |
|
|
|
// Vérification de l'existence de l'instruction |
|
|
$sql = "SELECT instruction |
|
|
FROM ".DB_PREFIXE."instruction |
|
|
INNER JOIN ".DB_PREFIXE."dossier |
|
|
ON dossier.dossier=instruction.dossier |
|
|
INNER JOIN ".DB_PREFIXE."dossier_instruction_type |
|
|
ON dossier.dossier_instruction_type = dossier_instruction_type.dossier_instruction_type |
|
|
INNER JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille |
|
|
ON dossier_instruction_type.dossier_autorisation_type_detaille = dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
|
|
INNER JOIN ".DB_PREFIXE."dossier_autorisation_type |
|
|
ON dossier_autorisation_type_detaille.dossier_autorisation_type = dossier_autorisation_type.dossier_autorisation_type |
|
|
INNER JOIN ".DB_PREFIXE."groupe |
|
|
ON dossier_autorisation_type.groupe = groupe.groupe |
|
|
WHERE code_barres='".$this->f->db->escapesimple($code_barres)."'"; |
|
|
|
|
7913 |
// Ajout d'un filtre sur les groupes auxquels l'utilisateur a accès |
// Ajout d'un filtre sur les groupes auxquels l'utilisateur a accès |
7914 |
$group_clause = array(); |
$group_clause = array(); |
7915 |
foreach ($_SESSION["groupe"] as $key => $value) { |
foreach ($_SESSION["groupe"] as $key => $value) { |
7920 |
$group_clause[$key] .= ")"; |
$group_clause[$key] .= ")"; |
7921 |
} |
} |
7922 |
$conditions = implode(" OR ", $group_clause); |
$conditions = implode(" OR ", $group_clause); |
7923 |
$sql .= " AND (" . $conditions . ")"; |
$groupFilter = " AND (" . $conditions . ")"; |
|
|
|
|
|
|
|
$res = $this->f->db->query($sql); |
|
|
$this->f->addToLog(__METHOD__.": db->query(\"".$sql."\")", VERBOSE_MODE); |
|
|
$this->f->isDatabaseError($res); |
|
7924 |
|
|
7925 |
if($res->numrows() == 1) { |
$qres = $this->f->get_all_results_from_db_query( |
7926 |
|
sprintf( |
7927 |
|
'SELECT |
7928 |
|
instruction |
7929 |
|
FROM |
7930 |
|
%1$sinstruction |
7931 |
|
INNER JOIN %1$sdossier |
7932 |
|
ON dossier.dossier = instruction.dossier |
7933 |
|
INNER JOIN %1$sdossier_instruction_type |
7934 |
|
ON dossier.dossier_instruction_type = dossier_instruction_type.dossier_instruction_type |
7935 |
|
INNER JOIN %1$sdossier_autorisation_type_detaille |
7936 |
|
ON dossier_instruction_type.dossier_autorisation_type_detaille = dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
7937 |
|
INNER JOIN %1$sdossier_autorisation_type |
7938 |
|
ON dossier_autorisation_type_detaille.dossier_autorisation_type = dossier_autorisation_type.dossier_autorisation_type |
7939 |
|
INNER JOIN %1$sgroupe |
7940 |
|
ON dossier_autorisation_type.groupe = groupe.groupe |
7941 |
|
WHERE |
7942 |
|
code_barres = \'%2$s\' |
7943 |
|
%3$s', |
7944 |
|
DB_PREFIXE, |
7945 |
|
$this->f->db->escapeSimple($code_barres), |
7946 |
|
$groupFilter |
7947 |
|
), |
7948 |
|
array( |
7949 |
|
'origin' => __METHOD__ |
7950 |
|
) |
7951 |
|
); |
7952 |
|
if(count($qres['result']) === 1) { |
7953 |
$liste_champs = explode(";", $type_mise_a_jour); |
$liste_champs = explode(";", $type_mise_a_jour); |
7954 |
$row =& $res->fetchRow(DB_FETCHMODE_ASSOC); |
$row = array_shift($qres['result']); |
7955 |
$instr = $this->f->get_inst__om_dbform(array( |
$instr = $this->f->get_inst__om_dbform(array( |
7956 |
"obj" => "instruction", |
"obj" => "instruction", |
7957 |
"idx" => $row['instruction'], |
"idx" => $row['instruction'], |
8037 |
} |
} |
8038 |
} else { |
} else { |
8039 |
// Récupération des infos du dossier |
// Récupération des infos du dossier |
8040 |
$sqlInfo = "SELECT dossier.dossier_libelle, |
$qres = $this->f->get_all_results_from_db_query( |
8041 |
evenement.libelle as evenement, |
sprintf( |
8042 |
autorite_competente.code as autorite_competente_code, |
'SELECT |
8043 |
autorite_competente.libelle as autorite_competente, |
dossier.dossier_libelle, |
8044 |
evenement.type as evenement_type, |
evenement.libelle as evenement, |
8045 |
to_char(date_envoi_signature,'DD/MM/YYYY') as date_envoi_signature, |
autorite_competente.code as autorite_competente_code, |
8046 |
to_char(date_retour_signature,'DD/MM/YYYY') as date_retour_signature, |
autorite_competente.libelle as autorite_competente, |
8047 |
to_char(date_envoi_controle_legalite,'DD/MM/YYYY') as date_envoi_controle_legalite, |
evenement.type as evenement_type, |
8048 |
to_char(date_retour_controle_legalite,'DD/MM/YYYY') as date_retour_controle_legalite, |
to_char(date_envoi_signature,\'DD/MM/YYYY\') as date_envoi_signature, |
8049 |
to_char(date_envoi_rar,'DD/MM/YYYY') as date_envoi_rar, |
to_char(date_retour_signature,\'DD/MM/YYYY\') as date_retour_signature, |
8050 |
to_char(date_retour_rar,'DD/MM/YYYY') as date_retour_rar |
to_char(date_envoi_controle_legalite,\'DD/MM/YYYY\') as date_envoi_controle_legalite, |
8051 |
FROM ".DB_PREFIXE."instruction |
to_char(date_retour_controle_legalite,\'DD/MM/YYYY\') as date_retour_controle_legalite, |
8052 |
INNER JOIN ".DB_PREFIXE."dossier ON |
to_char(date_envoi_rar,\'DD/MM/YYYY\') as date_envoi_rar, |
8053 |
dossier.dossier=instruction.dossier |
to_char(date_retour_rar,\'DD/MM/YYYY\') as date_retour_rar |
8054 |
LEFT JOIN ".DB_PREFIXE."autorite_competente ON |
FROM |
8055 |
dossier.autorite_competente=autorite_competente.autorite_competente |
%1$sinstruction |
8056 |
INNER JOIN ".DB_PREFIXE."evenement ON |
INNER JOIN %1$sdossier |
8057 |
instruction.evenement=evenement.evenement |
ON dossier.dossier=instruction.dossier |
8058 |
WHERE code_barres='".$code_barres."'"; |
LEFT JOIN %1$sautorite_competente |
8059 |
$resInfo = $this->f->db->query($sqlInfo); |
ON dossier.autorite_competente=autorite_competente.autorite_competente |
8060 |
$this->f->isDatabaseError($resInfo); |
INNER JOIN %1$sevenement |
8061 |
$infos = $resInfo->fetchRow(DB_FETCHMODE_ASSOC); |
ON instruction.evenement=evenement.evenement |
8062 |
|
WHERE |
8063 |
|
code_barres = \'%2$s\'', |
8064 |
|
DB_PREFIXE, |
8065 |
|
$this->f->db->escapeSimple($code_barres) |
8066 |
|
), |
8067 |
|
array( |
8068 |
|
"origin" => __METHOD__ |
8069 |
|
) |
8070 |
|
); |
8071 |
|
$infos = array_shift($qres['result']); |
8072 |
|
|
8073 |
// Vérification de la non modification des dates de suivi |
// Vérification de la non modification des dates de suivi |
8074 |
foreach(explode(";", $type_mise_a_jour) as $champ) { |
foreach(explode(";", $type_mise_a_jour) as $champ) { |
8333 |
} |
} |
8334 |
|
|
8335 |
// Test si l'evenement est de type arrete et si un délégataire a été nommé |
// Test si l'evenement est de type arrete et si un délégataire a été nommé |
8336 |
$sql = "SELECT |
$qres = $this->f->get_all_results_from_db_query( |
8337 |
|
sprintf( |
8338 |
|
'SELECT |
8339 |
dossier.dossier_libelle, |
dossier.dossier_libelle, |
8340 |
evenement.type, |
evenement.type, |
8341 |
count(lien_dossier_demandeur) as nbdemandeur, |
count(lien_dossier_demandeur) as nbdemandeur, |
8342 |
CASE |
CASE |
8343 |
WHEN division.libelle IS NOT NULL AND phase.code IS NOT NULL |
WHEN division.libelle IS NOT NULL AND phase.code IS NOT NULL |
8344 |
THEN CONCAT(phase.code, ' - ', division.libelle) |
THEN CONCAT(phase.code, \' - \', division.libelle) |
8345 |
ELSE |
ELSE |
8346 |
phase.code |
phase.code |
8347 |
END AS code_phase |
END AS code_phase |
8348 |
FROM ".DB_PREFIXE."instruction |
FROM |
8349 |
LEFT JOIN ".DB_PREFIXE."dossier |
%1$sinstruction |
8350 |
ON instruction.dossier = dossier.dossier |
LEFT JOIN %1$sdossier |
8351 |
LEFT JOIN ".DB_PREFIXE."division |
ON instruction.dossier = dossier.dossier |
8352 |
ON dossier.division = division.division |
LEFT JOIN %1$sdivision |
8353 |
INNER JOIN ".DB_PREFIXE."evenement ON |
ON dossier.division = division.division |
8354 |
instruction.evenement=evenement.evenement |
INNER JOIN %1$sevenement |
8355 |
LEFT JOIN ".DB_PREFIXE."phase |
ON instruction.evenement=evenement.evenement |
8356 |
ON evenement.phase = phase.phase |
LEFT JOIN %1$sphase |
8357 |
inner JOIN ".DB_PREFIXE."lien_dossier_demandeur ON |
ON evenement.phase = phase.phase |
8358 |
instruction.dossier=lien_dossier_demandeur.dossier |
inner JOIN %1$slien_dossier_demandeur |
8359 |
inner join ".DB_PREFIXE."demandeur on |
ON instruction.dossier=lien_dossier_demandeur.dossier |
8360 |
demandeur.demandeur=lien_dossier_demandeur.demandeur |
inner join %1$sdemandeur |
8361 |
WHERE code_barres='".$code_barres."' |
ON demandeur.demandeur=lien_dossier_demandeur.demandeur |
8362 |
AND " . $sql_demandeur . " |
WHERE |
8363 |
GROUP BY dossier.dossier_libelle, evenement.type, phase.code, division.libelle"; |
code_barres = \'%2$s\' |
8364 |
|
AND %3$s |
8365 |
$res = $this->f->db->query($sql); |
GROUP BY |
8366 |
$this->f->addToLog(__METHOD__.": db->query(\"".$sql."\")", VERBOSE_MODE); |
dossier.dossier_libelle, |
8367 |
$this->f->isDatabaseError($res); |
evenement.type, |
8368 |
$testDemandeur = $res->fetchrow(DB_FETCHMODE_ASSOC); |
phase.code, |
8369 |
|
division.libelle', |
8370 |
|
DB_PREFIXE, |
8371 |
|
$this->f->db->escapeSimple($code_barres), |
8372 |
|
$sql_demandeur |
8373 |
|
), |
8374 |
|
array( |
8375 |
|
"origin" => __METHOD__ |
8376 |
|
) |
8377 |
|
); |
8378 |
|
$testDemandeur = array_shift($qres['result']); |
8379 |
|
|
8380 |
|
|
8381 |
// Recuperation de l'adresse de destination |
// Recuperation de l'adresse de destination |
|
$sqlAdresse = "SELECT |
|
|
CASE WHEN demandeur.qualite='particulier' |
|
|
THEN TRIM(CONCAT_WS(' ', pc.libelle, demandeur.particulier_nom, demandeur.particulier_prenom)) |
|
|
ELSE TRIM(demandeur.personne_morale_denomination) |
|
|
END as ligne1, |
|
|
CASE WHEN demandeur.qualite='personne_morale' |
|
|
THEN TRIM(demandeur.personne_morale_raison_sociale) |
|
|
ELSE '' |
|
|
END as ligne1_1, |
|
|
CASE WHEN demandeur.qualite='personne_morale' AND (demandeur.personne_morale_nom IS NOT NULL OR demandeur.personne_morale_prenom IS NOT NULL) |
|
|
THEN TRIM(CONCAT_WS(' ', 'rep. par', demandeur.personne_morale_nom, demandeur.personne_morale_prenom)) |
|
|
ELSE '' |
|
|
END as ligne1_2, |
|
|
trim(concat(demandeur.numero,' ',demandeur.voie)) as ligne2, |
|
|
CASE demandeur.complement |
|
|
WHEN null THEN '' |
|
|
ELSE trim(demandeur.complement) |
|
|
END as ligne3, |
|
|
CASE demandeur.lieu_dit |
|
|
WHEN null THEN '' |
|
|
ELSE trim(demandeur.lieu_dit) |
|
|
END as ligne4, |
|
|
CONCAT_WS(' ', demandeur.code_postal, demandeur.localite, |
|
|
(CASE WHEN demandeur.bp IS NOT NULL |
|
|
THEN CONCAT_WS(' ', 'BP', demandeur.bp) |
|
|
ELSE '' |
|
|
END), |
|
|
(CASE WHEN demandeur.cedex IS NOT NULL |
|
|
THEN CONCAT_WS(' ', 'CEDEX', demandeur.cedex) |
|
|
ELSE '' |
|
|
END)) |
|
|
as ligne5, |
|
|
code_barres as code_barres |
|
|
FROM ".DB_PREFIXE."instruction |
|
|
INNER JOIN ".DB_PREFIXE."dossier ON dossier.dossier = instruction.dossier |
|
|
INNER JOIN ".DB_PREFIXE."lien_dossier_demandeur ON dossier.dossier = lien_dossier_demandeur.dossier |
|
|
INNER JOIN ".DB_PREFIXE."demandeur ON lien_dossier_demandeur.demandeur = demandeur.demandeur |
|
|
LEFT OUTER JOIN ".DB_PREFIXE."civilite as pc ON demandeur.particulier_civilite = pc.civilite OR demandeur.personne_morale_civilite = pc.civilite |
|
|
WHERE instruction.code_barres ='".$code_barres."'"; |
|
|
|
|
8382 |
// Envoi pour delegataire ou petitionnaire principal selon le type d'evenement |
// Envoi pour delegataire ou petitionnaire principal selon le type d'evenement |
8383 |
|
$sqlAdresse = " AND demandeur.type_demandeur='petitionnaire' AND lien_dossier_demandeur.petitionnaire_principal IS TRUE"; |
8384 |
if($testDemandeur['type'] != 'arrete' AND $testDemandeur['nbdemandeur'] > 1) { |
if($testDemandeur['type'] != 'arrete' AND $testDemandeur['nbdemandeur'] > 1) { |
8385 |
$sqlAdresse .= " AND demandeur.type_demandeur='delegataire'"; |
$sqlAdresse = " AND demandeur.type_demandeur='delegataire'"; |
|
} else { |
|
|
$sqlAdresse .= " AND demandeur.type_demandeur='petitionnaire' AND lien_dossier_demandeur.petitionnaire_principal IS TRUE"; |
|
8386 |
} |
} |
8387 |
|
|
8388 |
$resAdresse = $this->f->db->query($sqlAdresse); |
$qres = $this->f->get_all_results_from_db_query( |
8389 |
$adresse_dest = $resAdresse->fetchrow(DB_FETCHMODE_ASSOC); |
sprintf( |
8390 |
$this->f->addToLog(__METHOD__.": db->query(\"".$sqlAdresse."\")", VERBOSE_MODE); |
'SELECT |
8391 |
$this->f->isDatabaseError($resAdresse); |
CASE WHEN demandeur.qualite = \'particulier\' |
8392 |
|
THEN TRIM(CONCAT_WS(\' \', pc.libelle, demandeur.particulier_nom, demandeur.particulier_prenom)) |
8393 |
|
ELSE TRIM(demandeur.personne_morale_denomination) |
8394 |
|
END as ligne1, |
8395 |
|
CASE WHEN demandeur.qualite = \'personne_morale\' |
8396 |
|
THEN TRIM(demandeur.personne_morale_raison_sociale) |
8397 |
|
ELSE \'\' |
8398 |
|
END as ligne1_1, |
8399 |
|
CASE WHEN demandeur.qualite = \'personne_morale\' AND (demandeur.personne_morale_nom IS NOT NULL OR demandeur.personne_morale_prenom IS NOT NULL) |
8400 |
|
THEN TRIM(CONCAT_WS(\' \', \'rep. par\', demandeur.personne_morale_nom, demandeur.personne_morale_prenom)) |
8401 |
|
ELSE \'\' |
8402 |
|
END as ligne1_2, |
8403 |
|
trim(concat(demandeur.numero,\' \',demandeur.voie)) as ligne2, |
8404 |
|
CASE demandeur.complement |
8405 |
|
WHEN null THEN \'\' |
8406 |
|
ELSE trim(demandeur.complement) |
8407 |
|
END as ligne3, |
8408 |
|
CASE demandeur.lieu_dit |
8409 |
|
WHEN null THEN \'\' |
8410 |
|
ELSE trim(demandeur.lieu_dit) |
8411 |
|
END as ligne4, |
8412 |
|
CONCAT_WS(\' \', demandeur.code_postal, demandeur.localite, |
8413 |
|
(CASE WHEN demandeur.bp IS NOT NULL |
8414 |
|
THEN CONCAT_WS(\' \', \'BP\', demandeur.bp) |
8415 |
|
ELSE \'\' |
8416 |
|
END), |
8417 |
|
(CASE WHEN demandeur.cedex IS NOT NULL |
8418 |
|
THEN CONCAT_WS(\' \', \'CEDEX\', demandeur.cedex) |
8419 |
|
ELSE \'\' |
8420 |
|
END)) |
8421 |
|
as ligne5, |
8422 |
|
code_barres as code_barres |
8423 |
|
FROM |
8424 |
|
%1$sinstruction |
8425 |
|
INNER JOIN %1$sdossier |
8426 |
|
ON dossier.dossier = instruction.dossier |
8427 |
|
INNER JOIN %1$slien_dossier_demandeur |
8428 |
|
ON dossier.dossier = lien_dossier_demandeur.dossier |
8429 |
|
INNER JOIN %1$sdemandeur |
8430 |
|
ON lien_dossier_demandeur.demandeur = demandeur.demandeur |
8431 |
|
LEFT OUTER JOIN %1$scivilite AS pc |
8432 |
|
ON demandeur.particulier_civilite = pc.civilite |
8433 |
|
OR demandeur.personne_morale_civilite = pc.civilite |
8434 |
|
WHERE |
8435 |
|
instruction.code_barres = \'%2$s\' |
8436 |
|
%3$s', |
8437 |
|
DB_PREFIXE, |
8438 |
|
$this->f->db->escapeSimple($code_barres), |
8439 |
|
$sqlAdresse |
8440 |
|
), |
8441 |
|
array( |
8442 |
|
"origin" => __METHOD__ |
8443 |
|
) |
8444 |
|
); |
8445 |
|
$adresse_dest = array_shift($qres['result']); |
8446 |
|
|
8447 |
// Création adresse destinataire sans ligne vide |
// Création adresse destinataire sans ligne vide |
8448 |
$adresse_destinataire = array(); |
$adresse_destinataire = array(); |
9000 |
// Cette méthode permet d'exécuter une routine en début des méthodes |
// Cette méthode permet d'exécuter une routine en début des méthodes |
9001 |
// dites de TREATMENT. |
// dites de TREATMENT. |
9002 |
$this->begin_treatment(__METHOD__); |
$this->begin_treatment(__METHOD__); |
9003 |
$message = __('Erreur de paramétrage :'); |
$message = __('Erreur de paramétrage :'); |
9004 |
$erreurParametrage = false; |
$erreurParametrage = false; |
9005 |
// Récupération du paramétrage de la collectivité du dossier |
// Récupération du paramétrage de la collectivité du dossier |
9006 |
$id_di = $this->getVal('dossier'); |
$id_di = $this->getVal('dossier'); |
9757 |
ORDER BY |
ORDER BY |
9758 |
date_envoi ASC, instruction_notification.destinataire ASC', |
date_envoi ASC, instruction_notification.destinataire ASC', |
9759 |
DB_PREFIXE, |
DB_PREFIXE, |
9760 |
$this->getVal('instruction'), |
intval($this->getVal('instruction')), |
9761 |
$whereTypeTache |
$whereTypeTache |
9762 |
); |
); |
9763 |
$res = $this->f->db->query($sql); |
$qres = $this->f->get_all_results_from_db_query($sql, array( |
9764 |
$this->f->addToLog(__METHOD__."(): db->query(\"".$sql."\")", VERBOSE_MODE); |
"origin" => __METHOD__ |
9765 |
$this->f->isDatabaseError($res); |
) |
9766 |
|
); |
9767 |
// Préparation du lien de téléchargement des annexes |
// Préparation du lien de téléchargement des annexes |
9768 |
$htmlList = |
$htmlList = |
9769 |
'<style> |
'<style> |
9782 |
Annexe |
Annexe |
9783 |
</a>'; |
</a>'; |
9784 |
// Stockage des infos de chaque notification dans un tableau |
// Stockage des infos de chaque notification dans un tableau |
9785 |
while( $row =& $res->fetchrow(DB_FETCHMODE_ASSOC) ) { |
foreach ($qres['result'] as $row) { |
9786 |
$valNotif = array(); |
$valNotif = array(); |
9787 |
foreach($listeChamps as $champ) { |
foreach($listeChamps as $champ) { |
9788 |
$valNotif[$champ] = $row[$champ]; |
$valNotif[$champ] = $row[$champ]; |
10142 |
FROM |
FROM |
10143 |
%1$sevenement |
%1$sevenement |
10144 |
WHERE |
WHERE |
10145 |
evenement = %2$s |
evenement = %2$d |
10146 |
AND evenement_retour_ar != %3$s', |
AND evenement_retour_ar != %3$d', |
10147 |
DB_PREFIXE, |
DB_PREFIXE, |
10148 |
intval($ev_parent), |
intval($ev_parent), |
10149 |
intval($evenement) |
intval($evenement) |
10256 |
$listeDemandeursNotifiable = array(); |
$listeDemandeursNotifiable = array(); |
10257 |
|
|
10258 |
// Requête de récupération des demandeurs |
// Requête de récupération des demandeurs |
10259 |
$sql = sprintf( |
$qres = $this->f->get_all_results_from_db_query( |
10260 |
'SELECT |
sprintf( |
10261 |
demandeur.demandeur, |
'SELECT |
10262 |
CASE |
demandeur.demandeur, |
10263 |
WHEN demandeur.qualite=\'particulier\' |
CASE |
10264 |
THEN TRIM(CONCAT(demandeur.particulier_nom, \' \', demandeur.particulier_prenom, \' \', demandeur.courriel)) |
WHEN demandeur.qualite=\'particulier\' |
10265 |
ELSE |
THEN TRIM(CONCAT(demandeur.particulier_nom, \' \', demandeur.particulier_prenom, \' \', demandeur.courriel)) |
10266 |
TRIM(CONCAT(demandeur.personne_morale_raison_sociale, \' \', demandeur.personne_morale_denomination, \' \', demandeur.courriel)) |
ELSE |
10267 |
END AS destinataire, |
TRIM(CONCAT(demandeur.personne_morale_raison_sociale, \' \', demandeur.personne_morale_denomination, \' \', demandeur.courriel)) |
10268 |
demandeur.courriel, |
END AS destinataire, |
10269 |
petitionnaire_principal |
demandeur.courriel, |
10270 |
FROM |
petitionnaire_principal |
10271 |
%1$sdossier |
FROM |
10272 |
INNER JOIN %1$slien_dossier_demandeur |
%1$sdossier |
10273 |
ON dossier.dossier = lien_dossier_demandeur.dossier |
INNER JOIN %1$slien_dossier_demandeur |
10274 |
INNER JOIN %1$sdemandeur |
ON dossier.dossier = lien_dossier_demandeur.dossier |
10275 |
ON lien_dossier_demandeur.demandeur = demandeur.demandeur |
INNER JOIN %1$sdemandeur |
10276 |
-- Récupération de la plus ancienne demande associée au dossier (la demande |
ON lien_dossier_demandeur.demandeur = demandeur.demandeur |
10277 |
-- de création du dossier) |
-- Récupération de la plus ancienne demande associée au dossier (la demande |
10278 |
INNER JOIN ( |
-- de création du dossier) |
10279 |
SELECT |
INNER JOIN ( |
10280 |
demande, |
SELECT |
10281 |
dossier_instruction, |
demande, |
10282 |
source_depot |
dossier_instruction, |
10283 |
FROM |
source_depot |
10284 |
%1$sdemande |
FROM |
10285 |
WHERE |
%1$sdemande |
10286 |
dossier_instruction = \'%2$s\' |
WHERE |
10287 |
ORDER BY |
dossier_instruction = \'%2$s\' |
10288 |
demande ASC |
ORDER BY |
10289 |
LIMIT 1 |
demande ASC |
10290 |
) as demande |
LIMIT 1 |
10291 |
ON dossier.dossier = demande.dossier_instruction |
) as demande |
10292 |
WHERE |
ON dossier.dossier = demande.dossier_instruction |
10293 |
dossier.dossier = \'%2$s\' |
WHERE |
10294 |
%3$s |
dossier.dossier = \'%2$s\' |
10295 |
%4$s', |
%3$s |
10296 |
DB_PREFIXE, |
%4$s', |
10297 |
$idDossier, |
DB_PREFIXE, |
10298 |
$condition_demandeur, |
$this->f->db->escapeSimple($idDossier), |
10299 |
$sqlPetitionnairePrincipal |
$condition_demandeur, |
10300 |
); |
$sqlPetitionnairePrincipal |
10301 |
$res = $this->f->db->query($sql); |
), |
10302 |
$this->f->addToLog(__METHOD__."(): db->query(\"".$sql."\")", VERBOSE_MODE); |
array( |
10303 |
$this->f->isDatabaseError($res); |
"origin" => __METHOD__ |
10304 |
|
) |
10305 |
|
); |
10306 |
// Récupération des infos des demandeurs et stockage dans un tableau |
// Récupération des infos des demandeurs et stockage dans un tableau |
10307 |
// ayant pour clé les id des demandeurs |
// ayant pour clé les id des demandeurs |
10308 |
while($row = $res->fetchrow(DB_FETCHMODE_ASSOC)) { |
foreach ($qres['result'] as $row) { |
10309 |
$listeDemandeursNotifiable[$row['demandeur']] = $row; |
$listeDemandeursNotifiable[$row['demandeur']] = $row; |
10310 |
} |
} |
10311 |
|
|
10344 |
} |
} |
10345 |
} |
} |
10346 |
$listeInstrNotif = array(); |
$listeInstrNotif = array(); |
10347 |
$sql = sprintf(' |
$qres = $this->f->get_all_results_from_db_query( |
10348 |
SELECT |
sprintf(' |
10349 |
instruction_notification.instruction_notification |
SELECT |
10350 |
FROM |
instruction_notification.instruction_notification |
10351 |
%1$sinstruction_notification |
FROM |
10352 |
LEFT JOIN %1$stask |
%1$sinstruction_notification |
10353 |
ON instruction_notification.instruction_notification::CHARACTER VARYING = task.object_id |
LEFT JOIN %1$stask |
10354 |
WHERE |
ON instruction_notification.instruction_notification::CHARACTER VARYING = task.object_id |
10355 |
instruction = %2$s |
WHERE |
10356 |
%3$s', |
instruction = %2$s |
10357 |
DB_PREFIXE, |
%3$s', |
10358 |
intval($id_instruction), |
DB_PREFIXE, |
10359 |
$whereTypeTache |
intval($id_instruction), |
10360 |
|
$whereTypeTache |
10361 |
|
), |
10362 |
|
array( |
10363 |
|
"origin" => __METHOD__ |
10364 |
|
) |
10365 |
); |
); |
10366 |
$res = $this->f->db->query($sql); |
foreach ($qres['result'] as $row) { |
|
$this->f->addToLog(__METHOD__."(): db->query(\"".$sql."\")", VERBOSE_MODE); |
|
|
$this->f->isDatabaseError($res); |
|
|
while ($row = $res->fetchrow(DB_FETCHMODE_ASSOC)) { |
|
10367 |
$listeInstrNotif[] = $row['instruction_notification']; |
$listeInstrNotif[] = $row['instruction_notification']; |
10368 |
} |
} |
10369 |
return $listeInstrNotif; |
return $listeInstrNotif; |
10664 |
if (empty($tiersANotifier)) { |
if (empty($tiersANotifier)) { |
10665 |
$this->addToLog( |
$this->addToLog( |
10666 |
sprintf( |
sprintf( |
10667 |
'%s() : %s %s : ', |
'%s() : %s %s : %s', |
10668 |
__METHOD__, |
__METHOD__, |
10669 |
__("La récupération des tiers à échoué."), |
__("La récupération des tiers à échoué."), |
10670 |
__('Paramétrage'), |
__('Paramétrage'), |