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

Annotation of /trunk/app/sitadel.class.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 184 - (hide annotations)
Mon Oct 10 15:07:38 2011 UTC (13 years, 3 months ago) by fraynaud
File size: 12091 byte(s)
mise au pt sitadel


1 fraynaud 178 <?php
2     /**
3     * Ce fichier est destine a permettre la surcharge de certaines methodes de
4     * la classe om_application pour des besoins specifiques de l'application
5     *
6     * @package openmairie_exemple
7     * @version SVN : $Id: utils.class.php 547 2011-08-25 12:03:42Z fmichon $
8     */
9    
10     /**
11     *
12     */
13    
14 fraynaud 184
15 fraynaud 178 /**
16     *
17     */
18     require_once "../dyn/include.inc.php";
19    
20     /**
21     *
22     */
23 fraynaud 184 //require_once "../dyn/debug.inc.php";
24 fraynaud 178
25    
26     /**
27     *
28     */
29     class sitadel {
30    
31     var $dossier;
32    
33     var $row; // dossier
34 fraynaud 184 var $val; // parametre par defaut
35     var $parametre; //parametre dossier
36 fraynaud 178
37     function sitadel($dossier) {
38     $this->dossier=$dossier;
39     // recherche de parametre
40     }// fin constructeur
41    
42    
43     function entete($mouvement, $departement, $commune){
44     // sitadel : mouv|typpermis|equivalence|dep|commune|andepnumpc|indmod
45     $entete=$mouvement."|".$this->row['nature']."||0".$departement."|".$commune."|".$this->row['annee'].
46     "|".substr($this->dossier,4,5)."|".substr($this->dossier,9,2)."|";
47     return $entete;
48     }
49    
50     function etatcivil(){
51     // etat civil demandeur
52     // codemo|
53     if($this->row['demandeur_categorie']==9
54     or $this->row['demandeur_categorie']=="")
55     $codemo=1;// personne physique
56     else
57     $codemo=2;// personne morale
58     $etatcivil=$codemo."|"; // 1 personne physique ; 2 sinon
59     // openfoncier civilite (5/8 ok), nom (80/30-> substr), societe (80/50->substr)
60     // civpart|prenompart|nompart|denopm|rspm|siret|catjur|civrep|prenomrep|nomrep|
61     // suivant codemo = 1 (personne physique) ou 2 (personne morale)
62     // demandeur_civilite n est pas normalise Madame ou Monsieur
63     if($codemo==1){
64     // civpart|*prenompart*|nompart||||||
65     $etatcivil.= "||";
66     $etatcivil.= $this->maj(substr($this->row['demandeur_nom'],0,30))."||||||||";
67     }else{
68     //denopm|rspm|*siret*|*catjur*|civrep|*prenomrep*|nomrep|
69     $etatcivil.="|||".$this->maj(substr($this->row['demandeur_societe']),0,50)."|"; // ERREUR *** ok remis
70     $etatcivil.=$this->maj(substr($this->row['categorie_libelle'],0,30))."|";
71     $etatcivil.="||||".$this->maj(substr($this->row['demandeur_nom'],0,30))."|"; // pas de prenom
72     }
73     return $etatcivil;
74     }
75    
76     function adresse(){
77     // openfoncier : adresse (80/ 26+38 -> substr sur 2 zones) - cp (5/5 OK) - ville (30/36 -> OK)
78     // *numvoiemo*|*typvoiemo*|libvoiemo|lieuditmo(+)|communemo|codposmo|*bpmo*|*cedexmo*|*paysmo*|*divetermo|
79 fraynaud 181 $adresse= "||".$this->maj(substr($this->row['demandeur_adresse'],0,26))."|".
80     $this->maj(substr($this->row['demandeur_adresse'],26,38))."|";
81     $adresse.= $this->maj($this->row['demandeur_ville'])."|".$this->row['demandeur_cp']."|||||"; // *** +2
82 fraynaud 178 return $adresse;
83     }
84    
85    
86     function delegataire(){
87     // openFoncier civilite (non normalise monsieur/madame), nom (80/30 substr)
88     // openfoncier : adresse (80/ 26+38 -> substr sur 2 zones) - cp (5/5 OK) - ville (30/32 -> OK)
89     // sitadel civtiers|*prenomtier*|nomtier|*numvoietiers*|*typvoietiers*|
90     // libvoietiers|lieudittier|communetier|codpostier
91     // |*bptier*|*cedextier*|*paystier*|*divtertier*|
92     $delegataire="";
93     if($this->row['delegataire']=='Oui'){
94     $delegataire.= "|"; // *** 1
95     $delegataire.="|".$this->maj(substr($this->row['delegataire_nom'],0,30))."|";
96     $delegataire.= "||".$this->maj(substr($this->row['delegataire_adresse'],0,26))."|".
97     $this->maj(substr($this->row['delegataire_adresse'],26,38))."|";
98     $delegataire.= $this->maj($this->row['delegataire_ville'])."|".
99     $this->row['delegataire_cp']."|||||"; // *** 1
100     }else{
101 fraynaud 181 $delegataire.= "|||||||||||||"; // *** 13 |
102 fraynaud 178 }
103     // sitadel : telmo|melmo|
104     $delegataire.= $this->row['demandeur_telephone']."|";
105 fraynaud 181 $delegataire.= $this->row['demandeur_email']."|";
106 fraynaud 178 // sitadel: suivi
107     if($this->row['delegataire']=='Oui'){
108     $delegataire.= "1|";
109     }else{
110     $delegataire.= "0|";
111     }
112     return $delegataire;
113     }
114    
115     function adresse_terrain(){
116     // openfoncier numero (4/5 substr), adresse(80, 26 +38 -> substr), complement (non utilise (80)), cp (5/5 ok), ville (30/32 ok)
117     // terrain_complement ????
118     // sitadel : numvoiete|*typvoiete*|libvoiete|lieudite|communete|codposte|*bpte*|*cedexte*|
119     $adresse= substr($this->row['terrain_numero'],0,4)."|";
120     $adresse.= "|".$this->maj(substr($this->row['terrain_adresse'],0,26))."|".
121     $this->maj(substr($this->row['terrain_adresse'],26,38))."|";
122     $adresse.= $this->maj($this->row['terrain_ville'])."|";
123     $adresse.= $this->row['terrain_cp']."|";
124     $adresse.= "||";
125     return $adresse;
126    
127     }
128    
129     function parcelle(){
130     // ========
131     // parcelle
132     // ========
133     // cadastre 3 parcelles + 3 sections
134     // openfoncier = 1 seule parcelle (6/3+5)
135     // sitadel : scadastre1|ncadastre1|*scadastre2*|*ncadastre2*|*scadastre3*|*ncadastre3*|
136     $parcelle= substr($this->row['parcelle'],0,2)."|";
137     $parcelle.= substr($this->row['parcelle'],2,4)."|||||";
138     return $parcelle;
139     }
140    
141 fraynaud 179
142    
143 fraynaud 178 function decision_groupe1($avis_sitadel, $avis_sitadel_motif){
144 fraynaud 181 $decision= '1|'; // au nom de la commune
145 fraynaud 178 $decision.= $avis_sitadel."|";
146     // date au format francais 8 caracteres
147     $decision.= substr($this->row['date_decision'],8,2).''.
148     substr($this->row['date_decision'],5,2)."".
149     substr($this->row['date_decision'],0,4)."|";
150     $decision.= $avis_sitadel_motif;
151     return $decision;
152     }
153    
154 fraynaud 179 function amenagement(){
155     // renseignement du groupe 2 ***
156     //sitadel : terrain|lotissement|zac|afu|libnattrav|natproj|
157 fraynaud 181 $contenu= "|".floor($this->row['terrain_surface'])."|";
158 fraynaud 179 if($this->row['amenagement']!='')
159     $contenu.= "1|";
160     else
161     $dcontenu.= "0|";
162     $contenu.= "0|0|"; // zac afu -> non renseignee
163     return $contenu;
164     }
165    
166     function travaux($travaux, $lascot){
167     $contenu=$this->maj($travaux)."|";
168     if($lascot=='1'
169     or $lascot=='2'
170     or $lascot=='3')
171     $contenu.= $lascot."|"; // natproj 1:construction 2:extension ou 3:surelevation
172     else
173     $contenu.= "|";
174     // natdp|nattrav|*annexe*|*nivmax* =========================
175     //natdp
176     $natdp='00000';
177     if($lascot=='1') $natdp="10000"; // nouvelle construction
178     if($lascot=='2') $natdp="01000"; // travaux sur construction existante
179     if($lascot=='3') $natdp="01000"; //
180     if($lascot=='X') $natdp="00001"; // cloture
181     $contenu.= $natdp."|";
182     // nattrav
183     $nattrav = "0000";
184     if($lascot=='2') $nattrav="1000";
185     if($lascot=='3') $nattrav="0100";
186     $contenu.= $nattrav."|";
187     // annexe non renseigner defaut 00000
188     $contenu.= "00000|";
189     //nivmax non saisi
190     $contenu.="|";
191     return $contenu;
192     }
193 fraynaud 178
194 fraynaud 179 function destination($shon){
195     $contenu="";
196     for($i=1;$i<=9;$i++){
197     if(!isset($shon[$i])) $shon[$i]=0;
198     $contenu.=$shon[$i].'|';
199    
200     }
201     return $contenu;
202     }
203 fraynaud 178
204 fraynaud 179 function descriptif(){
205     // cpublic : non renseignee N par defaut
206     // O/N transport/enseignement/sante/social/special/culture
207 fraynaud 184
208     $contenu= $this->p('cpublic'); //* supp|
209 fraynaud 179 // nblogdem
210     $contenu.= "|".$this->row['logement_nombre'];
211     // nbmaison : nombre de maison
212 fraynaud 184 $contenu.= "|".$this->p('nbmaison');
213 fraynaud 179 // nblogcoll : nombre de logement collectif
214 fraynaud 184 $contenu.= "|".$this->p('nblogcoll');
215 fraynaud 179 // nbtotlog : nombre de logement total
216 fraynaud 184 $contenu.= "|".$this->p('nbtotlog');
217 fraynaud 179 // natres : nature des residences
218     // O/N 1=ages, 2=etudiant, 3=tourisme, 4=hotel, 5=social, 6= handicap, 7=autres
219 fraynaud 184 $contenu.= "|".$this->p('natres');
220 fraynaud 179 // libres= si autre residence (long max 1000 c)
221 fraynaud 184 $contenu.= "|".$this->p('libres');
222 fraynaud 179 // util : O/N personnel, principale, secondaire, vente, location
223 fraynaud 184 $contenu.= "|".$this->p('util');
224     //chambre
225     $contenu.= "|".$this->p('chambre');
226 fraynaud 179 // nb logement sociaux
227 fraynaud 184 $contenu.= "|".$this->p('finis');
228 fraynaud 179 // nb logt financt aides
229 fraynaud 184 $contenu.= "|".$this->p('finaa');
230 fraynaud 179 // nb de logt pret a taux 0
231 fraynaud 184 $contenu.= "|".$this->p('finptz');
232 fraynaud 179 // nb de logt finances autrt
233 fraynaud 184 $contenu.= "|".$this->p('finaf');
234 fraynaud 179 // nb pieces en maison individuelle
235     $contenu.= "|".$this->row['piece_nombre']; // voir si 0
236     // chambre (num capacite accueil locaux hebergement)
237 fraynaud 184 // $contenu.= "|";
238 fraynaud 179 // nb de logement 1piece
239 fraynaud 184 $contenu.= "|".$this->p('piec1');
240 fraynaud 179 // nb de logement 2 pieces
241 fraynaud 184 $contenu.= "|".$this->p('piec2');
242 fraynaud 179 // nb de logement 3 pieces
243 fraynaud 184 $contenu.= "|".$this->p('piec3');
244 fraynaud 179 // nb de logement 4 pieces
245 fraynaud 184 $contenu.= "|".$this->p('piec4');
246 fraynaud 179 // nb de logement 5 pieces
247 fraynaud 184 $contenu.= "|".$this->p('piec5');
248 fraynaud 179 // nb de logement 6 pieces
249 fraynaud 184 $contenu.= "".$this->p('piec6');
250 fraynaud 179 return $contenu;
251     }
252    
253 fraynaud 181 function chantier(){
254     //|datereoc
255     $suivi1="";
256     $suivi1.="|".substr($this->row['date_chantier'],8,2).substr($this->row['date_chantier'],5,2).
257     substr($this->row['date_chantier'],0,4); // *** au format francais
258     //|nblogoc|nbmaisoc|nbcolloc
259 fraynaud 184 $suivi1.="|".$this->p('nblogoc')."|".$this->p('nbmaisoc')."|".$this->p('nbcolloc');
260 fraynaud 181 //|shonoc
261     $suivi1.="|".floor($this->row['shon']); // ok *** enlever les decimales
262     //|*finisoc*|*finaaoc*|*finptzoc*|*finafoc|*indoc*
263 fraynaud 184 $suivi1.="|".$this->p('finisoc')."|".$this->p('finaaoc')."|".
264     $this->p('finptzoc')."|".$this->p('finafoc')."|".$this->p('indoc');
265 fraynaud 181 $suivi1.="||||||||||||"; // achevement
266     return $suivi1;
267    
268     }
269 fraynaud 179
270 fraynaud 181 function achevement(){
271 fraynaud 184 $suivi2="||||||||||"; // occupation
272 fraynaud 181 //|datereat
273     $suivi2.="|".substr($this->row['date_achevement'],8,2).substr($this->row['date_achevement'],5,2).
274     substr($this->row['date_achevement'],0,4); // ok *** au format francais
275     //|nblogat|nbmaisat|nbcollat
276 fraynaud 184 $suivi2.="|".$this->p('nblogat')."|".$this->p('nbmaisat')."|".$this->p('nbcollat');
277 fraynaud 181 //|shonat
278     $suivi2.="|".floor($this->row['shon']); // ok *** enlever les decimales
279     //|finisat|finaaat|finptzat|finafat|indat|
280 fraynaud 184 $suivi2.="|".$this->p('finisat')."|".$this->p('finaaat')."|".$this->p('finptzat').
281     "|".$this->p('finafat')."|".$this->p('indat'); //."|"
282 fraynaud 181 // Finchantier 1 si etat=cloturer sinon 0
283     if ($this->row['etat']=="cloturer"){
284     $suivi2.="1|";
285     }else{
286     $suivi2.="0|";
287     }
288 fraynaud 184 // Origat 1 par defaut
289     $suivi2.=$this->p('origat');
290 fraynaud 181 return $suivi2;
291     }
292 fraynaud 184
293     function p($champ){
294     //echo $this->parametre[$champ];
295     if(isset($this->parametre[$champ])){
296     return $this->parametre[$champ];
297     }else
298     return $this->val[$champ];
299     }
300    
301 fraynaud 181
302 fraynaud 178 function maj($val) {
303     $val = strtoupper($val);
304     $val=str_replace(chr(195), "", $val); // supprime le premier code des accents en UTF-8
305     $s = array('/[âàäÀ]/', '/[éêèëÉÈ]/', '/[îï]/', '/[ôöÔ]/', '/[ûùü]/', '/[çÇ]/', '/\'|\"|^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\-\s\r/');
306     $r = array('A', 'E', 'I', 'O', 'U', 'C', ' ');
307     $val = preg_replace($s , $r, $val);
308     return $val;
309     }
310    
311    
312    
313    
314    
315    
316     }
317    
318     ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26