/[openfoncier]/trunk/app/sitadel.php
ViewVC logotype

Annotation of /trunk/app/sitadel.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1810 - (hide annotations)
Thu May 2 13:36:55 2013 UTC (11 years, 9 months ago) by vpihour
File size: 33134 byte(s)
Suite du mouvement des décisions (non fini)

1 fraynaud 178 <?php
2 fmichon 1515 /**
3 nhaye 1785 * Ce script permet de générer un document type texte contenant
4     * la liste de toutes les demandes d'autorisation dd'occupation de droit du sol
5     * formulées entre deux dates.
6 fmichon 1515 *
7     * @package openfoncier
8     * @version SVN : $Id$
9     */
10    
11 nhaye 1785 // Appel des classes
12 fraynaud 178 require_once "../obj/utils.class.php";
13     require_once "../app/sitadel.class.php";
14 fraynaud 184 require_once "sitadel.inc";
15 fmichon 380 $f = new utils(NULL, "export_sitadel", _("export SITADEL"), "ico_reqmo.png", "export");
16 nhaye 1785
17 fraynaud 178 /**
18     * Description de la page
19     */
20     $description = _("Cette page vous permet de Transmettre les dossiers suivant la procedure SITADEL");
21     $f->displayDescription($description);
22 fraynaud 184
23 nhaye 1785 // 1ere étape : affichage du formulaire permettant le choix d'un interval de date
24     // ainsi que l'ordre
25     if (empty($_POST)) {
26 vpihour 1809 affichageFormulaire();
27 nhaye 1785 } else { // Traitement après validation du formulaire
28    
29     // init de la valeur d'erreur
30 fraynaud 178 $correct=true;
31 nhaye 1785
32     // XXX
33 fraynaud 193 $longueurenregistrement= 0 ;
34 nhaye 1785
35     // XXX
36 fraynaud 193 $t10 = "||||||||||"; // 10 |
37 nhaye 1785
38     // Initialisation des dates de début et de fin
39 fraynaud 193 $datedebut ='';
40     $datefin='';
41 nhaye 1785
42     // Traitement des erreurs
43     if ($_POST["datedebut"] == "") {
44 fraynaud 190 $correct=false;
45 nhaye 1785 } else {
46 fraynaud 190 $datedebut = substr($_POST["datedebut"],6,4).
47     "-".substr($_POST["datedebut"],3,2)."-".
48     substr($_POST["datedebut"],0,2);
49 nhaye 1785 }
50     if ($_POST["datefin"] == "") {
51 fraynaud 190 $correct=false;
52 nhaye 1785 } else {
53 fraynaud 190 $datefin = substr($_POST["datefin"],6,4).
54     "-".substr($_POST["datefin"],3,2)."-".
55     substr($_POST["datefin"],0,2);
56 nhaye 1785 }
57 fraynaud 178 if ($correct==true){ // ***
58 nhaye 1785 // Requête permettant de lister tous les dossiers de l'export
59 nhaye 1797 $sql= "SELECT dossier.dossier,
60     dossier_instruction_type.mouvement_sitadel,
61     dossier.date_depot,
62     dossier.date_decision,
63     dossier.date_chantier,
64     dossier.date_achevement,
65     dossier.terrain_references_cadastrales as dossier_terrain_references_cadastrales,
66     dossier.terrain_adresse_voie_numero as dossier_terrain_adresse_voie_numero,
67     dossier.complement as dossier_complement,
68     dossier.terrain_adresse_lieu_dit as dossier_terrain_adresse_lieu_dit,
69     dossier.terrain_adresse_localite as dossier_terrain_adresse_localite,
70     dossier.terrain_adresse_code_postal as dossier_terrain_adresse_code_postal,
71     dossier.terrain_adresse_bp as dossier_terrain_adresse_bp,
72     dossier.terrain_adresse_cedex as dossier_terrain_adresse_cedex,
73     dossier.version,
74     dossier_autorisation_type.code,
75 vpihour 1809 dossier.autorite_competente,
76     dossier.date_limite,
77     dossier.date_notification_delai,
78 nhaye 1797
79     pp.type_demandeur,
80     pp.qualite,
81     civilite_pp.libelle as civilite_pp,
82     pp.particulier_nom as pp_particulier_nom,
83     pp.particulier_prenom as pp_particulier_prenom,
84     pp.personne_morale_denomination as pp_personne_morale_denomination,
85     pp.personne_morale_raison_sociale as pp_personne_morale_raison_sociale,
86     pp.personne_morale_siret as pp_personne_morale_siret,
87     pp.personne_morale_categorie_juridique as pp_personne_morale_categorie_juridique,
88     civilite_pm.libelle as civilite_pm_libelle,
89     pp.personne_morale_nom as pp_personne_morale_nom,
90     pp.personne_morale_prenom as pp_personne_morale_prenom,
91    
92     pp.numero as pp_numero,
93     pp.voie as pp_voie,
94     pp.complement as pp_complement,
95     pp.lieu_dit as pp_lieu_dit,
96     pp.localite as pp_localite,
97     pp.code_postal as pp_code_postal,
98     pp.bp as pp_bp,
99     pp.cedex as pp_cedex,
100     pp.pays as pp_pays,
101     pp.division_territoriale as pp_division_territoriale,
102    
103     civilite_delegataire.libelle as civilite_delegataire_libelle,
104     delegataire.particulier_nom as delegataire_particulier_nom,
105     delegataire.particulier_prenom as delegataire_particulier_prenom,
106     delegataire.numero as delegataire_numero,
107     delegataire.voie as delegataire_voie,
108     delegataire.complement as delegataire_complement,
109     delegataire.lieu_dit as delegataire_lieu_dit,
110     delegataire.localite as delegataire_localite,
111     delegataire.code_postal as delegataire_code_postal,
112     delegataire.bp as delegataire_bp,
113     delegataire.cedex as delegataire_cedex,
114     delegataire.pays as delegataire_pays,
115     delegataire.division_territoriale as delegataire_division_territoriale,
116    
117     pp.telephone_fixe as pp_telephone_fixe,
118 vpihour 1809 pp.courriel as pp_courriel,
119    
120     donnees_techniques.co_archi_recours,
121     donnees_techniques.am_terr_surf,
122     donnees_techniques.am_lotiss,
123     donnees_techniques.terr_juri_afu,
124     donnees_techniques.tr_desc,
125     donnees_techniques.co_cstr_nouv,
126     donnees_techniques.co_cstr_exist,
127     donnees_techniques.co_modif_aspect,
128     donnees_techniques.co_modif_struct,
129     donnees_techniques.co_cloture,
130     donnees_techniques.co_trx_exten,
131     donnees_techniques.co_trx_surelev,
132     donnees_techniques.co_trx_nivsup,
133     donnees_techniques.co_trx_amgt,
134     donnees_techniques.co_anx_pisc,
135     donnees_techniques.co_anx_gara,
136     donnees_techniques.co_anx_veran,
137     donnees_techniques.co_anx_abri,
138     donnees_techniques.co_anx_autr,
139     donnees_techniques.co_bat_niv_nb,
140     donnees_techniques.su_avt_shon1,
141     donnees_techniques.su_avt_shon2,
142     donnees_techniques.su_avt_shon3,
143     donnees_techniques.su_avt_shon4,
144     donnees_techniques.su_avt_shon5,
145     donnees_techniques.su_avt_shon6,
146     donnees_techniques.su_avt_shon7,
147     donnees_techniques.su_avt_shon8,
148     donnees_techniques.su_avt_shon9,
149     donnees_techniques.su_demo_shon1,
150     donnees_techniques.su_demo_shon2,
151     donnees_techniques.su_demo_shon3,
152     donnees_techniques.su_demo_shon4,
153     donnees_techniques.su_demo_shon5,
154     donnees_techniques.su_demo_shon6,
155     donnees_techniques.su_demo_shon7,
156     donnees_techniques.su_demo_shon8,
157     donnees_techniques.su_demo_shon9,
158     donnees_techniques.su_chge_shon1,
159     donnees_techniques.su_chge_shon2,
160     donnees_techniques.su_chge_shon3,
161     donnees_techniques.su_chge_shon4,
162     donnees_techniques.su_chge_shon5,
163     donnees_techniques.su_chge_shon6,
164     donnees_techniques.su_chge_shon7,
165     donnees_techniques.su_chge_shon8,
166     donnees_techniques.su_chge_shon9,
167     donnees_techniques.su_trsf_shon1,
168     donnees_techniques.su_trsf_shon2,
169     donnees_techniques.su_trsf_shon3,
170     donnees_techniques.su_trsf_shon4,
171     donnees_techniques.su_trsf_shon5,
172     donnees_techniques.su_trsf_shon6,
173     donnees_techniques.su_trsf_shon7,
174     donnees_techniques.su_trsf_shon8,
175     donnees_techniques.su_trsf_shon9,
176     donnees_techniques.su_cstr_shon1,
177     donnees_techniques.su_cstr_shon2,
178     donnees_techniques.su_cstr_shon3,
179     donnees_techniques.su_cstr_shon4,
180     donnees_techniques.su_cstr_shon5,
181     donnees_techniques.su_cstr_shon6,
182     donnees_techniques.su_cstr_shon7,
183     donnees_techniques.su_cstr_shon8,
184     donnees_techniques.su_cstr_shon9,
185     donnees_techniques.su_tot_shon1,
186     donnees_techniques.su_tot_shon2,
187     donnees_techniques.su_tot_shon3,
188     donnees_techniques.su_tot_shon4,
189     donnees_techniques.su_tot_shon5,
190     donnees_techniques.su_tot_shon6,
191     donnees_techniques.su_tot_shon7,
192     donnees_techniques.su_tot_shon8,
193     donnees_techniques.su_tot_shon9,
194     donnees_techniques.co_sp_transport,
195     donnees_techniques.co_sp_enseign,
196     donnees_techniques.co_sp_sante,
197     donnees_techniques.co_sp_act_soc,
198     donnees_techniques.co_sp_ouvr_spe,
199     donnees_techniques.co_sp_culture,
200     donnees_techniques.dm_tot_log_nb,
201     donnees_techniques.co_tot_ind_nb,
202     donnees_techniques.co_tot_coll_nb,
203     donnees_techniques.co_tot_log_nb,
204     donnees_techniques.co_resid_agees,
205     donnees_techniques.co_resid_etud,
206     donnees_techniques.co_resid_tourism,
207     donnees_techniques.co_resid_hot_soc,
208     donnees_techniques.co_resid_hand,
209     donnees_techniques.co_resid_autr,
210     donnees_techniques.co_resid_autr_desc,
211     donnees_techniques.co_uti_pers,
212     donnees_techniques.co_uti_princ,
213     donnees_techniques.co_uti_secon,
214     donnees_techniques.co_uti_vente,
215     donnees_techniques.co_uti_loc,
216     donnees_techniques.co_foyer_chamb_nb,
217     donnees_techniques.co_fin_lls_nb,
218     donnees_techniques.co_fin_aa_nb,
219     donnees_techniques.co_fin_autr_nb,
220     donnees_techniques.co_mais_piece_nb,
221     donnees_techniques.co_log_1p_nb,
222     donnees_techniques.co_log_2p_nb,
223     donnees_techniques.co_log_3p_nb,
224     donnees_techniques.co_log_4p_nb,
225     donnees_techniques.co_log_5p_nb,
226     donnees_techniques.co_log_6p_nb,
227    
228     avis_decision.sitadel,
229     avis_decision.sitadel_motif
230 nhaye 1797
231    
232 vpihour 1809 FROM ".DB_PREFIXE."dossier";
233 nhaye 1797 $sql .= " INNER JOIN ".DB_PREFIXE."dossier_instruction_type
234     ON dossier.dossier_instruction_type =
235     dossier_instruction_type.dossier_instruction_type
236    
237     INNER JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille
238     ON dossier_instruction_type.dossier_autorisation_type_detaille
239     =dossier_autorisation_type_detaille.dossier_autorisation_type_detaille
240     INNER JOIN ".DB_PREFIXE."dossier_autorisation_type
241     ON dossier_autorisation_type.dossier_autorisation_type
242     =dossier_autorisation_type_detaille.dossier_autorisation_type
243    
244 vpihour 1809 LEFT JOIN ".DB_PREFIXE."donnees_techniques
245     ON donnees_techniques.dossier_instruction = dossier.dossier
246     LEFT JOIN ".DB_PREFIXE."avis_decision
247     ON avis_decision.avis_decision = dossier.avis_decision
248 nhaye 1797 LEFT JOIN ".DB_PREFIXE."lien_dossier_demandeur as ldd_pp
249     ON ldd_pp.dossier = dossier.dossier
250     AND ldd_pp.petitionnaire_principal is TRUE
251     LEFT JOIN ".DB_PREFIXE."demandeur as pp
252     ON ldd_pp.demandeur = pp.demandeur
253     LEFT JOIN ".DB_PREFIXE."civilite as civilite_pp
254     ON civilite_pp.civilite = pp.particulier_civilite
255     LEFT JOIN ".DB_PREFIXE."civilite as civilite_pm
256     ON civilite_pm.civilite = pp.particulier_civilite
257     LEFT JOIN ".DB_PREFIXE."lien_dossier_demandeur as ldd_delegataire
258     ON ldd_delegataire.dossier = dossier.dossier
259     LEFT JOIN ".DB_PREFIXE."demandeur as delegataire
260     ON ldd_delegataire.demandeur = delegataire.demandeur AND delegataire.qualite='delegataire'
261     LEFT JOIN ".DB_PREFIXE."civilite as civilite_delegataire
262     ON civilite_delegataire.civilite = delegataire.particulier_civilite
263     ";
264     $sql .= " WHERE dossier_instruction_type.mouvement_sitadel IS NOT NULL";
265 nhaye 1798 $sql .= " AND dossier.a_qualifier IS NOT TRUE";
266 nhaye 1797 $sql .= " AND ((dossier.date_depot >='".$datedebut."' AND dossier.date_depot<='".$datefin."')";
267     $sql .= " OR (dossier.date_decision>='".$datedebut."' AND dossier.date_decision<='".$datefin."')";
268     $sql .= " OR (dossier.date_chantier>='".$datedebut."' AND dossier.date_chantier<='".$datefin."'))";
269     $sql .= " order by dossier.date_depot";
270 fraynaud 178 $res = $f->db -> query ($sql);
271 vpihour 1809 $f->addToLog("app/sitadel.php : db->query(\"".$sql."\")", VERBOSE_MODE);
272 fraynaud 178 $f->isDatabaseError($res);
273 fraynaud 190 $export="";
274 fraynaud 178 while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){
275 nhaye 1785 // initialisation de la classe permettant la mise en forme de chaque ligne de l'export
276 fraynaud 187 $g = new sitadel($row['dossier']);
277 vpihour 1809 $g->setRow($row);
278 fraynaud 187 // sitadel
279 vpihour 1809 $g->setVal($val);
280 nhaye 1785 //
281 fraynaud 187 // parametre
282 nhaye 1785 // $sql = "select parametre, valeur from ".DB_PREFIXE."statistique where dossier ='".$row['dossier']."'";
283     // $res1 = $f->db -> query ($sql);
284     // $f->isDatabaseError($res1);
285     // while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
286     // $g->parametre[$row1['parametre']]=$row1['valeur'];
287     // }
288 fraynaud 187 $departement =$f->collectivite["departement"];
289     $commune =$f->collectivite["commune"];
290     $region =$f->collectivite["region"];
291     // depot
292     $depot="";
293 nhaye 1785
294 nhaye 1797 // Tous les mouvements autres que transfert ont comme mouvement le code DEPOT
295 nhaye 1785 // les décisions devant êtres précédées par le dépôt correspondant,
296     // les dossiers avec date de décision comprise dans l'interval fourni sont
297     // réaffichés en tant que dépôts (mouvement DEPOT)
298 nhaye 1797 if ($row['mouvement_sitadel'] != 'TRANSFERT'
299 fraynaud 190 and (($row['date_depot'] >= $datedebut
300 nhaye 1785 and $row['date_depot'] <= $datefin)
301 fraynaud 190 or ($row['date_decision'] >= $datedebut
302 nhaye 1785 and $row['date_decision'] <= $datefin))) {
303 fraynaud 193 $depot.=$g->entete("DEPOT",$departement,$commune,$pf_departement);
304 fraynaud 187 $depot.=$g->etatcivil();
305     $depot.=$g->adresse();
306     $depot.=$g->delegataire();
307 nhaye 1797 $depot.=$g->meltel($row['mouvement_sitadel']);
308 fraynaud 187 $depot.=$g->adresse_terrain();
309     $depot.=$g->parcelle();
310     // ===========================
311     // contrat maison individuelle
312     // ===========================
313     // sitadel : contrat|
314 vpihour 1809 // openads : non renseigne
315 fraynaud 187 $depot.= $g->p('contrat')."|";
316     // ==========
317     // architecte
318     // ==========
319     // sitadel : architecte|
320 vpihour 1809 // openads : données techniques.co_archi_recours
321     if($row['co_archi_recours'] == "t")
322 fraynaud 187 $depot.= "1|";
323     else
324     $depot.= "0|";
325     // =====================
326     // utilisation data cnil
327     // ======================
328     // sitadel : cnil
329 vpihour 1809 // openads : non renseigne
330 fraynaud 187 $depot.= $g->p('cnil');
331     // fin d enregistrement depot
332     $depot.="\n";
333 fraynaud 178 }
334 fraynaud 187
335 nhaye 1785 // Seuls les dossier de type transfert ont comme mouvement le code TRANSFERT
336 fraynaud 187 $transfert ="";
337 nhaye 1797 if($row['mouvement_sitadel']=='TRANSFERT'
338 fraynaud 190 and $row['date_depot'] >= $datedebut
339     and $row['date_depot']<=$datefin){
340 fraynaud 193 $transfert.=$g->entete("TRANSFERT",$departement,$commune,$pf_departement);
341 fraynaud 187 $transfert.=$g->etatcivil();
342     $transfert.=$g->adresse();
343 nhaye 1797 $transfert.=$g->meltel($row['mouvement_sitadel']);
344 fraynaud 187 $transfert.="\n";
345 fraynaud 178 }
346 fraynaud 187
347    
348 nhaye 1785 // Une ligne de mouvement DECISION est insérée après chaque ligne
349     // de mouvement DEPOT
350 fraynaud 187 $decision="";
351 nhaye 1797 if ($row['mouvement_sitadel'] != 'MODIFICATIF'
352     and $row['mouvement_sitadel'] != 'TRANSFERT'
353 fraynaud 200 and (($row['date_depot'] >= $datedebut and $row['date_depot']<=$datefin)
354 nhaye 1785 or ($row['date_decision'] >= $datedebut and $row['date_decision']<=$datefin))) {
355 vpihour 1809
356     //Ajout de l'entête
357 fraynaud 193 $decision.=$g->entete("DECISION",$departement,$commune,$pf_departement);
358 vpihour 1809
359     //Ajout du groupe 1
360     $decision.= $g->decision_groupe1();
361     // Si la décision est favorable, groupe 2
362     if ( $row['sitadel'] == 2 || $row['sitadel'] == 4 || $row['sitadel'] == 5
363     || $row['sitadel'] == 0 ){
364    
365     $decision.= $g->amenagement_terrain();
366     $su_avt_shon = $g->shon("su_avt_shon");
367 vpihour 1810 //Si la SHON existante avant travaux est supérieur à la SHON
368     //démolie alors la variable natproj est égale à 2
369     $shonExistante = 0;
370     $shonDemolie = 0;
371     for ( $i=1;$i<=9;$i++){
372    
373     $shonExistante += floor($row['su_avt_shon'.$i]);
374     $shonDemolie += floor($row['su_demo_shon'.$i]);
375     }
376     if ( $shonExistante > $shonDemolie && $row['co_cstr_nouv'] == 't' ){
377    
378     $f->displayMessage("error", "Si la SHON existante avant travaux est supérieur à la SHON démolie alors la variable natproj doit etre égale à 2 pour le dossier no ".$row['dossier']);
379     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
380     die();
381     }
382     //Si la SHON existante avant travaux et la SHON démolie sont
383     //égales alors la variable natproj est égale à 1
384     elseif ( $shonExistante > $shonDemolie && $row['co_cstr_exist'] == 't' ) {
385    
386     $f->displayMessage("error", "Si la SHON existante avant travaux et la SHON démolie sont égales alors la variable natproj doit être égale à 1 pour le dossier no ".$row['dossier']);
387     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
388     die();
389     }
390     else {
391     $decision .= $su_avt_shon;
392     }
393 vpihour 1809
394 vpihour 1810 $su_demo_shon .= $g->shon("su_demo_shon");
395     //La SHON démolie s'accompagne obligatoirement de la shon
396     //existante avant travaux
397     //Erreur
398     if ( $shonExistante != 0 && $shonExistante == 0 ){
399     $f->displayMessage("error", "La SHON demolie s'accompagne obligatoirement de la SHON existante avant travaux pour le dossier no ".$row['dossier']);
400     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
401     die();
402     }
403     else {
404     $decision .= $su_demo_shon;
405     }
406    
407    
408 vpihour 1809 $decision.= $g->shon("su_chge_shon");
409     $su_trsf_shon = $g->shon("su_trsf_shon");
410     $su_cstr_shon = $g->shon("su_cstr_shon");
411     //Les SHON relatives à la transformation et issues de la
412     //transformation doivent être égales
413     if ( strcasecmp($su_trsf_shon, $su_cstr_shon) == 0 ||
414     (!preg_match("/[0|]{7}/", $su_trsf_shon) &&
415     preg_match("/[0|]{7}/", $su_cstr_shon) &&
416     $row['co_cstr_nouv']!='t' && $row['co_cstr_exist']!='t')){
417    
418     $decision.= $su_trsf_shon;
419     $decision.= $su_cstr_shon;
420 nhaye 1785 }
421 vpihour 1809 //Erreur
422     else {
423     $f->displayMessage("error", "Les SHON globales vouees a la transformation et issues de la transformation de doivent etre egales pour le dossier no ".$row['dossier']);
424     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
425     die();
426 fraynaud 193 }
427 vpihour 1809
428     //Les SHON relatives à la transformation s'accompagnent
429     //obligatoirement de SHON existante avant travaux non nulle
430     if (( !preg_match("/[0|]{7}/", $su_trsf_shon) &&
431     !preg_match("/[0|]{7}/", $su_cstr_shon) &&
432     !preg_match("/[0|]{7}/", $su_avt_shon)) ||
433     (preg_match("/[0|]{7}/", $su_trsf_shon) &&
434     preg_match("/[0|]{7}/", $su_cstr_shon)&&
435     preg_match("/[0|]{7}/", $su_avt_shon))){
436    
437     $decision.= $su_avt_shon;
438     }
439     //Erreur
440     else {
441    
442     $f->displayMessage("error", "Les SHON relatives à la transformation s'accompagnent obligatoirement de SHON existante avant travaux non nulle pour le dossier no ".$row['dossier']);
443     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
444     die();
445     }
446    
447    
448     $decision.= $g->shon("su_tot_shon");
449    
450     $decision.= $g->destination();
451     $decision.= $g->repartitionFinan();
452     $decision.= $g->repartitionNbPiece();
453     }
454 nhaye 1785 $decision.="\n";
455 fraynaud 187 }
456    
457     // modificatif
458     $modificatif='';
459 nhaye 1797 if($row['mouvement_sitadel'] == 'MODIFICATIF'
460 fraynaud 190 and $row['date_depot'] >= $datedebut
461 nhaye 1785 and $row['date_depot'] <= $datefin) {
462 fraynaud 193 $modificatif.=$g->entete("MODIFICATIF",$departement,$commune,$pf_departement);
463 fraynaud 187 if(isset($row['date_decision']) or $row['date_decision']==""){
464     // avis_sitadel et avis_sitadel_motif
465 vpihour 510 if($row['avis_decision']!=''){
466 fraynaud 187 $avis_sitadel = 0;
467     $avis_sitadel_motif=0 ;
468 vpihour 510 $sql="select sitadel, sitadel_motif from ".DB_PREFIXE."avis_decision where avis_decision ='".
469     $row['avis_decision']."'";
470 fraynaud 187 $res1 = $f->db -> query ($sql);
471     $f->isDatabaseError($res1);
472     while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
473     $avis_sitadel = $row1['sitadel'];
474     $avis_sitadel_motif = $row1['sitadel_motif'];
475     }
476 fraynaud 200 $modificatif.= $g->decision_groupe1($avis_sitadel,$avis_sitadel_motif,$structure);
477 fraynaud 178 }
478 fraynaud 187 // si la decision est favorable, envoi des informations statistiques
479     if($avis_sitadel==2 or $avis_sitadel==4
480     or $avis_sitadel==5){
481     // si decision favorable, expresse ou tacite GROUPE 2
482     $modificatif.=$g->adresse_terrain(); //***
483     $modificatif.=$g->parcelle(); //***
484     $modificatif.=$g->terrain(); //***
485 fraynaud 259 // enlever les RC
486     $temp=$row['description'];
487     $temp = str_replace( chr(10), " ", $temp);
488     $temp = str_replace( chr(13), " ", $temp);
489 fraynaud 187 if($row['travaux']!=''){
490     $sql= "select codelascot,libelle
491 fraynaud 267 from ".DB_PREFIXE."travaux where travaux=".$row['travaux'];
492 fraynaud 187 $res2 = $f->db -> query ($sql);
493     $f->isDatabaseError($res2);
494     while ($row2=& $res2->fetchRow(DB_FETCHMODE_ASSOC)){
495 fraynaud 258 $travaux = $row2['libelle']." ".$row['description']; // ***;
496 fraynaud 187 $lascot = $row2['codelascot'];
497     }
498 fraynaud 259 $travaux.=" ".$temp;
499 nhaye 1797 $modificatif.= $g->travaux($travaux,$lascot, $row['mouvement_sitadel']);
500 fraynaud 187 }
501 fraynaud 258 $sql3="select * from ".DB_PREFIXE."destination_shon where dossier = '".
502 fraynaud 187 $row['dossier']."' order by destination";
503     $res3 = $f->db -> query ($sql3);
504     $f->isDatabaseError($res3);
505     $temp = array();
506     while ($row3=& $res3->fetchRow(DB_FETCHMODE_ASSOC)){
507     $shonant[$row3['destination']]=$row3["shon_anterieure"];
508     $shondem[$row3['destination']]=$row3["shon_demolie"];
509     $shonanttr[$row3['destination']]=$row3["shon_anterieure_supprimee"];
510     $shonprojtr[$row3['destination']]=$row3["shon_nouvelle_transformee"];
511     $shoncr1[$row3['destination']]=$row3["shon_nouvelle"];
512     $shoncr2[$row3['destination']]=$row3["shon_shob_transformee"];
513     }
514     $modificatif.= $g->destination($shonant);
515     $modificatif.= $g->destination($shondem);
516     $modificatif.= $g->destination($shonanttr);
517     $modificatif.= $g->destination($shonprojtr);
518     $modificatif.= $g->destination($shoncr1);
519     $modificatif.= $g->destination($shoncr2);
520    
521 nhaye 1797 $modificatif.= $g->descriptif($row['mouvement_sitadel']);
522 fraynaud 187 $modificatif.="\n";
523     }
524     }
525     }
526 fraynaud 178
527 fraynaud 200 // suivi DOC
528 fraynaud 187 $suivi1="";
529 fraynaud 190 if($row['date_chantier'] >= $datedebut and $row['date_chantier']<=$datefin){
530 fraynaud 193 $suivi1.=$g->entete("SUIVI",$departement,$commune,$pf_departement);
531 fraynaud 190 $suivi1.=$g->chantier();
532     $suivi1.="\n";
533     }
534 fraynaud 187 // suivi DAT
535     $suivi2="";
536 fraynaud 190 if($row['date_achevement'] >= $datedebut and $row['date_achevement']<=$datefin){
537 fraynaud 193 $suivi2.=$g->entete("SUIVI",$departement,$commune,$pf_departement);
538 fraynaud 190 $suivi2.=$g->achevement();
539     $suivi2.="\n";
540 fraynaud 178 }
541 fraynaud 190 // export
542     $export.=$depot.$decision.$transfert.$modificatif.$suivi1.$suivi2;
543 fraynaud 187 } // fin while
544 fraynaud 190 // ***************************************
545     // entete de l enregistrement page 8 et 9
546     // ***************************************
547     // numero
548 nhaye 1197 // $numero= $db -> nextId('sitadel');
549     $departement =$f->collectivite["departement"];
550     $commune =$f->collectivite["commune"];
551     $region =$f->collectivite["region"];
552 fraynaud 190 $numero=$_POST["numero"];
553 fraynaud 193 $fichiertransmis = date('ymj').$pf_departement.$departement.$commune;
554 fraynaud 190 $longueurenregistrement= 0 ; // a calculer *** enregistrement le plus long
555 fraynaud 193 $entete = "SITADEL|".$pf_departement.$departement."|".$commune."|".$region."|".$fichiertransmis."|".$numero."|";
556 fraynaud 190 // calcul enregistrement le plus long
557 fmichon 323 if(DBCHARSET=='UTF8'){
558 fraynaud 190 $export=utf8_decode($export);
559     }
560     // nombreenrgistremment et longueurenregistrement
561     $nbenr = explode("\n",$export);
562     $tmp=array();
563     $cpt=0;
564     for($i=0;$i<sizeof($nbenr);$i++){
565     // mb_strlen( variable,encoding) PHP 4 >= 4.0.6, PHP 5
566 vpihour 510 // Le param�tre encoding est l'encodage des caract�res.
567     // S'il est omis, l'encodage de caracteres interne sera utilis�.
568 fraynaud 190 $tmp[$i] = strlen($nbenr[$i]);
569     //echo strlen($nbenr[$i])." ".$nbenr[$i]."<br>";
570     $cpt++;
571     }
572     $longueurenregistrement=max($tmp);
573     $nombreenregistrement=$cpt; // + entete
574     // Date de modification
575     $datemodification = date('y').str_pad (DATE('m'), 2, "0", STR_PAD_LEFT).str_pad (DATE('j'), 2, "0", STR_PAD_LEFT);
576     // export
577 nhaye 1797 $version = substr($f->version,0,8);
578 fraynaud 200 $entete.= $longueurenregistrement."|".$datemodification."|".
579     $nombreenregistrement."|openFoncier|".$version."\n";
580 fraynaud 190 $export=$entete.$export;
581 fraynaud 193 // $str = htmlentities($str, ENT_QUOTES);
582 fraynaud 190 // ecriture des fichiers en tmp
583     $fichier = "../tmp/SITADEL".substr($_POST["datedebut"],3,2).
584 fraynaud 322 "".substr($_POST["datedebut"],8,4)."";
585 fraynaud 190 $inf = fopen($fichier,"w");
586     fwrite($inf,$export);
587     fclose($inf);
588 fraynaud 200 echo "<br>"._("Fichier")." ".$fichier." "._("sauvegarde")."<br /><br /><br />";
589 fraynaud 190 // affichage
590     echo "<br /><br />Pour telecharger le fichier, cliquer ici : <a href=\"".$fichier."\" target=\"_blank\">";
591 fraynaud 322 echo "<img src=\"../app/img/ico_trace.png\" alt=\"Telecharger le fichier CNEN\" title=\"Telecharger le fichier Sitadel\" />";
592 fraynaud 200 echo "</a>"._("avec le bouton droit et enregistrer la cible du lien sous.")."<br /><br />";
593 nhaye 1785 if(DEBUG != "PRODUCTION_MODE"){
594 fraynaud 190 $affiche="";
595     $affiche= str_replace("\n","<br>",$export);
596     echo $affiche;
597     }
598 fraynaud 187 }else // correct = false
599 fraynaud 200 echo _("remplissez les 2 dates");
600 fraynaud 178 }//validation
601 vpihour 1809
602     /**
603     * Affichage du formulaire
604     *
605     * */
606     function affichageFormulaire($datedebut="", $datefin="", $numero=""){
607    
608     echo "<form method=\"POST\" action=\"sitadel.php\" name=f1>";
609     // champ date debut
610     echo " "._("debut")." ";
611     echo "<input type='text' name='datedebut' id=\"datedebut\" value=\"";
612     echo $datedebut;
613     echo "\" size=\"15\" class=\"champFormulaire datepicker\" onchange='fdate(this)' onkeyup=\"\" onclick=\"\" />";
614     // champ date fin
615     echo " "._("fin")." ";
616     echo "<input type='text' name='datefin' id=\"datefin\" value=\"";
617     echo $datefin;
618     echo "\" size=\"15\" class=\"champFormulaire datepicker\" onchange='fdate(this)' onkeyup=\"\" onclick=\"\" />";
619     // numero d'ordre d'envoi
620     echo " "._("Numero d'ordre d'envoi")." : "."<select name='numero'>";
621     for ($i = 1; $i < 11; $i++) {
622     echo "<option value ='".$i."' ";
623     echo ($numero == $i )? "selected='selected'":"";
624     echo">".$i."</option>";
625     }
626     echo "</select>";
627     echo "<br><br><input type='submit' value='export SITADEL'>";
628     echo "</form>";
629     }
630 fraynaud 200 ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26