54 |
function checkAccessibility() { |
function checkAccessibility() { |
55 |
// |
// |
56 |
parent::checkAccessibility(); |
parent::checkAccessibility(); |
57 |
// Si l'utilisateur est un intructeur qui en correspond pas à la |
// Si l'utilisateur est un intructeur qui ne correspond pas à la |
58 |
// division du dossier |
// division du dossier |
59 |
if ($this->f->isUserInstructeur() |
if ($this->f->isUserInstructeur() |
60 |
&& isset($this->f->om_utilisateur["division"]) |
&& isset($this->f->om_utilisateur["division"]) |
61 |
&& $this->f->om_utilisateur["division"] != $this->getDivisionFromDossier()) { |
&& $this->f->om_utilisateur["division"] != $this->getDivisionFromDossier()) { |
62 |
// |
// |
63 |
$this->parameters["actions"]["modifier"] = NULL; |
$this->parameters["actions"]["modifier"] = NULL; |
64 |
|
// |
65 |
|
$this->actions_sup["geolocalisation"] = NULL; |
66 |
|
|
67 |
//Cache le lien du rapport d'instruction, si aucun n'est lié |
//Cache le lien du rapport d'instruction, si aucun n'est lié |
68 |
if ( $this->getRapportInstruction() == '' ){ |
if ( $this->getRapportInstruction() == '' ){ |
83 |
if ( $this->f->isUserInstructeur() && $this->getStatut() == "cloture" ){ |
if ( $this->f->isUserInstructeur() && $this->getStatut() == "cloture" ){ |
84 |
|
|
85 |
$this->parameters["actions"]["modifier"] = NULL; |
$this->parameters["actions"]["modifier"] = NULL; |
86 |
|
// |
87 |
|
$this->actions_sup["geolocalisation"] = NULL; |
88 |
|
|
89 |
//Cache le lien du rapport d'instruction, si aucun n'est lié |
//Cache le lien du rapport d'instruction, si aucun n'est lié |
90 |
if ( $this->getRapportInstruction() == '' ){ |
if ( $this->getRapportInstruction() == '' ){ |
360 |
//nombre de dossier d'instruction de ce type, rattaché au dossier |
//nombre de dossier d'instruction de ce type, rattaché au dossier |
361 |
//d'autorisation complété par des 0 à gauche si besoin. Format du retour |
//d'autorisation complété par des 0 à gauche si besoin. Format du retour |
362 |
//attendu : 01 ou 02, etc. |
//attendu : 01 ou 02, etc. |
363 |
elseif ( strcmp($codeDossierInstructionType, "M") == 0 || |
else { |
|
strcmp($codeDossierInstructionType, "T") == 0 ){ |
|
364 |
|
|
365 |
//On récupère le nombre de dossier d'instruction de ce type rattaché au |
//On récupère le nombre de dossier d'instruction de ce type rattaché au |
366 |
//dossier d'autorisation |
//dossier d'autorisation |
367 |
$sql = "SELECT |
$sql = "SELECT |
368 |
count(*) |
count(dossier) |
369 |
FROM |
FROM |
370 |
".DB_PREFIXE."dossier |
".DB_PREFIXE."dossier |
371 |
LEFT JOIN |
LEFT JOIN |
392 |
|
|
393 |
return $numeroVersionDossierInstructionType; |
return $numeroVersionDossierInstructionType; |
394 |
} |
} |
|
//Sinon on retourne le numéro de version |
|
|
else{ |
|
|
return $numeroVersionDossierInstructionType; |
|
|
} |
|
395 |
} |
} |
396 |
/** |
/** |
397 |
* Retourne le libellé du dossier d'autorisation |
* Retourne le libellé du dossier d'autorisation |
688 |
} |
} |
689 |
|
|
690 |
function setSelect(&$form, $maj,&$db,$debug) { |
function setSelect(&$form, $maj,&$db,$debug) { |
|
parent::setSelect($form, $maj,$db,$debug); |
|
691 |
//optimisation sur table importante parcelle -> pas d appel methode parent |
//optimisation sur table importante parcelle -> pas d appel methode parent |
692 |
if(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc.php")) |
if(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc.php")) |
693 |
include ("../sql/".$db->phptype."/".$this->table.".form.inc.php"); |
include ("../sql/".$db->phptype."/".$this->table.".form.inc.php"); |
694 |
|
|
695 |
|
|
696 |
|
// instructeur |
697 |
|
$this->init_select($form, $db, $maj, $debug, "instructeur", |
698 |
|
$sql_instructeur, $sql_instructeur_by_id, true); |
699 |
|
|
700 |
|
// etat |
701 |
|
$this->init_select($form, $db, $maj, $debug, "etat", |
702 |
|
$sql_etat, $sql_etat_by_id, false); |
703 |
|
|
704 |
|
// dossier_instruction_type |
705 |
|
$this->init_select($form, $db, $maj, $debug, "dossier_instruction_type", |
706 |
|
$sql_dossier_instruction_type, $sql_dossier_instruction_type_by_id, false); |
707 |
|
|
708 |
|
// division |
709 |
|
$this->init_select($form, $db, $maj, $debug, "division", |
710 |
|
$sql_division, $sql_division_by_id, true); |
711 |
|
|
712 |
|
// autorite_competente |
713 |
|
$this->init_select($form, $db, $maj, $debug, "autorite_competente", |
714 |
|
$sql_autorite_competente, $sql_autorite_competente_by_id, false); |
715 |
|
|
716 |
|
// avis_decision |
717 |
|
$this->init_select($form, $db, $maj, $debug, "avis_decision", |
718 |
|
$sql_avis_decision, $sql_avis_decision_by_id, false); |
719 |
|
|
720 |
if($maj<2){ |
if($maj<2){ |
721 |
// parcelle_lot |
// parcelle_lot |
722 |
$contenu=""; |
$contenu=""; |
777 |
|
|
778 |
function setLib(&$form,$maj) { |
function setLib(&$form,$maj) { |
779 |
parent::setLib($form,$maj); |
parent::setLib($form,$maj); |
780 |
|
$form->setLib('dossier_autorisation_libelle',_('dossier_autorisation_libelle')); |
781 |
$form->setLib('servitude',_('contraintes')); |
$form->setLib('servitude',_('contraintes')); |
782 |
$form->setLib('geom',_('centroide')); |
$form->setLib('geom',_('centroide')); |
783 |
$form->setLib('date_limite',_("date limite d'instruction")); |
$form->setLib('date_limite',_("date limite d'instruction")); |
888 |
$this->f->getParameter('erp_depot_dossier_dat')) { |
$this->f->getParameter('erp_depot_dossier_dat')) { |
889 |
$msgenque = new MessageEnqueuer(); |
$msgenque = new MessageEnqueuer(); |
890 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
891 |
$msgenque->enqueueMessage($msgenque::$ERP_DEPOT_DOSSIER_DAT); |
$return = $msgenque->enqueueMessage($msgenque::$ERP_DEPOT_DOSSIER_DAT); |
892 |
|
//Si une erreur s'est produite on arrête le traitement et on |
893 |
|
//retourne une erreur |
894 |
|
if ($return !== 0){ |
895 |
|
|
896 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
897 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
898 |
|
"contacter votre administrateur")); |
899 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
900 |
|
//On ne valide pas le formulaire |
901 |
|
if ( $return === -3 ){ |
902 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
903 |
|
$this->correct = false; |
904 |
|
return false; |
905 |
|
} |
906 |
|
} |
907 |
|
else { |
908 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
909 |
|
"referentiel ERP.")); |
910 |
|
} |
911 |
} |
} |
912 |
|
|
913 |
// envoi du message a ERP en cas d'une demande d'ouverture DAT |
// envoi du message a ERP en cas d'une demande d'ouverture DAT |
915 |
$this->f->getParameter('erp_demande_ouverture_dat')) { |
$this->f->getParameter('erp_demande_ouverture_dat')) { |
916 |
$msgenque = new MessageEnqueuer(); |
$msgenque = new MessageEnqueuer(); |
917 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
918 |
$msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_DAT); |
$return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_DAT); |
919 |
|
//Si une erreur s'est produite on arrête le traitement et on |
920 |
|
//retourne une erreur |
921 |
|
if ($return !== 0){ |
922 |
|
|
923 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
924 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
925 |
|
"contacter votre administrateur")); |
926 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
927 |
|
//On ne valide pas le formulaire |
928 |
|
if ( $return === -3 ){ |
929 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
930 |
|
$this->correct = false; |
931 |
|
return false; |
932 |
|
} |
933 |
|
} |
934 |
|
else { |
935 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
936 |
|
"referentiel ERP.")); |
937 |
|
} |
938 |
} |
} |
939 |
|
|
940 |
if ($this->valF['erp'] === true) { |
if ($this->valF['erp'] === true) { |
943 |
$this->f->getParameter('erp_annulation_demande')) { |
$this->f->getParameter('erp_annulation_demande')) { |
944 |
$msgenque = new MessageEnqueuer(); |
$msgenque = new MessageEnqueuer(); |
945 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
946 |
$msgenque->enqueueMessage($msgenque::$ERP_ANNULATION_DEMANDE); |
$return = $msgenque->enqueueMessage($msgenque::$ERP_ANNULATION_DEMANDE); |
947 |
|
//Si une erreur s'est produite on arrête le traitement et on |
948 |
|
//retourne une erreur |
949 |
|
if ($return !== 0){ |
950 |
|
|
951 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
952 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
953 |
|
"contacter votre administrateur")); |
954 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
955 |
|
//On ne valide pas le formulaire |
956 |
|
if ( $return === -3 ){ |
957 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
958 |
|
$this->correct = false; |
959 |
|
return false; |
960 |
|
} |
961 |
|
} |
962 |
|
else { |
963 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
964 |
|
"referentiel ERP.")); |
965 |
|
} |
966 |
} |
} |
967 |
|
|
968 |
// envoi du message a ERP en cas d'ouverture d'un dossier PC "rattache" |
// envoi du message a ERP en cas d'ouverture d'un dossier PC "rattache" |
971 |
$this->f->getParameter('erp_demande_ouverture_pc_daact')) { |
$this->f->getParameter('erp_demande_ouverture_pc_daact')) { |
972 |
$msgenque = new MessageEnqueuer(); |
$msgenque = new MessageEnqueuer(); |
973 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
974 |
$msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_PC); |
$return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_PC); |
975 |
|
//Si une erreur s'est produite on arrête le traitement et on |
976 |
|
//retourne une erreur |
977 |
|
if ($return !== 0){ |
978 |
|
|
979 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
980 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
981 |
|
"contacter votre administrateur")); |
982 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
983 |
|
//On ne valide pas le formulaire |
984 |
|
if ( $return === -3 ){ |
985 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
986 |
|
$this->correct = false; |
987 |
|
return false; |
988 |
|
} |
989 |
|
} |
990 |
|
else { |
991 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
992 |
|
"referentiel ERP.")); |
993 |
|
} |
994 |
} |
} |
995 |
} |
} |
996 |
} // fin de if ($this->f->getParameter('option_erp') != "") |
} // fin de if ($this->f->getParameter('option_erp') != "") |
1285 |
$msgenque->setContraintePlu($this->valF['servitude']); |
$msgenque->setContraintePlu($this->valF['servitude']); |
1286 |
$msgenque->setReferenceCadastrale( |
$msgenque->setReferenceCadastrale( |
1287 |
$this->getReferenceCadastrale($this->valF['dossier'])); |
$this->getReferenceCadastrale($this->valF['dossier'])); |
1288 |
$msgenque->enqueueMessage($msgenque::$ERP_QUALIFIE); |
$return = $msgenque->enqueueMessage($msgenque::$ERP_QUALIFIE); |
1289 |
|
//Si une erreur s'est produite on arrête le traitement et on |
1290 |
|
//retourne une erreur |
1291 |
|
if ($return !== 0){ |
1292 |
|
|
1293 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
1294 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
1295 |
|
"contacter votre administrateur")); |
1296 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
1297 |
|
//On ne valide pas le formulaire |
1298 |
|
if ( $return === -3 ){ |
1299 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
1300 |
|
$this->correct = false; |
1301 |
|
return false; |
1302 |
|
} |
1303 |
|
} |
1304 |
|
else { |
1305 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
1306 |
|
"referentiel ERP.")); |
1307 |
|
} |
1308 |
} |
} |
1309 |
|
|
1310 |
// envoi des messages a ERP en cas du dossier PC traite par URBA, et |
// envoi des messages a ERP en cas du dossier PC traite par URBA, et |
1314 |
&& $this->valF['erp'] == true) { |
&& $this->valF['erp'] == true) { |
1315 |
$msgenque = new MessageEnqueuer(); |
$msgenque = new MessageEnqueuer(); |
1316 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
1317 |
$msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_COMPLETUDE_PC); |
$return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_COMPLETUDE_PC); |
1318 |
$msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_QUALIFICATION_PC); |
//Si une erreur s'est produite on arrête le traitement et on |
1319 |
|
//retourne une erreur |
1320 |
|
if ($return !== 0){ |
1321 |
|
|
1322 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
1323 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
1324 |
|
"contacter votre administrateur")); |
1325 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
1326 |
|
//On ne valide pas le formulaire |
1327 |
|
if ( $return === -3 ){ |
1328 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
1329 |
|
$this->correct = false; |
1330 |
|
return false; |
1331 |
|
} |
1332 |
|
} |
1333 |
|
else { |
1334 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
1335 |
|
"referentiel ERP.")); |
1336 |
|
} |
1337 |
|
|
1338 |
|
$return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_QUALIFICATION_PC); |
1339 |
|
//Si une erreur s'est produite on arrête le traitement et on |
1340 |
|
//retourne une erreur |
1341 |
|
if ($return !== 0){ |
1342 |
|
|
1343 |
|
$this->addToMessage(_("Une erreur s'est produite lors de ". |
1344 |
|
"l'envoi du message au referentiel ERP. Merci de ". |
1345 |
|
"contacter votre administrateur")); |
1346 |
|
//Si c'est un problème de connexion vers rabbitMQ et AMQP |
1347 |
|
//On ne valide pas le formulaire |
1348 |
|
if ( $return === -3 ){ |
1349 |
|
$this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>"); |
1350 |
|
$this->correct = false; |
1351 |
|
return false; |
1352 |
|
} |
1353 |
|
} |
1354 |
|
else { |
1355 |
|
$this->addToMessage(_("Le message a ete transmis au ". |
1356 |
|
"referentiel ERP.")); |
1357 |
|
} |
1358 |
} |
} |
1359 |
} |
} |
1360 |
} // fin de if($this->f->getParameter('option_erp')) |
} // fin de if($this->f->getParameter('option_erp')) |
1694 |
} |
} |
1695 |
|
|
1696 |
/** |
/** |
1697 |
* Récupère la liste des contraintes d'un dossier |
* Récupère la liste des contraintes d'un dossier. |
1698 |
* @param string $dossier Identifiant du dossier |
* @param string $dossier Identifiant du dossier |
1699 |
|
* |
1700 |
* @return object Résultat de la requête |
* @return object Résultat de la requête |
1701 |
*/ |
*/ |
1702 |
function getListContrainte($dossier) { |
function getListContrainte($dossier) { |
1703 |
|
|
1704 |
// Requête SQL |
// Select |
1705 |
$sql = "SELECT dossier_contrainte.dossier_contrainte as dossier_contrainte_id, |
$select = "SELECT dossier_contrainte.dossier_contrainte as dossier_contrainte_id, |
1706 |
dossier_contrainte.texte_complete as dossier_contrainte_texte, |
dossier_contrainte.texte_complete as dossier_contrainte_texte, |
1707 |
dossier_contrainte.reference as dossier_contrainte_reference, |
dossier_contrainte.reference as dossier_contrainte_reference, |
1708 |
contrainte.libelle as contrainte_libelle, |
contrainte.libelle as contrainte_libelle, |
1710 |
contrainte.texte as contrainte_texte, |
contrainte.texte as contrainte_texte, |
1711 |
contrainte.reference as contrainte_reference, |
contrainte.reference as contrainte_reference, |
1712 |
lower(contrainte.groupe) as contrainte_groupe, |
lower(contrainte.groupe) as contrainte_groupe, |
1713 |
lower(contrainte.sousgroupe) as contrainte_sousgroupe |
lower(contrainte.sousgroupe) as contrainte_sousgroupe "; |
1714 |
FROM ".DB_PREFIXE."contrainte |
|
1715 |
|
// From |
1716 |
|
$from = " FROM ".DB_PREFIXE."contrainte |
1717 |
LEFT JOIN ".DB_PREFIXE."dossier_contrainte |
LEFT JOIN ".DB_PREFIXE."dossier_contrainte |
1718 |
ON dossier_contrainte.contrainte = contrainte.contrainte |
ON dossier_contrainte.contrainte = contrainte.contrainte "; |
1719 |
WHERE dossier_contrainte.dossier = '".$dossier."' |
|
1720 |
AND contrainte.service_consulte = 't' |
// Where |
1721 |
"; |
$where = " WHERE dossier_contrainte.dossier = '".$dossier."' "; |
1722 |
|
|
1723 |
|
// Si le paramètre "option_contrainte_di" est définit |
1724 |
|
if ($this->f->getParameter('option_contrainte_di') != 'aucun') { |
1725 |
|
// Ajoute la condition |
1726 |
|
$where .= $this->f->traitement_condition_contrainte( |
1727 |
|
$this->f->getParameter('option_contrainte_di')); |
1728 |
|
} |
1729 |
|
|
1730 |
|
// Tri |
1731 |
|
$tri = " ORDER BY contrainte_groupe, contrainte_sousgroupe, |
1732 |
|
contrainte.no_ordre, contrainte.libelle "; |
1733 |
|
|
1734 |
|
// Requête SQL |
1735 |
|
$sql = $select.$from.$where.$tri; |
1736 |
$res = $this->f->db->query($sql); |
$res = $this->f->db->query($sql); |
1737 |
$this->f->addToLog("listContrainte(): db->query(\"".$sql."\");", VERBOSE_MODE); |
$this->f->addToLog("listContrainte(): db->query(\"".$sql."\");", VERBOSE_MODE); |
1738 |
$this->f->isDatabaseError($res); |
$this->f->isDatabaseError($res); |
2118 |
} else { |
} else { |
2119 |
echo "obj=".get_class($this); |
echo "obj=".get_class($this); |
2120 |
} |
} |
2121 |
|
if (isset($_GET['retourformulaire2']) && $_GET['retourformulaire2'] != '') { |
2122 |
|
echo "&retourformulaire=".$_GET['retourformulaire2']; |
2123 |
|
} |
2124 |
if($this->getParameter("retour")=="form") { |
if($this->getParameter("retour")=="form") { |
2125 |
echo "&idx=".$this->getParameter("idx"); |
echo "&idx=".$this->getParameter("idx"); |
2126 |
echo "&idz=".$this->getParameter("idz"); |
echo "&idz=".$this->getParameter("idz"); |