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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 181 - (hide annotations)
Thu Oct 6 10:15:48 2011 UTC (13 years, 3 months ago) by fraynaud
File size: 11129 byte(s)
sitadel 2


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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26