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 |
?> |