diff --git a/src/module_cadastre/README.md b/src/module_cadastre/README.md new file mode 100644 index 0000000000000000000000000000000000000000..c850ab7030a5f47a0429638b55f24efcd9541bfe --- /dev/null +++ b/src/module_cadastre/README.md @@ -0,0 +1 @@ +Web service cadastre \ No newline at end of file diff --git a/src/module_cadastre/web_service/CHANGE_LOG.txt b/src/module_cadastre/web_service/CHANGE_LOG.txt new file mode 100755 index 0000000000000000000000000000000000000000..7210b50e5d4b5a858dac05343dd08505aa5dd972 --- /dev/null +++ b/src/module_cadastre/web_service/CHANGE_LOG.txt @@ -0,0 +1,13 @@ +b22731|RELEASE |cadastre| Version 2017.01.01 +b22727|BUG |cadastre| Privilèges +b22647|EVOLUTION |cadastre| Tous les constructeurs des classes PHP ont été renommé en __construct +b22139|RELEASE |cadastre| Version 2017.01.00 +b21184|BUG |cadastre| projections cadastre +b20785|BUG |cadastre| Rajout du champs , 'l_dsgrpf as "DSGRPF"' +b20499|BUG |cadastre| Ajout Adresse de la parcelle fiche urbanisme +b20114|BUG |cadastre| Modification des versions.inc pour ajouter la status à UNSTABLE +b20112|BUG |cadastre| Erreur dans le require_once +b19998|BUG |cadastre| Web service cadastre --> Suppression de la dépendance au schéma cadastre +b19822|BUG |cadastre| v_lieu_dit +b19730|BUG |cadastre| Utilisation d'un seul fichier de properties pour les modules cadastre v1 et v2 + diff --git a/src/module_cadastre/web_service/_install/apache.conf b/src/module_cadastre/web_service/_install/apache.conf new file mode 100755 index 0000000000000000000000000000000000000000..da7bc6a88eba746b6b0fbb13ce9f8c53f4ada9c5 --- /dev/null +++ b/src/module_cadastre/web_service/_install/apache.conf @@ -0,0 +1,4 @@ + + <Directory "[VASDIRECTORY]/public/cadastre"> + Require all denied + </Directory> \ No newline at end of file diff --git a/src/module_cadastre/web_service/_install/dependency.xml b/src/module_cadastre/web_service/_install/dependency.xml new file mode 100755 index 0000000000000000000000000000000000000000..5ae3784e5e4d383376eaf75318ac4d970393cafa --- /dev/null +++ b/src/module_cadastre/web_service/_install/dependency.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- WS GTF --> +<installer> + <dependenciesCollection> + <dependency> + <nature>vas</nature> + <version>2018.05.00</version> + </dependency> + </dependenciesCollection> +</installer> diff --git a/src/module_cadastre/web_service/class/majic_lib/CHANGE_LOG.txt b/src/module_cadastre/web_service/class/majic_lib/CHANGE_LOG.txt new file mode 100755 index 0000000000000000000000000000000000000000..39048bfeabdf4b48d273be99b7e2596b028b4617 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/CHANGE_LOG.txt @@ -0,0 +1,11 @@ + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + + + + VEREMES - changelog de Majic_lib + + + + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + +__________________________________________________________________________________________________________________ +|b4379|NOUVEAUTE |RELEASE| VERSION 2011.1 Rajout du champ TAXE AD qui correspond aux taxes additionnelles sur les parcelles. Cette mise à jour s'applique sur la version 2011 applicable sur les données 2012 +| diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..6a929471084860bd679759adf84539750a41ffdb --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj.class.inc @@ -0,0 +1,119 @@ +<?php + +/** + * \file Mj.class.inc + * \brief Mj.class.inc \n \n Ce fichier contient la classe php Mj. + * + * Cette classe est une classe virtuelle qui peut �tre appel� par les autres classes de la librairie majic_lib par h�ritage. + * + * \author Damien Bedel <damien.bedel@veremes.com> + * \author Olivier Gayte <olivier.gayte@veremes.com> + */ +/** + * \class Mj + * \brief Mj Class \n \n Mj est une classe PHP. + * + * Cette classe permet de retourner un objet de s�lection dans une table sous la forme d'un tableau HTML. + * + * \author Damien Bedel + * \author Olivier Gayte <olivier.gayte@veremes.com> + */ +require_once __DIR__ . "/../vitis_lib/XmlAbstract.class.inc"; + +class Mj extends XmlAbstract { + + /** + * Requ�te SQL de s�lection dans la table. + */ + var $sSql; + + /** + * Statut de l'objet cr�e lors de la requ�te. 1 si erreur; 0 si l'objet a pu �tre instanci�. + */ + var $sStatus = 0; + + /** + * Message d'erreur. + */ + var $sMessage; + + /** + * Nom du fichier SQL. + */ + var $sRessourcesFile = 'Mj.sql.inc'; + + /** + * Clef de cryptage + */ + var $sEncryptKey = ''; + + /** + * Clef de cryptage + */ + var $bAllSuf = false; + + /** + * Cette m�thode permet de retourner un code d'erreur en fonction du statut de l'objet r�sultant de la s�lection. + * \return Retourne 1 s'il y a une erreur, 0 si ok. + */ + function isError() { + if ($this->sStatus == 1) { + return 1; + } else { + return 0; + } + } + + /** + * Cette m�thode permet de renvoyer un message d'erreur. + * \return Retourne une cha�ne de caract�res. + */ + function getMessage() { + return $this->sMessage; + } + + function encrypt($cleartext) { + if ($this->sEncryptKey != '') { + if (empty($cleartext) || USE_ENCRYPTION == false) { + return $cleartext; + } + $cipher = mcrypt_module_open(MCRYPT_BLOWFISH, '', MCRYPT_MODE_CBC, ''); + $key = substr($this->sEncryptKey, 0, mcrypt_enc_get_key_size($cipher)); + $iv = '00000000'; + + // add the padding. + $cleartext_length = strlen($cleartext) % 8; + for ($i = $cleartext_length; $i < 8; $i++) { + $cleartext .= chr(8 - $cleartext_length); + } + + $ciphertext = ''; + // 128-bit Blowfish encryption: + if (mcrypt_generic_init($cipher, $key, $iv) != - 1) { + // PHP pads with NULL bytes if $cleartext IS NOT a multiple of the block size .. + if (empty($cleartext)) { + return ''; + } + $ciphertext = mcrypt_generic($cipher, $cleartext); + mcrypt_generic_deinit($cipher); + } + + return base64_encode($ciphertext); + } else { + return $cleartext; + } + } + + function getObjects($sClasse) { + $aObjClass = array(); + foreach ($this->aObjects as $oObj) { + if (get_class($oObj) == $sClasse) { + array_push($aObjClass, $oObj); + } + } + return $aObjClass; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj.sql.inc b/src/module_cadastre/web_service/class/majic_lib/Mj.sql.inc new file mode 100755 index 0000000000000000000000000000000000000000..2038a07fe68af9e0da67e66cc4b6ed3a8324afad --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj.sql.inc @@ -0,0 +1,122 @@ +<?php +$aSql['pgsql']['proprietaire']= 'SELECT "ID_DNUPRO" as id_dnupro, "DNUPRO" as "dnupro", "ID_PRO" as id_pro, "L_CCODRO" as l_ccodro, "L_CCODEM" as l_ccodem, "DNUPER" as dnuper, "DQUALP" as dqualp, "DDENOM" as ddenom, "DNOMLP" as dnomlp, "DPRNLP" as dprnlp, "EPXNEE" as epxnee, "DNOMCP" as dnomcp, "DPRNCP" as dprncp, "JDATNSS" as jdatnss, "DLDNSS" as dldnss, "DLIGN3" as dlign3, "DLIGN4" as dlign4, "DLIGN5" as dlign5, "DLIGN6" as dlign6, "GTOPER" as gtoper FROM majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."tc_CCODRO_code_droit" ON "PROPRIETAIRE_COURANT"."CCODRO"="tc_CCODRO_code_droit"."CCODRO" LEFT JOIN majic."tc_CCODEM_Nature_demembrement" ON "PROPRIETAIRE_COURANT"."CCODEM"="tc_CCODEM_Nature_demembrement"."CCODEM" WHERE "ID_DNUPRO"=\'$sIdDnupro\' AND "ID_PRO"=\'$sIdPro\''; +$aSql['pgsql']['bati'] = 'SELECT "FANTOIR_COMMUNE"."LIBCOM" as libcom, "BATI_A00_IDENT_LOCAL"."DNBNIV" as dnbniv,"BATI_A00_IDENT_LOCAL"."JDATAT" as jdatat, "BATI_A00_IDENT_LOCAL"."JANNAT" as jannat,"BATI_A00_IDENT_LOCAL"."DNATLC" as dnatlc, "BATI_A00_IDENT_LOCAL"."ID_DNUPRO" as b_iddnupro, "BATI_A00_IDENT_LOCAL"."DNUPRO" as b_dnupro, "BATI_A00_IDENT_LOCAL"."ID_BAT" as id_bat, "BATI_A00_IDENT_LOCAL"."DTELOC" as dteloc, "tc_DTELOC_Type_local"."L_DTELOC" as dteloc, "BATI_A00_IDENT_LOCAL"."DVLTRT" as dvltrt, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "CCOPLC" as ccoplc, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DNUBAT" as dnubat, "DESC" as desc, "DNIV" as dniv, "DPOR" as dpor, "BATI_A00_IDENT_LOCAL"."INVAR" as invar, "CCOEVA" as ccoeva, "BATI_A00_IDENT_LOCAL"."CCONLC" as cconlc, "L_CCONLC" AS lib_cconlc, "DVLPERA" as dvlpera, "GTAUOM" as gtauom, "CCONAD" as cconad, "LOT_LOCAL"."ID_BAT" as Local_id_bat, "LOT_LOCAL"."DNUMQL" as dnumql, "LOT_LOCAL"."DDENQL" as ddenql FROM majic."BATI_A00_IDENT_LOCAL" LEFT JOIN majic."BATI_A60_DESCR_DEPEND" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A60_DESCR_DEPEND"."ID_BAT" LEFT JOIN majic."BATI_A21_DESCR_PEV" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A21_DESCR_PEV"."ID_BAT" LEFT JOIN majic."tc_DTELOC_Type_local" ON "BATI_A00_IDENT_LOCAL"."DTELOC"="tc_DTELOC_Type_local"."DTELOC" LEFT JOIN majic."LOT_LOCAL" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="LOT_LOCAL"."ID_BAT" LEFT JOIN majic."FANTOIR_COMMUNE" ON "BATI_A00_IDENT_LOCAL"."CCOCOM"="FANTOIR_COMMUNE"."CCOCOM" LEFT JOIN majic."tc_CCONLC_Nature_local" ON "BATI_A00_IDENT_LOCAL"."CCONLC"="tc_CCONLC_Nature_local"."CCONLC" WHERE "BATI_A00_IDENT_LOCAL"."ID_BAT"=\'$sIdBat\' ORDER BY "CCOSEC","DNUPLA","BATI_A00_IDENT_LOCAL"."INVAR"'; +$aSql['pgsql']['habit_descr'] = 'SELECT "DNUPEV" as dnupev, "INVAR" as invar, "CCONAD1" as cconad1, "CCONAD2" as cconad2, "CCONAD3" as cconad3, "CCONAD4" as cconad4,"DSUEIC1" as dsueic1, "DSUEIC2" as dsueic2, "DSUEIC3" as dsueic3, "DSUEIC4" as dsueic4, "GEAULC" as geaulc, "GELELC" as gelelc, "GESCLC" as gesclc, "GGAZLC" as ggazlc, "GASCLC" as gasclc, "GCHCLC" as gchclc, "GVORLC" as gvorlc, "GTEGLC" as gteglc, "DNBBAI" as dnbbai, "DNBDOU" as dnbdou, "DNBLAV" as dnblav, "DNBWC" as dnbwc, "DNBPPR" as dnbppr, "DNBSAM" as dnbsam, "DNBCHA" as dnbcha, "DNBCU8" as dnbcu8, "DNBCU9" as dnbcu9, "DNBSEA" as dnbsea, "DNBANN" as dnbann, "DNBPDC" as dnbpdc, "DSUPDC" as dsupdc, "DMATGM" as dmatgm, "DMATTO" as dmatto, "JANNAT" as jannat, "DETENT" as detent, "DNBNIV" as dnbniv FROM majic."BATI_A40_DESCR_HABIT" WHERE "ID_PEV"=\'$sIdPev\' AND "DNUDES"=\'$sDnudes\''; +$aSql['pgsql']['depend_descr'] = 'SELECT "DNUDES" as dnudes, "DNUPEV" as dnupev, "INVAR" as invar, "BATI_A60_DESCR_DEPEND"."CCONAD" as cconad, "tc_CCONAD_Nature_dependance"."L_CCONAD" AS l_cconad, "DSUDEP" as dsudep, "DCIMLC" as dcimlc, "GEAULC" as geaulc, "GEAULC" as geaulc, "GELELC" as gelelc, "GCHCLC" as gchclc, "DNBBAI" as dnbbai, "DNBDOU" as dnbdou, "DNBLAV" as dnblav, "DNBWC" as dnbwc, "DMATGM" as dmatgm, "DMATTO" as dmatto, "DETENT" as detent FROM majic."BATI_A60_DESCR_DEPEND" INNER JOIN majic."tc_CCONAD_Nature_dependance" ON "BATI_A60_DESCR_DEPEND"."CCONAD"="tc_CCONAD_Nature_dependance"."CCONAD" WHERE "ID_DEP"=\'$sIdDep\''; +$aSql['pgsql']['prof_descr'] = 'SELECT "DNUDES" as dnudes, "DNUPEV" as dnupev, "INVAR" as invar, "VSURZT" as vsurzt FROM majic."BATI_A50_DESCR_PROF" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['pgsql']['pev'] = 'SELECT "BATI_A21_DESCR_PEV"."ID_PEV" as id_pev, "CCOSTB" as ccostb, "CCOAFF" as ccoaff, "DCAPEC" as dcapec, "DCSGLC" as dcsglc, "BIPEVLA1" as bipevla1, "GNEXPL" as gnexpl, "DVLPERA" as dvlpera, "BATI_A21_DESCR_PEV"."DNUPEV" as dnupev, "BATI_A21_DESCR_PEV"."DVLPER" as dvlper, "BATI_A21_DESCR_PEV"."DNUREF" as dnuref FROM majic."BATI_A21_DESCR_PEV" LEFT JOIN majic."BATI_A36_TAXATION_PEV" ON "BATI_A21_DESCR_PEV"."ID_PEV"="BATI_A36_TAXATION_PEV"."ID_PEV" WHERE "BATI_A21_DESCR_PEV"."ID_PEV"=\'$sIdPev\''; +$aSql['pgsql']['parcelle']='SELECT "ID_PAR" as id_par, "JDATAT" as jdatat,"CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CCONVO" as cconvo, "DVOILIB" as dvoilib,"TYPEVOIE" as typevoie,"CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf, "DCNTPA" as dcntpa, "DNUPRO" as dnupro , "GPARBAT" as gparbat FROM majic."NON_BATI_A10_DESCR_PARCELLE" LEFT JOIN majic."FANTOIR_VOIE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_RIVOLI"="FANTOIR_VOIE"."ID_RIVOLI" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['pgsql']['suf']='SELECT "DNUPRO" as dnupro,"NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"ID_SUF" as id_suf,"GNEXPS" as gnexps,"CCOSTN" as ccostn,"CCOSUB" as ccosub,"NON_BATI_A21_DESCR_SUF"."DSGRPF" as dsgrpf,"L_DSGRPF" as l_dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf,"DRCSUBA" as drcsuba, "DRCSUB" as drcsub FROM majic."NON_BATI_A21_DESCR_SUF" LEFT JOIN majic."tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['pgsql']['suf_bnd']='SELECT DISTINCT "ID_SUF" as id_suf,"DNUPRO" as dnupro,"NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"GNEXPS" as gnexps,"CCOSTN" as ccostn,"CCOSUB" as ccosub,"NON_BATI_A21_DESCR_SUF"."DSGRPF" as dsgrpf,"L_DSGRPF" as l_dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf,"DRCSUBA" as drcsuba, "DRCSUB" as drcsub, "NON_BATI_A21_DESCR_SUF"."DNUPDL" AS dnupdl, "NON_BATI_A21_DESCR_SUF"."DNULOT" AS dnulot, "DNUMQL" AS dnumql, "DDENQL" AS ddenql FROM (majic."NON_BATI_A21_DESCR_SUF" LEFT JOIN majic."tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF") LEFT JOIN majic."LOT_A30_DESCR_LOT" ON "LOT_A30_DESCR_LOT"."KLOT"="NON_BATI_A21_DESCR_SUF"."KLOT_" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['pgsql']['suf_dnupro']='SELECT "NON_BATI_A21_DESCR_SUF"."DNUPRO" as dnupro FROM majic."NON_BATI_A10_DESCR_PARCELLE" RIGHT JOIN majic."NON_BATI_A21_DESCR_SUF" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['pgsql']['compte_communal']='SELECT "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "PROPRIETAIRE_COURANT"."CCOCOM" as ccocom, "LIBCOM" as libcom, "DNUPRO" as dnupro, "ID_DNUPRO" as id_dnupro FROM majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['pgsql']['bati_parcelle']='SELECT "ID_PAR" as id_par, "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "PROPRIETAIRE_COURANT"."CCOCOM" as ccocom, "LIBCOM" as libcom, "PROPRIETAIRE_COURANT"."DNUPRO" as dnupro, "PROPRIETAIRE_COURANT"."ID_DNUPRO" as id_dnupro, "NON_BATI_A10_DESCR_PARCELLE"."DNVOIRI" as dnvoiri, "NON_BATI_A10_DESCR_PARCELLE"."DINDIC" as dindic, "CCONVO" as cconvo, "DVOILIB" as dvoilib, "DCNTPA" AS dcntpa FROM majic."NON_BATI_A10_DESCR_PARCELLE" INNER JOIN majic."PROPRIETAIRE_COURANT" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_DNUPRO"="PROPRIETAIRE_COURANT"."ID_DNUPRO" LEFT JOIN majic."FANTOIR_COMMUNE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" WHERE "ID_PAR"=\'sIdPar\''; +$aSql['pgsql']['exone_pev']='SELECT "ID_EX" as id_ex, "CCOLLOC" as ccolloc, "GNEXTL" as gnextl, "JANIMP" as janimp, "JANDEB" as jandeb, "RCEXBA2" as rcexba2, "PEXB" as pexb FROM majic."BATI_A30_EXONE_PEV" WHERE "ID_EX"=\'$sIdEx\''; +$aSql['pgsql']['exon_suf']='SELECT "ID_SUF" as id_suf, "RNUEXN" as rnuexn, "CCOLLOC" as ccolloc, "GNEXTS" as gnexts, "JFINEX" as jfinex, "PEXN" as pexn,"RCEXNBA" as rcexnba FROM majic."NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\' and "RNUEXN"=\'$sRnuexn\''; +$aSql['pgsql']['lot_local']='SELECT "ID_BAT" as id_bat, "KLOT" as klot, "DNUPDL" as dnupdl, "DNULOT" as dnulot, "DNUMQL" as dnumql, "DDENQL" as ddenql FROM majic."LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' and "KLOT"=\'$sKlot\''; +$aSql['pgsql']['get_id_pev']='SELECT "ID_PEV" as id_pev FROM majic."BATI_A21_DESCR_PEV" WHERE "ID_BAT"=\'$sIdBat\' ORDER BY "ID_PEV"'; +$aSql['pgsql']['get_id_ex_pev']='SELECT "ID_EX" as id_ex FROM majic."BATI_A30_EXONE_PEV" WHERE "ID_PEV"=\'$sIdPev\' ORDER BY "ID_EX"'; +$aSql['pgsql']['get_id_descr_hab']='SELECT "DNUDES" as dnudes, "ID_PEV" as id_pev FROM majic."BATI_A40_DESCR_HABIT" WHERE "ID_PEV"=\'$sIdPev\' ORDER BY "DNUDES"'; +$aSql['pgsql']['get_id_descr_depend']='SELECT "ID_DEP" as id_dep FROM majic."BATI_A60_DESCR_DEPEND" WHERE "ID_PEV"=\'$sIdPev\' ORDER BY "ID_DEP"'; +$aSql['pgsql']['get_klot']='SELECT "KLOT" as klot FROM majic."LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' ORDER BY "KLOT"'; +$aSql['pgsql']['get_id_suf']='SELECT "ID_SUF" as id_suf FROM majic."NON_BATI_A10_DESCR_PARCELLE" RIGHT JOIN majic."NON_BATI_A21_DESCR_SUF" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE ("NON_BATI_A10_DESCR_PARCELLE"."DNUPRO"=\'sDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\') AND "NON_BATI_A21_DESCR_SUF"."ID_PAR"=\'sIdPar\' AND ("NON_BATI_A10_DESCR_PARCELLE"."ID_DNUPRO"=\'sIdDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\')'; +$aSql['pgsql']['get_rnuexn']='SELECT DISTINCT "RNUEXN" as rnuexn FROM majic."NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\' ORDER BY "RNUEXN"'; +$aSql['pgsql']['get_id_pro']='SELECT DISTINCT "ID_PRO" as id_pro FROM majic."PROPRIETAIRE_COURANT" WHERE "ID_DNUPRO"=\'$sIdDnupro\' ORDER BY "ID_PRO"'; +$aSql['pgsql']['get_id_bat']='SELECT "ID_BAT" as id_bat FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\' ORDER BY "ID_BAT"'; +$aSql['pgsql']['get_id_par']='SELECT DISTINCT "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR" as id_par FROM majic."NON_BATI_A10_DESCR_PARCELLE" LEFT JOIN majic."NON_BATI_A21_DESCR_SUF" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE ("NON_BATI_A10_DESCR_PARCELLE"."DNUPRO"=\'sDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\') AND "NON_BATI_A21_DESCR_SUF"."ID_COM"=\'sIdCom\' ORDER BY "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"'; +$aSql['pgsql']['get_id_par_bnd']='SELECT "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR" as "id_par" FROM majic."NON_BATI_A21_DESCR_SUF" INNER JOIN majic."NON_BATI_A10_DESCR_PARCELLE" ON "NON_BATI_A21_DESCR_SUF"."ID_PAR" = "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR" WHERE "NON_BATI_A21_DESCR_SUF"."DNUPRO" = \'sDnupro\' AND "NON_BATI_A10_DESCR_PARCELLE"."ID_DNUPRO" != \'sIdDnupro\' AND "NON_BATI_A10_DESCR_PARCELLE"."ID_COM"=\'sIdCom\''; +$aSql['pgsql']['get_par_id_bat']='SELECT "ID_BAT" as id_bat FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_PAR"=\'sIdPar\' ORDER BY "ID_BAT"'; +$aSql['pgsql']['annee_reference']='SELECT "ANNEE" FROM majic."ANNEE_REFERENCE"'; +$aSql['pgsql']['get_id_dnupro']='SELECT "ID_DNUPRO" as iddnupro, "DNUPRO" as dnupro FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'idparpro\''; +$aSql['pgsql']['compte_communal_parcelle']='SELECT "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "LIBDEP" as libdep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "PROPRIETAIRE_COURANT"."CCOCOM" as ccocom, "LIBCOM" as libcom, "PROPRIETAIRE_COURANT". "DNUPRO" as dnupro,"PROPRIETAIRE_COURANT"."ID_DNUPRO" as id_dnupro, "ID_PAR" as id_par FROM majic."NON_BATI_A10_DESCR_PARCELLE", majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" LEFT JOIN majic."FANTOIR_DIRECTION" ON "FANTOIR_COMMUNE"."CCODEP"= "FANTOIR_DIRECTION"."CCODEP" WHERE "PROPRIETAIRE_COURANT"."ID_DNUPRO"=\'$sIdDnupro\' and "ID_PAR"=\'$sIdPar\''; +$aSql['pgsql']['get_id_bat_parcelle']='SELECT "ID_BAT" as id_bat FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\' and "ID_PAR"=\'$sIdPar\' ORDER BY "ID_BAT"'; +/*$aSql['pgsql']['emprise']['bati']='SELECT "ID_PAR" as id_par, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CCONVO" as cconvo, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf, "DCNTPA" as dcntpa, "DNUPRO" as dnupro FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['pgsql']['emprise']['pos']='SELECT "ID_PAR" as id_par, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CCONVO" as cconvo, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf, "DCNTPA" as dcntpa, "DNUPRO" as dnupro FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['pgsql']['emprise']['plu']='SELECT "ID_PAR" as id_par, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CCONVO" as cconvo, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf, "DCNTPA" as dcntpa, "DNUPRO" as dnupro FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'$sIdPar\''; +*/ + + + + + + + + + +$aSql['oci']['proprietaire']= 'SELECT "ID_DNUPRO" as "id_dnupro", "DNUPRO" as "dnupro", "ID_PRO" as "id_pro", "L_CCODRO" as "l_ccodro", "L_CCODEM" as "l_ccodem", "DNUPER" as "dnuper", "DQUALP" as "dqualp", "DDENOM" as "ddenom", "DNOMLP" as "dnomlp", "DPRNLP" as "dprnlp", "EPXNEE" as "epxnee", "DNOMCP" as "dnomcp", "DPRNCP" as "dprncp", TO_CHAR("JDATNSS" , \'DD/MM/YYYY\') as "jdatnss", "DLDNSS" as "dldnss", "DLIGN3" as "dlign3", "DLIGN4" as "dlign4", "DLIGN5" as "dlign5", "DLIGN6" as "dlign6", "GTOPER" as "gtoper" FROM majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."tc_CCODRO_code_droit" ON "PROPRIETAIRE_COURANT"."CCODRO"="tc_CCODRO_code_droit"."CCODRO" LEFT JOIN majic."tc_CCODEM_Nature_demembrement" ON "PROPRIETAIRE_COURANT"."CCODEM"="tc_CCODEM_Nature_demembrement"."CCODEM" WHERE "ID_DNUPRO"=\'$sIdDnupro\' AND "ID_PRO"=\'$sIdPro\''; +$aSql['oci']['bati'] = 'SELECT "FANTOIR_COMMUNE"."LIBCOM" as "libcom", "BATI_A00_IDENT_LOCAL"."DNBNIV" as "dnbniv", TO_CHAR("BATI_A00_IDENT_LOCAL"."JDATAT" , \'DD/MM/YYYY\') as "jdatat", "BATI_A00_IDENT_LOCAL"."JANNAT" as "jannat","BATI_A00_IDENT_LOCAL"."DNATLC" as "dnatlc", "BATI_A00_IDENT_LOCAL"."ID_DNUPRO" as "b_iddnupro", "BATI_A00_IDENT_LOCAL"."DNUPRO" as "b_dnupro", "BATI_A00_IDENT_LOCAL"."ID_BAT" as "id_bat", "BATI_A00_IDENT_LOCAL"."DTELOC" as "dteloc", "tc_DTELOC_Type_local"."L_DTELOC" as "dteloc", "BATI_A00_IDENT_LOCAL"."DVLTRT" as "dvltrt", "CCOSEC" as "ccosec", "DNUPLA" as "dnupla", "CCOPLC" as "ccoplc", "DNVOIRI" as "dnvoiri", "DINDIC" as "dindic", "DVOILIB" as "dvoilib", "CCORIV" as "ccoriv", "DNUBAT" as "dnubat", "DESC" as "desc", "DNIV" as "dniv", "DPOR" as "dpor", "BATI_A00_IDENT_LOCAL"."INVAR" as "invar", "CCOEVA" as "ccoeva", "tc_CCONLC_Nature_local"."CCONLC" as "cconlc","DVLPERA" as "dvlpera", "GTAUOM" as "gtauom", "CCONAD" as "cconad", "LOT_LOCAL"."ID_BAT" as "Local_id_bat","LOT_LOCAL"."DNUMQL" as "dnumql","LOT_LOCAL"."DDENQL" as "ddenql", "L_CCONLC" AS "lib_cconlc" FROM majic."BATI_A00_IDENT_LOCAL" LEFT JOIN majic."BATI_A60_DESCR_DEPEND" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A60_DESCR_DEPEND"."ID_BAT" LEFT JOIN majic."BATI_A21_DESCR_PEV" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A21_DESCR_PEV"."ID_BAT" LEFT JOIN majic."tc_DTELOC_Type_local" ON "BATI_A00_IDENT_LOCAL"."DTELOC"="tc_DTELOC_Type_local"."DTELOC" left join majic."LOT_LOCAL" on "BATI_A00_IDENT_LOCAL"."ID_BAT" ="LOT_LOCAL"."ID_BAT" left join majic."FANTOIR_COMMUNE" on "BATI_A00_IDENT_LOCAL"."ID_COM" ="FANTOIR_COMMUNE"."ID_COM" LEFT JOIN majic."tc_CCONLC_Nature_local" ON "BATI_A00_IDENT_LOCAL"."CCONLC"="tc_CCONLC_Nature_local"."CCONLC" WHERE "BATI_A00_IDENT_LOCAL"."ID_BAT"=\'$sIdBat\' ORDER BY "CCOSEC","DNUPLA","BATI_A00_IDENT_LOCAL"."INVAR"'; +$aSql['oci']['habit_descr'] = 'SELECT "DNUPEV" as "dnupev", "INVAR" as "invar", "CCONAD1" as "cconad1", "CCONAD2" as "cconad2", "CCONAD3" as "cconad3", "CCONAD4" as "cconad4","DSUEIC1" as "dsueic1", "DSUEIC2" as "dsueic2", "DSUEIC3" as "dsueic3", "DSUEIC4" as "dsueic4", "GEAULC" as "geaulc", "GELELC" as "gelelc", "GESCLC" as "gesclc", "GGAZLC" as "ggazlc", "GASCLC" as "gasclc", "GCHCLC" as "gchclc", "GVORLC" as "gvorlc", "GTEGLC" as "gteglc", "DNBBAI" as "dnbbai", "DNBDOU" as "dnbdou", "DNBLAV" as "dnblav", "DNBWC" as "dnbwc", "DNBPPR" as "dnbppr", "DNBSAM" as "dnbsam", "DNBCHA" as "dnbcha", "DNBCU8" as "dnbcu8", "DNBCU9" as "dnbcu9", "DNBSEA" as "dnbsea", "DNBANN" as "dnbann", "DNBPDC" as "dnbpdc", "DSUPDC" as "dsupdc", "tc_DMATGM_materiaux_gros_murs"."DMATGM" as "dmatgm", "tc_DMATTO_materiaux_toitures"."DMATTO" as "dmatto", "JANNAT" as "jannat", "BATI_A40_DESCR_HABIT"."DETENT" as "detent", "L_DETENT" as "l_detent", "DNBNIV" as "dnbniv", "tc_DMATGM_materiaux_gros_murs"."L_DMATGM" as "lib_dmatgm", "tc_DMATTO_materiaux_toitures"."L_DMATTO" as "lib_dmatto" FROM majic."BATI_A40_DESCR_HABIT" LEFT JOIN majic."tc_DETENT_Etat_entretien" ON "BATI_A40_DESCR_HABIT"."DETENT"="tc_DETENT_Etat_entretien"."DETENT" LEFT JOIN majic."tc_DMATGM_materiaux_gros_murs" ON "BATI_A40_DESCR_HABIT"."DMATGM"="tc_DMATGM_materiaux_gros_murs"."DMATGM" LEFT JOIN majic."tc_DMATTO_materiaux_toitures" ON "BATI_A40_DESCR_HABIT"."DMATTO"="tc_DMATTO_materiaux_toitures"."DMATTO" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['oci']['depend_descr'] = 'SELECT "DNUDES" as "dnudes", "DNUPEV" as "dnupev", "INVAR" as "invar", "CCONAD" as "cconad", "DSUDEP" as "dsudep", "DCIMLC" as "dcimlc", "GEAULC" as "geaulc", "GEAULC" as "geaulc", "GELELC" as "gelelc", "GCHCLC" as "gchclc", "DNBBAI" as "dnbbai", "DNBDOU" as "dnbdou", "DNBLAV" as "dnblav", "DNBWC" as "dnbwc", "tc_DMATGM_materiaux_gros_murs"."DMATGM" as "dmatgm", "tc_DMATTO_materiaux_toitures"."DMATTO" as "dmatto", "BATI_A60_DESCR_DEPEND"."DETENT" as "detent", "L_DETENT" as "l_detent", "tc_DMATGM_materiaux_gros_murs"."L_DMATGM" as "lib_dmatgm", "tc_DMATTO_materiaux_toitures"."L_DMATTO" as "lib_dmatto" FROM majic."BATI_A60_DESCR_DEPEND" LEFT JOIN majic."tc_DETENT_Etat_entretien" ON "BATI_A60_DESCR_DEPEND"."DETENT"="tc_DETENT_Etat_entretien"."DETENT" LEFT JOIN majic."tc_DMATGM_materiaux_gros_murs" ON "BATI_A60_DESCR_DEPEND"."DMATGM"="tc_DMATGM_materiaux_gros_murs"."DMATGM" LEFT JOIN majic."tc_DMATTO_materiaux_toitures" ON "BATI_A60_DESCR_DEPEND"."DMATTO"="tc_DMATTO_materiaux_toitures"."DMATTO" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['oci']['prof_descr'] = 'SELECT "DNUDES" as "dnudes", "DNUPEV" as "dnupev", "INVAR" as "invar", "VSURZT" as "vsurzt" FROM majic."BATI_A50_DESCR_PROF" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['oci']['pev'] = 'SELECT "BATI_A21_DESCR_PEV"."ID_PEV" as "id_pev", "CCOSTB" as "ccostb", "BATI_A21_DESCR_PEV"."CCOAFF" as "ccoaff", "L_CCOAFF" as "l_ccoaff", "DCAPEC" as "dcapec", "DCSGLC" as "dcsglc", "BIPEVLA1" as "bipevla1", "BATI_A21_DESCR_PEV"."GNEXPL" as "gnexpl", "L_GNEXPL" as "l_gnexpl", "DVLPERA" as "dvlpera", "BATI_A21_DESCR_PEV"."DNUPEV" as "dnupev", "BATI_A21_DESCR_PEV"."DVLPER" as "dvlper", "BATI_A21_DESCR_PEV"."DNUREF" as "dnuref" FROM majic."BATI_A21_DESCR_PEV" LEFT JOIN majic."tc_CCOAFF_Affectation_pev" ON "BATI_A21_DESCR_PEV"."CCOAFF"="tc_CCOAFF_Affectation_pev"."CCOAFF" LEFT JOIN majic."tc_GNEXPL_Exone_permanente" ON "BATI_A21_DESCR_PEV"."GNEXPL"="tc_GNEXPL_Exone_permanente"."GNEXPL" LEFT JOIN majic."BATI_A36_TAXATION_PEV" ON "BATI_A21_DESCR_PEV"."ID_PEV"="BATI_A36_TAXATION_PEV"."ID_PEV" WHERE "BATI_A21_DESCR_PEV"."ID_PEV"=\'$sIdPev\''; +$aSql['oci']['parcelle']='SELECT "ID_PAR" as "id_par", "JDATAT" as "jdatat","CCOSEC" as "ccosec", "DNUPLA" as "dnupla", "DNVOIRI" as "dnvoiri", "DINDIC" as "dindic", "CODEVOIE" as "codevoie", "LIBVOIE" as "libvoie","TYPEVOIE" as "typevoie","CCORIV" as "ccoriv", "DPARPI" as "dparpi", "GPARNF" as "gparnf", Ltrim(TO_CHAR(DCNTPA, \'000000000\')) as "dcntpa", "DNUPRO" as "dnupro" , "GPARBAT" as "gparbat", "GURBPA" as "gurbpa" FROM majic."NON_BATI_A10_DESCR_PARCELLE" LEFT JOIN majic."FANTOIR_VOIE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_RIVOLI"="FANTOIR_VOIE"."ID_RIVOLI" WHERE "ID_PAR"=\'$sIdPar\' ORDER BY "CCOSEC","DNUPLA"'; +$aSql['oci']['suf']='SELECT "DNUPRO" as "dnupro","NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"ID_SUF" as "id_suf","GNEXPS" as "gnexps","CCOSTN" as "ccostn","CCOSUB" as "ccosub","NON_BATI_A21_DESCR_SUF"."DSGRPF" as "dsgrpf","L_DSGRPF" as "l_dsgrpf", "DCLSSF" as "dclssf", "CNATSP" as "cnatsp", Ltrim(TO_CHAR(DCNTSF, \'000000000\')) as "dcntsf","DRCSUBA" as "drcsuba", "DRCSUB" as "drcsub","NON_BATI_A21_DESCR_SUF"."CGRNUM" as "cgrnum", "L_CGRNUM" as "l_cgrnum" FROM majic."NON_BATI_A21_DESCR_SUF" LEFT JOIN majic."tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF" LEFT JOIN majic."tc_CGRNUM_Groupe_numerique" ON "NON_BATI_A21_DESCR_SUF"."CGRNUM" = "tc_CGRNUM_Groupe_numerique"."CGRNUM" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['oci']['suf_bnd']='SELECT DISTINCT "ID_SUF" as "id_suf","NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"DNUPRO" as "dnupro","GNEXPS" as "gnexps","CCOSTN" as "ccostn","CCOSUB" as "ccosub","NON_BATI_A21_DESCR_SUF"."DSGRPF" as "dsgrpf","L_DSGRPF" as "l_dsgrpf", "DCLSSF" as "dclssf", "CNATSP" as "cnatsp", Ltrim(TO_CHAR(DCNTSF, \'000000000\')) as "dcntsf","DRCSUBA" as "drcsuba", "DRCSUB" as "drcsub", "NON_BATI_A21_DESCR_SUF"."DNUPDL" AS "dnupdl", "NON_BATI_A21_DESCR_SUF"."DNULOT" AS "dnulot", "DNUMQL" AS "dnumql", "DDENQL" AS "ddenql","NON_BATI_A21_DESCR_SUF"."CGRNUM" as "cgrnum", "L_CGRNUM" as "l_cgrnum" FROM (majic."NON_BATI_A21_DESCR_SUF" LEFT JOIN majic."tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF") LEFT JOIN majic."tc_CGRNUM_Groupe_numerique" ON "NON_BATI_A21_DESCR_SUF"."CGRNUM" = "tc_CGRNUM_Groupe_numerique"."CGRNUM" LEFT JOIN majic."LOT_A30_DESCR_LOT" ON "LOT_A30_DESCR_LOT"."KLOT"="NON_BATI_A21_DESCR_SUF"."KLOT_" WHERE "ID_SUF"=\'$sIdSuf\' AND "DNUPRO" = \'sIdDnupro\''; +$aSql['oci']['suf_bnd_all']='SELECT DISTINCT "ID_SUF" as id_suf,"DNUPRO" as dnupro,"NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"GNEXPS" as gnexps,"CCOSTN" as ccostn,"CCOSUB" as ccosub, "NON_BATI_A21_DESCR_SUF"."DSGRPF" as dsgrpf,"L_DSGRPF" as l_dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf,"DRCSUBA" as drcsuba, "DRCSUB" as drcsub, "DNUPDL" AS dnupdl, "DNULOT" AS dnulot, "DNUMQL" AS dnumql, "DDENQL" AS ddenql, "NON_BATI_A21_DESCR_SUF"."CGRNUM" as "cgrnum", "L_CGRNUM" as "l_cgrnum" FROM "NON_BATI_A21_DESCR_SUF" LEFT JOIN "tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF" LEFT JOIN "tc_CGRNUM_Groupe_numerique" ON "NON_BATI_A21_DESCR_SUF"."CGRNUM" = "tc_CGRNUM_Groupe_numerique"."CGRNUM" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['oci']['suf_dnupro']='SELECT "NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "dnupro" FROM majic."NON_BATI_A10_DESCR_PARCELLE" RIGHT JOIN majic."NON_BATI_A21_DESCR_SUF" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['oci']['compte_communal']='SELECT "PROPRIETAIRE_COURANT"."CCODEP" as "ccodep", "PROPRIETAIRE_COURANT"."CCODIR" as "ccodir", "PROPRIETAIRE_COURANT"."CCOCOM" as "ccocom", "LIBCOM" as "libcom", "DNUPRO" as "dnupro", "ID_DNUPRO" as "id_dnupro" FROM majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['oci']['exone_pev']='SELECT "ID_EX" as "id_ex", "CCOLLOC" as "ccolloc", "GNEXTL" as "gnextl", "JANIMP" as "janimp", "JANDEB" as "jandeb", "RCEXBA2" as "rcexba2", "PEXB" as "pexb" FROM majic."BATI_A30_EXONE_PEV" WHERE "ID_EX"=\'$sIdEx\''; +$aSql['oci']['exon_suf']='SELECT "ID_SUF" as "id_suf", "RNUEXN" as "rnuexn", "CCOLLOC" as "ccolloc", "GNEXTS" as "gnexts", "JFINEX" as "jfinex", "PEXN" as "pexn","RCEXNBA" as "rcexnba" FROM majic."NON_BATI_A30_EXON_SUF" WHERE "ID_PAR"=(substr(\'$sIdSuf\',0,15)) AND CCOSUB=(substr(\'$sIdSuf\',16)) and "RNUEXN"=\'$sRnuexn\''; +$aSql['oci']['lot_local']='SELECT "ID_BAT" as "id_bat", "KLOT" as "klot", "DNUPDL" as "dnupdl", "DNULOT" as "dnulot", "DNUMQL" as "dnumql", "DDENQL" as "ddenql" FROM majic."LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' and "KLOT"=\'$sKlot\''; +$aSql['oci']['get_id_pev']='SELECT "ID_PEV" as "id_pev" FROM majic."BATI_A21_DESCR_PEV" WHERE "ID_BAT"=\'$sIdBat\' ORDER BY "ID_PEV"'; +$aSql['oci']['get_id_ex_pev']='SELECT "ID_EX" as "id_ex" FROM majic."BATI_A30_EXONE_PEV" WHERE "ID_PEV"=\'$sIdPev\' ORDER BY "ID_EX"'; +$aSql['oci']['get_klot']='SELECT "KLOT" as "klot" FROM majic."LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' ORDER BY "KLOT"'; +$aSql['oci']['get_id_suf']='SELECT "ID_SUF" as "id_suf" FROM majic."WS_NON_BATI_A10_DESCR_PARCELLE" RIGHT JOIN majic."NON_BATI_A21_DESCR_SUF" ON "WS_NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE ("WS_NON_BATI_A10_DESCR_PARCELLE"."DNUPRO"=\'sIdDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\') AND "NON_BATI_A21_DESCR_SUF"."ID_PAR"=\'sIdPar\' AND ("NON_BATI_A10_DESCR_PARCELLE"."ID_DNUPRO"=\'sIdDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\')'; +$aSql['oci']['get_rnuexn']='SELECT DISTINCT "RNUEXN" as "rnuexn" FROM majic."NON_BATI_A30_EXON_SUF" WHERE "ID_PAR"=(substr(\'$sIdSuf\',0,15)) AND CCOSUB=(substr(\'$sIdSuf\',16)) ORDER BY "RNUEXN"'; +$aSql['oci']['get_id_pro']='SELECT DISTINCT "ID_PRO" as "id_pro", "DNUPER" FROM majic."PROPRIETAIRE_COURANT" WHERE "ID_DNUPRO"=\'$sIdDnupro\' ORDER BY "DNUPER"'; +$aSql['oci']['get_id_bat']='SELECT "ID_BAT" as "id_bat" FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\' ORDER BY "ID_BAT"'; +$aSql['oci']['get_id_par']='SELECT DISTINCT "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR" as "id_par" FROM majic."NON_BATI_A10_DESCR_PARCELLE" LEFT JOIN majic."NON_BATI_A21_DESCR_SUF" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE ("NON_BATI_A10_DESCR_PARCELLE"."DNUPRO"=\'sDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\') AND "NON_BATI_A21_DESCR_SUF"."ID_COM"=\'sIdCom\' ORDER BY "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"'; +$aSql['oci']['get_id_par_bnd']='SELECT NON_BATI_A10_DESCR_PARCELLE.ID_PAR as "id_par" FROM NON_BATI_A21_DESCR_SUF INNER JOIN NON_BATI_A10_DESCR_PARCELLE ON NON_BATI_A21_DESCR_SUF.ID_PAR = NON_BATI_A10_DESCR_PARCELLE.ID_PAR where NON_BATI_A21_DESCR_SUF.DNUPRO = \'sDnupro\' AND NON_BATI_A10_DESCR_PARCELLE.ID_DNUPRO != \'sIdDnupro\' AND NON_BATI_A10_DESCR_PARCELLE."ID_COM"=\'sIdCom\''; +$aSql['oci']['annee_reference']='SELECT "ANNEE" FROM majic."ANNEE_REFERENCE"'; +$aSql['oci']['get_id_dnupro']='SELECT "ID_DNUPRO" as "iddnupro", "DNUPRO" as "dnupro" FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'idparpro\''; +$aSql['oci']['compte_communal_parcelle']='SELECT "FANTOIR_COMMUNE"."CODE_INSEE" as "codeinsee","PROPRIETAIRE_COURANT"."CCODEP" as "ccodep", "LIBDEP" as "libdep", "PROPRIETAIRE_COURANT"."CCODIR" as "ccodir", "FANTOIR_COMMUNE"."CCOCOM" as "ccocom", "LIBCOM" as "libcom", "PROPRIETAIRE_COURANT"."DNUPRO" as "dnupro","PROPRIETAIRE_COURANT"."ID_DNUPRO" as "id_dnupro", "ID_PAR" as "id_par" FROM majic."NON_BATI_A10_DESCR_PARCELLE", majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" LEFT JOIN majic."FANTOIR_DIRECTION" ON "FANTOIR_COMMUNE"."CCODEP"= "FANTOIR_DIRECTION"."CCODEP" WHERE "PROPRIETAIRE_COURANT"."ID_DNUPRO"=\'$sIdDnupro\' and "ID_PAR"=\'$sIdPar\''; +$aSql['oci']['get_id_bat_parcelle']='SELECT "ID_BAT" as "id_bat" FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\' and "ID_PAR"=\'$sIdPar\' ORDER BY "ID_BAT"'; +$aSql['oci']['get_par_id_bat']='SELECT "ID_BAT" as "id_bat" FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_PAR"=\'sIdPar\' ORDER BY "ID_BAT"'; +$aSql['oci']['pos_plu']='SELECT p.GGCODEIDENT, cos, ces, type, hauteur, libelle, SDO_GEOM.SDO_AREA (SDO_GEOM.SDO_INTERSECTION(z.GEOM, p.GEOM, 0.005),0.005) surface FROM exp_pos.zpos_simpl z RIGHT join cadastre.parcelle_cadastrale_mixee p ON SDO_RELATE (z.geom,p.geom, \'mask=CONTAINS+INSIDE+OVERLAPBDYINTERSECT+COVERS+COVEREDBY+EQUAL querytype=WINDOW\') = \'TRUE\' AND z.codcom =p.codcom WHERE z.OBJECTID = \'$sObjectId\' AND p.PAR_ID = \'$sIdPar\' AND p.codcom = \'$sCodCom\' and SDO_GEOM.SDO_AREA (SDO_GEOM.SDO_INTERSECTION(z.GEOM, p.GEOM, 0.005),0.005) >2'; +$aSql['oci']['get_id_pos_plu']='SELECT z.OBJECTID FROM exp_pos.zpos_simpl z, cadastre.parcelle_cadastrale_mixee p WHERE SDO_RELATE (z.geom,p.geom, \'mask=CONTAINS+INSIDE+OVERLAPBDYINTERSECT+COVERS+COVEREDBY+EQUAL querytype=WINDOW`\') = \'TRUE\' AND z.codcom=p.codcom AND p.PAR_ID = \'$sIdPar\' AND p.codcom = \'$sCodCom\''; +$aSql['oci']['get_codcom']='SELECT NON_BATI_A10_DESCR_PARCELLE.CODE_INSEE FROM MAJIC.NON_BATI_A10_DESCR_PARCELLE WHERE (NON_BATI_A10_DESCR_PARCELLE.ID_PAR =\'$sIdPar\')'; + + + + + + + + + +$aSql['sqlite']['proprietaire']= 'SELECT "ID_DNUPRO" as id_dnupro, "DNUPRO" as "dnupro", "ID_PRO" as id_pro, "L_CCODRO" as l_ccodro, "L_CCODEM" as l_ccodem, "DNUPER" as dnuper, "DQUALP" as dqualp, "DDENOM" as ddenom, "DNOMLP" as dnomlp, "DPRNLP" as dprnlp, "EPXNEE" as epxnee, "DNOMCP" as dnomcp, "DPRNCP" as dprncp, "JDATNSS" as jdatnss, "DLDNSS" as dldnss, "DLIGN3" as dlign3, "DLIGN4" as dlign4, "DLIGN5" as dlign5, "DLIGN6" as dlign6, "GTOPER" as gtoper FROM "PROPRIETAIRE_COURANT" LEFT JOIN "tc_CCODRO_code_droit" ON "PROPRIETAIRE_COURANT"."CCODRO"="tc_CCODRO_code_droit"."CCODRO" LEFT JOIN "tc_CCODEM_Nature_demembrement" ON "PROPRIETAIRE_COURANT"."CCODEM"="tc_CCODEM_Nature_demembrement"."CCODEM" WHERE "ID_DNUPRO"=\'$sIdDnupro\' AND "ID_PRO"=\'$sIdPro\''; +//modif pas faites sur autre database +$aSql['sqlite']['bati'] = 'SELECT "FANTOIR_COMMUNE"."LIBCOM" as libcom, "BATI_A00_IDENT_LOCAL"."DNBNIV" as dnbniv,"BATI_A00_IDENT_LOCAL"."JDATAT" as jdatat, "BATI_A00_IDENT_LOCAL"."JANNAT" as jannat,"BATI_A00_IDENT_LOCAL"."DNATLC" as dnatlc, "BATI_A00_IDENT_LOCAL"."ID_DNUPRO" as b_iddnupro, "BATI_A00_IDENT_LOCAL"."DNUPRO" as b_dnupro, "BATI_A00_IDENT_LOCAL"."ID_BAT" as id_bat, "BATI_A00_IDENT_LOCAL"."DTELOC" as dteloc, "tc_DTELOC_Type_local"."L_DTELOC" as dteloc, "BATI_A00_IDENT_LOCAL"."DVLTRT" as dvltrt, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "CCOPLC" as ccoplc, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DNUBAT" as dnubat, "DESC" as desc, "DNIV" as dniv, "DPOR" as dpor, "BATI_A00_IDENT_LOCAL"."INVAR" as invar, "CCOEVA" as ccoeva, "tc_CCONLC_Nature_local"."CCONLC" as cconlc,"DVLPERA" as dvlpera, "GTAUOM" as gtauom, "CCONAD" as cconad, "LOT_LOCAL"."ID_BAT" as Local_id_bat,"LOT_LOCAL"."DNUMQL" as dnumql,"LOT_LOCAL"."DDENQL" as ddenql, "L_CCONLC" AS lib_cconlc FROM "BATI_A00_IDENT_LOCAL" LEFT JOIN "BATI_A60_DESCR_DEPEND" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A60_DESCR_DEPEND"."ID_BAT" LEFT JOIN "BATI_A21_DESCR_PEV" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A21_DESCR_PEV"."ID_BAT" LEFT JOIN "tc_DTELOC_Type_local" ON "BATI_A00_IDENT_LOCAL"."DTELOC"="tc_DTELOC_Type_local"."DTELOC" left join "LOT_LOCAL" on "BATI_A00_IDENT_LOCAL"."ID_BAT" ="LOT_LOCAL"."ID_BAT" left join "FANTOIR_COMMUNE" on "BATI_A00_IDENT_LOCAL"."CCOCOM" ="FANTOIR_COMMUNE"."CCOCOM" LEFT JOIN "tc_CCONLC_Nature_local" ON "BATI_A00_IDENT_LOCAL"."CCONLC"="tc_CCONLC_Nature_local"."CCONLC" WHERE "BATI_A00_IDENT_LOCAL"."ID_BAT"=\'$sIdBat\' ORDER BY "CCOSEC","DNUPLA","BATI_A00_IDENT_LOCAL"."INVAR"'; +$aSql['sqlite']['habit_descr'] = 'SELECT "DNUPEV" as dnupev, "INVAR" as invar, "CCONAD1" as cconad1, "CCONAD2" as cconad2, "CCONAD3" as cconad3, "CCONAD4" as cconad4,"DSUEIC1" as dsueic1, "DSUEIC2" as dsueic2, "DSUEIC3" as dsueic3, "DSUEIC4" as dsueic4, "GEAULC" as geaulc, "GELELC" as gelelc, "GESCLC" as gesclc, "GGAZLC" as ggazlc, "GASCLC" as gasclc, "GCHCLC" as gchclc, "GVORLC" as gvorlc, "GTEGLC" as gteglc, "DNBBAI" as dnbbai, "DNBDOU" as dnbdou, "DNBLAV" as dnblav, "DNBWC" as dnbwc, "DNBPPR" as dnbppr, "DNBSAM" as dnbsam, "DNBCHA" as dnbcha, "DNBCU8" as dnbcu8, "DNBCU9" as dnbcu9, "DNBSEA" as dnbsea, "DNBANN" as dnbann, "DNBPDC" as dnbpdc, "DSUPDC" as dsupdc, "tc_DMATGM_materiaux_gros_murs"."DMATGM" as "dmatgm", "tc_DMATTO_materiaux_toitures"."DMATTO" as "dmatto", "JANNAT" as jannat, "BATI_A40_DESCR_HABIT"."DETENT" as detent, "L_DETENT" as l_detent, "DNBNIV" as dnbniv, "tc_DMATGM_materiaux_gros_murs"."L_DMATGM" as "lib_dmatgm", "tc_DMATTO_materiaux_toitures"."L_DMATTO" FROM "BATI_A40_DESCR_HABIT" LEFT JOIN "tc_DETENT_Etat_entretien" ON "BATI_A40_DESCR_HABIT"."DETENT"="tc_DETENT_Etat_entretien"."DETENT" LEFT JOIN "tc_DMATGM_materiaux_gros_murs" ON "BATI_A40_DESCR_HABIT"."DMATGM"="tc_DMATGM_materiaux_gros_murs"."DMATGM" LEFT JOIN "tc_DMATTO_materiaux_toitures" ON "BATI_A40_DESCR_HABIT"."DMATTO"="tc_DMATTO_materiaux_toitures"."DMATTO" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['sqlite']['depend_descr'] = 'SELECT "DNUDES" as dnudes, "DNUPEV" as dnupev, "INVAR" as invar, "CCONAD" as cconad, "DSUDEP" as dsudep, "DCIMLC" as dcimlc, "GEAULC" as geaulc, "GEAULC" as geaulc, "GELELC" as gelelc, "GCHCLC" as gchclc, "DNBBAI" as dnbbai, "DNBDOU" as dnbdou, "DNBLAV" as dnblav, "DNBWC" as dnbwc, "tc_DMATGM_materiaux_gros_murs"."DMATGM" as "dmatgm", "tc_DMATTO_materiaux_toitures"."DMATTO" as "dmatto", "BATI_A60_DESCR_DEPEND"."DETENT" as detent, "L_DETENT" as l_detent, "tc_DMATGM_materiaux_gros_murs"."L_DMATGM" as "lib_dmatgm", "tc_DMATTO_materiaux_toitures"."L_DMATTO" as "lib_dmatto" FROM "BATI_A60_DESCR_DEPEND" LEFT JOIN "tc_DETENT_Etat_entretien" ON "BATI_A60_DESCR_DEPEND"."DETENT"="tc_DETENT_Etat_entretien"."DETENT" LEFT JOIN "tc_DMATGM_materiaux_gros_murs" ON "BATI_A60_DESCR_DEPEND"."DMATGM"="tc_DMATGM_materiaux_gros_murs"."DMATGM" LEFT JOIN "tc_DMATTO_materiaux_toitures" ON "BATI_A60_DESCR_DEPEND"."DMATTO"="tc_DMATTO_materiaux_toitures"."DMATTO" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['sqlite']['prof_descr'] = 'SELECT "DNUDES" as dnudes, "DNUPEV" as dnupev, "INVAR" as invar, "VSURZT" as vsurzt FROM "BATI_A50_DESCR_PROF" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['sqlite']['pev'] = 'SELECT "BATI_A21_DESCR_PEV"."ID_PEV" as id_pev, "CCOSTB" as ccostb, "BATI_A21_DESCR_PEV"."CCOAFF" as ccoaff, "L_CCOAFF" as "l_ccoaff", "DCAPEC" as dcapec, "DCSGLC" as dcsglc, "BIPEVLA1" as bipevla1, "BATI_A21_DESCR_PEV"."GNEXPL" as gnexpl, "L_GNEXPL" as "l_gnexpl", "DVLPERA" as dvlpera, "BATI_A21_DESCR_PEV"."DNUPEV" as dnupev, "BATI_A21_DESCR_PEV"."DVLPER" as dvlper, "BATI_A21_DESCR_PEV"."DNUREF" as dnuref FROM "BATI_A21_DESCR_PEV" LEFT JOIN "tc_CCOAFF_Affectation_pev" ON "BATI_A21_DESCR_PEV"."CCOAFF"="tc_CCOAFF_Affectation_pev"."CCOAFF" LEFT JOIN "tc_GNEXPL_Exone_permanente" ON "BATI_A21_DESCR_PEV"."GNEXPL"="tc_GNEXPL_Exone_permanente"."GNEXPL" LEFT JOIN "BATI_A36_TAXATION_PEV" ON "BATI_A21_DESCR_PEV"."ID_PEV"="BATI_A36_TAXATION_PEV"."ID_PEV" WHERE "BATI_A21_DESCR_PEV"."ID_PEV"=\'$sIdPev\''; +//fin modif +$aSql['sqlite']['parcelle']='SELECT "ID_PAR" as id_par, "JDATAT" as jdatat,"CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CODEVOIE" as codevoie, "LIBVOIE" as libvoie,"TYPEVOIE" as typevoie,"CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf, "DCNTPA" as dcntpa, "DNUPRO" as dnupro , "GPARBAT" as gparbat FROM "NON_BATI_A10_DESCR_PARCELLE" LEFT JOIN "FANTOIR_VOIE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_RIVOLI"="FANTOIR_VOIE"."ID_RIVOLI" WHERE "ID_PAR"=\'$sIdPar\' ORDER BY "CCOSEC","DNUPLA"'; +//modif +$aSql['sqlite']['suf']='SELECT DISTINCT "DNUPRO" as dnupro,"NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"ID_SUF" as id_suf,"GNEXPS" as gnexps,"CCOSTN" as ccostn,"CCOSUB" as ccosub,"NON_BATI_A21_DESCR_SUF"."DSGRPF" as dsgrpf,"L_DSGRPF" as l_dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf,"DRCSUBA" as drcsuba, "DRCSUB" as drcsub, "NON_BATI_A21_DESCR_SUF"."CGRNUM" as "cgrnum", "L_CGRNUM" as "l_cgrnum" FROM "NON_BATI_A21_DESCR_SUF" LEFT JOIN "tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF" LEFT JOIN "tc_CGRNUM_Groupe_numerique" ON "NON_BATI_A21_DESCR_SUF"."CGRNUM" = "tc_CGRNUM_Groupe_numerique"."CGRNUM" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['sqlite']['suf_bnd']='SELECT DISTINCT "ID_SUF" as id_suf,"DNUPRO" as dnupro,"NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"GNEXPS" as gnexps,"CCOSTN" as ccostn,"CCOSUB" as ccosub, "NON_BATI_A21_DESCR_SUF"."DSGRPF" as dsgrpf,"L_DSGRPF" as l_dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf,"DRCSUBA" as drcsuba, "DRCSUB" as drcsub, "DNUPDL" AS dnupdl, "DNULOT" AS dnulot, "DNUMQL" AS dnumql, "DDENQL" AS ddenql, "NON_BATI_A21_DESCR_SUF"."CGRNUM" as "cgrnum", "L_CGRNUM" as "l_cgrnum" FROM "NON_BATI_A21_DESCR_SUF" LEFT JOIN "tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF" LEFT JOIN "tc_CGRNUM_Groupe_numerique" ON "NON_BATI_A21_DESCR_SUF"."CGRNUM" = "tc_CGRNUM_Groupe_numerique"."CGRNUM" WHERE "ID_SUF"=\'$sIdSuf\' AND "DNUPRO" = \'sIdDnupro\''; +$aSql['sqlite']['suf_bnd_all']='SELECT DISTINCT "ID_SUF" as id_suf,"DNUPRO" as dnupro,"NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as "id_dnupro" ,"GNEXPS" as gnexps,"CCOSTN" as ccostn,"CCOSUB" as ccosub, "NON_BATI_A21_DESCR_SUF"."DSGRPF" as dsgrpf,"L_DSGRPF" as l_dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf,"DRCSUBA" as drcsuba, "DRCSUB" as drcsub, "DNUPDL" AS dnupdl, "DNULOT" AS dnulot, "DNUMQL" AS dnumql, "DDENQL" AS ddenql, "NON_BATI_A21_DESCR_SUF"."CGRNUM" as "cgrnum", "L_CGRNUM" as "l_cgrnum" FROM "NON_BATI_A21_DESCR_SUF" LEFT JOIN "tc_DSGRPF_SousGroupe_suf" ON "NON_BATI_A21_DESCR_SUF"."DSGRPF" = "tc_DSGRPF_SousGroupe_suf"."DSGRPF" LEFT JOIN "tc_CGRNUM_Groupe_numerique" ON "NON_BATI_A21_DESCR_SUF"."CGRNUM" = "tc_CGRNUM_Groupe_numerique"."CGRNUM" WHERE "ID_SUF"=\'$sIdSuf\''; +//fin modif +$aSql['sqlite']['compte_communal']='SELECT "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "PROPRIETAIRE_COURANT"."CCOCOM" as ccocom, "LIBCOM" as libcom, "DNUPRO" as dnupro, "ID_DNUPRO" as id_dnupro FROM "PROPRIETAIRE_COURANT" LEFT JOIN "FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['sqlite']['exone_pev']='SELECT "ID_EX" as id_ex, "CCOLLOC" as ccolloc, "GNEXTL" as gnextl, "JANIMP" as janimp, "JANDEB" as jandeb, "RCEXBA2" as rcexba2, "PEXB" as pexb FROM "BATI_A30_EXONE_PEV" WHERE "ID_EX"=\'$sIdEx\''; +$aSql['sqlite']['exon_suf']='SELECT "ID_SUF" as id_suf, "RNUEXN" as rnuexn, "CCOLLOC" as ccolloc, "GNEXTS" as gnexts, "JFINEX" as jfinex, "PEXN" as pexn,"RCEXNBA" as rcexnba FROM "NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\' and "RNUEXN"=\'$sRnuexn\''; +$aSql['sqlite']['lot_local']='SELECT "ID_BAT" as id_bat, "KLOT" as klot, "DNUPDL" as dnupdl, "DNULOT" as dnulot, "DNUMQL" as dnumql, "DDENQL" as ddenql FROM "LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' and "KLOT"=\'$sKlot\''; +$aSql['sqlite']['get_id_pev']='SELECT "ID_PEV" as id_pev FROM "BATI_A21_DESCR_PEV" WHERE "ID_BAT"=\'$sIdBat\' ORDER BY "ID_PEV"'; +$aSql['sqlite']['get_id_ex_pev']='SELECT "ID_EX" as id_ex FROM "BATI_A30_EXONE_PEV" WHERE "ID_PEV"=\'$sIdPev\' ORDER BY "ID_EX"'; +$aSql['sqlite']['get_klot']='SELECT "KLOT" as klot FROM "LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' ORDER BY "KLOT"'; +//modif +$aSql['sqlite']['get_id_suf']='SELECT DISTINCT "ID_SUF" as id_suf FROM "NON_BATI_A21_DESCR_SUF" LEFT JOIN "NON_BATI_A10_DESCR_PARCELLE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE "NON_BATI_A21_DESCR_SUF"."ID_PAR"=\'sIdPar\' AND ("NON_BATI_A10_DESCR_PARCELLE"."ID_DNUPRO"=\'sIdDnupro\' OR "NON_BATI_A21_DESCR_SUF"."DNUPRO"=\'sDnupro\')'; +$aSql['sqlite']['suf_dnupro']='SELECT "NON_BATI_A21_DESCR_SUF"."CCODEP" || "NON_BATI_A21_DESCR_SUF"."CCOCOM" || "NON_BATI_A21_DESCR_SUF"."DNUPRO" as dnupro FROM "NON_BATI_A21_DESCR_SUF" LEFT JOIN "NON_BATI_A10_DESCR_PARCELLE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"="NON_BATI_A21_DESCR_SUF"."ID_PAR" WHERE "ID_SUF"=\'$sIdSuf\''; +//fin modif +$aSql['sqlite']['get_rnuexn']='SELECT DISTINCT "RNUEXN" as rnuexn FROM "NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\' ORDER BY "RNUEXN"'; +$aSql['sqlite']['get_id_pro']='SELECT DISTINCT "ID_PRO" as id_pro FROM "PROPRIETAIRE_COURANT" WHERE "ID_DNUPRO"=\'$sIdDnupro\' ORDER BY "ID_PRO"'; +$aSql['sqlite']['get_id_bat']='SELECT "ID_BAT" as id_bat FROM "BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\' ORDER BY "ID_BAT"'; +$aSql['sqlite']['get_id_par']='SELECT "ID_PAR" as id_par FROM "NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_COM"=\'sIdCom\' AND "ID_DNUPRO"=\'sDnupro\' ORDER BY "NON_BATI_A10_DESCR_PARCELLE"."ID_PAR"'; +$aSql['sqlite']['get_id_par_bnd']='SELECT NON_BATI_A10_DESCR_PARCELLE.ID_PAR as "id_par" FROM NON_BATI_A21_DESCR_SUF INNER JOIN NON_BATI_A10_DESCR_PARCELLE ON NON_BATI_A21_DESCR_SUF.ID_PAR = NON_BATI_A10_DESCR_PARCELLE.ID_PAR where NON_BATI_A21_DESCR_SUF.DNUPRO = \'sDnupro\' AND NON_BATI_A10_DESCR_PARCELLE.ID_DNUPRO != \'sIdDnupro\' AND NON_BATI_A10_DESCR_PARCELLE."ID_COM"=\'sIdCom\''; +$aSql['sqlite']['annee_reference']='SELECT "ANNEE" FROM "ANNEE_REFERENCE"'; +$aSql['sqlite']['get_id_dnupro']='SELECT "ID_DNUPRO" as iddnupro, "DNUPRO" as dnupro FROM "NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'idparpro\''; +$aSql['sqlite']['compte_communal_parcelle']='SELECT "FANTOIR_COMMUNE"."CODE_INSEE" as "codeinsee", "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "LIBDEP" as libdep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "FANTOIR_COMMUNE"."CCOCOM" as ccocom, "LIBCOM" as libcom, "PROPRIETAIRE_COURANT". "DNUPRO" as dnupro,"PROPRIETAIRE_COURANT"."ID_DNUPRO" as id_dnupro, "ID_PAR" as id_par FROM "NON_BATI_A10_DESCR_PARCELLE", "PROPRIETAIRE_COURANT" LEFT JOIN "FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" LEFT JOIN "FANTOIR_DIRECTION" ON "FANTOIR_COMMUNE"."CCODEP"= "FANTOIR_DIRECTION"."CCODEP" WHERE "PROPRIETAIRE_COURANT"."ID_DNUPRO"=\'$sIdDnupro\' and "ID_PAR"=\'$sIdPar\''; +$aSql['sqlite']['get_id_bat_parcelle']='SELECT "ID_BAT" as id_bat FROM "BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\' and "ID_PAR"=\'$sIdPar\' ORDER BY "ID_BAT"'; +$aSql['sqlite']['get_par_id_bat']='SELECT "ID_BAT" as id_bat FROM "BATI_A00_IDENT_LOCAL" WHERE "ID_PAR"=\'sIdPar\' ORDER BY "ID_BAT"'; +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj.sql_all.inc b/src/module_cadastre/web_service/class/majic_lib/Mj.sql_all.inc new file mode 100755 index 0000000000000000000000000000000000000000..1f63bdf05a4596e8e4e00c493efe95fa12b9758d --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj.sql_all.inc @@ -0,0 +1,39 @@ +<?php + +$aSql['pgsql']['proprietaire']= 'SELECT *, "ID_DNUPRO" as id_dnupro, "ID_PRO" as id_pro, "L_CCODRO" as l_ccodro, "L_CCODEM" as l_ccodem, "DNUPER" as dnuper, "DQUALP" as dqualp, "DDENOM" as ddenom, "DNOMLP" as dnomlp, "DPRNLP" as dprnlp, "EPXNEE" as epxnee, "DNOMCP" as dnomcp, "DPRNCP" as dprncp, "JDATNSS" as jdatnss, "DLDNSS" as dldnss, "DLIGN3" as dlign3, "DLIGN4" as dlign4, "DLIGN5" as dlign5, "DLIGN6" as dlign6 FROM majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."tc_CCODRO_code_droit" ON "PROPRIETAIRE_COURANT"."CCODRO"="tc_CCODRO_code_droit"."CCODRO" LEFT JOIN majic."tc_CCODEM_Nature_demembrement" ON "PROPRIETAIRE_COURANT"."CCODEM"="tc_CCODEM_Nature_demembrement"."CCODEM" WHERE "ID_DNUPRO"=\'$sIdDnupro\' AND "ID_PRO"=\'$sIdPro\''; +$aSql['pgsql']['bati'] = 'SELECT *, "BATI_A00_IDENT_LOCAL"."ID_BAT" as id_bat, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "CCOPLC" as ccoplc, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DNUBAT" as dnubat, "DESC" as desc, "DNIV" as dniv, "DPOR" as dpor, "BATI_A00_IDENT_LOCAL"."INVAR" as invar, "CCOEVA" as ccoeva, "CCONLC" as cconlc, "GTAUOM" as gtauom, "CCONAD" as cconad FROM majic."BATI_A00_IDENT_LOCAL" LEFT JOIN majic."BATI_A60_DESCR_DEPEND" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A60_DESCR_DEPEND"."ID_BAT" WHERE "BATI_A00_IDENT_LOCAL"."ID_BAT"=\'$sIdBat\''; +$aSql['pgsql']['pev'] = 'SELECT *, "BATI_A21_DESCR_PEV"."ID_PEV" as id_pev, "CCOSTB" as ccostb, "CCOAFF" as ccoaff, "DCAPEC" as dcapec, "DCSGLC" as dcsglc, "BIPEVLA1" as bipevla1,"GNEXPL" as gnexpl, "DVLPERA" as dvlpera, "BATI_A21_DESCR_PEV"."DNUPEV" as dnupev FROM majic."BATI_A21_DESCR_PEV" LEFT JOIN majic."BATI_A36_TAXATION_PEV" ON "BATI_A21_DESCR_PEV"."ID_PEV"="BATI_A36_TAXATION_PEV"."ID_PEV" WHERE "BATI_A21_DESCR_PEV"."ID_PEV"=\'$sIdPev\''; +$aSql['pgsql']['parcelle']='SELECT *, "ID_PAR" as id_par, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CCONVO" as cconvo, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['pgsql']['suf']='SELECT *, "ID_SUF" as id_suf, "CCOSTN" as ccostn, "CCOSUB" as ccosub, "DSGRPF" as dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf, "DRCSUBA" as drcsuba FROM majic."NON_BATI_A21_DESCR_SUF" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['pgsql']['compte_communal']='SELECT *, "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "FANTOIR_COMMUNE"."CCOCOM" as ccocom, "LIBCOM" as libcom, "DNUPRO" as dnupro, "ID_DNUPRO" as id_dnupro FROM majic."PROPRIETAIRE_COURANT" LEFT JOIN majic."FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['pgsql']['exone_pev']='SELECT *, "ID_EX" as id_ex, "CCOLLOC" as ccolloc, "GNEXTL" as gnextl, "JANIMP" as janimp, "JANDEB" as jandeb, "RCEXBA2" as rcexba2 FROM majic."BATI_A30_EXONE_PEV" WHERE "ID_EX"=\'$sIdEx\''; +$aSql['pgsql']['exon_suf']='SELECT *, "ID_SUF" as id_suf, "RNUEXN" as rnuexn, "CCOLLOC" as ccolloc, "GNEXTS" as gnexts, "JFINEX" as jfinex, "PEXN" as pexn FROM majic."NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\' and "RNUEXN"=\'$sRnuexn\''; +$aSql['pgsql']['lot_local']='SELECT *, "ID_BAT" as id_bat, "KLOT" as klot, "DNUPDL" as dnupdl, "DNULOT" as dnulot, "DNUMQL" as dnumql, "DDENQL" as ddenql FROM majic."LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' and "KLOT"=\'$sKlot\''; +$aSql['pgsql']['get_id_pev']='SELECT "ID_PEV" as id_pev FROM majic."BATI_A21_DESCR_PEV" WHERE "ID_BAT"=\'$sIdBat\''; +$aSql['pgsql']['get_id_ex_pev']='SELECT "ID_EX" as id_ex FROM majic."BATI_A30_EXONE_PEV" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['pgsql']['get_klot']='SELECT "KLOT" as klot FROM majic."LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\''; +$aSql['pgsql']['get_id_suf']='SELECT "ID_SUF" as id_suf FROM majic."NON_BATI_A21_DESCR_SUF" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['pgsql']['get_rnuexn']='SELECT "RNUEXN" as rnuexn FROM majic."NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['pgsql']['get_id_pro']='SELECT "ID_PRO" as id_pro FROM majic."PROPRIETAIRE_COURANT" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['pgsql']['get_id_bat']='SELECT "ID_BAT" as id_bat FROM majic."BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['pgsql']['get_id_par']='SELECT "ID_PAR" as id_par FROM majic."NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; + +$aSql['sqlite']['proprietaire']= 'SELECT *, "ID_DNUPRO" as id_dnupro, "ID_PRO" as id_pro, "L_CCODRO" as l_ccodro, "L_CCODEM" as l_ccodem, "DNUPER" as dnuper, "DQUALP" as dqualp, "DDENOM" as ddenom, "DNOMLP" as dnomlp, "DPRNLP" as dprnlp, "EPXNEE" as epxnee, "DNOMCP" as dnomcp, "DPRNCP" as dprncp, "JDATNSS" as jdatnss, "DLDNSS" as dldnss, "DLIGN3" as dlign3, "DLIGN4" as dlign4, "DLIGN5" as dlign5, "DLIGN6" as dlign6 FROM "PROPRIETAIRE_COURANT" LEFT JOIN "tc_CCODRO_code_droit" ON "PROPRIETAIRE_COURANT"."CCODRO"="tc_CCODRO_code_droit"."CCODRO" LEFT JOIN "tc_CCODEM_Nature_demembrement" ON "PROPRIETAIRE_COURANT"."CCODEM"="tc_CCODEM_Nature_demembrement"."CCODEM" WHERE "ID_DNUPRO"=\'$sIdDnupro\' AND "ID_PRO"=\'$sIdPro\''; +$aSql['sqlite']['bati'] = 'SELECT *, "BATI_A00_IDENT_LOCAL"."ID_BAT" as id_bat, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "CCOPLC" as ccoplc, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "DVOILIB" as dvoilib, "CCORIV" as ccoriv, "DNUBAT" as dnubat, "DESC" as desc, "DNIV" as dniv, "DPOR" as dpor, "BATI_A00_IDENT_LOCAL"."INVAR" as invar, "CCOEVA" as ccoeva, "CCONLC" as cconlc, "GTAUOM" as gtauom, "CCONAD" as cconad FROM "BATI_A00_IDENT_LOCAL" LEFT JOIN "BATI_A60_DESCR_DEPEND" ON "BATI_A00_IDENT_LOCAL"."ID_BAT"="BATI_A60_DESCR_DEPEND"."ID_BAT" WHERE "BATI_A00_IDENT_LOCAL"."ID_BAT"=\'$sIdBat\''; +$aSql['sqlite']['pev'] = 'SELECT *, "BATI_A21_DESCR_PEV"."ID_PEV" as id_pev, "CCOSTB" as ccostb, "CCOAFF" as ccoaff, "DCAPEC" as dcapec, "DCSGLC" as dcsglc, "BIPEVLA1" as bipevla1,"GNEXPL" as gnexpl, "DVLPERA" as dvlpera, "BATI_A21_DESCR_PEV"."DNUPEV" as dnupev FROM "BATI_A21_DESCR_PEV" LEFT JOIN "BATI_A36_TAXATION_PEV" ON "BATI_A21_DESCR_PEV"."ID_PEV"="BATI_A36_TAXATION_PEV"."ID_PEV" WHERE "BATI_A21_DESCR_PEV"."ID_PEV"=\'$sIdPev\''; +$aSql['sqlite']['parcelle']='SELECT *, "ID_PAR" as id_par, "JDATAT" as jdatat, "CCOSEC" as ccosec, "DNUPLA" as dnupla, "DNVOIRI" as dnvoiri, "DINDIC" as dindic, "CODEVOIE" as codevoie, "LIBVOIE" as libvoie, "CCORIV" as ccoriv, "DPARPI" as dparpi, "GPARNF" as gparnf FROM "NON_BATI_A10_DESCR_PARCELLE" LEFT JOIN "FANTOIR_VOIE" ON "NON_BATI_A10_DESCR_PARCELLE"."ID_RIVOLI"="FANTOIR_VOIE"."ID_RIVOLI" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['sqlite']['suf']='SELECT *, "ID_SUF" as id_suf, "CCOSTN" as ccostn, "CCOSUB" as ccosub, "DSGRPF" as dsgrpf, "DCLSSF" as dclssf, "CNATSP" as cnatsp, "DCNTSF" as dcntsf, "DRCSUBA" as drcsuba FROM "NON_BATI_A21_DESCR_SUF" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['sqlite']['compte_communal']='SELECT *, "PROPRIETAIRE_COURANT"."CCODEP" as ccodep, "PROPRIETAIRE_COURANT"."CCODIR" as ccodir, "FANTOIR_COMMUNE"."CCOCOM" as ccocom, "LIBCOM" as libcom, "DNUPRO" as dnupro, "ID_DNUPRO" as id_dnupro FROM "PROPRIETAIRE_COURANT" LEFT JOIN "FANTOIR_COMMUNE" ON "PROPRIETAIRE_COURANT"."ID_COM"="FANTOIR_COMMUNE"."ID_COM" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['sqlite']['exone_pev']='SELECT *, "ID_EX" as id_ex, "CCOLLOC" as ccolloc, "GNEXTL" as gnextl, "JANIMP" as janimp, "JANDEB" as jandeb, "RCEXBA2" as rcexba2 FROM "BATI_A30_EXONE_PEV" WHERE "ID_EX"=\'$sIdEx\''; +$aSql['sqlite']['exon_suf']='SELECT *, "ID_SUF" as id_suf, "RNUEXN" as rnuexn, "CCOLLOC" as ccolloc, "GNEXTS" as gnexts, "JFINEX" as jfinex, "PEXN" as pexn FROM "NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\' and "RNUEXN"=\'$sRnuexn\''; +$aSql['sqlite']['lot_local']='SELECT *, "ID_BAT" as id_bat, "KLOT" as klot, "DNUPDL" as dnupdl, "DNULOT" as dnulot, "DNUMQL" as dnumql, "DDENQL" as ddenql FROM "LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\' and "KLOT"=\'$sKlot\''; +$aSql['sqlite']['get_id_pev']='SELECT "ID_PEV" as id_pev FROM "BATI_A21_DESCR_PEV" WHERE "ID_BAT"=\'$sIdBat\''; +$aSql['sqlite']['get_id_ex_pev']='SELECT "ID_EX" as id_ex FROM "BATI_A30_EXONE_PEV" WHERE "ID_PEV"=\'$sIdPev\''; +$aSql['sqlite']['get_klot']='SELECT "KLOT" as klot FROM "LOT_LOCAL" WHERE "ID_BAT"=\'$sIdBat\''; +$aSql['sqlite']['get_id_suf']='SELECT "ID_SUF" as id_suf FROM "NON_BATI_A21_DESCR_SUF" WHERE "ID_PAR"=\'$sIdPar\''; +$aSql['sqlite']['get_rnuexn']='SELECT "RNUEXN" as rnuexn FROM "NON_BATI_A30_EXON_SUF" WHERE "ID_SUF"=\'$sIdSuf\''; +$aSql['sqlite']['get_id_pro']='SELECT "ID_PRO" as id_pro FROM "PROPRIETAIRE_COURANT" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['sqlite']['get_id_bat']='SELECT "ID_BAT" as id_bat FROM "BATI_A00_IDENT_LOCAL" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; +$aSql['sqlite']['get_id_par']='SELECT "ID_PAR" as id_par FROM "NON_BATI_A10_DESCR_PARCELLE" WHERE "ID_DNUPRO"=\'$sIdDnupro\''; + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Attribute.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Attribute.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..bcc320a7305b0b9131e0e78324ade1ad32a50b68 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Attribute.class.inc @@ -0,0 +1,53 @@ +<?php +/** +* \file Mj_Attribute.class.inc +* \brief Mj_Attribute.class.inc \n \n Ce fichier contient la classe php Mj_Attribute +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Attribute. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Attribute +* \brief Mj_Attribute Class \n \n Mj_Attributes est une classe PHP qui hérite de la classe Mj_Attribute. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Attribute. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); + +class Mj_Attribute extends Mj { + /** + * Cette méthode métier permet de récupérer l'attribut parmi les attributs d'une emprise calculée sur la parcelle d'un compte communal. + * \param $aAttributes Tableau. + * \param $aField Tableau des libellés issue des properties. + * \private + */ + function __construct($aAttributes,$aField=Array()){ + $aAttribute=array(); + $aAttribute["label"]=$aAttributes["label"]; + $aAttribute["title"]=$aField[$aAttributes["label"]]; + $aAttribute["value"]=$aAttributes["value"]; + $this->aFields=$aAttribute; + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['label']=$this->aFields["label"]; + $aExportFields['title']=$this->aFields["title"]; + $aExportFields['value']=$this->aFields["value"]; + } + return $aExportFields; + } + +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Attributes.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Attributes.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..515604605946549905d8e69833364f377cb83676 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Attributes.class.inc @@ -0,0 +1,64 @@ +<?php +/** +* \file Mj_Attributes.class.inc +* \brief Mj_Attributes.class.inc \n \n Ce fichier contient la classe php Mj_Attributes +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Attributes d'une Emprise. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Attributes +* \brief Mj_Attributes Class \n \n Mj_Attributes est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Attributes d'une Emprise. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Attribute.class.inc"); + +class Mj_Attributes extends Mj { + /** + * Tableau associatif comportant la liste des objets Attribut d'une Emprise. + */ + var $aAttributes =array(); + + /** + * Cette méthode métier permet de récupérer les attributs d'une emprise calculée sur la parcelle d'un compte communal. + * \param $aAttributesEmprise Tableau des attributs. + * \param $aField Tableau des libellés issue des properties. + * \private + * \return Un tableau HTML sous la forme d'une chaîne de caractères. + */ + function __construct($aAttributesEmprise,$aField=Array()){ + foreach ($aAttributesEmprise as $sAttributeEmprise => $aValue){ + if (is_array($aValue)){ + foreach ($aValue as $sLabel => $sValue){ + $aAttribute["label"]=$sLabel; + $aAttribute["value"]=$sValue; + array_push($this->aAttributes,new Mj_Attribute($aAttribute,$aField)); + } + } + } + $aTest["test"]="test"; + $this->aFields=$aTest; + $this->aObjects=$this->aAttributes; + } + + /** + * Cette méthode permet de construire un tableau. + * \return Retourne un tableau associatif. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + } + return $aExportFields; + } + +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Bati.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Bati.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..c0efa18e4780a55af3c557c5e2ec29ff8000cc3e --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Bati.class.inc @@ -0,0 +1,605 @@ +<?php +/** +* \file Mj_Bati.class.inc +* \brief Mj_Bati.class.inc \n \n Ce fichier contient la classe php Mj_Bati +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie bati. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Bati +* \brief Mj_Bati Class \n \n Mj_Bati est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie bâti. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Pev.class.inc"); +require_once ("Mj_Lot_Local.class.inc"); + +class Mj_Bati extends Mj { + /** + * Tableau associatif comportant la liste des objets Pev du bâti + */ + var $aPev=array(); + /** + * Tableau associatif comportant la liste des objets Lot_Local du bâti + */ + var $aLotLocal=array(); + + /** + * \param $sIdBat Identifiant de bâti + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdBat,$oBD, $sEncryptedKey=''){ + $this->sEncryptKey = $sEncryptedKey; + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['bati']; + $this->sSql=str_replace('$sIdBat', $sIdBat, $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if ($oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante($oPDOresult); + $this->sStatus=0; + } + $this->aPev=$this->get_aPev($oBD); + $this->aPro=$this->get_aPro($oBD); + $this->aLotLocal=$this->get_aLot_Local($oBD); + $this->aObjects=array_merge ($this->aPev, $this->aLotLocal, $this->aPro); + } + /** + * Cette méthode permet de récupérer les ID_PRO en fonction d'un ID_DNUPRO donné. + * \return Retourne un tableau de ID_PRO. + */ + function get_aId_Pro($oBD){ + if($this->isEmpty()){ + $aIdPro=""; + }else{ + include $this->sRessourcesFile; + $aIdPro=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_pro']; + $this->sSql=str_replace('$sIdDnupro', $this->encrypt($this->aFields['b_iddnupro']), $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdPro,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdPro; + $oPDOresult=$oBD->fermeResultat(); + } + /** + * Cette méthode permet de récupérer la liste des objets Proprietaire + * \return Retourne un tableau d'objets Proprietaire + */ + function get_aPro($oBD){ + $aPro=array(); + if($this->isEmpty()){ + $aPro=""; + }else{ + $aIdPro=$this->get_aId_Pro($oBD); + foreach($aIdPro as $sIdPro){ + array_push($aPro,new Mj_Proprietaire($this->aFields['b_iddnupro'],$sIdPro,$oBD, $this->sEncryptKey)); + } + } + return $aPro; + } + /** + * Cette méthode permet de récupérer les Id_Pev en fonction d'un Id_Bat donné. + * \return Retourne un tableau de chaînes de caractères. + */ + function get_aId_Pev($oBD){ + if($this->isEmpty()){ + $aIdPev=""; + }else{ + include $this->sRessourcesFile; + $aIdPev=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_pev']; + $this->sSql=str_replace('$sIdBat', $this->aFields['id_bat'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdPev,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdPev; + } + /** + * Cette méthode permet de récupérer la liste des objets Pev du bâti + * \return Retourne un tableau d'objets Pev + */ + function get_aPev($oBD){ + $aPev=array(); + if($this->isEmpty()){ + $aPev=""; + }else{ + $aIdPev=$this->get_aId_Pev($oBD); + foreach($aIdPev as $sValue){ + array_push($aPev,new Mj_Pev($sValue,$oBD)); + } + } + return $aPev; + } + /** + * Cette méthode permet de récupérer les Klot en fonction d'un Id_Bat donné + * \return Retourne un tableau de chaînes de caractères + */ + function get_aKlot($oBD){ + if($this->isEmpty()){ + $aKlot=""; + }else{ + include $this->sRessourcesFile; + $aKlot=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_klot']; + $this->sSql=str_replace('$sIdBat', $this->aFields['id_bat'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aKlot,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aKlot; + } + /** + * Cette méthode permet de récupérer la liste des objets Lot-Local du bâti + * \return Retourne un tableau d'objets Lot-Local + */ + function get_aLot_Local($oBD){ + $aLotLocal=array(); + if($this->isEmpty()){ + $aLotLocal=""; + }else{ + $aKlot=$this->get_aKlot($oBD); + foreach($aKlot as $sKlot){ + array_push($aLotLocal,new Mj_Lot_Local($this->aFields['id_bat'],$sKlot,$oBD)); + } + } + return $aLotLocal; + } + + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['date']=$this->getJdatat(); + $aExportFields['section']=$this->aFields['ccosec']; + $aExportFields['num_plan']=$this->aFields['dnupla']; + $aExportFields['cp']=$this->aFields['ccoplc']; + $aExportFields['voirie']=$this->getVoirie(); + $aExportFields['adresse']=$this->aFields['dvoilib']; + $aExportFields['code_rivoli']=$this->aFields['ccoriv']; + $aExportFields['bat']=$this->aFields['dnubat']; + $aExportFields['ent']=$this->aFields['desc']; + $aExportFields['niv']=$this->aFields['dniv']; + $aExportFields['num_de_porte']=$this->aFields['dpor']; + $aExportFields['num_invar']=$this->getNumeroInvar(); + $aExportFields['m_eva']=$this->aFields['ccoeva']; + $aExportFields['nat_loc']=$this->getNatLoc(); + $aExportFields['tx_om']=$this->aFields['gtauom']; + $aExportFields['s_tar']=$this->getSTar(); + $aExportFields['af']=$this->getAf(); + $aExportFields['cat']=$this->getCat(); + $aExportFields['revenu_cadastral']=$this->getRevenuCadastral(); + $aExportFields['revenu_cadastral_txt']=$this->setFloatToText($this->getRevenuCadastral()); + $aExportFields['dvlpera']=$this->aFields['dvlpera']; + $aExportFields['b_dnupro']=$this->aFields['b_dnupro']; + $aExportFields['b_iddnupro']=$this->aFields['b_iddnupro']; + $aExportFields['dteloc']=$this->aFields['dteloc']; + $aExportFields['dvltrt']=$this->aFields['dvltrt']; + $aExportFields['dnumql']=$this->aFields['dnumql']; + $aExportFields['ddenql']=$this->aFields['ddenql']; + //$aExportFields['nat_exo']=$this->getNatExo(); + //$aExportFields['exoneration']=$this->getExoneration(); + //$aExportFields['revenu_cadastral_avec_exo']=$this->getRevenuCadastralAvecExo(); + //$aExportFields['revenu_cadastral_avec_pp']=$this->getRevenuCadastralAvecPP(); + $aExportFields['num_invar']=$this->aFields['invar']; + $aExportFields['ddenql']=$this->aFields['ddenql']; + $aExportFields['local_type']=$this->aFields['dteloc']; + $aExportFields['nature']=$this->aFields['cconlc']; + $aExportFields['lib_nature']=$this->aFields['lib_cconlc']; + $aExportFields['occupation']=$this->aFields['dnatlc']; + $aExportFields['lib_occupation']=$this->getOccupation(); + $aExportFields['date_mut']=$this->getJdatat_full(); + $aExportFields['annee_constr']=$this->aFields['jannat']; + $aExportFields['niveaux']=$this->aFields['dnbniv']; + $aExportFields['libcom']=$this->aFields['libcom']; + } + return $aExportFields; + } + /** + * Cette méthode permet de récupérer les deux derniers caractères de l'attribut Jdatat et d'y ajouter 1. + * \return Retourne une chaîne de caractères. + */ + function getJdatat_full(){ + $sjdatat=$this->aFields['jdatat']; + if ($sjdatat != ""){ + if (preg_match( '`^\d{1,2}/\d{1,2}/\d{4}$`' , $sjdatat ) ){ + $sNewJdatat_full=$sjdatat; + }else if (preg_match( '`^\d{1,2}/\d{1,2}/\d{2}$`' , $sjdatat ) ){ + $sNewJdatat_full=$sjdatat; + }else{ + $sNewJdatat_full=substr($sjdatat,0,2)."/".substr($sjdatat,2,2)."/".substr($sjdatat,4,4); + } + } + return $sNewJdatat_full; + } + /** + * Cette méthode permet de récupérer les deux derniers caractères de l'attribut Jdatat et d'y ajouter 1. + * \return Retourne une chaîne de caractères. + */ + function getJdatat(){ + $sNewJdatat=$this->aFields['jdatat']; + if (preg_match( '`^\d{1,2}/\d{1,2}/\d{4}$`' , $sNewJdatat ) ){ + $sNewJdatat=substr("$sNewJdatat", 6, 4)+1; + $sNewJdatat=(string)(substr("$sNewJdatat", 2, 2)); + }else if (preg_match( '`^\d{1,2}/\d{1,2}/\d{2}$`' , $sNewJdatat ) ){ + $sNewJdatat=(string) (substr("$sNewJdatat", 6, 2)+1); + if(strlen($sNewJdatat) == 1){ + $sNewJdatat='0'.$sNewJdatat; + } + $sNewJdatat=(string) (substr("$sNewJdatat", -2, 2)); + }else{ + $sNewJdatat=substr("$sNewJdatat", 4, 4)+1; + $sNewJdatat=(string)(substr("$sNewJdatat", 2, 2)); + } + return $sNewJdatat; + } + /** + * Cette méthode permet de supprimer le code commune de l'attribut invar. + * \return Retourne une chaîne de caractères. + */ + function getNumeroInvar(){ + $sNumeroInvar=$this->aFields['invar']; + $sNumeroInvar= substr("$sNumeroInvar", 3, 7); + return $sNumeroInvar; + } + /** + * Cette méthode permet de concaténer les attributs dnvoiri et indic. + * \return Retourne une chaîne de caractères. + */ + function getVoirie(){ + $sVoirie=ltrim($this->aFields['dnvoiri'],'0').$this->aFields['dindic']; + return $sVoirie; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 's_tar' dans le tableau aPev. + * \return Retourne une chaîne de caractères. + */ + function getSTar(){ + if(count($this->aPev)==1){ + return $this->aPev[0]->aFields['ccostb']; + }else{ + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'af' dans le tableau aPev. + * \return Retourne une chaîne de caractères. + */ + function getAf(){ + if(count($this->aPev)==1){ + return $this->aPev[0]->aFields['ccoaff']; + }else{ + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'cat' dans le tableau aPev. + * \return Retourne une chaîne de caractères. + */ + function getCat(){ + if(count($this->aPev)==1){ + return $this->aPev[0]->aFields['dcapec']; + }else{ + return ''; + } + } + /** + * Cette métode permet de récupérer la somme du revenu cadastral pour un bâti avec exonération de type EP, CD, CR, DR ou NI. + * \return Retourne un entier. + */ + /*function getRevenuCadastralAvecExo(){ + $iRevenuCadastralAvecExo=0; + foreach ($this->aPev as $oPev) { + if(ereg ("EP|CD|CR|DR|NI|ND", $oPev->aExportFields['nat_exo'])){ + $iRevenuCadastralAvecExo=$iRevenuCadastralAvecExo + $oPev->aExportFields['revenu_cadastral']; + } + } + return $iRevenuCadastralAvecExo; + }*/ + /** + * Cette métode permet de récupérer la somme du revenu cadastral pour un bâti avec exonération de type PP. + * \return Retourne un entier. + */ + /*function getRevenuCadastralAvecPP(){ + $iRevenuCadastralAvecPP=0; + foreach ($this->aPev as $oPev) { + if((ereg ("PP", $oPev->aExportFields['nat_exo'])) && ((int) ($this->aFields['dnupev']>1))){ + $iRevenuCadastralAvecPP=$iRevenuCadastralAvecPP + $oPev->aExportFields['revenu_cadastral']; + } + } + return $iRevenuCadastralAvecPP; + } + /** + * Cette métode permet de récupérer la somme du revenu cadastral pour un bâti. + * \return Retourne un entier. + */ + function getRevenuCadastral(){ + $iRevenuCadastral=0; + foreach($this->aPev as $oPev){ + $iRevenuCadastral=$iRevenuCadastral+ (int) $oPev->getRevenuCadastral(); + } + return $iRevenuCadastral; + } + /** + * Cette métode permet de récupérer la somme du revenu cadastral pour un bâti. + * \return Retourne un float. + */ + function getRevenuCadastralfloat(){ + $iRevenuCadastral=0; + foreach($this->aPev as $oPev){ + $fRevenuCadastral=$fRevenuCadastral+ (float) $oPev->getRevenuCadastral(); + } + return $fRevenuCadastral; + } + /** + * Cette méthode permet de récupérer la somme des exonérations pour un bâti. + * \return Retourne un entier. + */ + function getExoneration($sLccodem){ + $iExoneration=0; + foreach ($this->aPev as $oPev){ + if (($sLccodem!='') && (ereg ("PP", $oPev->getNatExo())) && ((int) ($this->aFields['dnupev']>1))){ + $iExoneration=$iExoneration + $oPev->getRevenuCadastral(); + }elseif($oPev->getNatExo()!=''){ + $iExoneration=$iExoneration + $oPev->getRevenuCadastral(); + } + } + return $iExoneration; + } + /** + * Cette méthode permet de récupérer la somme des exonérations pour un bâti. + * \return Retourne un float. + */ + function getExonerationfloat($sLccodem){ + $fExoneration=0; + foreach ($this->aPev as $oPev){ + if (($sLccodem!='') && (ereg ("PP", $oPev->getNatExo())) && ((int) ($this->aFields['dnupev']>1))){ + $fExoneration=$fExoneration + $oPev->getRevenuCadastralfloat(); + }elseif($oPev->getNatExo()!=''){ + $fExoneration=$fExoneration + $oPev->getRevenuCadastralfloat(); + } + } + return $fExoneration; + } + /** + * Cette méthode permet de retourner la nature du local. + * \return Retourne une chaîne de caractères qui peut être valide (la chaîne de caractères a été vérifiée d'après des exemples de relevés de propriété) ou non valide (la chaîne de caractères n'a pas pu être vérifiée). + */ + function getNatLoc(){ + switch($this->aFields["cconlc"]){ + case 'MA' : + $sNatLoc="MAIS"; // Cas validé + break; + case 'AP' : + $sNatLoc="APP"; // Cas validé + break; + case 'DE' : + $sNatLoc=$this->getNatureDep(); // Cf fonction getNatureDep() + break; + case 'DC' : + $sNatLoc="DLC"; // cas non validé + break; + case 'LC' : + $sNatLoc="L.COM"; // Cas validé + break; + case 'CM' : + $sNatLoc="CM"; // Cas validé + break; + case 'CA' : + $sNatLoc="CA"; // Cas validé + break; + case 'CD' : + $sNatLoc="DEP.C"; // Cas validé + break; + case 'CB' : + $sNatLoc="L.DIV"; // Cas validé + break; + case 'ME' : + $sNatLoc="M.EXC"; // Cas validé + break; + case 'MP' : + $sNatLoc="M.PAR"; // Cas validé + break; + case 'SM' : + $sNatLoc="SOLM"; // Cas non validé + break; + case 'AU' : + $sNatLoc="AU"; // Cas validé + break; + case 'CH' : + $sNatLoc="CHANT"; // Cas validé + break; + case 'U ' : + $sNatLoc="E.IND"; // Cas validé + break; + case 'US' : + $sNatLoc="US"; // Cas validé + break; + case 'UG' : + $sNatLoc="AGAZ"; // Cas non validé + break; + case 'UE' : + $sNatLoc="UE"; // Cas validé + break; + case 'U1' : + $sNatLoc="GARE"; // Cas non validé + break; + case 'U2' : + $sNatLoc="GTRI"; // Cas non validé + break; + case 'U3' : + $sNatLoc="GAMAT"; // Cas non validé + break; + case 'U4' : + $sNatLoc="GAMAG"; // Cas non validé + break; + case 'U5' : + $sNatLoc="GDETI"; // Cas non validé + break; + case 'U6' : + $sNatLoc="GDERE"; // Cas non validé + break; + case 'U7' : + $sNatLoc="GMATR"; // Cas non validé + break; + case 'U8' : + $sNatLoc="GEMR"; // Cas non validé + break; + case 'U9' : + $sNatLoc="GSTUS"; // Cas non validé + break; + case 'AT' : + $sNatLoc="AT"; // Cas validé + break; + default : + $sNatLoc=substr($this->aFields["cconlc"],0,4); + break; + } + return $sNatLoc; + } + /** + * Cette méthode permet de retourner la nature de dépendance. + * \return Retourne une chaîne de caractères qui peut être valide (la chaîne de caractères a été vérifiée d'après des exemples de relevés de propriété) ou non valide (la chaîne de caractères n'a pas pu être vérifiée). + */ + function getNatureDep(){ + switch($this->aFields["cconad"]){ + case 'GA' : + $sNatureDep="GAR"; // Cas validé + break; + case 'CV' : + $sNatureDep="CAVE"; // Cas validé + break; + case 'GR' : + $sNatureDep="GREN"; // Cas validé + break; + case 'TR' : + $sNatureDep="TERR"; // Cas non validé + break; + case 'GP' : + $sNatureDep="GPARK"; // Cas validé + break; + case 'GC' : + $sNatureDep="GRCA"; // Cas non validé + break; + case 'BX' : + $sNatureDep="BOX"; // Cas validé + break; + case 'PK' : + $sNatureDep="PARK"; // Cas validé + break; + case 'CL' : + $sNatureDep="CELL"; // Cas non validé + break; + case 'BD' : + $sNatureDep="BUAN"; // Cas non validé + break; + case 'BC' : + $sNatureDep="BUCH"; // Cas non validé + break; + case 'RS' : + $sNatureDep="REMI"; // Cas non validé + break; + case 'TT' : + $sNatureDep="TT"; // Cas validé + break; + case 'PI' : + $sNatureDep="P.IND"; // Cas validé + break; + case 'PA' : + $sNatureDep="AGREM"; // Cas validé + break; + case 'CD' : + $sNatureDep="CHDO"; // Cas non validé + break; + case 'DC' : + $sNatureDep="DEP.C"; // Cas validé + break; + case 'JH' : + $sNatureDep="J.HIV"; // Cas validé + break; + case 'PS' : + $sNatureDep="PISC"; // Cas validé + break; + case 'SR' : + $sNatureDep="SERR"; // Cas non validé + break; + default : + $sNatureDep=substr($this->aFields["cconad"],0,4); + break; + } + return $sNatureDep; + } + /** + * Cette méthode permet de formater un décimal pour l'affichage. + * \return Retourne une chaine + */ + function setFloatToText($fFloat){ + return number_format($fFloat,2,'.',''); + } + /** + * Cette méthode permet de retourner l'occupation du logement + * \return Retourne une chaîne de caractères qui peut être valide (la chaîne de caractères a été vérifiée d'après des exemples de relevés de propriété) ou non valide (la chaîne de caractères n'a pas pu être vérifiée). + */ + function getOccupation(){ + switch($this->aFields["dnatlc"]){ + case 'P' : + $sOccupation="Proprietaire ou Usufruitier"; + break; + case 'L' : + $sOccupation="Location autre que propriétaire ou usufruitier"; + break; + case 'V' : + $sOccupation="Vacant"; + break; + case 'T' : + $sOccupation="Location, non affectée à l’habitation, soumise à TVA"; + break; + case 'D' : + $sOccupation="Habitation principale occupée par le propriétaire"; + break; + default : + $sOccupation=substr($this->aFields["dnatlc"],0,1); + break; + } + return $sOccupation; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Bati_Parcelle.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Bati_Parcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..f499117c779f28e0337f42e9af3cc54cfd6945eb --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Bati_Parcelle.class.inc @@ -0,0 +1,162 @@ +<?php +/** +* \file Mj_Bati_Parcelle.class.inc +* \brief Mj_Bati_Parcelle.class.inc \n \n Ce fichier contient la classe php Mj_Bati_Parcelle +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter les batis associés à une parcelle. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +* \author Fabien Marty <fabien.marty@veremes.com> +*/ + +require_once ("Mj.class.inc"); +require_once ("Mj_Bati.class.inc"); +require_once ("Mj_Proprietaire.class.inc"); + +class Mj_Bati_Parcelle extends Mj { + /** + * Tableau associatif comportant la liste des objets Bati de la parcelle. + */ + var $aBat=array(); + /** + * Chaine qui stocke l'anneé de référence des données casdatrales. + */ + var $sAnneeReference; + + /** + * \param $sIdPar Identifiant de la parcelle + * \param $oBD Objet de connexion + */ + function __construct($sIdPar,$oBD){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['bati_parcelle']; + $this->sSql=str_replace('sIdPar',$sIdPar,$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->sStatus=0; + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + } + $oPDOresult=$oBD->fermeResultat(); + $this->aBat=$this->get_aBat($oBD,$sIdPar); + $this->sSql=$aSql[$oBD->sgbd]['annee_reference']; + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->erreurRencontree != 0){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $aAnneeReference=$oBD->ligneSuivante ($oPDOresult); + $this->sAnneeReference=$aAnneeReference['ANNEE']; + } + $this->aObjects=$this->aBat; + } + /** + * Cette méthode permet de récupérer les ID_BAT en fonction d'un ID_PAR donné + * \param $oBD Objet de connexion + * \param $sIdPar Chaine identifiant de la parcelle + * \return Retourne un tableau de ID_BAT + */ + function get_aId_Bat($oBD,$sIdPar){ + if($this->isEmpty()){ + $aIdBat=""; + }else{ + include $this->sRessourcesFile; + $aIdBat=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_par_id_bat']; + $this->sSql=str_replace('sIdPar',$sIdPar,$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdBat,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdBat; + } + /** + * Cette méthode permet de récupérer la liste des objets BATI + * \param $oBD Objet de connexion + * \param $sIdPar Chaine identifiant de la parcelle + * \return Retourne un tableau d'objets BATI + */ + function get_aBat($oBD,$sIdPar){ + $aBat=array(); + if($this->isEmpty()){ + $aBat=""; + }else{ + $aIdBat=$this->get_aId_Bat($oBD,$sIdPar); + foreach($aIdBat as $sIdBat){ + array_push($aBat,new Mj_Bati($sIdBat,$oBD)); + } + } + return $aBat; + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['id_par']=$this->aFields['id_par']; + $aExportFields['annee_de_maj']=$this->sAnneeReference; + $aExportFields['dep_dir']=$this->getDepdir(); + $aExportFields['code_dep']=$this->aFields['ccodep']; + $aExportFields['code_com']=$this->aFields['ccocom']; + $aExportFields['lib_dep']=$this->aFields['libdep']; + $aExportFields['com']=$this->getCom(); + $aExportFields['libcom']=$this->aFields['libcom']; + $aExportFields['role']=""; + $aExportFields['vue']=""; + $aExportFields['contenance']=$this->aFields['dcntpa']; + $aExportFields['adresse']=$this->getAdresseParcelle(); + $aExportFields['total_valeur_locative']=$this->getValeurLocativeBati(); + } + return $aExportFields; + } + /** + * Cette méthode permet de concaténer les attributs ccodep et ccodir. + * /return Retourne une chaîne de caractères correspondant au DEP DIR du RP. + */ + function getDepdir(){ + $sDepdir=$this->aFields['ccodep']." ".$this->aFields['ccodir']; + return $sDepdir; + } + /** + * Cette méthode permet de concaténer les attributs ccocom et libcom. + * /return Retourne une chaîne de carcatères correspondant au COM du RP. + */ + function getCom(){ + $sCom=$this->aFields['ccocom']." ".$this->aFields['libcom']; + return $sCom; + } + /** + * Cette méthode permet de concaténer les attributs cconvo et dvoilib. + * \return Retourne une chaîne de caractères. + */ + function getAdresseParcelle(){ + $sAdresseParcelle=ltrim(rtrim($this->aFields['dnvoiri']),'0').rtrim($this->aFields['dindic'])." ".rtrim($this->aFields['cconvo'])." ".rtrim($this->aFields['dvoilib']); + return $sAdresseParcelle; + } + /** + * Cette méthode permet de récupérer la valeur locative totale du bâti. + * \return Retourne un double + */ + function getValeurLocativeBati(){ + $iValeurLocativeBati=0; + foreach($this->aBat as $oBat){ + $iValeurLocativeBati=$oBat->aFields['dvlpera']+$iValeurLocativeBati; + } + return $iValeurLocativeBati; + } +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Bati_Parcelles.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Bati_Parcelles.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..32b418b90305423dfcc51b6cde1eab1d70048da9 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Bati_Parcelles.class.inc @@ -0,0 +1,61 @@ +<?php +/** +* \file Mj_Bati_Parcelles.class.inc +* \brief Mj_Bati_Parcelles.class.inc \n \n Ce fichier contient la classe php Mj_Bati_Parcelles +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter les batis associés à une parcelle. +* +* \author Olivier Gayte <olivier.gayte@veremes.com> +* \author Fabien Marty <fabien.marty@veremes.com> +*/ + +require_once ("Mj.class.inc"); +require_once ("Mj_Bati_Parcelle.class.inc"); + +class Mj_Bati_Parcelles extends Mj { + + /** + * \param $aIdPar Identifiant de la parcelle + * \param $oBD Objet de connexion + */ + function __construct($aIdPar,$oBD){ + $i=0; + while ($aIdPar[$i]){ + array_push ($this->aObjects, new Mj_Bati_Parcelle($aIdPar[$i],$oBD)); + $i++; + } + } + /** + * \brief Cette méthode permet de construire un tableau. + * \return Retourne un tableau associatif. + */ + function getExportFields(){ + $aExportFields=array(); + $aExportFields['sum_contenance_m2']=$this->getSurfaceCadastraleM2(); + $aExportFields['sum_valeur_locative']=$this->getValeurLocative(); + return $aExportFields; + } + /** + * \brief Récupération de la surface totale des parcelles en mettre carré. + */ + function getSurfaceCadastraleM2(){ + $dSurfaceCadastraleM2=0; + foreach($this->getObjects('Mj_Bati_Parcelle') as $oBatiPar){ + $aFields=$oBatiPar->getExportFields(); + $dSurfaceCadastraleM2=((int) $aFields['contenance'])+$dSurfaceCadastraleM2; + } + return $dSurfaceCadastraleM2; + } + /** + * \brief Récupération des valeurs locatives + */ + function getValeurLocative(){ + $dValeurLocative=0; + foreach($this->getObjects('Mj_Bati_Parcelle') as $oBatiPar) { + $aFields=$oBatiPar->getExportFields(); + $dValeurLocative=$aFields['total_valeur_locative']+$dValeurLocative; + } + return $dValeurLocative; + } +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..bb39be23bd1147ecd93facf2b672256b27414f9e --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal.class.inc @@ -0,0 +1,727 @@ +<?php +/** +* \file Mj_Compte_Communal.class.inc +* \brief Mj_Compte_Communal.class.inc \n \n Ce fichier contient la classe php Mj_Compte_Communal +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie compte communal. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +require_once ("Mj.class.inc"); +require_once ("Mj_Proprietaire.class.inc"); +require_once ("Mj_Bati.class.inc"); +require_once ("Mj_Parcelle.class.inc"); + +class Mj_Compte_Communal extends Mj { + /** + * Tableau associatif comportant la liste des objets Proprietaire d'un compte communal. + */ + var $aPro=array(); + /** + * Tableau associatif comportant la liste des objets Bati d'un compte communal. + */ + var $aBat=array(); + /** + * Tableau associatif comportant la liste des objets Non Bati d'un compte communal. + */ + var $aPar=array(); + /** + * Chaine qui stocke l'anneé de référence des données casdatrales. + */ + var $sAnneeReference; + + /** + * \param $sIdDnupro Identifiant national de compte communal + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdDnupro,$oBD, $sEncryptKey = ''){ + $this->sEncryptKey = $sEncryptKey; + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['compte_communal']; + $this->sSql=str_replace('$sIdDnupro',$this->encrypt($sIdDnupro),$this->sSql); + $oPDOresult=$oBD->execute ($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->sStatus=0; + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + $this->aFields['id_dnupro'] = $sIdDnupro; + } + $oPDOresult = $oBD->fermeResultat(); + $this->aPro = $this->get_aPro($oBD); + $this->aBat = $this->get_aBat($oBD); + $this->aPar = $this->get_aPar($oBD); + $this->sSql = $aSql[$oBD->sgbd]['annee_reference']; + $oPDOresult = $oBD->execute ($this->sSql); + if ( $oBD->erreurRencontree != 0){ + $this->sStatus=1; + $this->sMessage = $oBD->getBDMessage(); + }else{ + $aAnneeReference = $oBD->ligneSuivante ($oPDOresult); + $this->sAnneeReference=$aAnneeReference['ANNEE']; + } + $this->aObjects = array_merge ($this->aPro, $this->aBat,$this->aPar); + } + /** + * Cette méthode permet de récupérer les ID_PRO en fonction d'un ID_DNUPRO donné. + * \return Retourne un tableau de ID_PRO. + */ + function get_aId_Pro($oBD){ + if($this->isEmpty()){ + $aIdPro=""; + }else{ + include $this->sRessourcesFile; + $aIdPro=array(); + $this->sSql = $aSql[$oBD->sgbd]['get_id_pro']; + $this->sSql = str_replace('$sIdDnupro', $this->encrypt($this->aFields['id_dnupro']), $this->sSql); + + $oPDOresult= $oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage = $oBD->getBDMessage(); + }else{ + while($aResultFetch = $oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdPro,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdPro; + $oPDOresult=$oBD->fermeResultat(); + } + /** + * Cette méthode permet de récupérer la liste des objets Proprietaire + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau d'objets Proprietaire + */ + function get_aPro($oBD){ + $aPro=array(); + if($this->isEmpty()){ + $aPro=""; + }else{ + $aIdPro = $this->get_aId_Pro($oBD); + + foreach($aIdPro as $sIdPro){ + array_push($aPro,new Mj_Proprietaire($this->aFields['id_dnupro'],$sIdPro,$oBD, $this->sEncryptKey)); + } + } + return $aPro; + } + /** + * Cette méthode permet de récupérer les ID_BAT en fonction d'un ID_DNUPRO donné + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau de ID_BAT + */ + function get_aId_Bat($oBD){ + if($this->isEmpty()){ + $aIdBat=""; + }else{ + include $this->sRessourcesFile; + $aIdBat=array(); + $this->sSql = $aSql[$oBD->sgbd]['get_id_bat']; + $this->sSql = str_replace('$sIdDnupro', $this->aFields['id_dnupro'], $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch = $oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdBat,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdBat; + } + /** + * Cette méthode permet de récupérer la liste des objets BATI + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau d'objets BATI + */ + function get_aBat($oBD){ + $aBat=array(); + if($this->isEmpty()){ + $aBat=""; + }else{ + $aIdBat = $this->get_aId_Bat($oBD); + foreach($aIdBat as $sIdBat){ + array_push($aBat,new Mj_Bati($sIdBat,$oBD, $this->sEncryptKey)); + } + } + return $aBat; + } + /** + * Cette méthode permet de récupérer les ID_PAR en fonction d'un ID_DNUPRO donné + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau de ID_PAR + */ + function get_aId_Par($oBD){ + if($this->isEmpty()){ + $aIdPar=""; + }else{ + include $this->sRessourcesFile; + $aIdPar=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_par']; + $this->sSql=str_replace('sDnupro', $this->aFields['dnupro'], $this->sSql); + $this->sSql=str_replace('sIdCom', $this->aFields['ccodep'].$this->aFields['ccodir'].$this->aFields['ccocom'], $this->sSql); + //$this->sSql=str_replace('$sIdDnupro', $this->aFields['id_dnupro'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdPar,$aResultFetch[0]); + $this->sStatus=0; + } + } + $this->sSql=$aSql[$oBD->sgbd]['get_id_par_bnd']; + $this->sSql=str_replace('sIdDnupro', $this->aFields['id_dnupro'], $this->sSql); + $this->sSql=str_replace('sDnupro', substr($this->aFields['id_dnupro'], 6), $this->sSql); + $this->sSql=str_replace('sIdCom', $this->aFields['ccodep'].$this->aFields['ccodir'].$this->aFields['ccocom'], $this->sSql); + //$this->sSql=str_replace('$sIdDnupro', $this->aFields['id_dnupro'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdPar,$aResultFetch[0]); + + $this->sStatus=0; + } + } + $this->aExportFields=$this->getExportFields(); + } + return $aIdPar; + } + /** + * Cette méthode permet de récupérer la liste des objets PARCELLE + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau d'objets PARCELLE + */ + function get_aPar($oBD){ + $aPar=array(); + if($this->isEmpty()){ + $aPar=""; + }else{ + $aIdPar=$this->get_aId_Par($oBD); + foreach($aIdPar as $sIdPar){ + array_push($aPar,new Mj_Parcelle($oBD,$sIdPar,$this->aFields['id_dnupro'])); + } + } + return $aPar; + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['codeinsee']=$this->aFields['codeinsee']; + $aExportFields['annee_de_maj']=$this->sAnneeReference; + $aExportFields['dep_dir']=$this->getDepdir(); + $aExportFields['code_dep']=$this->aFields['ccodep']; + $aExportFields['code_com']=$this->aFields['ccocom']; + $aExportFields['lib_dep']=$this->aFields['libdep']; + $aExportFields['com']=$this->getCom(); + $aExportFields['libcom']=$this->aFields['libcom']; + $aExportFields['role']=""; + $aExportFields['vue']=""; + $aExportFields['numero_communal']=$this->aFields['dnupro']; + $aExportFields['rev_impo_bati']=$this->getRevImpoBati(); + $aExportFields['rev_impo_par']=$this->getRevImpoPar(); + $iContenance = 0; + foreach($this->aPar as $oPar){ + $iContenance = $iContenance + $oPar->getContenance(); + } + $aExportFields['total_contenance']=$this->getTotalContenance(); + $aExportFields['total_contenance_m2']=$this->getTotalContenanceM2(); + $aExportFields['total_revenu_cadastral']=$this->getRevenuCadastralTotal(); + $aExportFields['total_valeur_locative']=$this->getValeurLocativeBati(); + $aExportFields['emprise_totale_intersect']=$this->getTotalContenanceBati(); + $aExportFields['ha']=intval($iContenance/10000); + if ($aExportFields['ha']==0) { + $aExportFields['ha']=' '; + } + + $aExportFields['a']=intval(($iContenance%10000)/100); + $sContenanceA=$aExportFields['a']; + $sContenanceA= strval($sContenanceA); + $sTlenA=strlen($sContenanceA); + if ($aExportFields['ha']==' ' and $aExportFields['a']==0){ + $aExportFields['a']=' '; + } else { + if ($aExportFields['ha'] == ' ' and $sTlenA == 2 and substr($aExportFields['a'],0,1)== 0) { + $sDeuxiemeValeur = substr($aExportFields['a'],1,1); + $aExportFields['a'] = ' '.$sDeuxiemeValeur; + } else { + if ($aExportFields['ha'] != ' ' and $sTlenA == 1) { + $aExportFields['a']= '0'.$aExportFields['a']; + } + } + } + $aExportFields['ca']=$iContenance%100; + $sContenanceCa=$aExportFields['ca']; + $sContenanceCa= strval($sContenanceCa); + $sTlen=strlen($sContenanceCa); + if ($aExportFields['a'] != 0) + if ($sTlen == 1) { + $aExportFields['ca']= '0'.$aExportFields['ca']; + } + $aExportFields['exo_com_bati']=$this->getExoComBati(); + $aExportFields['rev_impo_com_bati']=$this->getRevImpoComBati(); + $aExportFields['exo_dep_bati']=$this->getExoDepBati(); + $aExportFields['rev_impo_dep_bati']=$this->getRevImpoDepBati(); + $aExportFields['exo_reg_bati']=$this->getExoRegBati(); + $aExportFields['rev_impo_reg_bati']=$this->getRevImpoRegBati(); + $aExportFields['exo_com_par']=$this->getExoComPar(); + $aExportFields['rev_impo_com_par']=$this->getRevImpoComPar(); + //$aExportFields['exo_dep_reg_par']=$this->getExoDepRegPar(); + //$aExportFields['rev_impo_dep_reg_par']=$this->getRevImpoDepRegPar(); + $aExportFields['exo_dep_par']=$this->getExoDepPar(); + $aExportFields['rev_impo_dep_par']=$this->getRevImpoDepPar(); + $aExportFields['exo_reg_par']=$this->getExoRegPar(); + $aExportFields['rev_impo_reg_par']=$this->getRevImpoRegPar(); + //modif float + $aExportFields['rev_impo_bati_float']=$this->getRevImpoBatifloat(); + $aExportFields['rev_impo_par_float']=$this->getRevImpoParfloat(); + $aExportFields['exo_com_bati_float']=$this->getExoComBatifloat(); + $aExportFields['rev_impo_com_bati_float']=$this->getRevImpoComBatifloat(); + $aExportFields['exo_dep_bati_float']=$this->getExoDepBatifloat(); + $aExportFields['rev_impo_dep_bati_float']=$this->getRevImpoDepBatifloat(); + $aExportFields['exo_reg_bati_float']=$this->getExoRegBatifloat(); + $aExportFields['rev_impo_reg_bati_float']=$this->getRevImpoRegBatifloat(); + $aExportFields['exo_com_par_float']=$this->getExoComParfloat(); + $aExportFields['rev_impo_com_par_float']=$this->getRevImpoComParfloat(); + //$aExportFields['exo_dep_reg_par_float']=$this->getExoDepRegParfloat(); + //$aExportFields['rev_impo_dep_reg_par_float']=$this->getRevImpoDepRegParfloat(); + $aExportFields['exo_dep_par_float']=$this->getExoDepParfloat(); + $aExportFields['rev_impo_dep_par_float']=$this->getRevImpoDepParfloat(); + $aExportFields['exo_reg_par_float']=$this->getExoRegParfloat(); + $aExportFields['rev_impo_reg_par_float']=$this->getRevImpoRegParfloat(); + $aExportFields['exo_tax_ad_par_float']=$this->getExoTaxeADParfloat(); + $aExportFields['rev_impo_tax_ad_par_float']=$this->getRevImpoTaxeADParfloat(); + $aExportFields['exo_tax_ad_par']=$this->getExoTaxeADPar(); + $aExportFields['rev_impo_tax_ad_par']=$this->getRevImpoTaxeADPar(); + } + return $aExportFields; + } + /** + * Cette méthode permet de concaténer les attributs ccodep et ccodir. + * /return Retourne une chaîne de caractères correspondant au DEP DIR du RP. + */ + function getDepdir(){ + $sDepdir = $this->aFields['ccodep']." ".$this->aFields['ccodir']; + return $sDepdir; + } + /** + * Cette méthode permet de concaténer les attributs ccocom et libcom. + * /return Retourne une chaîne de carcatères correspondant au COM du RP. + */ + function getCom(){ + $sCom = $this->aFields['ccocom']." ".$this->aFields['libcom']; + return $sCom; + } + /** + * Cette méthode permet de calculer le revenu imposable total du bâti. + * \return Retourne un entier. + */ + function getRevImpoBati(){ + $iRevImpoBati=0; + foreach($this->aBat as $oBat){ + $iRevImpoBati=$iRevImpoBati+ (int) $oBat->getRevenuCadastral();; + } + return $iRevImpoBati; + } + /** + * Cette méthode permet de calculer le revenu imposable total du bâti. + * \return Retourne un float. + */ + function getRevImpoBatifloat(){ + $fRevImpoBati=0; + foreach($this->aBat as $oBat){ + $fRevImpoBati=$fRevImpoBati+ (float) $oBat->getRevenuCadastralfloat();; + } + return $fRevImpoBati; + } + /** + * Cette méthode permet de calculer l'exonération communale totale du bâti. + * \return Retourne un entier + */ + function getExoComBati(){ + $iExoComBati=0; + foreach($this->aBat as $oBat){ + $iExoComBati=$iExoComBati + $oBat->getExoneration($oPro->aFields['l_ccodem']); + } + return $iExoComBati; + } + /** + * Cette méthode permet de calculer l'exonération communale totale du bâti. + * \return Retourne un float + */ + function getExoComBatifloat(){ + $fExoComBati=0; + foreach($this->aBat as $oBat){ + $fExoComBati=$fExoComBati + $oBat->getExonerationfloat($oPro->aFields['l_ccodem']); + } + return $fExoComBati; + } + /** + * Cette méthode permet de calculer le revenu imposable communal du bâti en fonction du revenu imposable total (bâti) et de l'exonération communale totale (bâti). + * \return Retourne un entier. + */ + function getRevImpoComBati(){ + $iRevImpoComBati=$this->getRevImpoBati()-$this->getExoComBati($oPro->aFields['l_ccodem']); + return $iRevImpoComBati; + } + /** + * Cette méthode permet de calculer le revenu imposable communal du bâti en fonction du revenu imposable total (bâti) et de l'exonération communale totale (bâti). + * \return Retourne un float. + */ + function getRevImpoComBatifloat(){ + $fRevImpoComBati=$this->getRevImpoBatifloat()-$this->getExoComBatifloat($oPro->aFields['l_ccodem']); + return $fRevImpoComBati; + } + /** + * Cette méthode permet de calculer l'exonération départementale totale du bâti. + * \return Retourne un entier + */ + function getExoDepBati(){ + $iExoDepBati=0; + foreach($this->aBat as $oBat){ + $iExoDepBati=$iExoDepBati + $oBat->getExoneration($oPro->aFields['l_ccodem']); + } + return $iExoDepBati; + } + /** + * Cette méthode permet de calculer l'exonération départementale totale du bâti. + * \return Retourne un float + */ + function getExoDepBatifloat(){ + $fExoDepBati=0; + foreach($this->aBat as $oBat){ + $fExoDepBati=$fExoDepBati + $oBat->getExonerationfloat($oPro->aFields['l_ccodem']); + } + return $fExoDepBati; + } + /** + * Cette méthode permet de calculer le revenu imposable départemental du bâti en fonction du revenu imposable total (bâti) et de l'exonération départemantale totale (bâti). + * \return Retourne un entier. + */ + function getRevImpoDepBati(){ + $iRevImpoDepBati=$this->getRevImpoBati()-$this->getExoDepBati(); + return $iRevImpoDepBati; + } + /** + * Cette méthode permet de calculer le revenu imposable départemental du bâti en fonction du revenu imposable total (bâti) et de l'exonération départemantale totale (bâti). + * \return Retourne un float. + */ + function getRevImpoDepBatifloat(){ + $fRevImpoDepBati=$this->getRevImpoBatifloat()-$this->getExoDepBatifloat(); + return $fRevImpoDepBati; + } + /** + * Cette méthode permet de calculer l'exonération régionale totale du bâti. + * \return Retourne un entier + */ + function getExoRegBati(){ + $iExoRegBati=0; + foreach($this->aBat as $oBat){ + $iExoRegBati=$iExoRegBati + $oBat->getExoneration($oPro->aFields['l_ccodem']); + } + return $iExoRegBati; + } + /** + * Cette méthode permet de calculer l'exonération régionale totale du bâti. + * \return Retourne un float + */ + function getExoRegBatifloat(){ + $fExoRegBati=0; + foreach($this->aBat as $oBat){ + $fExoRegBati=$fExoRegBati + $oBat->getExonerationfloat($oPro->aFields['l_ccodem']); + } + return $fExoRegBati; + } + /** + * Cette méthode permet de calculer le revenu imposable régional du bâti en fonction du revenu imposable total (bâti) et de l'exonération régionale totale (bâti). + * \return Retourne un entier. + */ + function getRevImpoRegBati(){ + $iRevImpoRegBati=$this->getRevImpoBati()-$this->getExoRegBati(); + return $iRevImpoRegBati; + } + /** + * Cette méthode permet de calculer le revenu imposable régional du bâti en fonction du revenu imposable total (bâti) et de l'exonération régionale totale (bâti). + * \return Retourne un float. + */ + function getRevImpoRegBatifloat(){ + $fRevImpoRegBati=$this->getRevImpoBatifloat()-$this->getExoRegBatifloat(); + return $fRevImpoRegBati; + } + /** + * Cette méthode permet de calculer l'emprise bâtie totale des parcelles. + * \return Retourne un entier. + */ + function getTotalContenanceBati(){ + $iContenance = 0; + foreach($this->aPar as $oPar){ + foreach($oPar->aIntersect as $oIntersect){ + $iContenanceBati = $iContenanceBati + $oIntersect->getEmpriseTotale(); + } + } + return $iContenanceBati; + } + /** + * Cette méthode permet de calculer le revenu imposable total des parcelles. + * \return Retourne un entier. + */ + function getRevImpoPar(){ + $fRevImpoPar=0; + foreach($this->aPar as $oPar){ + $fRevImpoPar=$fRevImpoPar+ (float) $oPar->getRevenuCadastral(); + $iRevImpoPar=round($fRevImpoPar); + } + return $iRevImpoPar; + } + /** + * Cette méthode permet de calculer le revenu imposable total des parcelles. + * \return Retourne un float. + */ + function getRevImpoParfloat(){ + $fRevImpoPar=0; + foreach($this->aPar as $oPar){ + $fRevImpoPar=$fRevImpoPar+ (float) $oPar->getRevenuCadastral(); + } + return $fRevImpoPar; + } + /** DEPRECATED + /** + * Cette méthode permet de calculer l'exonération (départementale et régionale) totale des parcelles. + * \return Retourne un entier + */ + /* + function getExoDepRegPar(){ + $fExoDepRegPar=0; + foreach($this->aPar as $oPar){ + $fExoDepRegPar=$fExoDepRegPar + $oPar->getRevenuCadastralAvecExo(); + } + $iExoDepRegPar = round($fExoDepRegPar); + return $iExoDepRegPar; + } + */ + /** + * Cette méthode permet de calculer le revenu imposable (départemental et régional) des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération (départementale et régionale) totale (parcelles). + * \return Retourne un entier. + */ + /* + function getRevImpoDepRegPar(){ + $iRevImpoDepRegPar=$this->getRevImpoPar()-$this->getExoDepRegPar(); + return $iRevImpoDepRegPar; + } + */ + /** + * Cette méthode permet de calculer l'exonération départementale totale des parcelles. + * \return Retourne un entier + */ + function getExoDepPar(){ + $fExoDepPar=0; + foreach($this->aPar as $oPar){ + $fExoDepPar=$fExoDepPar + $oPar->getRevenuCadastralDepAvecExo(); + } + $iExoDepPar = round($fExoDepPar); + return $iExoDepPar; + } + /** + * Cette méthode permet de calculer l'exonération départementale totale des parcelles. + * \return Retourne un float + */ + function getExoDepParfloat(){ + $fExoDepPar=0; + foreach($this->aPar as $oPar){ + $fExoDepPar=$fExoDepPar+$oPar->getRevenuCadastralDepAvecExo(); + } + return $fExoDepPar; + } + /** + * Cette méthode permet de calculer le revenu imposable départemental des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération (départementale et régionale) totale (parcelles). + * \return Retourne un entier. + */ + function getRevImpoDepPar(){ + $iRevImpoDepPar=$this->getRevImpoPar()-$this->getExoDepPar(); + return $iRevImpoDepPar; + } + /** + * Cette méthode permet de calculer le revenu imposable départemental des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération (départementale et régionale) totale (parcelles). + * \return Retourne un float. + */ + function getRevImpoDepParfloat(){ + $fRevImpoDepPar=$this->getRevImpoParfloat()-$this->getExoDepParfloat(); + return $fRevImpoDepPar; + } + /** + * Cette méthode permet de calculer l'exonération régionale totale des parcelles. + * \return Retourne un entier + */ + function getExoRegPar(){ + $fExoRegPar=0; + foreach($this->aPar as $oPar){ + $fExoRegPar=$fExoRegPar + $oPar->getRevenuCadastralRegAvecExo(); + } + $iExoRegPar = round($fExoRegPar); + return $iExoRegPar; + } + /** + * Cette méthode permet de calculer l'exonération régionale totale des parcelles. + * \return Retourne un float + */ + function getExoRegParfloat(){ + $fExoRegPar=0; + foreach($this->aPar as $oPar){ + $fExoRegPar=$fExoRegPar + $oPar->getRevenuCadastralRegAvecExo(); + } + return $fExoRegPar; + } + /** + * Cette méthode permet de calculer le revenu imposable régional des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération (départementale et régionale) totale (parcelles). + * \return Retourne un entier. + */ + function getRevImpoRegPar(){ + $iRevImpoRegPar=$this->getRevImpoPar()-$this->getExoRegPar(); + return $iRevImpoRegPar; + } + /** + * Cette méthode permet de calculer le revenu imposable régional des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération (départementale et régionale) totale (parcelles). + * \return Retourne un float. + */ + function getRevImpoRegParfloat(){ + $fRevImpoRegPar=$this->getRevImpoParfloat()-$this->getExoRegParfloat(); + return $fRevImpoRegPar; + } + /** + * Cette méthode permet de calculer la contenance totale des parcelles. + * \return Retourne un entier. + */ + function getTotalContenance(){ + $iContenance = 0; + foreach($this->aPar as $oPar){ + $iContenance = $iContenance + $oPar->aFields['dcntpa']; + } + return $iContenance; + } + /** + * Cette méthode permet de calculer la contenance totale des parcelles en mettre carré. + * \return Retourne un entier. + */ + function getTotalContenanceM2(){ + $iContenanceM2=0; + foreach($this->aPar as $oPar){ + $iContenanceM2 = $iContenanceM2 + $oPar->getContenance(); + } + return $iContenanceM2; + } + /** + * Cette méthode permet de récupérer le revenu cadastral total des parcelles. + * \return Retourne un double + */ + function getRevenuCadastralTotal(){ + $dRevCadastralTotal=0; + foreach($this->aPar as $oPar){ + $dRevCadastralTotal=$dRevCadastralTotal + $oPar->getRevenuCadastral(); + } + //$iRevCadastralTotal = round($dRevCadastralTotal); + return $dRevCadastralTotal; + } + /** + * Cette méthode permet de calculer l'éxonération communale totale des parcelles. + * \return Retourne 0; + */ + function getExoComPar(){ + $iExoComPar=0; + foreach($this->aPar as $oPar){ + $fExoComPar=$fExoComPar + $oPar->getRevenuCadastralComAvecExo(); + } + $iExoComPar = round($fExoComPar); + return $iExoComPar; + } + /** + * Cette méthode permet de calculer l'éxonération communale totale des parcelles. + * \return Retourne 0; + */ + function getExoComParfloat(){ + $fExoComPar=0; + foreach($this->aPar as $oPar){ + $fExoComPar=$fExoComPar + $oPar->getRevenuCadastralComAvecExo(); + } + return $fExoComPar; + } + /** + * Cette méthode permet de calculer le revenu imposable communal des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération communale totale (parcelles). + * \return Retourne un entier. + */ + function getRevImpoComPar(){ + $iRevImpoComPar=$this->getRevImpoPar()-$this->getExoComPar(); + return $iRevImpoComPar; + } + /** + * Cette méthode permet de calculer le revenu imposable communal des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération communale totale (parcelles). + * \return Retourne un float. + */ + function getRevImpoComParfloat(){ + $fRevImpoComPar=$this->getRevImpoParfloat()-$this->getExoComParfloat(); + return $fRevImpoComPar; + } + function getExoTaxeADPar(){ + $iExoTaxeAdPar=0; + foreach($this->aPar as $oPar){ + $fExoTaxeADPar=$fExoTaxeADPar + $oPar->getRevenuCadastralTaxeADAvecExo(); + } + $iExoTaxeADPar = round($fExoTaxeADPar); + return $iExoTaxeADPar; + } + /** + * Cette méthode permet de calculer l'éxonération des taxes additionnelles totale des parcelles. + * \return Retourne 0; + */ + function getExoTaxeADParfloat(){ + $fExoTaxeADPar=0; + foreach($this->aPar as $oPar){ + $fExoTaxeADPar=$fExoTaxeADPar + $oPar->getRevenuCadastralTaxeADAvecExo(); + } + return $fExoTaxeADPar; + } + /** + * Cette méthode permet de calculer le revenu imposable des taxes additionnelles des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération communale totale (parcelles). + * \return Retourne un entier. + */ + function getRevImpoTaxeAdPar(){ + $iRevImpoTaxeADPar=$this->getRevImpoPar()-$this->getExoTaxeADPar(); + return $iRevImpoTaxeADPar; + } + /** + * Cette méthode permet de calculer le revenu imposable des taxes additionnelles des parcelles en fonction du revenu imposable total (parcelles) et de l'exonération communale totale (parcelles). + * \return Retourne un float. + */ + function getRevImpoTaxeADParfloat(){ + $fRevImpoTaxeADPar=$this->getRevImpoParfloat()-$this->getExoTaxeADParfloat(); + return $fRevImpoTaxeADPar; + } + /** + * Cette méthode permet de récupérer la valeur locative totale du bâti. + * \return Retourne un double + */ + function getValeurLocativeBati(){ + $iValeurLocativeBati=0; + foreach($this->aBat as $oBat){ + $iValeurLocativeBati= $oBat->aFields['dvlpera'] + $iValeurLocativeBati; + } + return $iValeurLocativeBati; + } +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal_Parcelle.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal_Parcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..d78f88fe044ec4bbc9bba4bc9564d0b25390587e --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal_Parcelle.class.inc @@ -0,0 +1,145 @@ +<?php +/** +* \file Mj_Compte_Communal_Parcelle.class.inc +* \brief Mj_Compte_Communal_Parcelle.class.inc \n \n Ce fichier contient la classe php Mj_Compte_Communal_Parcelle +* +* Cette classe permet de s�lectionner les attributs n�cessaires afin de traiter un relev� de propri�t� en fonction d'un compte communal et d'un num�ro de parcelle. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj_Compte_Communal.class.inc"); + +class Mj_Compte_Communal_Parcelle extends Mj_Compte_Communal { + /** + * Identifiant national de la parcelle sur 15 caract�res. + */ + var $sIdPar; + /** + * Bool�en servant � savoir si on recherche une parcelle avec tout les batiments + */ + var $bFP=false; + + /** + * \param $sIdDnupro peut etre vide, un identifiant sera d�fini par une requete sql sur l'identifiant parcelle + * \param $sIdPar Identifiant de la parcelle. + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdDnupro,$sIdPar,$oBD,$bFP=false,$sEncryptedKey='',$AllSuf=false){ + $this->bAllSuf=$AllSuf; + $this->sEncryptKey=$sEncryptedKey; + include $this->sRessourcesFile; + if($sIdDnupro==""){ + $sSql=$aSql[$oBD->sgbd]['get_id_dnupro']; + $sSql=str_replace('idparpro', $sIdPar, $sSql); + $oPDOresult=$oBD->execute($sSql); + $aIdDnuProSql=$oBD->ligneSuivante ($oPDOresult); + $sIdDnupro=$aIdDnuProSql['iddnupro']; + $sDnupro=$aIdDnuProSql['dnupro']; + $oPDOresult=$oBD->fermeResultat(); + } + $this->sSql=$aSql[$oBD->sgbd]['compte_communal_parcelle']; + $this->sSql=str_replace('$sIdDnupro', $this->encrypt($sIdDnupro), $this->sSql); + $this->sSql=str_replace('$sIdPar', $sIdPar, $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + if($aCompteCom=$oBD->ligneSuivante($oPDOresult)){ + $this->aFields=$aCompteCom; + $this->aFields['id_dnupro']=$sIdDnupro; + //$this->aFields['dnupro']=$sIdDnupro; + $this->sStatus=0; + $oPDOresult=$oBD->fermeResultat(); + $this->aPro=$this->get_aPro($oBD); + $this->aBat=$this->get_aBat($oBD,$bFP); + $this->aPar=$this->get_aPar($oBD,$sIdPar,$sIdDnupro); + // r�cup�ration de l'ann�e de r�f�rence + $this->sSql=$aSql[$oBD->sgbd]['annee_reference']; + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $aAnneeReference=$oBD->ligneSuivante ($oPDOresult); + $this->sAnneeReference=$aAnneeReference['ANNEE']; + } + $oPDOresult=$oBD->fermeResultat(); + $this->aObjects=array_merge ($this->aPro,$this->aBat,$this->aPar); + }else{ + $this->sStatus=1; + $this->sMessage="Aucun compte communal trouv� pour la parcelle : ".$sIdPar; + $oPDOresult=$oBD->fermeResultat(); + } + } + } + /** + * Cette m�thode permet de r�cup�rer les ID_BAT en fonction d'un ID_DNUPRO donn� + * \return Retourne un tableau de ID_BAT + */ + function get_aId_Bat($sIdPar, $oBD, $bFP){ + if($this->isEmpty()){ + $aIdBat=""; + }else{ + include $this->sRessourcesFile; + $aIdBat=array(); + if (!$bFP){ + $this->sSql=$aSql[$oBD->sgbd]['get_id_bat_parcelle']; + $this->sSql=str_replace('$sIdDnupro', $this->aFields['id_dnupro'], $this->sSql); + $this->sSql=str_replace('$sIdPar', $this->aFields['id_par'], $this->sSql); + }else{ + $this->sSql=$aSql[$oBD->sgbd]['get_par_id_bat']; + $this->sSql=str_replace('sIdPar', $this->aFields['id_par'], $this->sSql); + } + $oPDOresult= $oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch = $oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdBat,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdBat; + } + /** + * Cette m�thode permet de r�cup�rer la liste des objets BATI + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau d'objets BATI + */ + function get_aBat($oBD,$bFP){ + $aBat=array(); + if($this->isEmpty()){ + $aBat=""; + }else{ + $aIdBat=$this->get_aId_Bat($sIdPar,$oBD,$bFP); + foreach($aIdBat as $sIdBat){ + array_push($aBat,new Mj_Bati($sIdBat,$oBD, $this->sEncryptKey)); + } + } + return $aBat; + } + /** + * Cette m�thode permet de r�cup�rer la liste des objets PARCELLE + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \param $sIdDnupro Identifiant du propri�taire + * \return Retourne un tableau d'objets PARCELLE + */ + function get_aPar($oBD,$sIdPar,$sIdDnupro){ + $aPar=array(); + if($this->isEmpty()){ + $aPar=""; + }else{ + $aIdPar=Array($sIdPar); + foreach($aIdPar as $sIdPar){ + array_push($aPar,new Mj_Parcelle($oBD,$sIdPar,$sIdDnupro,$this->sEncryptKey,$this->bAllSuf)); + } + } + return $aPar; + } +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal_Parcelles.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal_Parcelles.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..8b938de3a2067a6e92066c58cb2d8adec15aa4a6 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Compte_Communal_Parcelles.class.inc @@ -0,0 +1,121 @@ +<?php +/** +* \file Mj_Bati_Parcelles.class.inc +* \brief Mj_Bati_Parcelles.class.inc \n \n Ce fichier contient la classe php Mj_Bati_Parcelles +* +* Cette classe permet de s�lectionner les attributs n�cessaires afin de traiter les batis associ�s � une parcelle. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +require_once ("Mj.class.inc"); +require_once ("Mj_Compte_Communal_Parcelle.class.inc"); + +class Mj_Compte_Communal_Parcelles extends Mj { + + /** + * \param $aIdPar Tableau Identifiants des parcelles + * \param $oBD Objet de connexion + * \param $properties Tableau des propri�t�s + * \param $sLayerTypeParcelle Chaine Type de g�om�trie des parcelles + */ + function __construct($aIdPar,$oBD,$properties,$sLayerTypeParcelle){ + $i=0; + while ($aIdPar[$i]){ + array_push ($this->aObjects, new Mj_Compte_Communal_Parcelle("",$aIdPar[$i],$oBD)); + $i++; + } + foreach($this->getObjects('Mj_Compte_Communal_Parcelle') as $oCptParcelle){ + foreach($oCptParcelle->getObjects('Mj_Parcelle') as $oParcelle){ + $oParcelle->getEmprises($properties,$oBD,$sLayerTypeParcelle); + foreach($oParcelle->getObjects('Mj_Emprises') as $oEmprises){ + if($oEmprises->isError()){ + $this->sStatus=1; + $this->sMessage="Erreur lors des r�cup�rations des emprises, consulter le error.log"; + } + } + } + } + } + + /** + * \brief R�cup�ration de la surface totale des parcelles + */ + function getSurfaceCadastrale() { + $dSurfaceCadastrale = 0; + foreach($this->getObjects('Mj_Compte_Communal_Parcelle') as $oCptCom) { + $aFields=$oCptCom->getExportFields(); + $dSurfaceCadastrale = $aFields['total_contenance'] + $dSurfaceCadastrale; + } + return $dSurfaceCadastrale; + } + /** + * \brief R�cup�ration de la surface totale des parcelles en mettre carr� + */ + function getSurfaceCadastraleM2() { + $dSurfaceCadastraleM2 = 0; + foreach($this->getObjects('Mj_Compte_Communal_Parcelle') as $oCptCom) { + $aFields=$oCptCom->getExportFields(); + $dSurfaceCadastraleM2 = $aFields['total_contenance_m2'] + $dSurfaceCadastraleM2; + } + return $dSurfaceCadastraleM2; + } + /** + * \brief R�cup�ration des revenus de la subdivision fiscale des parcelles + */ + function getRevenuCadastral() { + $dRevenuCadastral=0; + foreach($this->getObjects('Mj_Compte_Communal_Parcelle') as $oCptCom) { + $aFields=$oCptCom->getExportFields(); + $dRevenuCadastral = $aFields['total_revenu_cadastral'] + $dRevenuCadastral; + } + return $dRevenuCadastral; + } + + /** + * \brief R�cup�ration des valeurs locatives + */ + function getValeurLocative() { + $dValeurLocative=0; + foreach($this->getObjects('Mj_Compte_Communal_Parcelle') as $oCptCom) { + $aFields=$oCptCom->getExportFields(); + $dValeurLocative=$aFields['total_valeur_locative'] + $dValeurLocative; + } + return $dValeurLocative; + } + /** + * \brief R�cup�ration de la emprises b�ties totale des parcelles + */ + function getSurfaceCadastraleBati() { + $dSurfaceCadastraleBati = 0; + foreach($this->getObjects('Mj_Compte_Communal_Parcelle') as $oCptCom) { + foreach($oCptCom->getObjects('Mj_Parcelle') as $oParcelle){ + foreach($oParcelle->getObjects('Mj_Emprises') as $oEmprises){ + $aFields=$oEmprises->getExportFields(); + if($aFields['titre']=="Emprise Bati"){ + $dSurfaceCadastraleBati = $aFields['emprise_totale_intersect'] + $dSurfaceCadastraleBati; + } + } + } + } + return $dSurfaceCadastraleBati; + } + /** + * \brief Cette m�thode permet de construire un tableau correspondant au relev� de propri�t�. + * \return Retourne un tableau associatif correspondant au relev� de propri�t�. + */ + function getExportFields(){ + $aExportFields=array(); + if(!empty($this->aObjects)){ + //partie des sommes (surfaces,revenus,valeurs locatives) + $aExportFields['Sum_revenu']=$this->getRevenuCadastral(); + $aExportFields['Sum_contenance']=$this->getSurfaceCadastrale(); + $aExportFields['Sum_contenance_m2']=$this->getSurfaceCadastraleM2(); + $aExportFields['Sum_valeur_locative']=$this->getValeurLocative(); + $aExportFields['Sum_contenance_bati']=$this->getSurfaceCadastraleBati(); + } + return $aExportFields; + } +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Depend_Descr.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Depend_Descr.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..e525d7bbea0fd8e5f9937d5287cc658181ab74db --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Depend_Descr.class.inc @@ -0,0 +1,102 @@ +<?php +/** +* \file Mj_Depend_Descr.class.inc +* \brief Mj_Depend_Descr.class.inc \n \n Ce fichier contient la classe php Mj_Depend_Descr +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Description Dépendance. +* +* \author John Bosch +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +require_once ("Mj.class.inc"); + +class Mj_Depend_Descr extends Mj { + /** + * \param $sIdDep Identifiant de la dépendance + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdDep,$oBD){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['depend_descr']; + $this->sSql=str_replace('$sIdDep',$sIdDep,$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante($oPDOresult); + $this->sStatus=0; + } + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété/Fiche Parcelle. + * \return Retourne un tableau associatif correspondant au relevé de propriété/Fiche Parcelle. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['num_invar']=$this->aFields['invar']; + $aExportFields['num_pev']=$this->aFields['dnupev']; + $aExportFields['num_depend']=$this->aFields['dnudes']; + $aExportFields['nature']=$this->aFields['l_cconad']; + $aExportFields['surface']=$this->aFields['dsudep']; + $aExportFields['ponderation']=$this->aFields['dcimlc']; + $aExportFields['Etat']=$this->aFields['detent']; + $aExportFields['l_Etat']=$this->aFields['l_detent']; + $aExportFields['mat_gros_mur']=$this->aFields['dmatgm']; + $aExportFields['lib_mat_gros_mur']=$this->aFields['lib_dmatgm']; + $aExportFields['mat_toiture']=$this->aFields['dmatto']; + $aExportFields['lib_mat_toiture']=$this->aFields['lib_dmatto']; + $aExportFields['nb_baignoires']=$this->aFields['dnbbai']; + $aExportFields['nb_douches']=$this->aFields['dnbdou']; + $aExportFields['nb_lavabos']=$this->aFields['dnblav']; + $aExportFields['nb_wc']=$this->aFields['dnbwc']; + $aExportFields['eau']=$this->getEau(); + $aExportFields['elect']=$this->getElect(); + $aExportFields['chauf']=$this->getChauf(); + } + return $aExportFields; + } + + /* + DEPRECATED 2013 + function getNature(){ + if ($this->aFields['cconad'] == "TR") { + return "Terrasse(s)"; + } + if ($this->aFields['cconad'] == "CV") { + return "Cave(s)"; + } + if ($this->aFields['cconad'] == "GR") { + return "Grenier(s)"; + } + if ($this->aFields['cconad'] == "GA") { + return "Garage(s)"; + } + } + */ + + function getEau(){ + if($this->aFields["geaulc"] == "O"){ + return "EAU"; + } + } + + function getElect(){ + if($this->aFields["gelelc"] == "O"){ + return "ELECT"; + } + } + + function getChauf(){ + if($this->aFields["gchclc"] == "O"){ + return "CHAUF"; + } + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Emprise.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Emprise.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..2ff7cf3dcd698e721a08929146ab3578334fde06 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Emprise.class.inc @@ -0,0 +1,101 @@ +<?php + +/** +* \file Mj_Emprise.class.inc +* \brief Mj_Emprise.class.inc \n \n Ce fichier contient la classe php Mj_Emprise +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie parcelle. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +/** +* \class Mj_Emprise +* \brief Mj_Emprise Class \n \n Mj_Emprise est une classe PHP qui hérite de la classe Mj_Emprise. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Emprise. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Attributes.class.inc"); + +class Mj_Emprise extends Mj { + + var $sIdEmprise=""; + /** + * Tableau + */ + var $aAttributesEmprise= array(); + + /** + * Cette méthode métier permet de récupérer les informations sur les couches intersectées par la surface de la parcelle interrogée. + * \param $aField Tableau des noms de champs associées à la vue utilisée. + * \param $aRow + * \param $iCompteur + * \param $iTolerance Valeur minimum de surface intersecté à partir de laquelle le contenu d'un enregistrement est affiché. + */ + function __construct($aField,$aRow,$iCompteur, $iTolerance) { + $aEmpriseParcelle= array(); + switch(strtoupper($aField["type"])) { + case "POINT" : + $aEmpriseParcelle["intersectsuf"] = $aRow; + $this->sIdEmprise=$iCompteur; + break; + case "LINE" : + if(round($aRow["intersect"]) >= $iTolerance){ + $aEmpriseParcelle["intersectsuf"] = $aRow; + $aEmpriseParcelle["intersectsuf"]["intersect_label"]= $aEmpriseParcelle["intersectsuf"]["intersect"]." m"; + $this->sIdEmprise=$iCompteur; + }else{ + $aEmpriseParcelle["intersectsuf"]["intersect"] = "0"; + $aEmpriseParcelle["intersectsuf"]["intersect_label"] = "0 m"; + $this->sIdEmprise=$iCompteur; + } + break; + case "POLYGON" : + if(round($aRow["intersect"]) >= $iTolerance){ + $aEmpriseParcelle["intersectsuf"] = $aRow; + $aEmpriseParcelle["ratio"] = @(round(($aEmpriseParcelle["intersectsuf"]["intersect"] / $aEmpriseParcelle["intersectsuf"]["suf_parcelle"]), 2) * 100); + $aEmpriseParcelle["intersectsuf"]["intersect_label"].=$aEmpriseParcelle["intersectsuf"]["intersect"]." m²"; + $aEmpriseParcelle["ratio_label"]=$aEmpriseParcelle["ratio"]." %"; + $this->sIdEmprise=$iCompteur; + }else{ + $aEmpriseParcelle["intersectsuf"]["intersect"]="0"; + $aEmpriseParcelle["intersectsuf"]["intersect_label"]="0 m²"; + $aEmpriseParcelle["ratio"]= "0"; + $aEmpriseParcelle["ratio_label"]=$aEmpriseParcelle["ratio"]." %"; + $this->sIdEmprise=$iCompteur; + } + break; + } + $this->aFields=$aEmpriseParcelle; + if(is_array($aEmpriseParcelle)){ + array_push($this->aAttributesEmprise, new Mj_Attributes($aEmpriseParcelle,$aField)); + } + $this->aObjects=$this->aAttributesEmprise; + } + + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['emprise_intersect']=$this->aFields["intersectsuf"]["intersect"]; + $aExportFields['emprise_intersect_label']=$this->aFields["intersectsuf"]["intersect_label"]; + if($this->aFields["ratio"]){ + $aExportFields['emprise_ratio']=$this->aFields["ratio"]; + $aExportFields['emprise_ratio_label']=$this->aFields["ratio_label"]; + } + $aExportFields['id_emprise']=$this->sIdEmprise; + } + return $aExportFields; + } + +} \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Emprises.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Emprises.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..df3969ca90f14ade589b68fbf7f09923962d58dc --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Emprises.class.inc @@ -0,0 +1,125 @@ +<?php + +/** +* \file Mj_Emprises.class.inc +* \brief Mj_Emprises.class.inc \n \n Ce fichier contient la classe php Mj_Emprises +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie parcelle. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +/** +* \class Mj_Emprises +* \brief Mj_Emprises Class \n \n Mj_Emprises est une classe PHP qui hérite de la classe Mj_Parcelle. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Emprises. +* +* \author Nicolas Chazeau +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Parcelle.class.inc"); +require_once ("Mj_Emprise.class.inc"); + +class Mj_Emprises extends Mj { + + /** + * Cette méthode métier permet de récupérer les informations sur les couches intersectées par la surface de la parcelle intérrogée. + * \param $oCadastre Objet classe Cadastre. + * \param $sIdPar Identifiant de la parcelle sélectionnée. + * \param $sView Vue Postgis à interroger. + * \param $iTolerance Valeur minimum de surface intersecté à partir de laquelle le contenu d'un enregistrement est affiché. + * \param $aField Tableau des noms de champs associées à la vue utilisée. + * \param $sLayerType Type de géométrie contenue dans la couche parcelle de référence. + * \param $sInclude Fichier de rendu (*.vhtml) à afficher en cas d'erreur. + * \param $sType (Facultatif) Paramètre signifiant si on veut un tableau HTML (par défaut) ou aucune mise en forme en sortie (valeurs possibles : HTML, TEXT). + * \private + * \return Un tableau HTML sous la forme d'une chaîne de caractères. + */ + + /** + * Tableau associatif comportant la liste des objets Emprises d'une parcelle + */ + var $aEmprisesParcellesSuf=array(); + + function __construct($oBD, $sIdPar, $sView, $iTolerance, $aField, $sLayerType) { + $sFunction = ""; + switch(strtoupper($aField["type"])) { + case "POINT" : + $sFunction.= "st_area2d"; + break; + case "LINE" : + $sFunction.= "st_length2d"; + break; + case "POLYGON" : + $sFunction.= "st_area2d"; + break; + } + ($sLayerType == "polygon") ? $sPrcTable = "v_parcelle" : $sPrcTable = "v_parcelle_point"; + + $sSql = "SELECT CAST(".$sFunction."(st_intersection(".$sPrcTable.".geom, CASE WHEN st_srid(".$sPrcTable.".geom) = st_srid(".$sView.".geom) THEN ".$sView.".geom ELSE st_transform(".$sView.".geom, st_srid(".$sPrcTable.".geom)) END)) AS DECIMAL(10,1)) AS intersect, "; + $sSql.= "st_area2d(".$sPrcTable.".geom) AS suf_parcelle, ".$sView.".* FROM ".$sPrcTable.", ".$sView." WHERE "; + $sSql.= "st_intersects(".$sPrcTable.".geom, CASE WHEN st_srid(".$sPrcTable.".geom) = st_srid(".$sView.".geom) THEN ".$sView.".geom ELSE st_transform(".$sView.".geom, st_srid(".$sPrcTable.".geom)) END) "; + $sSql.= "AND ".$sPrcTable.".id_par = '".$sIdPar."' ;"; + + $iResult=$oBD->execute($sSql); + if ($oBD->enErreur()) { + $this->sStatus = 1; + $this->sMessage = $oBD->getBDMessage(); + }else{ + $i=0; + while($aRow = $oBD->ligneSuivante ($iResult)) { + $oEmprise=new Mj_Emprise($aField,$aRow,$i,$iTolerance); + if($oEmprise->aFields["intersectsuf"]["intersect"]!="0"){ + array_push($this->aEmprisesParcellesSuf,$oEmprise); + $i++; + } + } + $iResult = $oBD->fermeResultat(); + } + $aValue["titre"]=$aField["title"]; + $aValue["type_geom"]=$aField["type"]; + $this->aFields=$aValue; + $this->aObjects=$this->aEmprisesParcellesSuf; + } + /* + * Récupère l'emprise totale d'un ensemble d'emprise (bati ou pos ou servitude etc) + * \return Décimal l'emprise totale + */ + function getEmpriseTotale() { + $dEmpriseTotale = 0; + foreach ($this->aEmprisesParcellesSuf as $oEmprise) { + $dEmpriseTotale = $dEmpriseTotale + (float) $oEmprise->aFields["intersectsuf"]["intersect"]; + } + return $dEmpriseTotale; + } + + function getEmpriseRatioTotale() { + $dEmpriseRatioTotale = 0; + foreach ($this->aEmprisesParcellesSuf as $oEmprise) { + $dEmpriseRatioTotale = $dEmpriseRatioTotale + (float) $oEmprise->aFields["ratio"]; + } + return $dEmpriseRatioTotale; + } + + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['titre']=$this->aFields["titre"]; + $aExportFields['type_geom']=$this->aFields["type_geom"]; + $aExportFields['emprise_totale_intersect']=$this->getEmpriseTotale(); + $aExportFields['emprise_totale_ratio']=$this->getEmpriseRatioTotale(); + } + return $aExportFields; + } + +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Exon_Suf.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Exon_Suf.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..0d7f97aa975ce564703a290a7509d19910c01e14 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Exon_Suf.class.inc @@ -0,0 +1,63 @@ +<?php + +/** +* \file Mj_Exon_Suf.class.inc +* \brief Mj_Exon_Suf.class.inc \n \n Ce fichier contient la classe php Mj_Exon_Suf +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Exon-Suf. +* +* \author Damien Bedel <damien.bedel@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Exon_Suf +* \brief Mj_Exon_Suf Class \n \n Mj_Exon_Suf est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Exon-Suf. +* +* \author Damien Bedel <damien.bedel@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); + +class Mj_Exon_Suf extends Mj { + /** + * \param $sIdSuf Identifiant de l'exonération de la partie d'évaluation + * \param $sRnuexn Numéro d'ordre d'exoneration temporaire + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdSuf,$sRnuexn,$oBD){ + include $this->sRessourcesFile; + $this->sSql = $aSql[$oBD->sgbd]['exon_suf']; + $this->sSql = str_replace('$sIdSuf', $sIdSuf, $this->sSql); + $this->sSql = str_replace('$sRnuexn', $sRnuexn, $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage = $oBD->getBDMessage(); + }else{ + $this->aFields = $oBD->ligneSuivante ($oPDOresult); + $this->sStatus=0; + } + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['rnuexn']=$this->aFields['rnuexn']; + $aExportFields['ccolloc']=$this->aFields['ccolloc']; + $aExportFields['nat_exo']=$this->aFields['gnexts']; + $aExportFields['jfinex']=$this->aFields['jfinex']; + $aExportFields['pexn']=$this->aFields['pexn']; + $aExportFields['rcexnba']=$this->aFields['rcexnba']; + } + return $aExportFields; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Exone_Pev.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Exone_Pev.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..9d2b1a68b1de64d542a4ed8234d3c977eea39a45 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Exone_Pev.class.inc @@ -0,0 +1,90 @@ +<?php +/** +* \file Mj_Exone_Pev.class.inc +* \brief Mj_Exone_Pev.class.inc \n \n Ce fichier contient la classe php Mj_Exone_Pev +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Exone-Pev. +* +* \author Damien Bedel <damien.bedel@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Exone_Pev +* \brief Mj_Exone_Pev Class \n \n Mj_Exone_Pev est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Exone-Pev. +* +* \author Damien Bedel <damien.bedel@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); + +class Mj_Exone_Pev extends Mj { + /** + * \param $sIdEx Identifiant de l'exonération de la partie d'évaluation + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdEx,$oBD){ + include $this->sRessourcesFile; + $this->sSql = $aSql[$oBD->sgbd]['exone_pev']; + $this->sSql = str_replace('$sIdEx', $sIdEx, $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if ($oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage = $oBD->getBDMessage(); + }else{ + $this->aFields = $oBD->ligneSuivante ($oPDOresult); + $this->sStatus=0; + } + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + } + else{ + $aExportFields['coll']=$this->aFields['ccolloc']; + $aExportFields['nat_exo']=$this->aFields['gnextl']; + $aExportFields['an_ret']=$this->getAnret(); + $aExportFields['an_deb']=$this->getAndeb(); + $aExportFields['fraction_rc_exo']=$this->aFields['rcexba2']; + $aExportFields['pourc_exo']=$this->getPourcExo(); + $aExportFields['tx_om']="<font color=red><b>Info Manquante</b></font>"; + $aExportFields['coef']="<font color=red><b>Info Manquante</b></font>"; + } + return $aExportFields; + } + + /** + * Cette méthode permet de récupérer les deux derniers caractères de l'attribut janimp. + * /return Retourne une chaîne de caractères. + */ + function getAnret(){ + $sAnret=$this->aFields['janimp']; + $sAnret= substr("$sAnret", 2, 2); + return $sAnret; + } + /** + * Cette méthode permet de récupérer les deux derniers caractères de l'attribut jandeb. + * /return Retourne une chaîne de caractères. + */ + function getAndeb(){ + $sAndeb=$this->aFields['jandeb']; + $sAndeb= substr("$sAndeb", 2, 2); + return $sAndeb; + } + /** + * Cette méthode permet de récupérer le pourcentage d'éxonération à partir du champ 'pexb'. + * /return Retourne un entier + */ + function getPourcExo(){ + $iPourcExo=(int)($this->aFields['pexb'])/100; + return $iPourcExo; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Habit_Descr.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Habit_Descr.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..e22b0fcbd719c37011eccd40e8e1b07aa7c1fca9 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Habit_Descr.class.inc @@ -0,0 +1,159 @@ +<?php +/** +* \file Mj_Habit_Descr.class.inc +* \brief Mj_Habit_Descr.class.inc \n \n Ce fichier contient la classe php Mj_Habit_Descr +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Description Habitation. +* +* \author John Bosch +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +require_once ("Mj.class.inc"); + +class Mj_Habit_Descr extends Mj { + /** + * \param $aIdDescrHab Identifiants de la partie Description Habitation (id_pev et dnudes) + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($aIdDescrHab,$oBD){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['habit_descr']; + $this->sSql=str_replace('$sIdPev',$aIdDescrHab['id_pev'],$this->sSql); + $this->sSql=str_replace('$sDnudes',$aIdDescrHab['dnudes'],$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante($oPDOresult); + $this->sStatus=0; + } + } + + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété/Fiche Parcelle. + * \return Retourne un tableau associatif correspondant au relevé de propriété/Fiche Parcelle. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['num_invar']=$this->aFields['invar']; + $aExportFields['num_pev']=$this->aFields['dnupev']; + $aExportFields['garage']=$this->getGarage(); + $aExportFields['suf_garage']=$this->aFields['dsueic1']; + $aExportFields['cave']=$this->getCave(); + $aExportFields['suf_cave']=$this->aFields['dsueic2']; + $aExportFields['grenier']=$this->getGrenier(); + $aExportFields['suf_grenier']=$this->aFields['dsueic3']; + $aExportFields['terrasse']=$this->getTerrasse(); + $aExportFields['suf_terrasse']=$this->aFields['dsueic4']; + $aExportFields['nb_baignoires']=$this->aFields['dnbbai']; + $aExportFields['nb_douches']=$this->aFields['dnbdou']; + $aExportFields['nb_lavabos']=$this->aFields['dnblav']; + $aExportFields['nb_wc']=$this->aFields['dnbwc']; + $aExportFields['nb_piece_principal']=$this->aFields['dnbppr']; + $aExportFields['nb_sam']=$this->aFields['dnbsam']; + $aExportFields['nb_chambre']=$this->aFields['dnbcha']; + $aExportFields['nb_cuisine_m9']=$this->aFields['dnbcu8']; + $aExportFields['nb_cuisine_p9']=$this->aFields['dnbcu9']; + $aExportFields['nb_salle_eau']=$this->aFields['dnbsea']; + $aExportFields['nb_annexe']=$this->aFields['dnbann']; + $aExportFields['nb_piece_total']=$this->aFields['dnbpdc']; + $aExportFields['suf_piece_total']=$this->aFields['dsupdc']; + $aExportFields['mat_gros_mur']=$this->aFields['dmatgm']; + $aExportFields['lib_mat_gros_mur']=$this->aFields['lib_dmatgm']; + $aExportFields['mat_toiture']=$this->aFields['dmatto']; + $aExportFields['lib_mat_toiture']=$this->aFields['lib_dmatto']; + $aExportFields['annee_constr']=$this->aFields['jannat']; + $aExportFields['Etat']=$this->aFields['detent']; + $aExportFields['l_Etat']=$this->aFields['l_detent']; + $aExportFields['nb_niveaux']=$this->aFields['dnbniv']; + $aExportFields['eau']=$this->getEau(); + $aExportFields['elect']=$this->getElect(); + $aExportFields['esc_serv']=$this->getEsc(); + $aExportFields['gaz']=$this->getGaz(); + $aExportFields['asc']=$this->getAsc(); + $aExportFields['chauf']=$this->getChauf(); + $aExportFields['vide_ord']=$this->getVide(); + $aExportFields['egout']=$this->getEgout(); + } + return $aExportFields; + } + + function getGarage(){ + if ($this->aFields['cconad1'] == "GA"){ + return "Garage(s)"; + } + } + + function getCave(){ + if ($this->aFields['cconad2'] == "CV"){ + return "Cave(s)"; + } + } + + function getGrenier(){ + if ($this->aFields['cconad3'] == "GR"){ + return "Greniers(s)"; + } + } + + function getTerrasse(){ + if ($this->aFields['cconad4'] == "TR"){ + return "Terrasse(s)"; + } + } + + function getEau(){ + if ($this->aFields["geaulc"] == "O"){ + return "EAU"; + } + } + + function getElect(){ + if ($this->aFields["gelelc"] == "O"){ + return "ELECT"; + } + } + + function getEsc(){ + if ($this->aFields["gesclc"] == "O"){ + return "ESC_SERV"; + } + } + + function getGaz(){ + if ($this->aFields["ggazlc"] == "O"){ + return "GAZ"; + } + } + + function getAsc(){ + if ($this->aFields["gasclc"] == "O"){ + return "ASC"; + } + } + + function getChauf(){ + if ($this->aFields["gchclc"] == "O"){ + return "CHAUF"; + } + } + + function getVide(){ + if ($this->aFields["gvorlc"] == "O"){ + return "VIDE_ORD"; + } + } + + function getEgout(){ + if ($this->aFields["gteglc"] == "O"){ + return "EGOUT"; + } + } + +} +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Lot_Local.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Lot_Local.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..fdbb87b1d5c39509aca079cba920282bb2e7a199 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Lot_Local.class.inc @@ -0,0 +1,66 @@ +<?php +/** +* \file Mj_Lot_Local.class.inc +* \brief Mj_Lot_Local.class.inc \n \n Ce fichier contient la classe php Mj_Lot_Local +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie lot-local. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Lot_Local +* \brief Mj_Lot_Local Class \n \n Mj_Lot_Local est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie lot-local. +* +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); + +class Mj_Lot_Local extends Mj { + /** + * \param $sIdBat Identifiant de bâti + * \param $sKlot Identifiant d'un lot + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdBat,$sKlot,$oBD){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['lot_local']; + $this->sSql=str_replace('$sIdBat', $sIdBat, $this->sSql); + $this->sSql=str_replace('$sKlot', $sKlot, $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + $this->sStatus=0; + } + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['lot']=$this->getLot(); + } + return $aExportFields; + } + /** + * Cette méthode permet de concaténer les différents attributs d'un lot-local afin d'obtenir une seul chaine de caractères. + * \return Retourne une chaine de caractères. + */ + function getLot(){ + $NumLot = (string) ((int) $this->aFields['dnulot']); + $sLot = $this->aFields['dnupdl']." LOT ".$NumLot." ".$this->aFields['dnumql']." /".$this->aFields['ddenql']; + return $sLot; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Parcelle.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Parcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..eec0600494fe8396d74854fdfb224656dd320d44 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Parcelle.class.inc @@ -0,0 +1,567 @@ +<?php +/** +* \file Mj_Parcelle.class.inc +* \brief Mj_Parcelle.class.inc \n \n Ce fichier contient la classe php Mj_Parcelle +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie parcelle. +* +* \author Fabien Marty <fabien.marty@veremes.com> +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Parcelle +* \brief Mj_Parcelle Class \n \n Mj_Parcelle est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie parcelle. +* +* \author Fabien Marty <fabien.marty@veremes.com> +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Suf.class.inc"); +require_once ("Mj_Emprises.class.inc"); +require_once ("Mj_PosPlu.class.inc"); + +class Mj_Parcelle extends Mj { + /** + * Tableau associatif comportant la liste des objets Suf d'une parcelle + */ + var $aSuf=array(); + /** + * Tableau associatif comportant la liste des objets Emprises d'une parcelle + */ + var $aIntersect=array(); + /** + * Tableau associatif comportant la liste des objets PosPlu d'une parcelle + */ + var $aPosPlu=array(); + + /** + * Constructeur + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \param $sIdDnupro Identifiant du propriétaire + */ + function __construct($oBD,$sIdPar,$sIdDnupro,$sEncryptedKey='', $bAllSuf=false){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['parcelle']; + $this->sSql=str_replace('$sIdPar', $sIdPar, $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + if (!$this->aFields=$oBD->ligneSuivante ($oPDOresult)){ + $this->sMessage='La parcelle "'.$sIdPar.'" n\'existe pas dans les données Majic.'; + $this->sStatus=1; + }else{ + $this->sStatus=0; + } + } + $aSuf=$this->get_aSuf($oBD,$sIdPar,$sIdDnupro, $sEncryptedKey, $bAllSuf); + + //$this->get_aPosPlu($oBD,$sIdPar); + if ($this->aPosPlu==""){ + $this->aObjects=$this->aSuf; + }else{ + $this->aObjects=array_merge ($this->aSuf, $this->aPosPlu); + } + } + + /** + * Cette méthode permet de récupérer la liste des objets PosPlu d'une parcelle + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \return Retourne un tableau d'objets PosPlu + */ + function get_aPosPlu($oBD,$sIdPar){ + $aPosPlu=array(); + if($this->isEmpty()){ + $this->aPosPlu=""; + }else{ + $sIdParpos = substr($sIdPar,3); + $sCodCom=$this->get_sCodCom($oBD,$sIdPar); + $aIdPosPlu=$this->get_aId_PosPlu($oBD,$sIdParpos,$sCodCom); + foreach($aIdPosPlu as $sIdPosPlu){ + array_push($this->aPosPlu, new Mj_PosPlu($oBD,$sIdPosPlu, $sIdParpos,$sCodCom)); + } + } + return $aPosPlu; + } + + function get_aId_PosPlu($oBD,$sIdPar,$sCodCom){ + include $this->sRessourcesFile; + $aIdPosPlu=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_pos_plu']; + $this->sSql=str_replace('$sIdPar',$sIdPar,$this->sSql); + $this->sSql=str_replace('$sCodCom',$sCodCom,$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + + array_push($aIdPosPlu,$aResultFetch[0]); + $this->sStatus=0; + } + } + return $aIdPosPlu; + } + /** + * Cette méthode permet de récupérer le CodCom en fonction d'un Id_Par donné + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \return Retourne une chaîne de caractères + */ + function get_sCodCom($oBD,$sIdPar){ + include $this->sRessourcesFile; + $aCodCom=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_codcom']; + $this->sSql=str_replace('$sIdPar',$sIdPar,$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aCodCom,$aResultFetch[0]); + $this->sStatus=0; + } + } + $sCodCom=$aCodCom[0]; + return $sCodCom; + } + + /** + * Cette méthode permet de récupérer la liste des objets Suf d'une parcelle + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \param $sIdDnupro Identifiant du propriétaire + * \return Retourne un tableau d'objets Suf + */ + function get_aSuf($oBD,$sIdPar,$sIdDnupro,$sEncryptedKey='',$bAllSuf){ + if($this->isEmpty()){ + $this->aSuf=""; + }else{ + $aIdSuf=$this->get_aId_Suf($oBD,$sIdPar,$sIdDnupro); + foreach($aIdSuf as $sIdSuf){ + array_push($this->aSuf,new Mj_Suf($oBD,$sIdSuf,$sIdDnupro,$sEncryptedKey,$bAllSuf)); + } + } + return $aSuf; + } + /** + * Cette méthode permet de récupérer les Id_Suf en fonction d'un Id_Par donné + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \param $sIdDnupro Identifiant du propriétaire + * \return Retourne un tableau de chaînes de caractères + */ + function get_aId_Suf($oBD,$sIdPar,$sIdDnupro){ + include $this->sRessourcesFile; + $aIdSuf=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_suf']; + $this->sSql=str_replace('sIdPar',$sIdPar,$this->sSql); + $this->sSql=str_replace('sIdDnupro',$sIdDnupro,$this->sSql); + $this->sSql=str_replace('sDnupro',substr($sIdDnupro,6),$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdSuf,$aResultFetch[0]); + $this->sStatus=0; + } + } + return $aIdSuf; + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['dateheure']=date("d/m/Y")." a ".date("H:m"); + $aExportFields['idpar']=$this->aFields['id_par']; + $aExportFields['date']=$this->getJdatat(); + $aExportFields['section']=$this->aFields['ccosec']; + $aExportFields['num_plan']=$this->aFields['dnupla']; + $aExportFields['num_parc']=$this->getNumeroParcelle(); + $aExportFields['num_voirie']=$this->getNumeroVoirie(); + $aExportFields['adresse']=$this->getAdresseParcelle(); + $aExportFields['code_rivoli']=$this->aFields['ccoriv']; + $aExportFields['num_parc_prim']=$this->aFields['dparpi']; + $aExportFields['fp_dp']=$this->aFields['gparnf']; + + if($this->aFields['gurbpa'] == "U" ) { + $aExportFields['gurbpa'] = "Oui"; + }else{ + $aExportFields['gurbpa'] = "Non"; + } + + if($this->aFields['gparbat'] == "" || $this->aFields['gparbat'] == "0") { + $aExportFields['gparbat'] = "Non"; + }else{ + $aExportFields['gparbat'] = "Oui"; + } + $aExportFields['typevoie']=$this->aFields['typevoie']; + if ($this->aFields['typevoie'] == "3" ) { + $aExportFields['lieudit']=$this->getAdresseParcelle(); + }else{ + $aExportFields['lieudit']=""; + } + + $aExportFields['surface']=$this->aFields['dcntpa']; + $aExportFields['dnupro']=$this->aFields['dnupro']; + $aExportFields['s_tar']=$this->getSTar(); + $aExportFields['suf']=$this->getSuf(); + $aExportFields['grss_gr']=$this->getGrssGr(); + $aExportFields['clas']=$this->getClas(); + $aExportFields['nat_cult']=$this->getNatCult(); + $iContenance = $this->getContenance (); + $aExportFields['ha']=intval($iContenance/10000); + if ($aExportFields['ha'] == 0) { + $aExportFields['ha']= ' '; + } + $aExportFields['a']=intval(($iContenance%10000)/100); + $sContenanceA=$aExportFields['a']; + $sContenanceA=strval($sContenanceA); + $sTlenA=strlen($sContenanceA); + if ($aExportFields['ha'] == ' ' and $aExportFields['a'] == 0){ + $aExportFields['a']= ' '; + }else{ + if ($aExportFields['ha'] == ' ' and $sTlenA == 2 and (substr($aExportFields['a'],0,1)== 0)) { + $sDeuxiemeValeur= substr($aExportFields['a'],1,1); + $aExportFields['a']= ' '.$sDeuxiemeValeur; + } else { + if ($aExportFields['ha'] != ' ' and $sTlenA == 1) { + $aExportFields['a']= '0'.$aExportFields['a']; + } + } + } + $aExportFields['ca']=$iContenance%100; + $sContenanceCa=$aExportFields['ca']; + $sContenanceCa= strval($sContenanceCa); + $sTlen=strlen($sContenanceCa); + if ($aExportFields['a'] != 0) + if ($sTlen == 1) { + $aExportFields['ca']= '0'.$aExportFields['ca']; + } + $aExportFields['revenu_cadastral_avec_exo']=$this->getRevenuCadastralAvecExo(); + $aExportFields['revenu_cadastral_com_avec_exo']=$this->getRevenuCadastralComAvecExo(); + $aExportFields['revenu_cadastral_dep_avec_exo']=$this->getRevenuCadastralDepAvecExo(); + $aExportFields['revenu_cadastral_reg_avec_exo']=$this->getRevenuCadastralRegAvecExo(); + $aExportFields['revenu_cadastral']=$this->getRevenuCadastral(); + $aExportFields['revenu_cadastral_txt']=$this->setFloatToText($this->getRevenuCadastral()); + $aExportFields['revenu_reference']=$this->getRevenuReference(); + $aExportFields['revenu_reference_txt']=$this->setFloatToText($this->getRevenuReference()); + //$aExportFields['nat_exo']=$this->getNatExo(); + $aExportFields['contenance']=$iContenance; + } + return $aExportFields; + } + /** + * Cette méthode permet d'avoir l'attribut dnupla sur 4 caractères. + * \return Retourne une chaîne de caractères. + */ + function getNumeroParcelle(){ + if(strlen($this->aFields['dnupla']) == 1){ + return "000".$this->aFields['dnupla']; + } + if(strlen($this->aFields['dnupla']) == 2){ + return "00".$this->aFields['dnupla']; + } + if(strlen($this->aFields['dnupla']) == 3){ + return "0".$this->aFields['dnupla']; + } + if(strlen($this->aFields['dnupla']) == 4){ + return $this->aFields['dnupla']; + } + + } + /** + * Cette méthode permet de récupérer les deux derniers caractères de l'attribut Jdatat et d'y ajouter 1. + * \return Retourne une chaîne de caractères. + */ + function getJdatat(){ + $sNewJdatat=$this->aFields['jdatat']; + if (preg_match( '`^\d{1,2}/\d{1,2}/\d{4}$`' , $sNewJdatat ) ){ + $sNewJdatat=substr("$sNewJdatat", 6, 4)+1; + $sNewJdatat=(string)(substr("$sNewJdatat", 2, 2)); + }else if (preg_match( '`^\d{1,2}/\d{1,2}/\d{2}$`' , $sNewJdatat ) ){ + $sNewJdatat=(string) (substr("$sNewJdatat", 6, 2)+1); + if(strlen($sNewJdatat) == 1){ + $sNewJdatat='0'.$sNewJdatat; + } + $sNewJdatat=(string) (substr("$sNewJdatat", -2, 2)); + }else{ + $sNewJdatat=substr("$sNewJdatat", 4, 4)+1; + $sNewJdatat=(string)(substr("$sNewJdatat", 2, 2)); + } + return $sNewJdatat; + } + /** + * Cette méthode permet de concaténer les attributs dnvoiri et indic. + * \return Retourne une chaîne de caractères. + */ + function getNumeroVoirie(){ + $sNumeroVoirie = ltrim($this->aFields['dnvoiri'],'0').$this->aFields['dindic']; + return $sNumeroVoirie; + } + /** + * Cette méthode permet de concaténer les attributs cconvo et dvoilib. + * \return Retourne une chaîne de caractères. + */ + function getAdresseParcelle(){ + $sAdresseParcelle = rtrim($this->aFields['cconvo'])." ".rtrim($this->aFields['dvoilib']); + return $sAdresseParcelle; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 's_tar' dans le tableau aSuf. + * \return Retourne une chaîne de caractères. + */ + function getSTar(){ + if(count($this->aSuf)==1) { + return $this->aSuf[0]->aFields['ccostn']; + } else { + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'suf' dans le tableau aSuf. + * \return Retourne une chaîne de caractères. + */ + function getSuf(){ + if(count($this->aSuf)==1) { + return $this->aSuf[0]->aFields['ccosub']; + }else { + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'grss_gr' dans le tableau aSuf. + * \return Retourne une chaîne de caractères. + */ + function getGrssGr(){ + if(count($this->aSuf)==1) { + return $this->aSuf[0]->aFields['dsgrpf']; + }else { + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'clas' dans le tableau aSuf. + * \return Retourne une chaîne de caractères. + */ + function getClas(){ + if(count($this->aSuf)==1) { + return $this->aSuf[0]->aFields['dclssf']; + }else { + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'nat_cult' dans le tableau aSuf. + * \return Retourne une chaîne de caractères. + */ + function getNatCult(){ + if(count($this->aSuf)==1) { + return $this->aSuf[0]->aFields['cnatsp']; + }else { + return ''; + } + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'revenu cadastral' dans le tableau aSuf. + * \return Retourne un nombre réel (float). + */ + function getRevenuCadastral(){ + $fRevenuCadastral = 0; + foreach ($this->aSuf as $oSuf) { + $fRevenuCadastral = $fRevenuCadastral + (float) $oSuf->getRevenuCadastral(); + } + return $fRevenuCadastral; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'revenu reference' dans le tableau aSuf. + * \return Retourne un nombre réel (float). + */ + function getRevenuReference(){ + $fRevenuReference = 0; + foreach ($this->aSuf as $oSuf) { + $fRevenuReference = $fRevenuReference + (float) $oSuf->getRevenuReference(); + } + return $fRevenuReference; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'revenu cadastral' pour des parcelles avec exonération dans le tableau aSuf. + * \return Retourne un nombre réel (float). + */ + function getRevenuCadastralAvecExo(){ + $fRevenuCadastralAvecExo = 0; + foreach ($this->aSuf as $oSuf) { + if(ereg ("TA", $oSuf->getNatExo())){ + $fRevenuCadastralAvecExo = $fRevenuCadastralAvecExo + (float) $oSuf->getRevenuCadastral(); + } + } + return $fRevenuCadastralAvecExo; + } + + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'revenu cadastral' pour des parcelles avec exonération dans le tableau aSuf. + * lorsque l'exoneration est procuré par une commune, un groupement de commune ou toutes collectivité + * \return Retourne un nombre réel (float). + */ + function getRevenuCadastralComAvecExo(){ + $fRevenuCadastralComAvecExo = 0; + foreach ($this->aSuf as $oSuf) { + if(ereg ("EP", $oSuf->aFields['gnexps']) or ereg("CD", $oSuf->aFields['gnexps']) or ereg("CR", $oSuf->aFields['gnexps']) or ereg("NI", $oSuf->aFields['gnexps']) or ereg("RT", $oSuf->aFields['gnexps'])){ + $fRevenuCadastralComAvecExo = $fRevenuCadastralComAvecExo + (float) $oSuf->getRevenuCadastral(); + } else { + if($oSuf->getCcolloc("C") == true) { + $fRevenuCadastralComExo = $oSuf->getRevenuCadastralExo("C"); + $fRevenuCadastralComAvecExo = $fRevenuCadastralComAvecExo + (float) $fRevenuCadastralComExo; + } else { + if($oSuf->getCcolloc("TC") == true) { + $fRevenuCadastralComExo = $oSuf->getRevenuCadastralExo("TC"); + $fRevenuCadastralComAvecExo = $fRevenuCadastralComAvecExo + (float) $fRevenuCadastralComExo; + } else { + if($oSuf->getCcolloc("GC") == true) { + $fRevenuCadastralComExo = $oSuf->getRevenuCadastralExo("GC"); + $fRevenuCadastralComAvecExo = $fRevenuCadastralComAvecExo + (float) $fRevenuCadastralComExo; + } + } + } + } + } + return $fRevenuCadastralComAvecExo; + } + + function getRevenuCadastralTaxeADAvecExo(){ + $fRevenuCadastralTaxeADAvecExo = 0; + foreach ($this->aSuf as $oSuf) { + if(ereg ("EP", $oSuf->aFields['gnexps']) or ereg("CD", $oSuf->aFields['gnexps']) or ereg("CR", $oSuf->aFields['gnexps']) or ereg("NI", $oSuf->aFields['gnexps']) or ereg("RT", $oSuf->aFields['gnexps'])){ + $fRevenuCadastralTaxeADAvecExo = $fRevenuCadastralTaxeADAvecExo + (float) $oSuf->getRevenuCadastral(); + } else { + if($oSuf->getCcolloc("A") == true) { + + $fRevenuCadastralTaxeADExo = $oSuf->getRevenuCadastralExo("A"); + + $fRevenuCadastralTaxeADAvecExo = $fRevenuCadastralTaxeADAvecExo + (float) $fRevenuCadastralTaxeADExo; + } + } + } + return $fRevenuCadastralTaxeADAvecExo; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'revenu cadastral' pour des parcelles avec exonération dans le tableau aSuf. + * lorsque l'exoneration est procuré par le département ou toutes collectivité + * \return Retourne un nombre réel (float). + */ + function getRevenuCadastralDepAvecExo(){ + $fRevenuCadastralDepAvecExo = 0; + foreach ($this->aSuf as $oSuf) { + if(ereg ("EP", $oSuf->aFields['gnexps']) or ereg("CD", $oSuf->aFields['gnexps']) or ereg("DR", $oSuf->aFields['gnexps']) or ereg("NI", $oSuf->aFields['gnexps']) or ereg("RT", $oSuf->aFields['gnexps'])){ + $fRevenuCadastralDepAvecExo = $fRevenuCadastralDepAvecExo + (float) $oSuf->getRevenuCadastral(); + } else { + if($oSuf->getCcolloc("D") == true) { + $fRevenuCadastralDepExo = $oSuf->getRevenuCadastralExo("D"); + $fRevenuCadastralDepAvecExo = $fRevenuCadastralDepAvecExo + (float) $fRevenuCadastralDepExo; + } else { + if($oSuf->getCcolloc("TC") == true) { + $fRevenuCadastralDepExo = $oSuf->getRevenuCadastralExo("TC"); + $fRevenuCadastralDepAvecExo = $fRevenuCadastralDepAvecExo + (float) $fRevenuCadastralDepExo; + } + } + } + } + return $fRevenuCadastralDepAvecExo; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'revenu cadastral' pour des parcelles avec exonération dans le tableau aSuf. + * lorsque l'exoneration est procuré par la région ou toutes collectivité + * \return Retourne un nombre réel (float). + */ + function getRevenuCadastralRegAvecExo(){ + $fRevenuCadastralRegAvecExo = 0; + foreach ($this->aSuf as $oSuf) { + if(ereg ("EP", $oSuf->aFields['gnexps']) or ereg("DR", $oSuf->aFields['gnexps']) or ereg("CR", $oSuf->aFields['gnexps']) or ereg("NI", $oSuf->aFields['gnexps']) or ereg("RT", $oSuf->aFields['gnexps'])){ + $fRevenuCadastralRegAvecExo = $fRevenuCadastralRegAvecExo + (float) $oSuf->getRevenuCadastral(); + } else { + if($oSuf->getCcolloc("R") == true) { + $fRevenuCadastralRegExo = $oSuf->getRevenuCadastralExo("R"); + $fRevenuCadastralRegAvecExo = $fRevenuCadastralRegAvecExo + (float) $fRevenuCadastralRegExo; + } else { + if($oSuf->getCcolloc("TC") == true) { + $fRevenuCadastralRegExo = $oSuf->getRevenuCadastralExo("TC"); + $fRevenuCadastralRegAvecExo = $fRevenuCadastralRegAvecExo + (float) $fRevenuCadastralRegExo; + } + } + } + } + return $fRevenuCadastralRegAvecExo; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'contenance' pour des parcelles avec exonération dans le tableau aSuf. + * \return Retourne un entier. + */ + function getContenance (){ + $iContenance=0; + foreach($this->aSuf as $oSuf){ + $iContenance=$iContenance+$oSuf->getContenance(); + } + return $iContenance; + } + + /** + * Cette méthode permet de réupérer l'ensemble des emprises de la parcelles à partir des properties de la fiche d'urbanisme + * \return + */ + function getEmprises($aProperties,$oBD,$sLayerTypeParcelle) { + // boucler sur toutes les couches à intersecter + if(isset($aProperties["cadastre"]["fiche_urb"]["intersect"]["views"])) { + foreach($aProperties["cadastre"]["fiche_urb"]["intersect"]["views"] as $sView => $aViewValue) { + $oEmprises = new Mj_Emprises($oBD,$this->aFields['id_par'],$sView, $aProperties["cadastre"]["fiche_urb"]["intersect"]["tolerance"], $aViewValue, $sLayerTypeParcelle); + array_push($this->aIntersect,$oEmprises); + } + } + // calcule de l'emprise du bati + $sViewBati=$aProperties["cadastre"]["view"]["bati"]; + if(isset($aProperties["cadastre"]["view"]["bati"])){ + $aField["type"]="POLYGON"; + $aField["title"]="Emprise Bati"; + $oEmprises = new Mj_Emprises($oBD,$this->aFields['id_par'],$sViewBati,$aProperties["cadastre"]["fiche_urb"]["intersect"]["tolerance"], $aField, $sLayerTypeParcelle); + array_push($this->aIntersect,$oEmprises); + } + $this->aObjects=array_merge($this->aObjects,$this->aIntersect); + } + + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'nat_exo' dans le tableau aSuf. + * \return Retourne une chaîne de caractères. + * + */ + /*function getNatExo(){ + if(count($this->aSuf)==1) { + return $this->aSuf[0]->getNatExo(); + } else{ + return ''; + } + }*/ + /** + * Cette méthode permet de formater un décimal pour l'affichage. + * \return Retourne une chaine + */ + function setFloatToText($fFloat){ + return number_format($fFloat,2,'.',''); + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Pev.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Pev.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..d33ebb882cdab0a88619ea843eccc055d9f0a9ad --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Pev.class.inc @@ -0,0 +1,270 @@ +<?php +/** +* \file Mj_Pev.class.inc +* \brief Mj_Pev.class.inc \n \n Ce fichier contient la classe php Mj_Pev +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie pev. +* +* \author Damien Bedel +* \author Fabien Marty <fabien.marty@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Pev +* \brief Mj_Pev Class \n \n Mj_Pev est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie pev. +* +* \author Damien Bedel +* \author Fabien Marty <fabien.marty@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Exone_Pev.class.inc"); +require_once ("Mj_Habit_Descr.class.inc"); +require_once ("Mj_Depend_Descr.class.inc"); +require_once ("Mj_Prof_Descr.class.inc"); + +class Mj_Pev extends Mj { + /** + * Tableau associatif comportant la liste des objets Exone_Pev du bâti. + */ + var $aExPev=array(); + /** + * Tableau associatif comportant la liste des objets Descr de(s) habitation(s) + */ + var $aDescr_Hab=array(); + /** + * Tableau associatif comportant la liste des objets Descr de(s) dépendance(s) + */ + var $aDescr_Depend=array(); + /** + * Tableau associatif comportant la liste des objets Descr professionel + */ + var $aDescr_Prof=array(); + /** + * \param $sIdPev Identifiant de la partie d'Evaluation + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdPev,$oBD){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['pev']; + $this->sSql=str_replace('$sIdPev', $sIdPev, $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + $this->sStatus=0; + } + $this->aExPev=$this->get_aEx_Pev($oBD); + $this->aDescr_Hab=$this->get_aDescr_Hab($sIdPev,$oBD); + $this->aDescr_Depend=$this->get_aDescr_Depend($sIdPev,$oBD); + $this->aDescr_Prof=$this->get_aDescr_Prof($sIdPev,$oBD); + $this->aObjects=array_merge($this->aExPev,$this->aDescr_Hab,$this->aDescr_Depend,$this->aDescr_Prof); + } + /** + * Cette méthode permet de récupérer les Id_Ex en fonction d'un Id_Pev donné + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau de chaînes de caractères. + */ + function get_aId_Ex_Pev($oBD){ + if($this->isEmpty()){ + $aIdExPev=""; + }else{ + include $this->sRessourcesFile; + $aIdExPev=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_ex_pev']; + $this->sSql=str_replace('$sIdPev', $this->aFields['id_pev'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdExPev,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdExPev; + } + /** + * Cette méthode permet de récupérer la liste des objets Exone_Pev du bâti + * \return Retourne un tableau d'objets Exone_Pev + */ + function get_aEx_Pev($oBD){ + $aExPev=array(); + if($this->isEmpty()){ + $aExPev=""; + }else{ + $aIdExPev=$this->get_aId_Ex_Pev($oBD); + foreach($aIdExPev as $sValue){ + array_push($aExPev,new Mj_Exone_Pev($sValue,$oBD)); + } + } + return $aExPev; + } + /** + * Cette méthode permet de récupérer les Id_Descr_Hab en fonction d'un Id_Pev donné + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau de chaînes de caractères. + */ + function get_aId_Descr_Hab($oBD){ + if($this->isEmpty()){ + $aIdDescrHab=""; + }else{ + include $this->sRessourcesFile; + $aIdDescrHab=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_descr_hab']; + $this->sSql=str_replace('$sIdPev',$this->aFields['id_pev'],$this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->ligneSuivante($oPDOresult)){ + array_push($aIdDescrHab,$aResultFetch); + $this->sStatus=0; + } + } + } + return $aIdDescrHab; + } + /** + * Cette méthode permet de récupérer la liste des objets Descr du bâti + * \return Retourne un tableau d'objets Descr_Hab + */ + function get_aDescr_Hab($sIdPev,$oBD){ + $aDescrHab=array(); + if($this->isEmpty()){ + $aDescrHab=""; + }else{ + $aIdDescrHab=$this->get_aId_Descr_Hab($oBD); + foreach($aIdDescrHab as $aValue){ + array_push($aDescrHab,new Mj_Habit_Descr($aValue,$oBD)); + } + //array_push($aDescrHab,new Mj_Habit_Descr($sIdPev,$oBD)); + } + return $aDescrHab; + } + /** + * Cette méthode permet de récupérer les Id_Descr_Depend en fonction d'un Id_Pev donné + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau de chaînes de caractères. + */ + function get_aId_Descr_Depend($oBD){ + if($this->isEmpty()){ + $aIdDescrDepend=""; + }else{ + include $this->sRessourcesFile; + $aIdDescrDepend=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_id_descr_depend']; + $this->sSql=str_replace('$sIdPev', $this->aFields['id_pev'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch=$oBD->tableauSuivant($oPDOresult)){ + array_push($aIdDescrDepend,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdDescrDepend; + } + /** + * Cette méthode permet de récupérer la liste des objets Descr_Depend du bâti + * \return Retourne un tableau d'objets Descr_Depend + */ + function get_aDescr_Depend($sIdPev,$oBD){ + $aDescrDepend=array(); + if($this->isEmpty()){ + $aDescrDepend=""; + }else{ + $aIdDescrDepend=$this->get_aId_Descr_Depend($oBD); + foreach($aIdDescrDepend as $sValue){ + array_push($aDescrDepend,new Mj_Depend_Descr($sValue,$oBD)); + } + } + return $aDescrDepend; + } + /** + * Cette méthode permet de récupérer la liste des objets Descr_Prof du bâti + * \return Retourne un tableau d'objets Descr_Prof + */ + function get_aDescr_Prof($sIdPev,$oBD){ + $aDescr_Prof=array(); + if($this->isEmpty()){ + $aDescr_Prof=""; + }else{ + array_push($aDescr_Prof,new Mj_Prof_Descr($sIdPev,$oBD)); + } + return $aDescr_Prof; + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['s_tar']=$this->aFields['ccostb']; + $aExportFields['af']=$this->aFields['ccoaff']; + $aExportFields['l_nature']=$this->aFields['l_ccoaff']; + $aExportFields['cat']=$this->aFields['dcapec']; + $aExportFields['nat_exo']=$this->getNatExo(); + $aExportFields['revenu_cadastral']=$this->getRevenuCadastral(); + $aExportFields['num_pev']=$this->aFields['dnupev']; + $aExportFields['val_loc_ref']=$this->aFields['dvlper']; + $aExportFields['val_loc_ann']=$this->aFields['dvlpera']; + $aExportFields['nature']=$this->aFields['gnexpl']; + $aExportFields['l_nat_exon']=$this->aFields['l_gnexpl']; + $aExportFields['local_type']=$this->aFields['dnuref']; + } + return $aExportFields; + } + /** + * Cette méthode permet de récupérer le revenu cadastral d'une Pev. + * \return Retourne un entier. + */ + function getRevenuCadastral(){ + if ($this->getNatExo()==''){ + $iRevenuCadastral=(int)$this->aFields['bipevla1']; + }else{ + $fRevenuCadastral=(float)($this->aFields['dvlpera'])/2; + $iRevenuCadastral=round($fRevenuCadastral); + } + return $iRevenuCadastral; + } + /** + * Cette méthode permet de récupérer le revenu cadastral d'une Pev. + * \return Retourne un float. + */ + function getRevenuCadastralfloat(){ + if ($this->getNatExo()==''){ + $fRevenuCadastral=(float)$this->aFields['bipevla1']; + }else{ + $fRevenuCadastral=(float)($this->aFields['dvlpera'])/2; + } + return $fRevenuCadastral; + } + /** + * Cette méthode permet de récupérer la nature de l'exonération qui peut provenir soit de l'attribut 'gnexpl' soit de l'attribut 'gnextl' contenu dans le tableau aExPev. + * \return Retourne une chaîne de caractères. + */ + function getNatExo(){ + if(trim($this->aFields['gnexpl'])==''){ + $sNatExo=$this->aExPev[0]->aFields['gnextl']; + }else{ + $sNatExo=$this->aFields['gnexpl']; + } + return $sNatExo; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_PosPlu.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_PosPlu.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..5a9edf8e2bcfd43db60e5633d7f23e1c08f14132 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_PosPlu.class.inc @@ -0,0 +1,69 @@ +<?php +/** +* \file Mj_Parcelle.class.inc +* \brief Mj_Parcelle.class.inc \n \n Ce fichier contient la classe php Mj_Parcelle +* +* Cette classe permet de sélectionner les attributs POS/PLU nécessaires. +* +* \author John Bosch <john.bosch@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Parcelle.class.inc"); + +class Mj_PosPlu extends Mj { + + /** + * Constructeur + * \param $oBD Objet de connexion PDO_BD + * \param $sIdPar Identifiant de la parcelle + * \param $sCodCom Code Insee de la commune + */ + function __construct($oBD,$sObjectId, $sIdPar,$sCodCom) { + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['pos_plu']; + $this->sSql=str_replace('$sObjectId', $sObjectId, $this->sSql); + $this->sSql=str_replace('$sIdPar', $sIdPar, $this->sSql); + $this->sSql=str_replace('$sCodCom', $sCodCom, $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aRow = $oBD->ligneSuivante ($oPDOresult)) { + $this->aFields=$aRow; + } + + $this->sStatus=0; + } + + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété/Fiche Parcelle. + * \return Retourne un tableau associatif correspondant au relevé de propriété/Fiche Parcelle. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + } + else{ + $aExportFields['zonage']=$this->aFields['TYPE']; + $aExportFields['lib_zonage']=$this->aFields['LIBELLE']; + $aExportFields['surface']=$this->getSurface(); + $aExportFields['cos']=$this->aFields['COS']; + $aExportFields['ces']=$this->aFields['CES']; + $aExportFields['hauteur']=$this->aFields['HAUTEUR']; + $aExportFields['idreg']=$this->aFields['IDREG']; + $aExportFields['codecom']=$this->aFields['CODCOM']; + } + return $aExportFields; + } + function getSurface(){ + $iSurface= round($this->aFields['SURFACE']); + return $iSurface; + } + + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Prof_Descr.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Prof_Descr.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..8c24aed515a0309fb57579b5e44ac57e673fbed5 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Prof_Descr.class.inc @@ -0,0 +1,54 @@ +<?php +/** +* \file Mj_Prof_Descr.class.inc +* \brief Mj_Prof_Descr.class.inc \n \n Ce fichier contient la classe php Mj_Prof_Descr +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Description Professionel. +* +* \author John Bosch +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ + +require_once ("Mj.class.inc"); + +class Mj_Prof_Descr extends Mj { + /** + * \param $sIdPev Identifiant de la partie d'Evaluation + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdPev,$oBD){ + include $this->sRessourcesFile; + $this->sSql=$aSql[$oBD->sgbd]['prof_descr']; + $this->sSql=str_replace('$sIdPev', $sIdPev, $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + } + else{ + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + $this->sStatus=0; + } + + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété/Fiche Parcelle. + * \return Retourne un tableau associatif correspondant au relevé de propriété/Fiche Parcelle. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + } + else{ + $aExportFields['num_invar']=$this->aFields['invar']; + $aExportFields['num_pev']=$this->aFields['dnupev']; + $aExportFields['num_prof']=$this->aFields['dnudes']; + $aExportFields['surface']=$this->aFields['vsurzt']; + } + return $aExportFields; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Proprietaire.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Proprietaire.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..31455062cf478a7a56648ece5bc11f3d4635004d --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Proprietaire.class.inc @@ -0,0 +1,135 @@ +<?php +/** +* \file Mj_Proprietaire.class.inc +* \brief Mj_Proprietaire.class.inc \n \n Ce fichier contient la classe php Mj_Proprietaire +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie proprietaire. +* +* \author Damien Bedel <damien.bedel@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Proprietaire +* \brief Mj_Proprietaire Class \n \n Mj_Proprietaire est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie proprietaire. +* +* \author Damien Bedel <damien.bedel@veremes.com> +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); + +class Mj_Proprietaire extends Mj { + /** + * Tableau associatif comportant la liste des objets Pev du bâti + */ + var $aProprietaireNom=array(); + + /** + * \param $sIdDnupro Identifiant National de compte communal + * \param $sIdPro Identifiant d'un propriétaire pour le département et le CDIF + * \param $oBD Objet de connexion PDO_BD + */ + function __construct($sIdDnupro,$sIdPro,$oBD, $sEncryptedKey=''){ + $this->sEncryptKey = $sEncryptedKey; + include $this->sRessourcesFile; + $this->sSql = $aSql[$oBD->sgbd]['proprietaire']; + $this->sSql= str_replace('$sIdDnupro', $this->encrypt($sIdDnupro),$this->sSql); + $this->sSql = str_replace('$sIdPro', $sIdPro, $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + $this->aFields['id_dnupro'] = $sIdDnupro; + $this->sStatus=0; + } + $oPDOresult = $oBD->fermeResultat(); + + $this->aProprietaireNom = $this->getProprietaireNom(); + } + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + } + else{ + $aExportFields['l_ccodro']=$this->aFields['l_ccodro']; + $aExportFields['l_ccodem']=$this->aFields['l_ccodem']; + $aExportFields['dnuper']=$this->aFields['dnuper']; + $aExportFields['dnupro']=$this->aFields['dnupro']; + $aExportFields['proprietaire_nom']=$this->getProprietaireNom(); + $aExportFields['proprietaire_nom_tiers']=$this->getProprietaireNomTiers(); + $aExportFields['proprietaire_adresse']=$this->getProprietaireAdresse(); + $aExportFields['jdatnss']=$this->getJdatnss(); + $aExportFields['dldnss']=$this->getDldnss(); + } + return $aExportFields; + } + /** + * Cette méthode permet de récupérer le nom du propriétaire en fonction de la valeur de l'attribut epxnee. + * \return Retourne une chaîne de caractères. + */ + function getProprietaireNom(){ + switch($this->aFields["epxnee"]){ + case 'EPX' : + $sProprietaireNom = rtrim($this->aFields["dqualp"])." ".rtrim($this->aFields["ddenom"])." EP ".rtrim($this->aFields["dnomcp"])." ".rtrim($this->aFields["dprncp"]); + break; + case 'NEE' : + $sProprietaireNom = rtrim($this->aFields["dqualp"])." ".rtrim($this->aFields["ddenom"])." EP ".rtrim($this->aFields["dnomlp"])." ".rtrim($this->aFields["dprnlp"]); + break; + default : + $sProprietaireNom = rtrim($this->aFields["dqualp"])." ".rtrim($this->aFields["ddenom"]); + break; + } + return $sProprietaireNom; + } + /** + * Cette méthode permet de récupérer l'adresse complète du propriétaire en concaténant les attributs dlign3, dlign4, dlign5 et dlign6. + * \return Retourne une chaîne de caractères. + */ + function getProprietaireAdresse(){ + $sProprietaireAdresse = rtrim($this->aFields['dlign3'])." ".ltrim(rtrim($this->aFields['dlign4']),'0')." ".rtrim($this->aFields['dlign5'])." ".rtrim($this->aFields['dlign6']); + return $sProprietaireAdresse; + } + /** + * Cette méthode permet de concaténer les attributs dnvoiri et indic. + * \return Retourne une chaîne de caractères. Elle est vide si l'attribut dqualp est vide. + */ + function getJdatnss(){ + if($this->aFields["gtoper"]=='2'){ + $sJdatnss = ''; + }else{ + $sJdatnss = "NE(E) le ".$this->aFields['jdatnss']; + } + return $sJdatnss; + } + /** + * Cette méthode permet de concaténer les attributs dnvoiri et indic. + * \return Retourne une chaîne de caractères. Elle est vide si l'attribut dqualp est vide. + */ + function getDldnss(){ + if($this->aFields["gtoper"]=='2'){ + $sJdatnss = ''; + }else{ + $sDldnss = "A ".$this->aFields['dldnss']; + } + return $sDldnss; + } + /** + * Cette méthode permet de récupérer le nom du propriétaire correspondant à un relevé de propriété destiné aux tiers. + * \return Retourne une chaîne de caractères. + */ + function getProprietaireNomTiers(){ + $sProprietaireNomTiers = rtrim($this->aFields["dqualp"])." ".rtrim($this->aFields["ddenom"]); + return $sProprietaireNomTiers; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/Mj_Suf.class.inc b/src/module_cadastre/web_service/class/majic_lib/Mj_Suf.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..f68795311f10395b6f1eb636bae254ac4519c0a1 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/Mj_Suf.class.inc @@ -0,0 +1,332 @@ +<?php +/** +* \file Mj_Suf.class.inc +* \brief Mj_Suf.class.inc \n \n Ce fichier contient la classe php Mj_Suf +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Suf. +* +* \author Fabien Marty <fabien.marty@veremes.com> +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +/** +* \class Mj_Suf +* \brief Mj_Suf Class \n \n Mj_Suf est une classe PHP qui hérite de la classe Mj. +* +* Cette classe permet de sélectionner les attributs nécessaires afin de traiter la partie Suf. +* +* \author Fabien Marty <fabien.marty@veremes.com> +* \author Damien Bedel +* \author Olivier Gayte <olivier.gayte@veremes.com> +*/ +require_once ("Mj.class.inc"); +require_once ("Mj_Exon_Suf.class.inc"); + +class Mj_Suf extends Mj { + /** + * Tableau associatif comportant la liste des objets Exon_Suf d'une parcelle + */ + var $aExonSuf=array(); + /** + * \param $oBD Objet de connexion PDO_BD + * \param $sIdSuf Identifiant de la suf + * \param $sIdDnupro Identifiant du propriétaire + */ + function __construct($oBD,$sIdSuf,$sIdDnupro,$sEncryptedKey='', $bAllSuf=false){ + $this->bAllSuf = $bAllSuf; + $this->sEncryptKey = $sEncryptedKey; + include $this->sRessourcesFile; + // récupèration du dnupro de la suf + $this->sSql=$aSql[$oBD->sgbd]['suf_dnupro']; + $this->sSql=str_replace('$sIdSuf', $sIdSuf, $this->sSql); + + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + $this->sSql=$aSql['suf']; + }else{ + $this->sStatus=0; + $aSufPar=$oBD->ligneSuivante ($oPDOresult); + // Si le DNUPRO de la suf est différent de la parcelle il s'agit d'une parcelle concernée par des lots en biens non délimités + if (trim($aSufPar['dnupro'])==trim(substr($sIdDnupro,6))){ + $this->sSql=$aSql[$oBD->sgbd]['suf']; + }else{ + if($this->bAllSuf){ + $this->sSql=$aSql[$oBD->sgbd]['suf_bnd_all']; + }else{ + $this->sSql=$aSql[$oBD->sgbd]['suf_bnd']; + } + } + } + $this->sSql=str_replace('$sIdSuf', $sIdSuf, $this->sSql); + $this->sSql=str_replace('sIdDnupro', substr($sIdDnupro, 5), $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + $this->aFields=$oBD->ligneSuivante ($oPDOresult); + $this->sStatus=0; + } + $this->aExonSuf=$this->get_aExon_Suf($oBD); + if ($this->aFields['dnulot']){ + $this->aPro=$this->get_aPro($oBD); + $this->aObjects = array_merge ($this->aPro,$this->aExonSuf); + }else{ + $this->aObjects=$this->aExonSuf; + } + } + /** + * Cette méthode permet de récupérer les ID_PRO en fonction d'un ID_DNUPRO donné. + * \return Retourne un tableau de ID_PRO. + */ + function get_aId_Pro($oBD){ + if($this->isEmpty()){ + $aIdPro=""; + }else{ + include $this->sRessourcesFile; + $aIdPro=array(); + $this->sSql = $aSql[$oBD->sgbd]['get_id_pro']; + $this->sSql = str_replace('$sIdDnupro', $this->encrypt($this->aFields['id_dnupro']), $this->sSql); + $oPDOresult= $oBD->execute($this->sSql); + if ( $oBD->enErreur()) { + $this->sStatus=1; + $this->sMessage = $oBD->getBDMessage(); + }else{ + while($aResultFetch = $oBD->tableauSuivant ($oPDOresult)){ + array_push($aIdPro,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aIdPro; + $oPDOresult=$oBD->fermeResultat(); + } + /** + * Cette méthode permet de récupérer la liste des objets Proprietaire + * \param $oBD Objet de connexion PDO_BD + * \return Retourne un tableau d'objets Proprietaire + */ + function get_aPro($oBD){ + $aPro=array(); + if($this->isEmpty()){ + $aPro=""; + }else{ + $aIdPro = $this->get_aId_Pro($oBD); + foreach($aIdPro as $sIdPro){ + array_push($aPro,new Mj_Proprietaire($this->encrypt($this->aFields['id_dnupro']),$sIdPro,$oBD)); + } + } + return $aPro; + } + /** + * Cette méthode permet de récupérer les Rnuexn en fonction d'un Id_Suf donné + * \return Retourne un tableau de chaîne de caractères. + */ + function get_aRnuexn($oBD){ + if($this->isEmpty()){ + $aRnuexn=""; + }else{ + include $this->sRessourcesFile; + $aRnuexn=array(); + $this->sSql=$aSql[$oBD->sgbd]['get_rnuexn']; + $this->sSql=str_replace('$sIdSuf', $this->aFields['id_suf'], $this->sSql); + $oPDOresult=$oBD->execute($this->sSql); + if ($oBD->enErreur()){ + $this->sStatus=1; + $this->sMessage=$oBD->getBDMessage(); + }else{ + while($aResultFetch = $oBD->tableauSuivant ($oPDOresult)){ + array_push($aRnuexn,$aResultFetch[0]); + $this->sStatus=0; + } + } + } + return $aRnuexn; + } + /** + * Cette méthode permet de récupérer la liste des objets Exon_Suf d'une parcelle + * \return Retourne un tableau d'objets Exon_Suf + */ + function get_aExon_Suf($oBD){ + $aExonSuf=array(); + if($this->isEmpty()){ + $aExonSuf=""; + }else{ + $aRnuexn=$this->get_aRnuexn($oBD); + foreach($aRnuexn as $sRnuexn){ + array_push($aExonSuf,new Mj_Exon_Suf($this->aFields['id_suf'],$sRnuexn,$oBD)); + } + } + return $aExonSuf; + } + + /** + * Cette méthode permet de construire un tableau correspondant au relevé de propriété. + * \return Retourne un tableau associatif correspondant au relevé de propriété. + */ + function getExportFields(){ + $aExportFields=array(); + if($this->isEmpty()){ + $aExportFields=""; + }else{ + $aExportFields['dnupro']=$this->aFields['dnupro']; + $aExportFields['id_dnupro']=$this->aFields['id_dnupro']; + $aExportFields['s_tar']=$this->aFields['ccostn']; + $aExportFields['suf']=$this->aFields['ccosub']; + $aExportFields['gnexps']=$this->aFields['gnexps']; + $aExportFields['grss_gr']=$this->aFields['dsgrpf']; + $aExportFields['occupation']=$this->aFields['l_dsgrpf']; + $aExportFields['nature']=$this->aFields['l_dsgrpf']; + $aExportFields['groupe']=$this->aFields['l_cgrnum']; + $aExportFields['clas']=$this->aFields['dclssf']; + $aExportFields['nat_cult']=$this->aFields['cnatsp']; + $aExportFields['ha']=$this->getContenanceHA(); + if ($aExportFields['ha'] == 0){ + $aExportFields['ha']=' '; + } + $aExportFields['a']=$this->getContenanceA(); + $sContenanceA=$aExportFields['a']; + $sContenanceA= strval($sContenanceA); + $sTlenA=strlen($sContenanceA); + if ($aExportFields['ha'] == ' ' and $aExportFields['a'] == 0){ + $aExportFields['a']=' '; + }else{ + if ($aExportFields['ha'] == ' ' and $sTlenA == 2 and (substr($aExportFields['a'],0,1)== 0)){ + $sDeuxiemeValeur= substr($aExportFields['a'],1,1); + $aExportFields['a']= ' '.$sDeuxiemeValeur; + }else{ + if ($aExportFields['ha'] != ' ' and $sTlenA == 1){ + $aExportFields['a']='0'.$aExportFields['a']; + } + } + } + $aExportFields['ca']=$this->getContenanceCA(); + $sContenanceCa=$aExportFields['ca']; + $sContenanceCa=strval($sContenanceCa); + $sTlen=strlen($sContenanceCa); + if ($aExportFields['a'] != 0) + if ($sTlen == 1){ + $aExportFields['ca']='0'.$aExportFields['ca']; + } + $aExportFields['revenu_cadastral']=$this->getRevenuCadastral(); + $aExportFields['revenu_cadastral_txt']=$this->setFloatToText($this->getRevenuCadastral()); + $aExportFields['revenu_cadastral_exo']=$this->getRevenuCadastralExo($sCollectivite); + $aExportFields['revenu_reference']=$this->getRevenuReference(); + $aExportFields['revenu_reference_txt']=$this->setFloatToText($this->getRevenuReference()); + $aExportFields['nat_exo']=$this->getNatExo(); + $aExportFields['ccolloc']=$this->getCcolloc($sCollectivite); + $aExportFields['contenance_suf']=$this->getContenance(); + if ($this->aFields['dnulot']){ + $aExportFields['num_voirie']='*****'; + $aExportFields['dnulot']=$this->aFields['dnulot']; + $aExportFields['dnupdl']=$this->aFields['dnupdl']; + $aExportFields['dnumql']=$this->aFields['dnumql']; + $aExportFields['ddenql']=$this->aFields['ddenql']; + } + } + return $aExportFields; + } + /** + * Cette méthode permet de récupérer les caractères correspondants à la colonne HA depuis l'attribut dcntsf. + * \return Retourne une chaîne de caractères. + */ + function getContenanceHA(){ + $sContenanceHA=$this->aFields['dcntsf']; + $sContenanceHA=substr("$sContenanceHA",0,5); + $iContenanceHA= (int) $sContenanceHA; + return $iContenanceHA; + } + /** + * Cette méthode permet de récupérer les caractères correspondants à la colonne A depuis l'attribut dcntsf. + * \return Retourne une chaîne de caractères. + */ + function getContenanceA(){ + $sContenanceA=$this->aFields['dcntsf']; + $sContenanceA=substr("$sContenanceA", 5, 2); + return $sContenanceA; + } + /** + * Cette méthode permet de récupérer les caractères correspondants à la colonne CA depuis l'attribut dcntsf. + * \return Retourne une chaîne de caractères. + */ + function getContenanceCA(){ + $sContenanceCA=$this->aFields['dcntsf']; + $sContenanceCA=substr("$sContenanceCA", 7, 2); + return $sContenanceCA; + } + /* + * Cette méthode permet de récupérer la contenance totale d'une suf. + * \return Retourne un entier. + */ + function getContenance(){ + $iContenanceHA = (int) $this->getContenanceHA(); + $iContenanceA = (int) $this->getContenanceA(); + $iContenanceCA = (int) $this->getContenanceCA(); + $iContenance = ($iContenanceHA*10000)+($iContenanceA*100)+($iContenanceCA); + return $iContenance; + } + /** + * Cette méthode permet de diviser l'attribut drcsuba par 100. + * \return Retourne un float. + */ + function getRevenuCadastral(){ + $fRevenuCadastral=floatval($this->aFields['drcsuba']); + $fRevenuCadastral=$fRevenuCadastral/100; + return $fRevenuCadastral; + } + /** + * Cette méthode permet de diviser l'attribut drcsub par 100. + * \return Retourne un float. + */ + function getRevenuReference(){ + $fRevenuReference=floatval($this->aFields['drcsub']); + $fRevenuReference=$fRevenuReference/100; + return $fRevenuReference; + } + + /** + * Cette méthode permet de diviser l'attribut rcexnba par 100. + * \return Retourne un float. + */ + function getRevenuCadastralExo($sCollectivite){ + foreach($this->aExonSuf as $aFieldsRevExo) { + if (rtrim($aFieldsRevExo->aFields['ccolloc']) == $sCollectivite) { + $fRevenuCadastral=floatval($aFieldsRevExo->aFields['rcexnba']); + $fRevenuCadastral=$fRevenuCadastral/100; + } + } + return $fRevenuCadastral; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'nat_exo' du tableau aExonSuf. + * \return Retourne une chaîne de caractères. + */ + function getNatExo(){ + return $this->aExonSuf[0]->aFields['gnexts']; + } + /** + * Cette méthode permet de récupérer la valeur de l'attribut 'ccolloc' du tableau aExonSuf. + * \return Retourne une chaîne de caractères. + */ + function getCcolloc($sCollectivite){ + $bVal=false; + foreach($this->aExonSuf as $aFieldsExo) { + if(rtrim($aFieldsExo->aFields['ccolloc']) == $sCollectivite) { + $aReturn=$aFieldsExo; + $bVal=true; + } + } + return $bVal; + } + /** + * Cette méthode permet de formater un décimal pour l'affichage. + * \return Retourne une chaine + */ + function setFloatToText($fFloat){ + return number_format($fFloat,2,'.',''); + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/FP.xslt b/src/module_cadastre/web_service/class/majic_lib/xsl/FP.xslt new file mode 100755 index 0000000000000000000000000000000000000000..64881b2790eef9e028ee40ed5f818ad271fb38d8 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/FP.xslt @@ -0,0 +1,1481 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!DOCTYPE xsl:stylesheet [ + <!ENTITY nbsp " "> +]> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/> + <xsl:template match="/"> + <xsl:param name="poste"/> + <xsl:param name="type"/> + + <html xmlns="http://www.w3.org/1999/xhtml" + lang="fr" + > + <head> + <style type="text/css"> + body { + font-family:arial, "sans-serif"; + padding:100px 20px 20px 20px; + background-image:url(http://img15.hostingpics.net/pics/500812bandeau.jpg); + background-repeat:no-repeat; + background-position:center top; + } + + hr { + text-align: center; + width:100%; + color:#F1B4B4; + } + + table { + text-align:left; + width:100%; + font-size:12px; + margin-bottom:35px; + } + + td { + text-align:left; + + background-color:#F7F7F7 ; + } + + h1 { + font-family:tahoma; + color: #008393; + } + + th { + text-align:left; + + background-color:#eeeeee; + } + + h4 { + font-family:tahoma; + color: #990000; + } + + h5 { + font-family:tahoma; + } + </style> + </head> + <body> + <hr size="5"/> + <h1> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + Parcelle <xsl:value-of select="@section" /><xsl:value-of select="format-number(@num_parc, '0000')"/> + </xsl:for-each> + </h1> + <hr size="10"/> + <Table cellspacing="2" cellpadding="5" > + <TR> + <TH align="left" width ="15%"> + Adresse : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select="@num_voirie" /> + <xsl:text disable-output-escaping="yes">&nbsp;</xsl:text> + <xsl:value-of select="@adresse" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Commune : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="@libcom" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Code Commune (Insee) : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="@codeinsee" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Compte Propriétaire : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="Mj_Parcelle/@dnupro" /> + <BR/> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Surface cadastrale (m²) : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="@total_contenance_m2" /> + </xsl:for-each> + </TD> + </TR> + <xsl:if test="not($type='restreint')"> + <TR> + <TH align="left" width ="15%"> + Urbaine : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select="@gurbpa" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Bâtie : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select="@gparbat" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Parcelle primitive : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:if test="not(@num_parc_prim = '')"> + <xsl:value-of select="@num_parc_prim" /> + </xsl:if> + <xsl:if test="@num_parc_prim = ''"> + - + </xsl:if> + </xsl:for-each> + </TD> + </TR> + </xsl:if> + </Table> + <xsl:if test="$poste='internet'"> + <img> + <xsl:attribute name="src">http://mapsrv.rgd74.fr/geomap70/mg/net/ggGetMapImage.aspx?USER=Administrator&PWD=admin&MAPNAME=Library://RISNET_GESTION/Cartes/RGD 73-74 - RISNET_GESTION_73_74.MapDefinition&SELOBJS=PARCELLE%2C<xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select='substring(@idpar,1,2)'/> + <xsl:value-of select='substring(@idpar,4,3)'/> + <xsl:if test ="substring(@idpar,7,3)='000'"> + <xsl:text disable-output-escaping="yes">---</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,7,3)='000')"> + <xsl:value-of select='substring(@idpar,7,3)'/> + </xsl:if> + <xsl:if test ="substring(@idpar,10,1)='0'"> + <xsl:text disable-output-escaping="yes">-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,10,1)='0')"> + <xsl:value-of select='substring(@idpar,10,1)'/> + </xsl:if> + <xsl:value-of select='substring(@idpar,11,1)'/> + <xsl:value-of select='substring(@idpar,12)'/> + </xsl:for-each>-&CENTERX=&CENTERY=&SCALE=*8&HEIGHT=400&WIDTH=575&RESULTTYPE=JPG</xsl:attribute> + </img> + <h4> + Urbanisme : POS/PLU + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Zonage + </TH> + <TH> + Libellé + </TH> + <TH> + Surface (m²)* + </TH> + <TH> + COS + </TH> + <TH> + CES + </TH> + <TH> + Hauteur + </TH> + <TH> + Réglement de la zone + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <TR> + <TD> + <xsl:value-of select="@zonage" /> + </TD> + <TD> + <xsl:value-of select="@lib_zonage" /> + </TD> + <TD> + <xsl:value-of select="@surface" /> + </TD> + <TD> + <xsl:value-of select="@cos" /> + </TD> + <TD> + <xsl:value-of select="@ces" /> + </TD> + <TD> + <xsl:value-of select="@hauteur" /> + </TD> + <TD> + <a> + <xsl:attribute name="href">http://mapris.rgd74.fr/DocumentsPartenaires/Reglement_POS/<xsl:value-of select="@idreg" />.pdf</xsl:attribute>Consulter le réglement + </a> + </TD> + </TR> + </xsl:for-each> + </Table> + <h6>*calcul sur la surface graphique, exclusion si surface ‹ 2 m² </h6> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <a> + <xsl:attribute name="href">http://mapris.rgd74.fr/Risnet_Gestion/Application/Rapport/etat_pos_plu/fiche_pos.asp?codcom=<xsl:value-of select="@codecom" /></xsl:attribute>Avancement de l'actualisation/mise en ligne du POS/PLU de cette commune + </a> + </xsl:for-each> + </xsl:if> + <xsl:if test="not($type='sansnom')"> + <hr size="5"/> + <h4> + Propriétaire(s) de la parcelle + </h4> + <h6>*Cliquer sur le n° de compte pour accéder à son relevé de propriété </h6> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH colspan="2"> + Compte + </TH> + <TH> + Nom + </TH> + <xsl:if test="$type='complet'"> + <TH> + Etat Civil + </TH> + </xsl:if> + <TH> + Adresse + </TH> + <TH> + Type + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <TR> + <TD colspan="2"> + <xsl:if test="$type='complet'"> + <a> + <xsl:attribute name="href">http://ns227471.ovh.net/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=complet&format=pdf&version=1.0</xsl:attribute><xsl:value-of select="@dnupro" /> + </a> + </xsl:if> + <xsl:if test="$type='restreint'"> + <a> + <xsl:attribute name="href">http://ns227471.ovh.net/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=restreint&format=pdf&version=1.0</xsl:attribute><xsl:value-of select="@dnupro" /> + </a> + </xsl:if> + <xsl:if test="$type='sansnom'"> + <xsl:value-of select="@dnupro" /> + </xsl:if> + </TD> + <TD> + <xsl:if test="$type='complet'"> + <xsl:value-of select="@proprietaire_nom" /> + </xsl:if> + <xsl:if test="$type='restreint'"> + <xsl:value-of select="@proprietaire_nom_tiers" /> + </xsl:if> + </TD> + <xsl:if test="$type='complet'"> + <TD> + <xsl:value-of select="@jdatnss" /> + <BR/> + <xsl:value-of select="@dldnss" /> + </TD> + </xsl:if> + <TD> + <xsl:value-of select="@proprietaire_adresse" /> + </TD> + <TD> + <xsl:value-of select="@l_ccodro" /> + </TD> + </TR> + <xsl:if test ="..//Mj_Parcelle/Mj_Suf/Mj_Proprietaire[@dnupro]"> + <tr> + <th colspan="6"> + Détail + </th> + </tr> + <TR> + <TH> + Numéro du lot + </TH> + <TH> + Compte + </TH> + <TH> + Nom + </TH> + <xsl:if test="$type='complet'"> + <TH> + Etat Civil + </TH> + </xsl:if> + <TH> + Adresse + </TH> + <TH> + Type + </TH> + </TR> + <xsl:for-each select="../Mj_Parcelle/Mj_Suf/Mj_Proprietaire"> + <tr> + <td> + <xsl:value-of select="../@dnulot" /> + </td> + <td> + <xsl:if test="$type='complet'"> + <a> + <xsl:attribute name="href">http://ns227471.ovh.net/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=complet&format=pdf&version=1.0</xsl:attribute><xsl:value-of select="@dnupro" /> + </a> + </xsl:if> + <xsl:if test="$type='restreint'"> + <a> + <xsl:attribute name="href">http://ns227471.ovh.net/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=restreint&format=pdf&version=1.0</xsl:attribute><xsl:value-of select="@dnupro" /> + </a> + </xsl:if> + <xsl:if test="$type='sansnom'"> + <xsl:value-of select="@dnupro" /> + </xsl:if> + </td> + <td> + <xsl:if test="$type='complet'"> + <xsl:value-of select="@proprietaire_nom" /> + </xsl:if> + <xsl:if test="$type='restreint'"> + <xsl:value-of select="@proprietaire_nom_tiers" /> + </xsl:if> + </td> + <xsl:if test="$type='complet'"> + <td> + <xsl:value-of select="@jdatnss" /> + <BR/> + <xsl:value-of select="@dldnss" /> + </td> + </xsl:if> + <td> + <xsl:value-of select="@proprietaire_adresse" /> + </td> + <td> + <xsl:value-of select="@l_ccodro" /> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </Table> + </xsl:if> + <hr size="5"/> + <h4> + Subdivision(s) fiscale(s) + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Lettre + </TH> + <TH> + Groupe + </TH> + <TH> + Nature + </TH> + <TH> + Classe + </TH> + <TH> + Compte + </TH> + <TH> + Surface (m²) + </TH> + <xsl:if test="not($type='restreint')"> + <TH> + Revenu (€) + </TH> + </xsl:if> + <TH> + Référence + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_Suf"> + <TR> + <TD> + <xsl:if test="not(@suf = '')"> + <xsl:value-of select="@suf" /> + </xsl:if> + <xsl:if test="@suf = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@groupe = '')"> + <xsl:value-of select="@groupe" /> + </xsl:if> + <xsl:if test="@groupe = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@nature = '')"> + <xsl:value-of select="@nature" /> + </xsl:if> + <xsl:if test="@nature = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@clas = '')"> + <xsl:value-of select="@clas" /> + </xsl:if> + <xsl:if test="@clas = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:value-of select="@dnupro" /> + </TD> + <TD> + <xsl:value-of select="@contenance_suf" /> + </TD> + <xsl:if test="not($type='restreint')"> + <TD> + <xsl:value-of select="@revenu_cadastral_txt" /> + </TD> + </xsl:if> + <TD> + <xsl:value-of select="@revenu_reference_txt" /> + </TD> + </TR> + </xsl:for-each> + </Table> + <xsl:if test="not($type='sansnom')"> + <xsl:if test="count(Mj/Mj_Compte_Communal_Parcelle/Mj_Bati) > 0"> + <hr size="5"/> + <h4> + Elément(s) bâti(s) + </h4> + <xsl:if test="$type='complet'"> + <h6>*Cliquer sur la référence du local pour accéder à sa description</h6> + </xsl:if> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Ref. local + </TH> + <TH> + Nature + </TH> + <TH> + <xsl:if test="$type='restreint'"> + Etages + </xsl:if> + <xsl:if test="$type='complet'"> + Date mutation + </xsl:if> + </TH> + <TH> + Propriétaire(s) + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:for-each select="Mj_Proprietaire"> + <TR> + <xsl:if test="position()='1'"> + <TD> + <xsl:if test="$type='restreint'"> + <xsl:value-of select="../@num_invar" /> + </xsl:if> + <xsl:if test="$type='complet'"> + <a href="#{../@num_invar}"> + <xsl:value-of select="../@num_invar" /> + </a> + </xsl:if> + </TD> + <TD> + <xsl:value-of select="../@lib_nature" /> + </TD> + <TD> + <xsl:if test="$type='restreint'"> + <xsl:value-of select="../@niv" /> + </xsl:if> + <xsl:if test="$type='complet'"> + <xsl:value-of select="../@date_mut" /> + </xsl:if> + </TD> + </xsl:if> + <xsl:if test="position() > '1'"> + <TD> + </TD> + <TD> + </TD> + <TD> + </TD> + </xsl:if> + <TD> + <xsl:if test="$type='restreint'"> + <xsl:value-of select="@dnupro" /> + </xsl:if> + <xsl:if test="$type='complet'"> + <xsl:value-of select="@proprietaire_nom" /> + </xsl:if> + </TD> + </TR> + </xsl:for-each> + </xsl:for-each> + </Table> + </xsl:if> + <!-- .........................................Propriétaire de Bâtis, mode restreint................................................. --> + <xsl:if test="$type='restreint'"> + <hr size="5"/> + <h4> + Propriétaire(s) du local + </h4> + + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Compte + </TH> + <TH> + Nom + </TH> + <TH> + Adresse + </TH> + <TH> + Type + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati/Mj_Proprietaire"> + <TR> + <TD> + <a> + <xsl:attribute name="href">http://ns227471.ovh.net/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=restreint&format=pdf&version=1.0</xsl:attribute><xsl:value-of select="@dnupro" /> + </a> + </TD> + <TD> + <xsl:value-of select="@proprietaire_nom" /> + </TD> + <TD> + <xsl:value-of select="@proprietaire_adresse" /> + </TD> + <TD> + <xsl:value-of select="@l_ccodro" /> + </TD> + </TR> + </xsl:for-each> + </Table> + + </xsl:if> + <!-- .........................................Description du local, mode complet................................................. --> + <xsl:if test="$type='complet'"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <hr size="15"/> + <h1> + + <a name="{@num_invar}"> + Local n° <xsl:value-of select="@num_invar" /> + </a> + + </h1> + <hr size="10"/> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH align="left" width="39%"> + + </TH> + <TH align="left" width="40%"> + + </TH> + <TH align="center" width="7%"> + Bat + </TH> + <TH align="center" width="7%"> + Esc + </TH> + <TH align="center" width="7%"> + Etage + </TH> + </TR> + + <TR> + <TH align="left" width="39%"> + Adresse : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@voirie" /> <xsl:value-of select="@adresse" /> + </TD> + <TD align="center" width="7%"> + <xsl:value-of select="@bat" /> + </TD> + <TD align="center" width="7%"> + <xsl:value-of select="@ent" /> + </TD> + <TD align="center" width="7%"> + <xsl:value-of select="@niv" /> + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Commune : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@libcom" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Type : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@dteloc" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Occupation : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@lib_occupation" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Nature : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@lib_nature" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Année de construction : + </TH> + <TD align="left" width="40%"> + <xsl:if test="not(@annee_constr = '0')"> + <xsl:value-of select="@annee_constr" /> + </xsl:if> + <xsl:if test="@annee_constr = '0'"> + - + </xsl:if> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Date de mutation : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@date_mut" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Valeur cadastrale (€) : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="Mj_Pev/@revenu_cadastral" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Niveaux : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@niveaux" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + + </Table> + <hr size="5"/> + <h4> + Propriétaire(s) du local + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Compte + </TH> + <TH> + Nom + </TH> + <TH> + État Civil + </TH> + <TH> + Adresse + </TH> + <TH> + Type + </TH> + </TR> + + <xsl:for-each select="Mj_Proprietaire"> + <TR> + <TD> + <a> + <xsl:attribute name="href">http://ns227471.ovh.net/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=complet&format=pdf&version=1.0</xsl:attribute><xsl:value-of select="@dnupro" /> + </a> + </TD> + <TD> + <xsl:value-of select="@proprietaire_nom" /> + </TD> + <TD> + <xsl:value-of select="@jdatnss" /> + <BR/> + <xsl:value-of select="@dldnss" /> + </TD> + <TD> + <xsl:value-of select="@proprietaire_adresse" /> + </TD> + <TD> + <xsl:value-of select="@l_ccodro" /> + </TD> + </TR> + </xsl:for-each> + + </Table> + <hr size="5"/> + <h4> + P.E.V + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + N° + </TH> + <TH> + Nature + </TH> + <TH> + Catégorie fiscale + </TH> + <TH> + Série Tarif batie + </TH> + <TH> + Local Type + </TH> + <TH> + Val. Loc. Ref. (€) + </TH> + <TH> + Val. Loc. Ann. (€) + </TH> + <TH> + Nature exonération + </TH> + </TR> + + <xsl:for-each select="Mj_Pev"> + <TR> + <TD> + <xsl:if test="not(@num_pev = '')"> + <xsl:value-of select="@num_pev" /> + </xsl:if> + <xsl:if test="@num_pev = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@l_nature = '')"> + <xsl:value-of select="@l_nature" /> + </xsl:if> + <xsl:if test="@l_nature = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@cat = '')"> + <xsl:value-of select="@cat" /> + </xsl:if> + <xsl:if test="@cat = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@s_tar = '')"> + <xsl:value-of select="@s_tar" /> + </xsl:if> + <xsl:if test="@s_tar = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@local_type = '')"> + <xsl:value-of select="@local_type" /> + </xsl:if> + <xsl:if test="@local_type = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@val_loc_ref = '')"> + <xsl:value-of select="@val_loc_ref" /> + </xsl:if> + <xsl:if test="@val_loc_ref = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@val_loc_ann = '')"> + <xsl:value-of select="@val_loc_ann" /> + </xsl:if> + <xsl:if test="@val_loc_ann = ''"> + - + </xsl:if> + </TD> + <TD> + <xsl:if test="not(@l_nat_exon = '')"> + <xsl:value-of select="@l_nat_exon" /> + </xsl:if> + <xsl:if test="@l_nat_exon = ''"> + - + </xsl:if> + </TD> + </TR> + </xsl:for-each> + </Table> + + <xsl:if test ="Mj_Pev/Mj_Habit_Descr[@num_pev]"> + <hr size="5"/> + <h4> + Habitation principale + <BR/> + </h4> + <h5> + N° P.E.V : <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@num_pev" /> + </h5> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH width="30%"> + Divers + </TH> + <TH width="40%"> + Eléments de confort + </TH> + <TH width="10%"> + Pièces + </TH> + <TH width="20"> + Surfaces (m²) + </TH> + </TR> + <TR> + <TD width="30%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TD align ="left"> + Surface (m²) : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_piece_total" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Nbr pièces : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_piece_total" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Nbr pièces princ. : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_piece_principal" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Entretien : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@l_Etat" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Année de Constr. : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@annee_constr" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Nbr Niveaux : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_niveaux" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Gros murs : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@lib_mat_gros_mur" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Toitures : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@lib_mat_toiture" /> + </TD> + + </TR> + </Table> + </TD> + <TD width="40%"> + <Table cellspacing="2" cellpadding="5"> + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_baignoires > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_baignoires" /> + </TD> + <TD align ="left" width ="75%"> + Baignoire(s) + </TD> + </TR> + </xsl:if> + + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_douches > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_douches" /> + </TD> + <TD align ="left" width ="75%"> + Douche(s) + </TD> + </TR> + </xsl:if> + + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_lavabos > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_lavabos" /> + </TD> + <TD align ="left" width ="75%"> + Lavabo(s) + </TD> + </TR> + </xsl:if> + + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_wc > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_wc" /> + </TD> + <TD align ="left" width ="75%"> + W.C. + </TD> + </TR> + </xsl:if> + + + <TR> + <TD align ="left"> + Eau : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@eau = 'EAU'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@eau = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Electricité : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@elect = 'ELECT'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@elect = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Gaz : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@gaz = 'GAZ'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@gaz = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Esc. de service : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@esc_serv = 'ESC_SERV'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@esc_serv = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Ascenseur : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@asc = 'ASC'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@asc = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Chauffage : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@chauf = 'CHAUF'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@chauf = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Vide ordure : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@vide_ord = 'VIDE_ORD'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@vide_ord = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Égout : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@egout = 'EGOUT'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@egout = ''"> + - + </xsl:if> + </TD> + </TR> + </Table> + </TD> + <TD width="15%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_sam" /> + </TD> + + <TD align ="left" width ="75%"> + S. a manger + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_chambre" /> + </TD> + + <TD align ="left" width ="75%"> + Chambre + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_cuisine_m9" /> + </TD> + + <TD align ="left" width ="75%"> + Cuisine (inf.9m2) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_cuisine_p9" /> + </TD> + + <TD align ="left" width ="75%"> + Cuisine (sup.9m2) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_salle_eau" /> + </TD> + + <TD align ="left" width ="75%"> + S. de bain + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_annexe" /> + </TD> + + <TD align ="left" width ="75%"> + Annexe + </TD> + </TR> + </Table> + </TD> + <TD width="15%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_cave" /> + </TD> + <TD align ="left" width ="75%"> + Cave(s) + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_grenier" /> + </TD> + <TD align ="left" width ="75%"> + Grenier(s) + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_terrasse" /> + </TD> + <TD align ="left" width ="75%"> + Terrasse(s) + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_garage" /> + </TD> + <TD align ="left" width ="75%"> + Garage(s) + </TD> + + </TR> + </Table> + </TD> + </TR> + </Table> + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr[@num_pev]"> + <hr size="5"/> + <h4> + Dépendance(s) + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + N° + </TH> + <TH> + Nature + </TH> + <TH> + Surface (m²) + </TH> + <TH> + Pondération + </TH> + <TH> + Entretien + </TH> + <TH> + Gros murs + </TH> + <TH> + Toitures + </TH> + <TH> + Elt. confort + </TH> + </TR> + <TR> + + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@num_pev" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nature" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@surface" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@ponderation" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@l_Etat" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@lib_mat_gros_mur" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@lib_mat_toiture" /> + </TD> + + <TD> + <Table cellspacing="2" cellpadding="5"> + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_baignoires > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_baignoires" /> + </TD> + <TD align ="left" width ="75%"> + Baignoire(s) + </TD> + </TR> + </xsl:if> + + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_douches > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_douches" /> + </TD> + <TD align ="left" width ="75%"> + Douche(s) + </TD> + </TR> + </xsl:if> + + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_lavabos > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_lavabos" /> + </TD> + <TD align ="left" width ="75%"> + Lavabo(s) + </TD> + </TR> + </xsl:if> + + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_wc > 0"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_wc" /> + </TD> + <TD align ="left" width ="75%"> + W.C. + </TD> + </TR> + </xsl:if> + <TR> + <TD align ="left"> + Eau : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@eau = 'EAU'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@eau = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Chauffage : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@chauf = 'CHAUF'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@chauf = ''"> + - + </xsl:if> + </TD> + </TR> + <TR> + <TD align ="left"> + Electricité : + </TD> + <TD align ="left" width ="75%"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@elect = 'ELECT'"> + Oui + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@elect = ''"> + - + </xsl:if> + </TD> + </TR> + </Table> + </TD> + </TR> + </Table> + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Prof_Descr[@num_pev]"> + <hr size="5"/> + <h4> + Locaux Professionnels + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + N° + </TH> + <TH> + Surface (m²) + </TH> + </TR> + <TR> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Prof_Descr/@num_pev" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Prof_Descr/@surface" /> + </TD> + </TR> + </Table> + </xsl:if> + </xsl:for-each> + </xsl:if> + </xsl:if> + </body> + </html> + </xsl:template> +</xsl:stylesheet> + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/FP_New.xslt b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_New.xslt new file mode 100755 index 0000000000000000000000000000000000000000..89c143675d9771aebb2fb1e299becb364c81f141 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_New.xslt @@ -0,0 +1,1000 @@ +<?xsl version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE xsl:stylesheet [ + <!ENTITY nbsp " "> +]> +<html xsl:version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + lang="fr" + + > + + + <head> + <!--<link rel="stylesheet" href="C:\\svn\\lib\\majic_lib\\xsl\\style.css" type="text/css" />--> + <link href="style.css" type="text/css" rel="stylesheet" /> + + </head> + <body> + <hr size="5"/> + <h1> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + Parcelle <xsl:value-of select="@section" /><xsl:value-of select="@num_parc" /> + </xsl:for-each> + </h1> + <hr size="10"/> + <Table cellspacing="2" cellpadding="5" > + <TR> + <TH align="left" width ="15%"> + Adresse : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select="@adresse" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Commune : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="@libcom" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Code Commune (Insee) : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="@codeinsee" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Cpte Propriétaire : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="Mj_Parcelle/@dnupro" /> <BR/> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Surface cadastrale (m²) : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <xsl:value-of select="@total_contenance_m2" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Urbaine : + </TH> + <TD align="left" width ="85%"> + A Chercher ??? + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Bâtie : + </TH> + <TD align="left" width ="85%"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select="@gparbat" /> + </xsl:for-each> + </TD> + </TR> + <TR> + <TH align="left" width ="15%"> + Parcelle primitive : + </TH> + <TD align="left" width ="85%"> + A Chercher ??? + </TD> + </TR> + </Table> + <img> + <xsl:attribute name="src"> + <xsl:value-of select = "concat('http://www.maison-passive-nice.fr/images/','parcelle.gif')"/> + </xsl:attribute> + </img> + <hr size="5"/> + <h4> + Propriétaire(s) de la parcelle + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Compte + </TH> + <TH> + Nom + </TH> + <TH> + Etat Civil + </TH> + <TH> + Adresse + </TH> + <TH> + Type + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <TR> + <TD> + <xsl:value-of select="@dnupro" /> + </TD> + <TD> + <xsl:value-of select="@proprietaire_nom_tiers" /> + </TD> + <TD> + <xsl:value-of select="@jdatnss" /> + <BR/> + <xsl:value-of select="@dldnss" /> + </TD> + <TD> + <xsl:value-of select="@proprietaire_adresse" /> + </TD> + <TD> + <xsl:value-of select="@l_ccodro" /> + </TD> + </TR> + </xsl:for-each> + </Table> + <hr size="5"/> + <h4> + Subdivision(s) Fiscale(s) + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Lettre + </TH> + <TH> + groupe + </TH> + <TH> + Nature + </TH> + <TH> + Occupation + </TH> + <TH> + Classe + </TH> + <TH> + Compte + </TH> + <TH> + Surface (m²) + </TH> + <TH> + Revenu (€) + </TH> + <TH> + Référence + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_Suf"> + <TR> + <TD> + <xsl:value-of select="@suf" /> + </TD> + <TD> + <xsl:value-of select="@grss_gr" /> + </TD> + <TD> + <xsl:value-of select="@nat_cult" /> + </TD> + <TD> + ??? + </TD> + <TD> + <xsl:value-of select="@clas" /> + </TD> + <TD> + <xsl:value-of select="@dnupro" /> + </TD> + <TD> + <xsl:value-of select="@contenance_suf" /> + </TD> + <TD> + <xsl:value-of select="@revenu_cadastral_txt" /> + </TD> + <TD> + <xsl:value-of select="@revenu_reference_txt" /> + </TD> + </TR> + </xsl:for-each> + </Table> + <hr size="5"/> + <h4> + Elément(s) Bâti(s) + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Ref. local + </TH> + <TH> + Nature + </TH> + <TH> + Date mutation + </TH> + <TH> + Propriétaire(s) + </TH> + </TR> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <TR> + <TD> + <a href="<xsl:value-of select="@num_invar" />"><xsl:value-of select="@num_invar" /></a> + </TD> + <TD> + <xsl:value-of select="@nature" /> + </TD> + <TD> + <xsl:value-of select="@date_mut" /> + </TD> + <TD> + <xsl:value-of select="Mj_Proprietaire/@proprietaire_nom" /> + </TD> + </TR> + </xsl:for-each> + </Table> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <hr size="15"/> + <h1> + + <a name="<xsl:value-of select="@num_invar" />">Local n° <xsl:value-of select="@num_invar" /></a> + + </h1> + <hr size="10"/> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH align="left" width="39%"> + + </TH> + <TH align="left" width="40%"> + + </TH> + <TH align="center" width="7%"> + Bat + </TH> + <TH align="center" width="7%"> + Esc + </TH> + <TH align="center" width="7%"> + Etage + </TH> + </TR> + + <TR> + <TH align="left" width="39%"> + Adresse : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@voirie" /> <xsl:value-of select="@adresse" /> + </TD> + <TD align="center" width="7%"> + <xsl:value-of select="@bat" /> + </TD> + <TD align="center" width="7%"> + <xsl:value-of select="@ent" /> + </TD> + <TD align="center" width="7%"> + <xsl:value-of select="@niv" /> + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Commune : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@libcom" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Type : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@dteloc" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Occupation : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@occupation" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Nature : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@nature" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Année de construction : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@annee_constr" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Date de mutation : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@date_mut" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Valeur cadastrale (€) : + </TH> + <TD align="left" width="40%"> + ???? + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + <TR> + <TH align="left" width="39%"> + Niveaux : + </TH> + <TD align="left" width="40%"> + <xsl:value-of select="@niveaux" /> + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + <TD align="center" width="7%"> + + </TD> + </TR> + + </Table> + <hr size="5"/> + <h4> + Propriétaire(s) du local + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + Compte + </TH> + <TH> + Nom + </TH> + <TH> + État Civil + </TH> + <TH> + Adresse + </TH> + <TH> + Type + </TH> + </TR> + + <TR> + <TD> + <xsl:value-of select="Mj_Proprietaire/@dnupro" /> + </TD> + <TD> + <xsl:value-of select="Mj_Proprietaire/@proprietaire_nom" /> + </TD> + <TD> + <xsl:value-of select="Mj_Proprietaire/@jdatnss" /> + <BR/> + <xsl:value-of select="Mj_Proprietaire/@dldnss" /> + </TD> + <TD> + <xsl:value-of select="Mj_Proprietaire/@proprietaire_adresse" /> + </TD> + <TD> + <xsl:value-of select="Mj_Proprietaire/@l_ccodro" /> + </TD> + </TR> + + </Table> + <hr size="5"/> + <h4> + P.E.V + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + N° + </TH> + <TH> + Nature + </TH> + <TH> + Catégorie + </TH> + <TH> + Tarif + </TH> + <TH> + Local Type + </TH> + <TH> + Val. Loc. Ref. (€) + </TH> + <TH> + Val. Loc. Ann. (€) + </TH> + <TH> + Nat. Exemp. + </TH> + </TR> + + <TR> + <TD> + <xsl:value-of select="Mj_Pev/@num_pev" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@af" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@cat" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@s_tar" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@local_type" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@val_loc_ref" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@val_loc_ann" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/@nature" /> + </TD> + </TR> + </Table> + + <xsl:if test ="Mj_Pev/Mj_Habit_Descr[@num_pev]"> + <hr size="5"/> + <h4> + Habitation principale + <BR/> + </h4> + <h5> + N° P.E.V : <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@num_pev" /> + </h5> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH width="30%"> + Divers + </TH> + <TH width="40%"> + Eléments de confort + </TH> + <TH width="10%"> + Pièces + </TH> + <TH width="20"> + Surfaces (m²) + </TH> + </TR> + <TR> + <TD width="30%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TD align ="left"> + Surface (m²) : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_piece_total" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Nbr pièces : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_piece_total" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Nbr pièces princ. : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_piece_principal" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Entretien : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@Etat" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Année de Constr. : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@annee_constr" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Nbr Niveaux : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_niveaux" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Gros murs : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@mat_gros_mur" /> + </TD> + + </TR> + <TR> + <TD align ="left"> + Toitures : + </TD> + + <TD align ="right"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@mat_toiture" /> + </TD> + + </TR> + </Table> + </TD> + <TD width="40%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_baignoires" /> + </TD> + <TD align ="left" width ="75%"> + Baignoire(s) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_douches" /> + </TD> + + <TD align ="left" width ="75%"> + Douche(s) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_lavabos" /> + </TD> + + <TD align ="left" width ="75%"> + Lavabo(s) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_wc" /> + </TD> + + <TD align ="left" width ="75%"> + W.C. + </TD> + </TR> + <TR> + <TD align ="left"> + Eau : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@eau" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Electricité : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@elect" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Gaz : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@gaz" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Esc. de service : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@esc_serv" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Ascenseur : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@asc" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Chauffage : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@chauf" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Vide ordure : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@vide_ord" /> + </TD> + </TR> + <TR> + <TD align ="left"> + Égout : + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@egout" /> + </TD> + </TR> + </Table> + </TD> + <TD width="15%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_sam" /> + </TD> + + <TD align ="left" width ="75%"> + S. a manger + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_chambre" /> + </TD> + + <TD align ="left" width ="75%"> + Chambre + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_cuisine_m9" /> + </TD> + + <TD align ="left" width ="75%"> + Cuisine (inf.9m2) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_cuisine_p9" /> + </TD> + + <TD align ="left" width ="75%"> + Cuisine (sup.9m2) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_salle_eau" /> + </TD> + + <TD align ="left" width ="75%"> + S. de bain + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_annexe" /> + </TD> + + <TD align ="left" width ="75%"> + Annexe + </TD> + </TR> + </Table> + </TD> + <TD width="15%"> + <Table cellspacing="2" cellpadding="5"> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_cave" /> + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@cave" /> + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_grenier" /> + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@grenier" /> + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_terrasse" /> + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@terrasse" /> + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_garage" /> + </TD> + <TD align ="left" width ="75%"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@garage" /> + </TD> + + </TR> + </Table> + </TD> + </TR> + </Table> + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr[@num_pev]"> + <hr size="5"/> + <h4> + Dépendance(s) + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + N° + </TH> + <TH> + Nature + </TH> + <TH> + Surface (m²) + </TH> + <TH> + Pondération + </TH> + <TH> + Entretien + </TH> + <TH> + Gros murs + </TH> + <TH> + Toitures + </TH> + <TH> + Elt. confort + </TH> + </TR> + <TR> + + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@num_depend" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nature" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@surface" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@ponderation" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@Etat" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@mat_gros_mur" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@mat_toiture" /> + </TD> + + <TD> + + (<xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@eau" />) (<xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@elect" />) (<xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@chauf" />) + + <Table cellspacing="2" cellpadding="5"> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_baignoires" /> + </TD> + + <TD align ="left" width ="75%"> + Baignoire(s) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_douches" /> + </TD> + + <TD align ="left" width ="75%"> + Douche(s) + </TD> + + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_lavabos" /> + </TD> + + <TD align ="left" width ="75%"> + Lavabo(s) + </TD> + </TR> + <TR> + + <TD align ="left"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_wc" /> + </TD> + + <TD align ="left" width ="75%"> + W.C. + </TD> + </TR> + </Table> + </TD> + </TR> + </Table> + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Prof_Descr[@num_pev]"> + <hr size="5"/> + <h4> + Locaux Professionnels + </h4> + <Table cellspacing="2" cellpadding="5"> + <TR> + <TH> + N° + </TH> + <TH> + Surface (m²) + </TH> + </TR> + <TR> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Prof_Descr/@num_pev" /> + </TD> + <TD> + <xsl:value-of select="Mj_Pev/Mj_Prof_Descr/@surface" /> + </TD> + </TR> + </Table> + </xsl:if> + </xsl:for-each> + </body> + </html> + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_Complet.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_Complet.xsl new file mode 100755 index 0000000000000000000000000000000000000000..1ce443f25421b218f9d7409768da6d1b32330d51 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_Complet.xsl @@ -0,0 +1,1762 @@ +<?xml version="1.0" encoding="utf-8"?> + +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:template match="/"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Helvetica"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-width="21cm" page-height="29.7cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.5cm"> + <fo:region-body margin-top="0cm" margin-bottom="0cm" margin-left="0.5cm" margin-right="0.5cm" /> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simple" font-family="Times"> + <!-- Tableau global basé sur la structure de la première ligne du relevé de propriété --> + <fo:flow flow-name="xsl-region-body"> + + <fo:block > + <fo:external-graphic > + <xsl:attribute name="src"> + file:///C:\serveurs\Apache2\htdocs\rgd\images\bandeau.jpg + </xsl:attribute> + </fo:external-graphic> + </fo:block> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="17pt" color="#008393"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + Parcelle <xsl:value-of select="@section" /><xsl:value-of select="format-number(@num_parc, '0000')"/> + </xsl:for-each> + </fo:block> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2" > + <fo:table-column column-width="17%" /> + <fo:table-column column-width="83%" /> + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@num_voirie" /> + <xsl:value-of select="@adresse" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Commune :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@libcom" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Code Commune (Insee) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@codeinsee" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Cpte Propriétaire :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Parcelle/@dnupro" /> + </fo:block> + <!-- retour chariot --> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface cadastrale (m²) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@total_contenance_m2" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Urbaine :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@gurbpa" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Bâtie :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@gparbat" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Parcelle primitive :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@num_parc_prim = '')"> + <xsl:value-of select="@num_parc_prim" /> + </xsl:if> + <xsl:if test="@num_parc_prim = ''"> + - + </xsl:if> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + + <!--<fo:block> + <fo:external-graphic> + <xsl:attribute name="src"> + http://mapsrv.rgd74.fr/geomap70/mg/net/ggGetMapImage.aspx?USER=Administrator&PWD=admin&MAPNAME=Library://RISNET_GESTION/Cartes/RGD 73-74 - RISNET_GESTION_73_74.MapDefinition&SELOBJS=PARCELLE%2C<xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select='substring(@idpar,1,2)'/> + <xsl:value-of select='substring(@idpar,4,3)'/> + <xsl:if test ="substring(@idpar,7,3)='000'"> + <xsl:text disable-output-escaping="yes">-.-.-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,7,3)='000')"> + <xsl:value-of select='substring(@idpar,7,3)'/> + </xsl:if> + <xsl:if test ="substring(@idpar,10,1)='0'"> + <xsl:text disable-output-escaping="yes">-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,10,1)='0')"> + <xsl:value-of select='substring(@idpar,10,1)'/> + </xsl:if> + <xsl:value-of select='substring(@idpar,11,1)'/> + <xsl:value-of select='substring(@idpar,12)'/> + </xsl:for-each>-&CENTERX=&CENTERY=&SCALE=*8&HEIGHT=400&WIDTH=575&RESULTTYPE=JPG + </xsl:attribute> + </fo:external-graphic> + </fo:block>--> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Urbanisme : POS/PLU + </fo:block> + + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + <fo:table-column column-width="9%" /> + <fo:table-column column-width="27.48%" /> + <fo:table-column column-width="15.38%" /> + <fo:table-column column-width="7.29%" /> + <fo:table-column column-width="7.29%" /> + <fo:table-column column-width="9.79%" /> + <fo:table-column column-width="23.77%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Zonage</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Libellé</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m2)*</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">COS</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">CES</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Hauteur</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Réglement de la zone</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@zonage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@lib_zonage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@surface" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@cos" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@ces" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@hauteur" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://mapris.rgd74.fr/DocumentsPartenaires/Reglement_POS/ <xsl:value-of select="@idreg" />.pdf + </xsl:attribute>Consulter le réglement + </fo:basic-link> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + <fo:block text-align="left" vertical-align="middle" font-size="8pt"> + *calcul sur la surface graphique, exclusion si surf ‹ 2 m² + </fo:block> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://mapris.rgd74.fr/Risnet_Gestion/Application/Rapport/etat_pos_plu/fiche_pos.asp?codcom=<xsl:value-of select="@codecom" /> + </xsl:attribute>Avancement de l'actualisation/mise en ligne du POS/PLU de cette commune + </fo:basic-link> + </fo:block> + </xsl:for-each> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Propriétaire(s) de la parcelle + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="8pt"> + *Cliquer sur le n° de compte pour accéder à son relevé de propriété + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + <fo:table-column column-width="12%" /> + <fo:table-column column-width="12%" /> + <fo:table-column column-width="20%" /> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="26%" /> + <fo:table-column column-width="15%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell number-columns-spanned="2" background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nom</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Etat Civil</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell number-columns-spanned="2" background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://localhost/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=complet&format=pdf&version=1.0 + </xsl:attribute><xsl:value-of select="@dnupro" /> + </fo:basic-link> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@jdatnss" /> + </fo:block> + <!-- retour chariot --> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dldnss" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@l_ccodro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:if test ="..//Mj_Parcelle/Mj_Suf/Mj_Proprietaire[@dnupro]"> + <fo:table-row> + <fo:table-cell number-columns-spanned="6" background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Détail</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Numéro du lot</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nom</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Etat Civil</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="../Mj_Parcelle/Mj_Suf/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@dnulot" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://localhost/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=complet&format=pdf&version=1.0 + </xsl:attribute> + <xsl:value-of select="@dnupro" /> + </fo:basic-link> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@jdatnss" /> + </fo:block> + <!-- retour chariot --> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dldnss" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@l_ccodro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Subdivision(s) fiscale(s) + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11.2%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Lettre</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Groupe</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Occupation</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Classe</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m²)</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Revenu (€)</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Référence</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_Suf"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@suf = '')"> + <xsl:value-of select="@suf" /> + </xsl:if> + <xsl:if test="@suf = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@groupe = '')"> + <xsl:value-of select="@groupe" /> + </xsl:if> + <xsl:if test="@groupe = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@nature = '')"> + <xsl:value-of select="@nature" /> + </xsl:if> + <xsl:if test="@nature = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">-</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@clas = '')"> + <xsl:value-of select="@clas" /> + </xsl:if> + <xsl:if test="@clas = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dnupro" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@contenance_suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@revenu_cadastral_txt" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@revenu_reference_txt" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + + <xsl:if test="count(Mj/Mj_Compte_Communal_Parcelle/Mj_Bati) > 0"> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Elément(s) bâti(s) + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="15%" /> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="55%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Ref. local</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Date mutation</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Propriétaire(s)</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:for-each select="Mj_Proprietaire"> + <fo:table-row> + <xsl:if test="position()='1'"> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@num_invar" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@lib_nature" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@date_mut" /> + </fo:block> + </fo:table-cell> + </xsl:if> + <xsl:if test="position() > '1'"> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + </fo:block> + </fo:table-cell> + </xsl:if> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:for-each> + </fo:table-body> + </fo:table> + </xsl:if> + <!-- .........................................Description du local, mode Complet................................................. --> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="15pt" color="#008393"> + Local n° <xsl:value-of select="@num_invar" /> + </fo:block> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2" > + + <fo:table-column column-width="39%" /> + <fo:table-column column-width="40%" /> + <fo:table-column column-width="7%" /> + <fo:table-column column-width="7%" /> + <fo:table-column column-width="7%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Bat</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Esc</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Etage</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@voirie" /> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@bat" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@ent" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@niv" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Commune :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@libcom" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dteloc" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Occupation :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@lib_occupation" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@lib_nature" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Année de construction :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@annee_constr = '0')"> + <xsl:value-of select="@annee_constr" /> + </xsl:if> + <xsl:if test="@annee_constr = '0'"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Date de mutation :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@date_mut" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Valeur cadastrale (?) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Niveaux :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@niveaux" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="center" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"></fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Propriétaire(s) du local + </fo:block> + + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="27.5%" /> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="27.5%" /> + <fo:table-column column-width="15%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nom</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">État Civil</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type</fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://localhost/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=complet&format=pdf&version=1.0 + </xsl:attribute> + <xsl:value-of select="@dnupro" /> + </fo:basic-link> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@jdatnss" /> + <!-- retour chariot --> + <xsl:value-of select="@dldnss" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@l_ccodro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + P.E.V + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">N°</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Catégorie</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Tarif</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Local Type</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Val. Loc. Ref. (?)</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Val. Loc. Ann. (?)</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nat. Exemp.</fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj_Pev"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@num_pev = '')"> + <xsl:value-of select="@num_pev" /> + </xsl:if> + <xsl:if test="@num_pev = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@l_nature = '')"> + <xsl:value-of select="@l_nature" /> + </xsl:if> + <xsl:if test="@l_nature = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@cat = '')"> + <xsl:value-of select="@cat" /> + </xsl:if> + <xsl:if test="@cat = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@s_tar = '')"> + <xsl:value-of select="@s_tar" /> + </xsl:if> + <xsl:if test="@s_tar = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@local_type = '')"> + <xsl:value-of select="@local_type" /> + </xsl:if> + <xsl:if test="@local_type = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@val_loc_ref = '')"> + <xsl:value-of select="@val_loc_ref" /> + </xsl:if> + <xsl:if test="@val_loc_ref = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@val_loc_ann = '')"> + <xsl:value-of select="@val_loc_ann" /> + </xsl:if> + <xsl:if test="@val_loc_ann = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@l_nat_exon = '')"> + <xsl:value-of select="@l_nat_exon" /> + </xsl:if> + <xsl:if test="@l_nat_exon = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + + <xsl:if test ="Mj_Pev/Mj_Habit_Descr[@num_pev]"> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Habitation principale + <!-- retour chariot --> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="8pt"> + N° P.E.V : <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@num_pev" /> + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="30%" /> + <fo:table-column column-width="30%" /> + <fo:table-column column-width="20%" /> + <fo:table-column column-width="20%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Divers</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Eléments de confort</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Pièces</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surfaces (m²)</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:table table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="60%" /> + <fo:table-column column-width="40%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m²) :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_piece_total" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nbr pièces :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_piece_total" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nbr pièces princ. :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_piece_principal" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Entretien :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@l_Etat" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Année de Constr. :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@annee_constr" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nbr Niveaux :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_niveaux" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Gros murs :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@lib_mat_gros_mur" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Toitures :</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="right" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@lib_mat_toiture" /> + </fo:block> + </fo:table-cell> + + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:table table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="50%" /> + <fo:table-column column-width="50%" /> + + <fo:table-body> + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_baignoires > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_baignoires" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Baignoire(s)</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_douches > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_douches" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Douche(s)</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_lavabos > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_lavabos" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Lavabo(s)</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <xsl:if test="Mj_Pev/Mj_Habit_Descr/@nb_wc > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_wc" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">W.C.</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Eau :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@eau = 'EAU'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@eau = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Electricité :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@elect = 'ELECT'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@elect = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Gaz :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@gaz = 'GAZ'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@gaz = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Esc. de service :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@esc_serv = 'ESC_SERV'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@esc_serv = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Ascenseur :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@asc = 'ASC'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@asc = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Chauffage :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@chauf = 'CHAUF'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@chauf = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Vide ordure :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@vide_ord = 'VIDE_ORD'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@vide_ord = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Égout :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@egout = 'EGOUT'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Habit_Descr/@egout = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:table table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="30%" /> + <fo:table-column column-width="70%" /> + + <fo:table-body> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_sam" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">S. a manger</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_chambre" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Chambre</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_cuisine_m9" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Cuisine (inf.9m2)</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_cuisine_p9" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Cuisine (sup.9m2)</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_salle_eau" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">S. de bain</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@nb_annexe" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Annexe</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:table table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="30%" /> + <fo:table-column column-width="70%" /> + + <fo:table-body> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_cave" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + Cave(s) + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_grenier" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + Grenier(s) + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_terrasse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + Terrasse(s) + </fo:block> + </fo:table-cell> + + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Habit_Descr/@suf_garage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + Garage(s) + </fo:block> + </fo:table-cell> + + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr[@num_pev]"> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Dépendance(s) + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="10%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="19.5%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">N°</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m²)</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Pondération</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Entretien</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Gros murs</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Toitures</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Elt. confort</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@num_pev" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nature" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@surface" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@ponderation" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@l_Etat" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@lib_mat_gros_mur" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@lib_mat_toiture" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="45%" /> + <fo:table-column column-width="55%" /> + + <fo:table-body> + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_baignoires > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_baignoires" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Baignoire(s)</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_douches > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_douches" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Douche(s)</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_lavabos > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_lavabos" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Lavabo(s)</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <xsl:if test="Mj_Pev/Mj_Depend_Descr/@nb_wc > 0"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Depend_Descr/@nb_wc" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">W.C.</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Eau :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@eau = 'EAU'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@eau = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Chauffage :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@chauf = 'CHAUF'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@chauf = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Electricité :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align ="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@elect = 'ELECT'"> + Oui + </xsl:if> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test ="Mj_Pev/Mj_Depend_Descr/@elect = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </xsl:if> + <xsl:if test ="Mj_Pev/Mj_Prof_Descr[@num_pev]"> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Locaux Professionnels + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="15%" /> + <fo:table-column column-width="85%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">N°</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m²)</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Prof_Descr/@num_pev" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Pev/Mj_Prof_Descr/@surface" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </xsl:if> + </xsl:for-each> + </fo:flow> + </fo:page-sequence> + </fo:root> + </xsl:template> +</xsl:stylesheet> + + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_Restreint.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_Restreint.xsl new file mode 100755 index 0000000000000000000000000000000000000000..a4ad0ace046dd98b69f2d2115e6839141bbd31ef --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_Restreint.xsl @@ -0,0 +1,593 @@ +<?xml version="1.0" encoding="iso-8859-1"?> + +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:template match="/"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-width="21cm" page-height="29.7cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.5cm"> + <fo:region-body margin-top="0cm" margin-bottom="0cm" margin-left="0.5cm" margin-right="0.5cm" /> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simple" font-family="Times"> + <!-- Tableau global basé sur la structure de la première ligne du relevé de propriété --> + <fo:flow flow-name="xsl-region-body"> + + <fo:block > + <fo:external-graphic > + <xsl:attribute name="src"> + file:///C:\serveurs\Apache2\htdocs\rgd\images\bandeau.jpg + </xsl:attribute> + </fo:external-graphic> + </fo:block> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="19pt" color="#008393"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + Parcelle <xsl:value-of select="@section" /><xsl:value-of select="format-number(@num_parc, '0000')"/> + </xsl:for-each> + </fo:block> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2" > + <fo:table-column column-width="17%" /> + <fo:table-column column-width="83%" /> + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@num_voirie" /> + <xsl:value-of select="@adresse" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Commune :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@libcom" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Code Commune (Insee) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@codeinsee" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Cpte Propriétaire :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Parcelle/@dnupro" /> + </fo:block> + <!-- retour chariot --> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface cadastrale (m²) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@total_contenance_m2" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + + <!--<fo:block> + <fo:external-graphic> + <xsl:attribute name="src"> + http://mapsrv.rgd74.fr/geomap70/mg/net/ggGetMapImage.aspx?USER=Administrator&PWD=admin&MAPNAME=Library://RISNET_GESTION/Cartes/RGD 73-74 - RISNET_GESTION_73_74.MapDefinition&SELOBJS=PARCELLE%2C<xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select='substring(@idpar,1,2)'/> + <xsl:value-of select='substring(@idpar,4,3)'/> + <xsl:if test ="substring(@idpar,7,3)='000'"> + <xsl:text disable-output-escaping="yes">-.-.-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,7,3)='000')"> + <xsl:value-of select='substring(@idpar,7,3)'/> + </xsl:if> + <xsl:if test ="substring(@idpar,10,1)='0'"> + <xsl:text disable-output-escaping="yes">-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,10,1)='0')"> + <xsl:value-of select='substring(@idpar,10,1)'/> + </xsl:if> + <xsl:value-of select='substring(@idpar,11,1)'/> + <xsl:value-of select='substring(@idpar,12)'/> + </xsl:for-each>-&CENTERX=&CENTERY=&SCALE=*8&HEIGHT=400&WIDTH=575&RESULTTYPE=JPG + </xsl:attribute> + </fo:external-graphic> + </fo:block>--> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Urbanisme : POS/PLU + </fo:block> + + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + <fo:table-column column-width="9%" /> + <fo:table-column column-width="27.48%" /> + <fo:table-column column-width="15.38%" /> + <fo:table-column column-width="7.29%" /> + <fo:table-column column-width="7.29%" /> + <fo:table-column column-width="9.79%" /> + <fo:table-column column-width="23.77%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Zonage</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Libellé</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m2)*</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">COS</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">CES</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Hauteur</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Réglement de la zone</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@zonage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@lib_zonage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@surface" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@cos" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@ces" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@hauteur" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://mapris.rgd74.fr/DocumentsPartenaires/Reglement_POS/ <xsl:value-of select="@idreg" />.pdf + </xsl:attribute>Consulter le réglement + </fo:basic-link> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + <fo:block text-align="left" vertical-align="middle" font-size="8pt"> + *calcul sur la surface graphique, exclusion si surf ‹ 2 m² + </fo:block> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://mapris.rgd74.fr/Risnet_Gestion/Application/Rapport/etat_pos_plu/fiche_pos.asp?codcom=<xsl:value-of select="@codecom" /> + </xsl:attribute>Avancement de l'actualisation/mise en ligne du POS/PLU de cette commune + </fo:basic-link> + </fo:block> + </xsl:for-each> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Propriétaire(s) de la parcelle + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="8pt"> + *Cliquer sur le n° de compte pour accéder à son relevé de propriété + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="12.5%" /> + <fo:table-column column-width="30%" /> + <fo:table-column column-width="30%" /> + <fo:table-column column-width="15%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell number-columns-spanned="2" background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nom</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://localhost/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=restreint&format=pdf&version=1.0 + </xsl:attribute> + <xsl:value-of select="@dnupro" /> + </fo:basic-link> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom_tiers" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@l_ccodro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:if test ="..//Mj_Parcelle/Mj_Suf/Mj_Proprietaire[@dnupro]"> + <fo:table-row> + <fo:table-cell number-columns-spanned="5" background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Détail</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Numéro du lot</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nom</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="../Mj_Parcelle/Mj_Suf/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@dnulot" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://localhost/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=restreint&format=pdf&version=1.0 + </xsl:attribute> + <xsl:value-of select="@dnupro" /> + </fo:basic-link> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@l_ccodro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Subdivision(s) fiscale(s) + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="12.4%" /> + <fo:table-column column-width="12.4%" /> + <fo:table-column column-width="12.4%" /> + <fo:table-column column-width="12.6%" /> + <fo:table-column column-width="12.4%" /> + <fo:table-column column-width="12.6%" /> + <fo:table-column column-width="12.6%" /> + <fo:table-column column-width="12.6%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Lettre</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Groupe</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Occupation</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Classe</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m²)</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Référence</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_Suf"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@suf = '')"> + <xsl:value-of select="@suf" /> + </xsl:if> + <xsl:if test="@suf = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@groupe = '')"> + <xsl:value-of select="@groupe" /> + </xsl:if> + <xsl:if test="@groupe = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@nature = '')"> + <xsl:value-of select="@nature" /> + </xsl:if> + <xsl:if test="@nature = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">-</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@clas = '')"> + <xsl:value-of select="@clas" /> + </xsl:if> + <xsl:if test="@clas = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dnupro" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@contenance_suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@revenu_reference_txt" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + + <xsl:if test="count(Mj/Mj_Compte_Communal_Parcelle/Mj_Bati) > 0"> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Elément(s) bâti(s) + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="15%" /> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="15%" /> + <fo:table-column column-width="55%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Ref. local</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Etages</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Propriétaire(s)</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:for-each select="Mj_Proprietaire"> + <fo:table-row> + <xsl:if test="position()='1'"> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@num_invar" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@lib_nature" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="../@niv" /> + </fo:block> + </fo:table-cell> + </xsl:if> + <xsl:if test="position() > '1'"> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + </fo:block> + </fo:table-cell> + </xsl:if> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dnupro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:for-each> + </fo:table-body> + </fo:table> + </xsl:if> + <!-- .........................................Propriétaire de Bâtis, mode Restreint................................................. --> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Propriétaire(s) du local + </fo:block> + + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2" > + + <fo:table-column column-width="15%" /> + <fo:table-column column-width="35%" /> + <fo:table-column column-width="35%" /> + <fo:table-column column-width="15%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nom</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Type</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Bati/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://localhost/rgd/rgdservices.phtml?operation=GetReleveprop&compte=<xsl:value-of select="@dnupro"/>&type=restreint&format=pdf&version=1.0 + </xsl:attribute> + <xsl:value-of select="@dnupro" /> + </fo:basic-link> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_nom_tiers" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@l_ccodro" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:flow> + </fo:page-sequence> + </fo:root> + </xsl:template> +</xsl:stylesheet> + + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_SansNom.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_SansNom.xsl new file mode 100755 index 0000000000000000000000000000000000000000..59e985cc72f7919904c9c156725c4a94c03e1f15 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/FP_fo_SansNom.xsl @@ -0,0 +1,394 @@ +<?xml version="1.0" encoding="iso-8859-1"?> + +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:template match="/"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Helvetica"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-width="21cm" page-height="29.7cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.5cm"> + <fo:region-body margin-top="0cm" margin-bottom="0cm" margin-left="0.5cm" margin-right="0.5cm" /> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simple" font-family="Times"> + <!-- Tableau global basé sur la structure de la première ligne du relevé de propriété --> + <fo:flow flow-name="xsl-region-body"> + + <fo:block > + <fo:external-graphic > + <xsl:attribute name="src"> + file:///C:\serveurs\Apache2\htdocs\rgd\images\bandeau.jpg + </xsl:attribute> + </fo:external-graphic> + </fo:block> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:block text-align="left" vertical-align="middle" font-size="17pt" color="#008393"> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + Parcelle <xsl:value-of select="@section" /><xsl:value-of select="format-number(@num_parc, '0000')"/> + </xsl:for-each> + </fo:block> + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2" > + <fo:table-column column-width="17%" /> + <fo:table-column column-width="83%" /> + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Adresse :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@num_voirie" /> + <xsl:value-of select="@adresse" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Commune :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@libcom" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Code Commune (Insee) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@codeinsee" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Cpte Propriétaire :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="Mj_Parcelle/@dnupro" /> + </fo:block> + <!-- retour chariot --> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface cadastrale (m²) :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@total_contenance_m2" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Urbaine :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@gurbpa" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Bâtie :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@gparbat" /> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Parcelle primitive :</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5" > + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@num_parc_prim = '')"> + <xsl:value-of select="@num_parc_prim" /> + </xsl:if> + <xsl:if test="@num_parc_prim = ''"> + - + </xsl:if> + </fo:block> + </xsl:for-each> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + + <!--<fo:block> + <fo:external-graphic> + <xsl:attribute name="src"> + http://mapsrv.rgd74.fr/geomap70/mg/net/ggGetMapImage.aspx?USER=Administrator&PWD=admin&MAPNAME=Library://RISNET_GESTION/Cartes/RGD 73-74 - RISNET_GESTION_73_74.MapDefinition&SELOBJS=PARCELLE%2C<xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:value-of select='substring(@idpar,1,2)'/> + <xsl:value-of select='substring(@idpar,4,3)'/> + <xsl:if test ="substring(@idpar,7,3)='000'"> + <xsl:text disable-output-escaping="yes">-.-.-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,7,3)='000')"> + <xsl:value-of select='substring(@idpar,7,3)'/> + </xsl:if> + <xsl:if test ="substring(@idpar,10,1)='0'"> + <xsl:text disable-output-escaping="yes">-</xsl:text> + </xsl:if> + <xsl:if test ="not(substring(@idpar,10,1)='0')"> + <xsl:value-of select='substring(@idpar,10,1)'/> + </xsl:if> + <xsl:value-of select='substring(@idpar,11,1)'/> + <xsl:value-of select='substring(@idpar,12)'/> + </xsl:for-each>-&CENTERX=&CENTERY=&SCALE=*8&HEIGHT=400&WIDTH=575&RESULTTYPE=JPG + </xsl:attribute> + </fo:external-graphic> + </fo:block>--> + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Urbanisme : POS/PLU + </fo:block> + + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + <fo:table-column column-width="9%" /> + <fo:table-column column-width="27.48%" /> + <fo:table-column column-width="15.38%" /> + <fo:table-column column-width="7.29%" /> + <fo:table-column column-width="7.29%" /> + <fo:table-column column-width="9.79%" /> + <fo:table-column column-width="23.77%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Zonage</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Libellé</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m2)*</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">COS</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">CES</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Hauteur</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Réglement de la zone</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@zonage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@lib_zonage" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@surface" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@cos" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@ces" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@hauteur" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://mapris.rgd74.fr/DocumentsPartenaires/Reglement_POS/ <xsl:value-of select="@idreg" />.pdf + </xsl:attribute>Consulter le réglement + </fo:basic-link> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + <fo:block text-align="left" vertical-align="middle" font-size="8pt"> + *calcul sur la surface graphique, exclusion si surf ‹ 2 m² + </fo:block> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_PosPlu"> + <fo:block color="blue" text-decoration="underline" text-align="left" vertical-align="middle" font-size="9pt"> + <fo:basic-link> + <xsl:attribute name="external-destination"> + http://mapris.rgd74.fr/Risnet_Gestion/Application/Rapport/etat_pos_plu/fiche_pos.asp?codcom=<xsl:value-of select="@codecom" /> + </xsl:attribute>Avancement de l'actualisation/mise en ligne du POS/PLU de cette commune + </fo:basic-link> + </fo:block> + </xsl:for-each> + + <fo:block color="#F1B4B4"> + <fo:leader leader-length="100%" leader-pattern="rule"/> + </fo:block> + + <fo:block text-align="left" vertical-align="middle" font-size="13pt" color="#990000"> + Subdivision(s) fiscale(s) + </fo:block> + <fo:table margin-bottom="35px" table-layout="fixed" width="100%" border-separation="2"> + + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11.2%" /> + <fo:table-column column-width="11.2%" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Lettre</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Groupe</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Nature</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Occupation</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Classe</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Compte</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Surface (m²)</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Revenu (?)</fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#eeeeee" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">Référence</fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle/Mj_Suf"> + <fo:table-row> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@suf = '')"> + <xsl:value-of select="@suf" /> + </xsl:if> + <xsl:if test="@suf = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@groupe = '')"> + <xsl:value-of select="@groupe" /> + </xsl:if> + <xsl:if test="@groupe = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@nature = '')"> + <xsl:value-of select="@nature" /> + </xsl:if> + <xsl:if test="@nature = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt">-</fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:if test="not(@clas = '')"> + <xsl:value-of select="@clas" /> + </xsl:if> + <xsl:if test="@clas = ''"> + - + </xsl:if> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@dnupro" /> + </fo:block> + </fo:table-cell> + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@contenance_suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@revenu_cadastral_txt" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell background-color="#F7F7F7" text-align="left" padding-left="5" padding-top="5" padding-bottom="5" padding-right="5"> + <fo:block text-align="left" vertical-align="middle" font-size="9pt"> + <xsl:value-of select="@revenu_reference_txt" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + + </fo:flow> + </fo:page-sequence> + </fo:root> + </xsl:template> +</xsl:stylesheet> + + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport.xsl new file mode 100755 index 0000000000000000000000000000000000000000..0df5da5c1adf6611a593f3597bd5a88159fc42f1 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport.xsl @@ -0,0 +1,303 @@ +<?xml version="1.0" encoding="utf-8"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + +<xsl:template match="Rapport_Parcelle"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-height="29.7cm" page-width="21cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.2cm" margin-right="0.2cm"> + <fo:region-body region-name="Content" margin="0.2cm 0.2cm 0.2cm 0.2cm"></fo:region-body> + <fo:region-after region-name="Footer" extent="0.5in"></fo:region-after> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="simple" font-family="Helvetica"> + + <!-- Début du pied de page qui se retrouvera sur chaque page --> + <fo:static-content flow-name="Footer"> + <fo:block text-align="right" font-size="6pt"> + Page <fo:page-number /> + </fo:block> + + <fo:block text-align="right" font-size="6pt"> + <xsl:value-of select="Mj_Compte_Communal_Parcelles/Mj_Compte_Communal_Parcelle/Mj_Parcelle/@dateheure" /> + </fo:block> + </fo:static-content> + <!-- Fin du pied de page --> + + <fo:flow flow-name="Content"> + + <fo:block> + + <!-- Création du contenu de la page pour chaque Mj_Compte_Communal_Parcelle trouvé --> + + <xsl:for-each select="Mj_Compte_Communal_Parcelles"> + + <fo:table table-layout="fixed" border-collapse="collapse"> + <fo:table-body> + <fo:table-row height="4cm"> + <!--fo:table-cell><fo:block><fo:external-graphic src="C:/serveurs/Apache2/htdocs/lib/majic_lib/pics_for_xsl/blason.bmp" content-height="2.5cm"/></fo:block></fo:table-cell--> + <fo:table-cell><fo:block font-weight="bold" text-align="center" font-size="14pt">Rapport de parcelles</fo:block></fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + <xsl:for-each select="./Mj_Compte_Communal_Parcelle"> + <fo:block border-color="black" border-style="double" border-width="1pt"> + + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="10pt"> + + <fo:table-body> + + <!-- Tableau d'affichage des informations de la parcelle --> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block font-weight="bold">PARCELLE</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="./Mj_Parcelle/@idpar" /></fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Adresse</fo:block></fo:table-cell> + <fo:table-cell> + <xsl:if test="normalize-space(./Mj_Parcelle/@num_voirie) != '' "> + <fo:block><xsl:value-of select="./Mj_Parcelle/@num_voirie" />, </fo:block> + </xsl:if> + <fo:block> <xsl:value-of select="./Mj_Parcelle/@adresse" />, </fo:block> + <fo:block> <xsl:value-of select="@libcom" /></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Surface cadastrale</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="./Mj_Parcelle/@contenance" /> m²</fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Emprise batie</fo:block></fo:table-cell> + <fo:table-cell> + <xsl:if test="./Mj_Parcelle/Mj_Emprises/@titre = 'Emprise Bati' "> + <xsl:if test="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect != '' "> + <fo:block><xsl:value-of select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect" /> m² = <xsl:value-of select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_ratio" /> % </fo:block> + </xsl:if> + </xsl:if> + <fo:block></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Emprise non-batie</fo:block></fo:table-cell> + <fo:table-cell> + <xsl:if test="./Mj_Parcelle/Mj_Emprises/@titre = 'Emprise Bati' "> + <xsl:if test="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect != '' "> + <fo:block> + <xsl:variable name="surf_parcelle" select="./Mj_Parcelle/@contenance"/> + <xsl:variable name="surf_emprisebati" select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect"/> + <xsl:variable name="res" select="round((($surf_parcelle - $surf_emprisebati)*100))*0.01"/> + + <xsl:variable name="ratio_emprisebati" select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_ratio"/> + <xsl:variable name="resratio" select="100 - $ratio_emprisebati"/> + + <xsl:value-of select="$res" /> m² = <xsl:value-of select="$resratio" /> %</fo:block> + </xsl:if> + </xsl:if> + <fo:block></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block>Compte propriétaire</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="./Mj_Parcelle/@dnupro" /></fo:block></fo:table-cell> + </fo:table-row> + + <!-- Tableau d'affichage des propriétaires de la parcelle --> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block font-weight="bold">PROPRIÉTAIRE</fo:block></fo:table-cell> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + <xsl:for-each select="./Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell><fo:block>Nom</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="@proprietaire_nom" /></fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block>Adresse</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="@proprietaire_adresse" /></fo:block></fo:table-cell> + </fo:table-row> + </xsl:for-each> + + <!-- Tableau d'affichage des informations de la subdi. fiscale de la parcelle --> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block font-weight="bold">SUBDIVISION FISCALE</fo:block></fo:table-cell> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Revenu</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="./Mj_Parcelle/@revenu_cadastral" /> €</fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Surface</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="./Mj_Parcelle/@contenance" /> m²</fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block>Occupation</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="./Mj_Parcelle/@grss_gr" /></fo:block></fo:table-cell> + </fo:table-row> + + <!-- Tableau d'affichage des emprises de la parcelle --> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block font-weight="bold">EMPRISES</fo:block></fo:table-cell> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + + <xsl:for-each select="./Mj_Parcelle/Mj_Emprises"> + <xsl:if test="./@emprise_totale_intersect != 0 "> + <fo:table-row> + <fo:table-cell> + <fo:block><xsl:value-of select="./@titre" /></fo:block> + </fo:table-cell> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + <xsl:for-each select="./Mj_Emprise"> + <fo:table-row> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + <fo:table-cell> + <fo:block> + Pourcentage de la parcelle intersectée : <xsl:value-of select="./@emprise_ratio_label" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + <xsl:for-each select="./Mj_Attributes/Mj_Attribute"> + <xsl:if test="./@title != '' "> + <fo:table-row> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + <fo:table-cell> + <fo:block> + <xsl:value-of select="./@title" /> : <xsl:value-of select="./@value" /> + <xsl:if test="./@label = 'intersect' "> m² </xsl:if> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + </xsl:for-each> + <fo:table-row height="0.5cm"> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + + <fo:table-row height="1cm"> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + + <!-- Tableau d'affichage des locaux de la parcelle --> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block font-weight="bold">LOCAL</fo:block></fo:table-cell> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + + <xsl:for-each select="./Mj_Bati"> + + <fo:table-row> + <fo:table-cell><fo:block>Adresse</fo:block></fo:table-cell> + <fo:table-cell><fo:block>Batiment <xsl:value-of select="@bat" />,Etage <xsl:value-of select="@niv" />,Porte <xsl:value-of select="@num_de_porte" />,<xsl:value-of select="voirie" />,<xsl:value-of select="@adresse" /></fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Type de local</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="@nat_loc" /></fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Valeur locative</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="@dvlpera" /> €</fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell><fo:block>Millièmes et lots</fo:block></fo:table-cell> + <fo:table-cell><fo:block></fo:block></fo:table-cell> + </fo:table-row> + <fo:table-row height="1cm"> + <fo:table-cell><fo:block>Compte propriétaire</fo:block></fo:table-cell> + <fo:table-cell><fo:block><xsl:value-of select="@b_dnupro" /></fo:block></fo:table-cell> + </fo:table-row> + + <!-- affichage en tableau des propriétaires des locaux --> + <xsl:for-each select="./Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell> + <fo:table> + <fo:table-body> + <fo:table-row height="1.5cm"> + <fo:table-cell width="2cm"><fo:block></fo:block></fo:table-cell> + <fo:table-cell width="5cm" font-size="9pt"><fo:block>Propriétaire local</fo:block></fo:table-cell> + <fo:table-cell width="13cm" font-size="9pt"><fo:block><xsl:value-of select="@proprietaire_nom" /> ; <xsl:value-of select="@proprietaire_adresse" /></fo:block></fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + + </xsl:for-each> + + + </fo:table-body> + + </fo:table> + + </fo:block> + + <!-- permet de sauter une page --> + <fo:block break-after="page"/> + + </xsl:for-each> + + <fo:block> + <fo:table> + <fo:table-body> + <fo:table-row height="1.5cm"> + <fo:table-cell width="2cm"><fo:block></fo:block></fo:table-cell> + <fo:table-cell width="5cm" font-size="9pt"><fo:block font-weight="bold" >Totaux</fo:block></fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:block> + + <fo:block> + <fo:table> + <fo:table-body> + <fo:table-row height="1.5cm"> + <fo:table-cell width="2cm"><fo:block></fo:block></fo:table-cell> + <fo:table-cell width="5cm" font-size="9pt"><fo:block>Surface cadastrale</fo:block></fo:table-cell> + <fo:table-cell width="13cm" font-size="9pt"><fo:block><xsl:value-of select="@Sum_contenance" /> m²</fo:block></fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:block> + + <fo:block> + <fo:table> + <fo:table-body> + <fo:table-row height="1.5cm"> + <fo:table-cell width="2cm"><fo:block></fo:block></fo:table-cell> + <fo:table-cell width="5cm" font-size="9pt"><fo:block>Revenu</fo:block></fo:table-cell> + <fo:table-cell width="13cm" font-size="9pt"><fo:block><xsl:value-of select="@Sum_revenu" /> €</fo:block></fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:block> + + <fo:block> + <fo:table> + <fo:table-body> + <fo:table-row height="1.5cm"> + <fo:table-cell width="2cm"><fo:block></fo:block></fo:table-cell> + <fo:table-cell width="5cm" font-size="9pt"><fo:block>Valeur locative</fo:block></fo:table-cell> + <fo:table-cell width="13cm" font-size="9pt"><fo:block><xsl:value-of select="@Sum_valeur_locative" /> €</fo:block></fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:block> + + </xsl:for-each> + + </fo:block> + + </fo:flow> + + </fo:page-sequence> + + </fo:root> + +</xsl:template> + +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_BatieNonBatie.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_BatieNonBatie.xsl new file mode 100755 index 0000000000000000000000000000000000000000..a440086602e69804df707989e6e0d1067d4fe63e --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_BatieNonBatie.xsl @@ -0,0 +1,176 @@ +<?xml version="1.0" encoding='utf-8' ?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<xsl:output method="xml" indent="yes"/> +<xsl:template match="Rapport_Parcelle"> +<?mso-application progid="Excel.Sheet"?> + <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Author>Veremap.pro</Author> + <LastAuthor>Veremap.pro</LastAuthor> + <Company>Veremes</Company> + </DocumentProperties> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>12300</WindowHeight> + <WindowWidth>18915</WindowWidth> + <WindowTopX>120</WindowTopX> + <WindowTopY>105</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + + <Style ss:ID="s63"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s64"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s65"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + </Style> + + </Styles> + <Worksheet ss:Name="Feuil1"> + <!--<xsl:variable name="nb_ligne"><xsl:value-of select="./XmlMapLog/XmlLog/@nb_ligne" /></xsl:variable>--> + <Table ss:ExpandedColumnCount="7" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15"> + <!--<xsl:attribute name="ss:ExpandedRowCount"><xsl:value-of select="1000" /></xsl:attribute>--> + <Column ss:AutoFitWidth="0" ss:Width="103.5"/> + <Column ss:AutoFitWidth="0" ss:Width="105"/> + <Column ss:AutoFitWidth="0" ss:Width="119.25"/><!--<Column ss:Index="4" ss:AutoFitWidth="0" ss:Width="63.75"/>--> + <Column ss:AutoFitWidth="0" ss:Width="119.25"/> + <Column ss:AutoFitWidth="0" ss:Width="127.5"/> + <Column ss:AutoFitWidth="0" ss:Width="119.25"/> + <Column ss:AutoFitWidth="0" ss:Width="127.5"/> + + <Row ss:AutoFitHeight="0" ss:Height="15.75"> + <Cell ss:MergeAcross="2" ss:StyleID="s63"><Data ss:Type="String">PARCELLES</Data></Cell> + <Cell ss:MergeAcross="3" ss:StyleID="s64"><Data ss:Type="String">EMPRISES</Data></Cell> + </Row> + + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s65"><Data ss:Type="String">Parcelle</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Adresse</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Surface cadastrale (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Emprise bâtie (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Emprise bâtie (%)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Emprise non bâtie (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Emprise non bâtie (%)</Data></Cell> + </Row> + <xsl:for-each select="Mj_Compte_Communal_Parcelles/Mj_Compte_Communal_Parcelle"> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@idpar" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@adresse" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Parcelle/@contenance" /></Data></Cell> + <Cell> + <Data ss:Type="Number"> + <xsl:if test="./Mj_Parcelle/Mj_Emprises/@titre = 'Emprise Bati' "> + <xsl:if test="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect != '' "> + <xsl:value-of select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect" /> + </xsl:if> + </xsl:if> + </Data> + </Cell> + <Cell> + <Data ss:Type="Number"> + + <xsl:if test="./Mj_Parcelle/Mj_Emprises/@titre = 'Emprise Bati' "> + <xsl:if test="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect != '' "> + <xsl:value-of select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_ratio" /> + </xsl:if> + </xsl:if> + </Data> + </Cell> + + <Cell> + <Data ss:Type="Number"> + <xsl:if test="./Mj_Parcelle/Mj_Emprises/@titre = 'Emprise Bati' "> + <xsl:if test="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect != '' "> + <xsl:variable name="surf_parcelle" select="./Mj_Parcelle/@contenance"/> + <xsl:variable name="surf_emprisebati" select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect"/> + <xsl:variable name="res" select="round((($surf_parcelle - $surf_emprisebati)*100))*0.01"/> + <xsl:value-of select="$res" /> + </xsl:if> + </xsl:if> + </Data> + </Cell> + + <Cell> + <Data ss:Type="Number"> + + <xsl:if test="./Mj_Parcelle/Mj_Emprises/@titre = 'Emprise Bati' "> + <xsl:if test="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_intersect != '' "> + <xsl:variable name="ratio_emprisebati" select="./Mj_Parcelle/Mj_Emprises[@titre='Emprise Bati']/@emprise_totale_ratio"/> + <xsl:variable name="resratio" select="100 - $ratio_emprisebati"/> + <xsl:value-of select="$resratio" /> + </xsl:if> + </xsl:if> + </Data> + </Cell> + </Row> + + + </xsl:for-each> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">TOTAUX</Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_m2" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_bati" /></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell> + <Data ss:Type="String"> + <xsl:variable name="sum_contenance" select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_m2"/> + <xsl:variable name="sum_contenance_bati" select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_bati"/> + <xsl:variable name="sum_contenance_non_bati" select="$sum_contenance - $sum_contenance_bati"/> + <xsl:value-of select="$sum_contenance_non_bati" /> + </Data> + </Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </Row> + + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <PaperSizeIndex>9</PaperSizeIndex> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + </WorksheetOptions> + </Worksheet> + </Workbook> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_EmprisePosPlu.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_EmprisePosPlu.xsl new file mode 100755 index 0000000000000000000000000000000000000000..a2d8011841189ac04dac61ddea0918030b3430e6 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_EmprisePosPlu.xsl @@ -0,0 +1,176 @@ +<?xml version="1.0" encoding='utf-8' ?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<xsl:output method="xml" indent="yes"/> +<xsl:template match="Rapport_Parcelle"> +<?mso-application progid="Excel.Sheet"?> + <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Author>Veremap.pro</Author> + <LastAuthor>Veremap.pro</LastAuthor> + <Company>Veremes</Company> + </DocumentProperties> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>12300</WindowHeight> + <WindowWidth>18915</WindowWidth> + <WindowTopX>120</WindowTopX> + <WindowTopY>105</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + <Style ss:ID="s61"> + <Alignment ss:Vertical="Bottom" ss:WrapText="1"/> + </Style> + <Style ss:ID="s62"> + <Alignment ss:Horizontal="Center" ss:WrapText="1"/> + </Style> + <Style ss:ID="s63"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s64"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s65"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + </Style> + + </Styles> + <Worksheet ss:Name="Feuil1"> + <Table ss:ExpandedColumnCount="40" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="103.5"/> + <Column ss:AutoFitWidth="0" ss:Width="105"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Row> + <Cell ss:MergeAcross="2" ss:StyleID="s64"><Data ss:Type="String">PARCELLES</Data></Cell> + <Cell ss:MergeAcross="6" ss:StyleID="s64"><Data ss:Type="String">EMPRISES</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s65"><Data ss:Type="String">Parcelle</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Adresse</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Surface cadastrale (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String"></Data></Cell> + </Row> + + <xsl:for-each select="Mj_Compte_Communal_Parcelles/Mj_Compte_Communal_Parcelle"> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@idpar" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@adresse" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Parcelle/@contenance" /></Data></Cell> + <xsl:for-each select="./Mj_Parcelle/Mj_Emprises"> + <Cell><Data ss:Type="String"><xsl:value-of select="./@titre" /> :</Data></Cell> + <xsl:for-each select="./Mj_Emprise"> + <Cell> + <Data ss:Type="String">Pourcentage de la parcelle intersectée : <xsl:value-of select="./@emprise_ratio_label" />, +<xsl:for-each select="./Mj_Attributes/Mj_Attribute"> + <xsl:if test="./@title != '' "> +<xsl:value-of select="./@title" /> : <xsl:value-of select="./@value" /><xsl:if test="./@label = 'intersect' "> m²</xsl:if>, +</xsl:if> + </xsl:for-each> + </Data> + </Cell> + </xsl:for-each> + </xsl:for-each> + </Row> + </xsl:for-each> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">TOTAUX</Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_m2" /></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </Row> + </Table> + + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <PaperSizeIndex>9</PaperSizeIndex> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + </WorksheetOptions> + </Worksheet> + </Workbook> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_Locaux.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_Locaux.xsl new file mode 100755 index 0000000000000000000000000000000000000000..6ef49212c7e61b08bd7d914cfb1d0648eb0865b4 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_Locaux.xsl @@ -0,0 +1,155 @@ +<?xml version="1.0" encoding='utf-8' ?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<xsl:output method="xml" indent="yes"/> +<xsl:template match="Rapport_Parcelle"> +<?mso-application progid="Excel.Sheet"?> + <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Author>Veremap.pro</Author> + <LastAuthor>Veremap.pro</LastAuthor> + <Company>Veremes</Company> + </DocumentProperties> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>12300</WindowHeight> + <WindowWidth>18915</WindowWidth> + <WindowTopX>120</WindowTopX> + <WindowTopY>105</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + + <Style ss:ID="s63"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s64"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s65"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + </Style> + + </Styles> + <Worksheet ss:Name="Feuil1"> + <Table ss:ExpandedColumnCount="7" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="85"/> + <Column ss:AutoFitWidth="0" ss:Width="125"/> + <Column ss:AutoFitWidth="0" ss:Width="115"/> + <Column ss:AutoFitWidth="0" ss:Width="135"/> + <Column ss:AutoFitWidth="0" ss:Width="115"/> + <Column ss:AutoFitWidth="0" ss:Width="105"/> + <Column ss:AutoFitWidth="0" ss:Width="90"/> + + <Row ss:AutoFitHeight="0" ss:Height="15.75"> + <Cell ss:MergeAcross="2" ss:StyleID="s63"><Data ss:Type="String">PARCELLES</Data></Cell> + <Cell ss:MergeAcross="3" ss:StyleID="s64"><Data ss:Type="String">LOCAUX</Data></Cell> + </Row> + + <Row ss:AutoFitHeight="0" ss:StyleID="s65"> + <Cell><Data ss:Type="String">Parcelle</Data></Cell> + <Cell><Data ss:Type="String">Adresse</Data></Cell> + <Cell><Data ss:Type="String">Surface cadastrale (m²)</Data></Cell> + <Cell><Data ss:Type="String">Adresse local</Data></Cell> + <Cell><Data ss:Type="String">Type de local</Data></Cell> + <Cell><Data ss:Type="String">Valeur locative (Euros)</Data></Cell> + <Cell><Data ss:Type="String">Millièmes et lots</Data></Cell> + </Row> + + <xsl:for-each select="Mj_Bati_Parcelles/Mj_Bati_Parcelle"> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"><xsl:value-of select="@id_par" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="@adresse" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="@contenance" /></Data></Cell> + <xsl:if test="./Mj_Bati/@bat != '' "> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@voirie" /> <xsl:value-of select="./Mj_Bati/@adresse" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@dteloc" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Bati/@dvlpera" /></Data></Cell> + <xsl:if test="./Mj_Bati/@dnumql != '' "> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@dnumql" />/<xsl:value-of select="./Mj_Bati/@ddenql" /></Data></Cell> + </xsl:if> + <xsl:if test="./Mj_Bati/@dnumql = '' "> + <Cell><Data ss:Type="String"></Data></Cell> + </xsl:if> + </xsl:if> + <xsl:if test="./Mj_Bati/@bat = '' "> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </xsl:if> + </Row> + <xsl:for-each select="./Mj_Bati"> + <xsl:if test="position()!=1"> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@voirie" /> <xsl:value-of select="./@adresse" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@dteloc" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./@dvlpera" /></Data></Cell> + <xsl:if test="./@dnumql != '' "> + <Cell><Data ss:Type="String"><xsl:value-of select="./@dnumql" />/<xsl:value-of select="./@ddenql" /></Data></Cell> + </xsl:if> + <xsl:if test="./@dnumql = '' "> + <Cell><Data ss:Type="String"></Data></Cell> + </xsl:if> + </Row> + </xsl:if> + </xsl:for-each> + </xsl:for-each> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">TOTAUX</Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Bati_Parcelles/@sum_contenance_m2" /></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Bati_Parcelles/@sum_valeur_locative" /></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </Row> + + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <PaperSizeIndex>9</PaperSizeIndex> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + </WorksheetOptions> + </Worksheet> + </Workbook> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_Proprietaire.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_Proprietaire.xsl new file mode 100755 index 0000000000000000000000000000000000000000..32ded4b7ea8c4682c30a4a236d812ff6a632e04c --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_Proprietaire.xsl @@ -0,0 +1,134 @@ +<?xml version="1.0" encoding='utf-8' ?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<xsl:output method="xml" indent="yes"/> +<xsl:template match="Rapport_Parcelle"> +<?mso-application progid="Excel.Sheet"?> + <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Author>Veremap.pro</Author> + <LastAuthor>Veremap.pro</LastAuthor> + <Company>Veremes</Company> + </DocumentProperties> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>12300</WindowHeight> + <WindowWidth>18915</WindowWidth> + <WindowTopX>120</WindowTopX> + <WindowTopY>105</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + + <Style ss:ID="s63"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s64"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s65"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + </Style> + + </Styles> + <Worksheet ss:Name="Feuil1"> + <!--<xsl:variable name="nb_ligne"><xsl:value-of select="./XmlMapLog/XmlLog/@nb_ligne" /></xsl:variable>--> + <Table ss:ExpandedColumnCount="6" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15"> + <!--<xsl:attribute name="ss:ExpandedRowCount"><xsl:value-of select="1000" /></xsl:attribute>--> + <Column ss:AutoFitWidth="0" ss:Width="103.5"/> + <Column ss:AutoFitWidth="0" ss:Width="105"/> + <Column ss:Index="4" ss:AutoFitWidth="0" ss:Width="63.75"/> + <Column ss:AutoFitWidth="0" ss:Width="119.25"/> + <Column ss:AutoFitWidth="0" ss:Width="127.5"/> + + <Row ss:AutoFitHeight="0" ss:Height="15.75"> + <Cell ss:MergeAcross="2" ss:StyleID="s63"><Data ss:Type="String">PARCELLES</Data></Cell> + <Cell ss:MergeAcross="2" ss:StyleID="s64"><Data ss:Type="String">PROPRIETAIRES</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s65"><Data ss:Type="String">Parcelle</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Adresse</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Surface cadastrale (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Compte propriétaire</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Nom</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Adresse</Data></Cell> + </Row> + + <xsl:for-each select="Mj_Compte_Communal_Parcelles/Mj_Compte_Communal_Parcelle"> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@idpar" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@adresse" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Parcelle/@contenance" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Proprietaire/@dnupro" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Proprietaire/@proprietaire_nom" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Proprietaire/@proprietaire_adresse" /></Data></Cell> + </Row> + + <xsl:for-each select="./Mj_Proprietaire"> + <xsl:if test="position()!=1"> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="@proprietaire_nom" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="@proprietaire_adresse" /></Data></Cell> + </Row> + </xsl:if> + </xsl:for-each> + </xsl:for-each> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">TOTAUX</Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_m2" /></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </Row> + + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <PaperSizeIndex>9</PaperSizeIndex> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + </WorksheetOptions> + </Worksheet> + </Workbook> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_ProprietaireLocaux.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_ProprietaireLocaux.xsl new file mode 100755 index 0000000000000000000000000000000000000000..8a9cfff6b14d15c3029a4bab4a6c01ecc7c3f3ef --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_ProprietaireLocaux.xsl @@ -0,0 +1,179 @@ +<?xml version="1.0" encoding='utf-8' ?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<xsl:output method="xml" indent="yes"/> +<xsl:template match="Rapport_Parcelle"> +<?mso-application progid="Excel.Sheet"?> + <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Author>Veremap.pro</Author> + <LastAuthor>Veremap.pro</LastAuthor> + <Company>Veremes</Company> + </DocumentProperties> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>12300</WindowHeight> + <WindowWidth>18915</WindowWidth> + <WindowTopX>120</WindowTopX> + <WindowTopY>105</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + <Style ss:ID="s64"> + <Alignment ss:Horizontal="Center" ss:Vertical="Top"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s65"> + <Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1"/> + </Style> + </Styles> + + <Worksheet ss:Name="Feuil1"> + <!--<xsl:variable name="nb_ligne"><xsl:value-of select="./XmlMapLog/XmlLog/@nb_ligne" /></xsl:variable>--> + <Table ss:ExpandedColumnCount="30" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15"> + <!--<xsl:attribute name="ss:ExpandedRowCount"><xsl:value-of select="1000" /></xsl:attribute>--> + <Column ss:AutoFitWidth="0" ss:Width="100"/> + <Column ss:AutoFitWidth="0" ss:Width="100"/> + <Column ss:AutoFitWidth="0" ss:Width="200"/> + <Column ss:AutoFitWidth="0" ss:Width="55"/> + <Column ss:AutoFitWidth="0" ss:Width="60"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="90"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="45"/> + <Column ss:AutoFitWidth="0" ss:Width="200"/> + <Column ss:AutoFitWidth="0" ss:Width="80"/> + <Column ss:AutoFitWidth="0" ss:Width="115"/> + <Column ss:AutoFitWidth="0" ss:Width="200"/> + <Column ss:AutoFitWidth="0" ss:Width="70"/> + <Column ss:AutoFitWidth="0" ss:Width="80"/> + <Row ss:AutoFitHeight="0" ss:Height="15.75" ss:StyleID="s64"> + <Cell ss:MergeAcross="3"><Data ss:Type="String">PARCELLES</Data></Cell> + <Cell ss:MergeAcross="12"><Data ss:Type="String">LOCAUX</Data></Cell> + </Row> + + <Row ss:AutoFitHeight="0" ss:Height="30" ss:StyleID="s65"> + <Cell><Data ss:Type="String">Parcelle</Data></Cell> + <Cell><Data ss:Type="String">Commune</Data></Cell> + <Cell><Data ss:Type="String">Adresse parcelle</Data></Cell> + <Cell><Data ss:Type="String">Superficie parcelle(m²)</Data></Cell> + <Cell><Data ss:Type="String">Invariant</Data></Cell> + <Cell><Data ss:Type="String">Superficie local(m²)</Data></Cell> + <Cell><Data ss:Type="String">Type</Data></Cell> + <Cell><Data ss:Type="String">Nature</Data></Cell> + <Cell><Data ss:Type="String">Occupation</Data></Cell> + <Cell><Data ss:Type="String">Année construction</Data></Cell> + <Cell><Data ss:Type="String">Étage</Data></Cell> + <Cell><Data ss:Type="String">Adresse local</Data></Cell> + <Cell><Data ss:Type="String">Compte propriétaire</Data></Cell> + <Cell><Data ss:Type="String">Propriétaire</Data></Cell> + <Cell><Data ss:Type="String">Adresse propriétaire</Data></Cell> + <Cell><Data ss:Type="String">Indivision</Data></Cell> + <Cell><Data ss:Type="String">Droit</Data></Cell> + </Row> + + <xsl:for-each select="Mj_Bati_Parcelles/Mj_Bati_Parcelle"> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"><xsl:value-of select="@id_par" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="@com" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="@adresse" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="@contenance" /></Data></Cell> + <xsl:if test="./Mj_Bati/@bat != '' "> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@num_invar" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Bati/Mj_Pev/Mj_Habit_Descr/@suf_piece_total" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@local_type" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@lib_nature" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@lib_occupation" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@annee_constr" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/@niv" /></Data></Cell> + <Cell><Data ss:Type="String">Batiment <xsl:value-of select="./Mj_Bati/@bat" /> <xsl:value-of select="./Mj_Bati/@ent" />, Etage <xsl:value-of select="./Mj_Bati/@niv" />, Porte <xsl:value-of select="./Mj_Bati/@num_de_porte" />,, <xsl:value-of select="./Mj_Bati/@adresse" /></Data></Cell> + </xsl:if> + <xsl:if test="./Mj_Bati/@bat = '' "> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </xsl:if> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/Mj_Proprietaire/@dnupro" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/Mj_Proprietaire/@proprietaire_nom" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/Mj_Proprietaire/@proprietaire_adresse" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/Mj_Proprietaire/@l_ccodem" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Bati/Mj_Proprietaire/@l_ccodro" /></Data></Cell> + </Row> + + <xsl:for-each select="./Mj_Bati/Mj_Proprietaire"> + <xsl:if test="position()!=1"> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="../@num_invar" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="../Mj_Pev/Mj_Habit_Descr/@suf_piece_total" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="../@local_type" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="../@lib_nature" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="../@lib_occupation" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="../@annee_constr" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="../@niv" /></Data></Cell> + <Cell><Data ss:Type="String">Batiment <xsl:value-of select="../@bat" /> <xsl:value-of select="../@ent" />, Etage <xsl:value-of select="../@niv" />, Porte <xsl:value-of select="../@num_de_porte" />,, <xsl:value-of select="../@adresse" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@dnupro" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@proprietaire_nom" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@proprietaire_adresse" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@l_ccodem" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./@l_ccodro" /></Data></Cell> + </Row> + </xsl:if> + </xsl:for-each> + </xsl:for-each> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">TOTAUX</Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Bati_Parcelles/@sum_contenance_m2" /></Data></Cell> + </Row> + + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <PaperSizeIndex>9</PaperSizeIndex> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + </WorksheetOptions> + </Worksheet> + </Workbook> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_SubdivisionFiscale.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_SubdivisionFiscale.xsl new file mode 100755 index 0000000000000000000000000000000000000000..bd1e45b07c4f9eb4b7c979b8e63b0ec748f80b54 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_Rapport_Parcelle_SubdivisionFiscale.xsl @@ -0,0 +1,119 @@ +<?xml version="1.0" encoding='utf-8' ?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<xsl:output method="xml" indent="yes"/> +<xsl:template match="Rapport_Parcelle"> +<?mso-application progid="Excel.Sheet"?> + <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Author>Veremap.pro</Author> + <LastAuthor>Veremap.pro</LastAuthor> + <Company>Veremes</Company> + </DocumentProperties> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>12300</WindowHeight> + <WindowWidth>18915</WindowWidth> + <WindowTopX>120</WindowTopX> + <WindowTopY>105</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + + <Style ss:ID="s63"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s64"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/> + </Borders> + </Style> + <Style ss:ID="s65"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/> + </Style> + + </Styles> + <Worksheet ss:Name="Feuil1"> + <Table ss:ExpandedColumnCount="6" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="103.5"/> + <Column ss:AutoFitWidth="0" ss:Width="105"/> + <Column ss:AutoFitWidth="0" ss:Width="115"/> + <Column ss:AutoFitWidth="0" ss:Width="115"/> + <Column ss:AutoFitWidth="0" ss:Width="110"/> + <Column ss:AutoFitWidth="0" ss:Width="110"/> + + <Row ss:AutoFitHeight="0" ss:Height="15.75"> + <Cell ss:MergeAcross="2" ss:StyleID="s63"><Data ss:Type="String">PARCELLES</Data></Cell> + <Cell ss:MergeAcross="2" ss:StyleID="s64"><Data ss:Type="String">SUBDIVISION FISCALE</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s65"><Data ss:Type="String">Parcelle</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Adresse</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Surface cadastrale (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Revenu (Euros)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Surface (m²)</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">Occupation</Data></Cell> + </Row> + <xsl:for-each select="./Mj_Compte_Communal_Parcelles/Mj_Compte_Communal_Parcelle"> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@idpar" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/@adresse" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Parcelle/@contenance" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./@total_revenu_cadastral" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./@total_contenance" /></Data></Cell> + <Cell><Data ss:Type="String"><xsl:value-of select="./Mj_Parcelle/Mj_Suf/@occupation" /></Data></Cell> + </Row> + </xsl:for-each> + + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">TOTAUX</Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_m2" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_revenu" /></Data></Cell> + <Cell><Data ss:Type="Number"><xsl:value-of select="./Mj_Compte_Communal_Parcelles/@Sum_contenance_m2" /></Data></Cell> + <Cell><Data ss:Type="String"></Data></Cell> + </Row> + + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <PaperSizeIndex>9</PaperSizeIndex> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + </WorksheetOptions> + </Worksheet> + </Workbook> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo.xsl new file mode 100755 index 0000000000000000000000000000000000000000..dbfa9df57303c23247d4de3a7a75ecabf4449384 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo.xsl @@ -0,0 +1,2405 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:template match="/"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-height="21cm" page-width="29.7cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.5cm"> + <fo:region-body margin="0.5cm 0 0.5cm 0" /> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simple" font-family="Times"> +<!-- Tableau global basé sur la structure de la première ligne du relevé de propriété --> + <fo:flow flow-name="xsl-region-body"> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="28.7" /> + +<!-- Début de l'en-tête qui se retrouvera sur chaque page du RP --> + <fo:table-header> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="1.2cm" /> + <fo:table-column column-width="0.6cm" /> + <fo:table-column column-width="0.6cm" /> + <fo:table-column column-width="0.9cm" /> + <fo:table-column column-width="0.9cm" /> + <fo:table-column column-width="6.4cm" /> + <fo:table-column column-width="15.4cm" /> + <fo:table-column column-width="1.8cm" /> + <fo:table-column column-width="0.9cm" /> + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">ANNEE DE MAJ</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@annee_de_maj" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">DEP DIR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@dep_dir" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" padding-left="0.1cm" border-width="0.5pt"> + <fo:block line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@com" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle" font-size="16pt" font-style="italic">RELEVE DE PROPRIETE ( + <fo:page-number /> + + / + <fo:page-number-citation ref-id="theEnd" /> + + )</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">NUMERO COMMUNAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@numero_communal" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage de la ligne titre "PROPRIETAIRE" --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="28.7cm" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell padding-top="0.5cm" padding-bottom="0.1cm"> + <fo:block font-size="8pt" text-align="center">PROPRIETAIRE</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du tableau proprietaire --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" border="0.5pt solid black" width="100%" font-size="8pt" > + <fo:table-column column-width="21.7cm" /> + + <fo:table-column column-width="7cm" /> + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Proprietaire | Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell> + <fo:block> + <!-- <xsl:value-of select="@l_ccodro" /> --> + + + <!-- <xsl:value-of select="@l_ccodem" /> --> + + + <xsl:value-of select="@dnuper" /> + + + <xsl:value-of select="@proprietaire_nom" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.3cm"> + <fo:block> + <xsl:value-of select="@jdatnss" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell padding-left="0.3cm"> + <fo:block> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block> + <xsl:value-of select="@dldnss" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + +<!-- Fin de l'en-tête --> +<!-- Début du corps du tableau global --> + <fo:table-body> +<!-- Affichage des poprietes baties --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="0.4cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="6.4cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.4cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="2.4cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.7cm" /> + +<!-- Affichage de l'en-tête des propriétés baties --> + <fo:table-header> + <fo:table-row> + <fo:table-cell number-columns-spanned="26" padding-top="1cm" padding-bottom="0.1cm"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">PROPRIETES BATIES</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell number-columns-spanned="7" border="0.5pt solid black"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">DESIGNATION DES PROPRIETES</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="5" border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">IDENTIFICATION DU LOCAL</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="14" border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">EVALUATION DU LOCAL</fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des titres des colonnes des propriétés baties --> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SECTION</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PLAN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CP</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N° Voirie</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ADRESSE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CODE RIVOLI</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">BAT</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ENT</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">NIV</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PORTE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°INVAR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">S TAR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">M EVAL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AF</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">NAT LOC</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CAT</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">REVENU CADASTRAL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COLL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">AN RET</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">AN DEB</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FRACTION RC EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">% EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" > + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">TX OM</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COEF</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + + <fo:table-footer> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-footer> + +<!-- Affichage des données des propriétés baties --> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Bati | Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cp" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@voirie" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@bat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ent" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@niv" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_de_porte" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_invar" /> + </fo:block> + </fo:table-cell> + +<!--Affichage du PEV lorsqu'il n'y en a qu'un (même ligne) --> + <xsl:if test="count(Mj_Pev) = 1"> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@coll" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@an_ret" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@fraction_rc_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@pourc_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@tx_om" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!--Affichage du premier PEV lorsqu'il y en a plusieurs (même ligne) --> + <xsl:if test="count(Mj_Pev) > 1"> + <xsl:for-each select="Mj_Pev"> + <xsl:if test="position()=1"> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + </xsl:for-each> + </xsl:if> + </fo:table-row> + +<!--Affichage des PEV suivants (lignes suivantes) --> + <xsl:if test="count(Mj_Pev) > 1"> + <xsl:for-each select="Mj_Pev"> + <xsl:if test="position()>1"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@tx_om" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + </xsl:for-each> + </xsl:if> + +<!--Affichage des Lot_Local s'il y en a --> + <xsl:if test="count(Mj_Lot_Local) > 0"> + <xsl:for-each select="Mj_Lot_Local"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.4cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@lot" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du pied du tableau des proprietes baties --> + <fo:table-row> + <fo:table-cell> + <fo:block keep-together="always" keep-with-previous="always"> + <fo:table table-layout="fixed" border-collapse="collapse" width="28.7cm" border-color="black" border-right="0.5pt" border-left="0.5pt" border-top="0pt" border-bottom="0.5pt" border-style="solid" font-size="6pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="6.9cm" /> + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_com_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_dep_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_reg_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="left" line-height="0.60cm" vertical-align="middle">REV IMPOSABLE</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">DEP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">R</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_com_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_dep_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_reg_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des proprietes non baties --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="7.9cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="1.4cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="1.1cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + +<!-- Affichage de l'en-tête des proprietes non baties --> + <fo:table-header> + <fo:table-row> + <fo:table-cell number-columns-spanned="23" padding-top="1cm" padding-bottom="0.1cm"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">PROPRIETES NON BATIES</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell number-columns-spanned="6" border="0.5pt solid black"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">DESIGNATION DES PROPRIETES</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="17" border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">EVALUATION</fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des titres des colonnes des proprietes non baties --> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SECTION</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PLAN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N° Voirie</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ADRESSE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CODE RIVOLIs</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">N°PARC PRIM</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FP DP</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">S TAR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SUF</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">GR/SS GR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CLASSE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT CULT</fo:block> + </fo:table-cell> + +<!-- Creation d'une table pour afficher le titre de colonne (CONTENANCE HA A CA) --> + <fo:table-cell number-columns-spanned="3" border="0.5pt solid black"> + <fo:table table-layout="fixed" border-collapse="collapse" font-size="6pt" width="100%"> + <fo:table-body> + <fo:table-row> + <fo:table-cell number-columns-spanned="3" padding-top="0.05cm"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CONTENANCE</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">HA</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">A</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CA</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + +<!-- Suite de l'affichage des titres des colonnes des proprietes non baties --> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">REVENU CADASTRAL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COLL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">AN RET</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FRACTION RC EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">% EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">POS</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + + <fo:table-footer> + <fo:table-row> + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="3" border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-bottom="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-footer> + +<!-- Affichage des donnees des proprietes non baties --> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block></fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Parcelle | Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <fo:table-row> + <xsl:choose> + <xsl:when test="Mj_Suf/@num_voirie = '*****' "> + <!-- Premiere ligne si la parcelle est concernées par un lot en Biens Non délimités --> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_voirie" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-left="0.1cm"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_parc_prim" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@fp_dp" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + </xsl:when> + <xsl:otherwise> + <!-- Premiere ligne si la parcelle n'est pas concernée par un lot en Biens Non délimités --> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_voirie" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-left="0.1cm"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_parc_prim" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@fp_dp" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@suf" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@grss_gr" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@clas" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_cult" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + <!-- Affichage de la colonne revenu cadastral lorsqu'il a une seule suf --> + <xsl:if test="count(Mj_Suf)=1"> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + </xsl:if> + <!-- Affichage de la colonne revenu cadastral lorsqu'il a plusieurs sufs --> + <xsl:if test="count(Mj_Suf) > 1"> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"></fo:block> + </fo:table-cell> + </xsl:if> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="Mj_Suf/@nat_exo" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + </xsl:otherwise> + </xsl:choose> + </fo:table-row> +<!-- Suite de l'affichage des donnees des proprietes non baties - Affichage des SUF--> + <xsl:if test="count(Mj_Suf) > 0"> + <xsl:choose> + <xsl:when test="count(Mj_Suf) = 1"> + <xsl:if test="count(Mj_Suf/Mj_Exon_Suf) > 0"> + <xsl:for-each select="Mj_Suf/Mj_Exon_Suf"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@ccolloc" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@pexn div 100" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@rcexnba div 100" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:when> + <xsl:otherwise> +<!-- Affichage des Suf lorsqu'il y en a plusieurs --> + <xsl:if test="count(Mj_Suf) > 1"> + <xsl:for-each select="Mj_Suf"> + <fo:table-row> + <xsl:choose> + <xsl:when test="@num_voirie = '*****' "> + <!-- La SUF est concernée par un lot en Biens Non délimités --> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@date" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@section" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@num_plan" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_voirie" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.25cm"> + <xsl:text> </xsl:text><xsl:value-of select="@dnupdl" /> LOT <xsl:value-of select="@dnulot" /><xsl:text> </xsl:text><xsl:value-of select="@dnumql" />/<xsl:value-of select="@ddenql" /> + </fo:block> + </fo:table-cell> + </xsl:when> + <xsl:otherwise> + <!-- La SUF n'est pas concernée par un lot en Biens Non délimités --> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + </xsl:otherwise> + </xsl:choose> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@suf" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@grss_gr" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@clas" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_cult" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + </fo:table-row> + <!-- Affichage des Exon_Suf lorsqu'il y en a --> + <xsl:if test="count(Mj_Exon_Suf) > 0"> + <xsl:for-each select="Mj_Exon_Suf"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@ccolloc" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@pexn div 100" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@rcexnba div 100" /> + </fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"></fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du pied du tableau des proprietes non baties --> + <fo:table-row> + <fo:table-cell> + <fo:block keep-together="always" keep-with-previous="always"> + <fo:table width="26.6cm" table-layout="fixed" border-color="black" border-right="0.5pt" border-left="0.5pt" border-top="0pt" border-bottom="0.5pt" border-style="solid" border-collapse="collapse" font-size="6pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="3.9cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="1.5cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="1.5cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="1.5cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2.3cm" /> + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">HA</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">A</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">CA</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_com_par_float" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_tax_ad_par_float" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="left" line-height="0.60cm" vertical-align="middle">CONT</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">REV IMPOSABLE</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_par_float" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">TAXE AD</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell padding-right="0.8cm"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">MAJ POS</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_com_par_float" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_tax_ad_par_float" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + +<!-- Fin de la table du pied du tableau des propiétés non baties --> + </fo:table> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Fin du corps du tableau global --> + </fo:table-body> + +<!-- Fin du tableau global --> + </fo:table> + + <fo:block id="theEnd" /> + </fo:flow> + </fo:page-sequence> + </fo:root> + </xsl:template> +</xsl:stylesheet> + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo_Restreint.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo_Restreint.xsl new file mode 100755 index 0000000000000000000000000000000000000000..995c9dec18d223052c51cd70615ef2ae056c63c8 --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo_Restreint.xsl @@ -0,0 +1,1791 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:template match="/"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-height="21cm" page-width="29.7cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.5cm"> + <fo:region-body margin="0.5cm 0 0.5cm 0" /> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simple" font-family="Times"> +<!-- Tableau global basé sur la structure de la première ligne du relevé de propriété --> + <fo:flow flow-name="xsl-region-body"> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="28.7" /> + +<!-- Début de l'en-tête qui se retrouvera sur chaque page du RP --> + <fo:table-header> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="6.4cm" /> + + <fo:table-column column-width="15.4cm" /> + + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="0.9cm" /> + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell border-color="black" border-style="solid" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">ANNEE DE MAJ</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@annee_de_maj" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">DEP DIR</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@dep_dir" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" padding-left="0.1cm" border-width="0.5pt"> + <fo:block line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@com" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle" font-size="16pt" font-style="italic">RELEVE DE PROPRIETE ( + <fo:page-number /> + + / + <fo:page-number-citation ref-id="theEnd" /> + + )</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">NUMERO COMMUNAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="substring(@numero_communal,6)" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage de la ligne titre "PROPRIETAIRE" --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="28.7cm" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell padding-top="0.5cm" padding-bottom="0.1cm"> + <fo:block font-size="8pt" text-align="center">PROPRIETAIRE</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du tableau proprietaire --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" border-color="black" border="0.5pt" border-style="solid" border-collapse="collapse" width="100%" font-size="8pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="28.7cm" /> + + + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Proprietaire | Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell> + <fo:block> + <xsl:value-of select="@l_ccodro" /> + + + <xsl:value-of select="@l_ccodem" /> + + + <xsl:value-of select="@dnuper" /> + + + <xsl:value-of select="@proprietaire_nom_tiers" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell padding-left="0.3cm"> + <fo:block> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + +<!-- Fin de l'en-tête --> +<!-- Début du corps du tableau global --> + <fo:table-body> +<!-- Affichage des poprietes baties --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="0.4cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="11.3cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.4cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="2.4cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.7cm" /> + +<!-- Affichage de l'en-tête des propriétés baties --> + <fo:table-header> + <fo:table-row> + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="20" border-left="hidden" border-right="hidden" border-top="hidden" border-bottom="hidden" border-width="0.5pt" padding-top="1cm" padding-bottom="0.1cm"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">PROPRIETES BATIES</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="7" border-right="hidden" border-bottom="hidden" border-width="0.5pt"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">DESIGNATION DES PROPRIETES</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="5" border-left="hidden" border-bottom="hidden" border-right="hidden" border-width="0.5pt"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">IDENTIFICATION DU LOCAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="8" border-left="hidden" border-bottom="hidden" border-width="0.5pt"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">EVALUATION DU LOCAL</fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des titres des colonnes des propriétés baties --> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AN</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SECTION</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PLAN</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CP</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N° Voirie</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ADRESSE</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CODE RIVOLI</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">BAT</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ENT</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">NIV</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PORTE</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°INVAR</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">S TAR</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">M EVAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AF</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">NAT LOC</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CAT</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">REVENU CADASTRAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">TX OM</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COEF</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + + <fo:table-footer> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-footer> + +<!-- Affichage des données des propriétés baties --> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Bati | Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cp" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@voirie" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-left="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@bat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ent" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@niv" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_de_porte" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_invar" /> + </fo:block> + </fo:table-cell> + +<!--Affichage du PEV lorsqu'il n'y en a qu'un (même ligne) --> + <xsl:if test="count(Mj_Pev) = 1"> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@tx_om" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!--Affichage du premier PEV lorsqu'il y en a plusieurs (même ligne) --> + <xsl:if test="count(Mj_Pev) > 1"> + <xsl:for-each select="Mj_Pev"> + <xsl:if test="position()=1"> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + </xsl:for-each> + </xsl:if> + </fo:table-row> + +<!--Affichage des PEV suivants (lignes suivantes) --> + <xsl:if test="count(Mj_Pev) > 1"> + <xsl:for-each select="Mj_Pev"> + <xsl:if test="position()>1"> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@tx_om" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + </xsl:for-each> + </xsl:if> + +<!--Affichage des Lot_Local s'il y en a --> + <xsl:if test="count(Mj_Lot_Local) > 0"> + <xsl:for-each select="Mj_Lot_Local"> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.4cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@lot" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du pied du tableau des proprietes baties --> + <fo:table-row> + <fo:table-cell> + <fo:block keep-together="always" keep-with-previous="always"> + <fo:table table-layout="fixed" border-collapse="collapse" width="28.7cm" border-color="black" border-right="0.5pt" border-left="0.5pt" border-top="0pt" border-bottom="0.5pt" border-style="solid" font-size="6pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="6.9cm" /> + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="left" line-height="0.60cm" vertical-align="middle">REV IMPOSABLE</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">DEP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">R</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_com_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_dep_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_reg_bati_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des proprietes non baties --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="12.1cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="1.4cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="1.1cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="0.6cm" /> + +<!-- Affichage de l'en-tête des proprietes non baties --> + <fo:table-header> + <fo:table-row> + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="18" border-right="hidden" border-bottom="hidden" border-left="hidden" border-top="hidden" border-width="0.5pt" padding-top="1cm" padding-bottom="0.1cm"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">PROPRIETES NON BATIES</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="6" border-right="hidden" border-bottom="hidden" border-width="0.5pt"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">DESIGNATION DES PROPRIETES</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" number-columns-spanned="12" border-left="hidden" border-bottom="hidden" border-width="0.5pt"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">EVALUATION</fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des titres des colonnes des proprietes non baties --> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AN</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SECTION</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PLAN</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N° Voirie</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ADRESSE</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CODE RIVOLI</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">N°PARC PRIM</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FP DP</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">S TAR</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SUF</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">GR/SS GR</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CLASSE</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT CULT</fo:block> + </fo:table-cell> + +<!-- Creation d'une table pour afficher le titre de colonne (CONTENANCE HA A CA) --> + <fo:table-cell number-columns-spanned="3" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:table table-layout="fixed" border-collapse="collapse" font-size="6pt" width="100%"> + <fo:table-body> + <fo:table-row> + <fo:table-cell number-columns-spanned="3" padding-top="0.05cm"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CONTENANCE</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">HA</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">A</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CA</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + +<!-- Suite de l'affichage des titres des colonnes des proprietes non baties --> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">REVENU CADASTRAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">POS</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + + <fo:table-footer> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="3" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-footer> + +<!-- Affichage des donnees des proprietes non baties --> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Parcelle | Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_voirie" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_parc_prim" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@fp_dp" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@grss_gr" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@clas" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_cult" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + +<!-- Affichage de la colonne revenu cadastral lorsqu'il a une seule suf --> + <xsl:if test="count(Mj_Suf)=1"> + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!-- Affichage de la colonne revenu cadastral lorsqu'il a plusieurs sufs --> + <xsl:if test="count(Mj_Suf) > 1"> + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!-- Suite de l'affichage des donnees des proprietes non baties --> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des Suf lorsqu'il y en a plusieurs --> + <xsl:if test="count(Mj_Suf) > 1"> + <xsl:for-each select="Mj_Suf"> + <fo:table-row> + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@grss_gr" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@clas" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_cult" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border-color="black" border-width="0.5pt" border-style="solid" border-right="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-width="0.5pt" border-style="solid" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du pied du tableau des proprietes non baties --> + <fo:table-row> + <fo:table-cell> + <fo:block keep-together="always" keep-with-previous="always"> + <fo:table width="26.6cm" table-layout="fixed" border-color="black" border-right="0.5pt" border-left="0.5pt" border-top="0pt" border-bottom="0.5pt" border-style="solid" border-collapse="collapse" font-size="6pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="3.9cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.3cm" /> + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle">HA</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle">A</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle">CA</fo:block> + </fo:table-cell> + + + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="left" line-height="0.60cm" vertical-align="middle">CONT</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">REV IMPOSABLE</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_par_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">TAXE AD</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell > + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.8cm"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">MAJ POS</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_com_par_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_tax_ad_par_float" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + +<!-- Fin de la table du pied du tableau des propiétés non baties --> + </fo:table> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Fin du corps du tableau global --> + </fo:table-body> + +<!-- Fin du tableau global --> + </fo:table> + + <fo:block id="theEnd" /> + </fo:flow> + </fo:page-sequence> + </fo:root> + </xsl:template> +</xsl:stylesheet> + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo_tiers.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo_tiers.xsl new file mode 100755 index 0000000000000000000000000000000000000000..cd17f9b12e26db5237f4f795c440754ef83974fb --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/Mj_fo_tiers.xsl @@ -0,0 +1,2037 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:template match="/"> + <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simple" page-height="21cm" page-width="29.7cm" margin-top="0.5cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.5cm"> + <fo:region-body margin="0.5cm 0 0.5cm 0" /> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simple" font-family="Times"> +<!-- Tableau global basé sur la structure de la première ligne du relevé de propriété --> + <fo:flow flow-name="xsl-region-body"> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="28.7" /> + +<!-- Début de l'en-tête qui se retrouvera sur chaque page du RP --> + <fo:table-header> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="1.2cm" /> + <fo:table-column column-width="0.6cm" /> + <fo:table-column column-width="0.6cm" /> + <fo:table-column column-width="0.9cm" /> + <fo:table-column column-width="0.9cm" /> + <fo:table-column column-width="6.4cm" /> + <fo:table-column column-width="15.4cm" /> + <fo:table-column column-width="1.8cm" /> + <fo:table-column column-width="0.9cm" /> + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">ANNEE DE MAJ</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@annee_de_maj" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">DEP DIR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@dep_dir" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" padding-left="0.1cm" border-width="0.5pt"> + <fo:block line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@com" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle" font-size="16pt" font-style="italic">RELEVE DE PROPRIETE ( + <fo:page-number /> + + / + <fo:page-number-citation ref-id="theEnd" /> + + )</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" line-height="0.25cm" vertical-align="middle">NUMERO COMMUNAL</fo:block> + </fo:table-cell> + + <fo:table-cell border-color="black" border-style="solid" border-width="0.5pt"> + <fo:block text-align="center" line-height="0.5cm" vertical-align="middle"> + <xsl:value-of select="@numero_communal" /> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage de la ligne titre "PROPRIETAIRE" --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="28.7cm" /> + + <fo:table-body> + <fo:table-row> + <fo:table-cell padding-top="0.5cm" padding-bottom="0.1cm"> + <fo:block font-size="8pt" text-align="center">PROPRIETAIRE</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du tableau proprietaire --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" border-color="black" border="0.5pt" border-style="solid" border-collapse="collapse" width="100%" font-size="8pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="21.7cm" /> + + <fo:table-column column-width="7cm" /> + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Proprietaire | Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + <fo:table-row> + <fo:table-cell> + <fo:block> + <!-- <xsl:value-of select="@l_ccodro" /> --> + + + <!-- <xsl:value-of select="@l_ccodem" /> --> + + + <xsl:value-of select="@dnuper" /> + +<!-- Modification tiers par rapport au xsl par défaut--> + + <xsl:value-of select="@proprietaire_nom_tiers" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.3cm"> + <fo:block> +<!-- Modification tiers par rapport au xsl par défaut--> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell padding-left="0.3cm"> + <fo:block> + <xsl:value-of select="@proprietaire_adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block> +<!-- Modification tiers par rapport au xsl par défaut--> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + +<!-- Fin de l'en-tête --> +<!-- Début du corps du tableau global --> + <fo:table-body> +<!-- Affichage des poprietes baties --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="0.4cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="6.4cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.4cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="2.4cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.7cm" /> + +<!-- Affichage de l'en-tête des propriétés baties --> + <fo:table-header> + <fo:table-row> + <fo:table-cell number-columns-spanned="26" padding-top="1cm" padding-bottom="0.1cm"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">PROPRIETES BATIES</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell number-columns-spanned="7" border="0.5pt solid black"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">DESIGNATION DES PROPRIETES</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="5" border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">IDENTIFICATION DU LOCAL</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="14" border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">EVALUATION DU LOCAL</fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des titres des colonnes des propriétés baties --> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SECTION</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PLAN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CP</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N° Voirie</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ADRESSE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CODE RIVOLI</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">BAT</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ENT</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">NIV</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PORTE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°INVAR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">S TAR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">M EVAL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AF</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">NAT LOC</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CAT</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">REVENU CADASTRAL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COLL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">AN RET</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">AN DEB</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FRACTION RC EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">% EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">TX OM</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COEF</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + + <fo:table-footer> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-footer> + +<!-- Affichage des données des propriétés baties --> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Bati | Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cp" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@voirie" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@bat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ent" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@niv" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_de_porte" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_invar" /> + </fo:block> + </fo:table-cell> + +<!--Affichage du PEV lorsqu'il n'y en a qu'un (même ligne) --> + <xsl:if test="count(Mj_Pev) = 1"> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@coll" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@an_ret" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@fraction_rc_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Pev/Mj_Exone_Pev/@pourc_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@tx_om" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!--Affichage du premier PEV lorsqu'il y en a plusieurs (même ligne) --> + <xsl:if test="count(Mj_Pev) > 1"> + <xsl:for-each select="Mj_Pev"> + <xsl:if test="position()=1"> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="../@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + </xsl:for-each> + </xsl:if> + </fo:table-row> + +<!--Affichage des PEV suivants (lignes suivantes) --> + <xsl:if test="count(Mj_Pev) > 1"> + <xsl:for-each select="Mj_Pev"> + <xsl:if test="position()>1"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@m_eva" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@af" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@nat_loc" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@cat" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="../@tx_om" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:if> + </xsl:for-each> + </xsl:if> + +<!--Affichage des Lot_Local s'il y en a --> + <xsl:if test="count(Mj_Lot_Local) > 0"> + <xsl:for-each select="Mj_Lot_Local"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.4cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.25cm"> + <xsl:value-of select="@lot" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du pied du tableau des proprietes baties --> + <fo:table-row> + <fo:table-cell> + <fo:block keep-together="always" keep-with-previous="always"> + <fo:table table-layout="fixed" border-collapse="collapse" width="28.7cm" border-color="black" border-right="0.5pt" border-left="0.5pt" border-top="0pt" border-bottom="0.5pt" border-style="solid" font-size="6pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="1.8cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="2.5cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="6.9cm" /> + + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell number-columns-spanned="4"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_com_bati" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_dep_bati" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_reg_bati" /> + + EUR</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="left" line-height="0.60cm" vertical-align="middle">REV IMPOSABLE</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_bati" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="3"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">DEP</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="3"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">R</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell number-columns-spanned="4"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_com_bati" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_dep_bati" /> + + EUR</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_reg_bati" /> + + EUR</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des proprietes non baties --> + <fo:table-row> + <fo:table-cell> + <fo:table table-layout="fixed" width="100%" border-collapse="collapse" font-size="7pt"> + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="1.2cm" /> + + <fo:table-column column-width="5.8cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="1.4cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="1.1cm" /> + + <fo:table-column column-width="1cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="0.7cm" /> + + <fo:table-column column-width="2cm" /> + + <fo:table-column column-width="0.9cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="1.5cm" /> + + <fo:table-column column-width="0.6cm" /> + + <fo:table-column column-width="0.6cm" /> + +<!-- Affichage de l'en-tête des proprietes non baties --> + <fo:table-header> + <fo:table-row> + <fo:table-cell number-columns-spanned="23" padding-top="1cm" padding-bottom="0.1cm"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">PROPRIETES NON BATIES</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell number-columns-spanned="6" border="0.5pt solid black"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">DESIGNATION DES PROPRIETES</fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="17" border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" font-size="8pt" line-height="0.5cm" vertical-align="middle">EVALUATION</fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des titres des colonnes des proprietes non baties --> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">AN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SECTION</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N°PLAN</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">N° Voirie</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">ADRESSE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CODE RIVOLI</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">N°PARC PRIM</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FP DP</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">S TAR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">SUF</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">GR/SS GR</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">CLASSE</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT CULT</fo:block> + </fo:table-cell> + +<!-- Creation d'une table pour afficher le titre de colonne (CONTENANCE HA A CA) --> + <fo:table-cell number-columns-spanned="3" border="0.5pt solid black"> + <fo:table table-layout="fixed" border-collapse="collapse" font-size="6pt" width="100%"> + <fo:table-body> + <fo:table-row> + <fo:table-cell number-columns-spanned="3" padding-top="0.05cm"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CONTENANCE</fo:block> + </fo:table-cell> + </fo:table-row> + + <fo:table-row> + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">HA</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">A</fo:block> + </fo:table-cell> + + <fo:table-cell> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">CA</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:table-cell> + +<!-- Suite de l'affichage des titres des colonnes des proprietes non baties --> + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">REVENU CADASTRAL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">COLL</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">NAT EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">AN RET</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">FRACTION RC EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm">% EXO</fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm">POS</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-header> + + <fo:table-footer> + <fo:table-row> + <fo:table-cell border="0.5pt solid black"> + <fo:block> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell number-columns-spanned="3" border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.25cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-footer> + +<!-- Affichage des donnees des proprietes non baties --> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block></fo:block> + </fo:table-cell> + </fo:table-row> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Parcelle | Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@date" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-right="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_plan" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_voirie" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell padding-left="0.1cm" border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@code_rivoli" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_parc_prim" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@fp_dp" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@grss_gr" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@clas" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_cult" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + +<!-- Affichage de la colonne revenu cadastral lorsqu'il a une seule suf --> + <xsl:if test="count(Mj_Suf)=1"> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!-- Affichage de la colonne revenu cadastral lorsqu'il a plusieurs sufs --> + <xsl:if test="count(Mj_Suf) > 1"> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </xsl:if> + +<!-- Suite de l'affichage des donnees des proprietes non baties --> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="Mj_Suf/@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage des Suf lorsqu'il y en a plusieurs --> + <xsl:if test="count(Mj_Suf) > 1"> + <xsl:for-each select="Mj_Suf"> + <fo:table-row> + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@s_tar" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@suf" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@grss_gr" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@clas" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_cult" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden" border-left="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@nat_exo" /> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + + <fo:table-cell border="0.5pt solid black" border-bottom="hidden" border-top="hidden"> + <fo:block text-align="center" vertical-align="middle" line-height="0.5cm"> + </fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </fo:table-body> + </fo:table> + </fo:table-cell> + </fo:table-row> + +<!-- Affichage du pied du tableau des proprietes non baties --> + <fo:table-row> + <fo:table-cell> + <fo:block keep-together="always" keep-with-previous="always"> + <fo:table width="26.6cm" table-layout="fixed" border-color="black" border-right="0.5pt" border-left="0.5pt" border-top="0pt" border-bottom="0.5pt" border-style="solid" border-collapse="collapse" font-size="6pt" padding-top="0.2cm" padding-bottom="0.1cm"> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1cm" /> + <fo:table-column column-width="1.8cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="1.5cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="1.5cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="1.5cm" /> + <fo:table-column column-width="2cm" /> + <fo:table-column column-width="2.3cm" /> + <fo:table-body> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"></fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">HA</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">A</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">CA</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="4"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_com_par" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_dep_par" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle">R EXO</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" margin-top="0.20cm" vertical-align="middle"> + <xsl:value-of select="@exo_reg_par" /> + + EUR</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="left" line-height="0.60cm" vertical-align="middle">CONT</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="4"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">REV IMPOSABLE</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_par" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">COM</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="3"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">DEP</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="3"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">R</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="3" padding-right="0.8cm"> + <fo:block text-align="right" line-height="0.60cm" vertical-align="middle">MAJ POS</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@ha" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@a" /> + </fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="center" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@ca" /> + </fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="4"> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_com_par" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_dep_par" /> + + EUR</fo:block> + </fo:table-cell> + <fo:table-cell number-columns-spanned="2"> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle">R IMP</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block text-align="right" line-height="0.20cm" vertical-align="middle"> + <xsl:value-of select="@rev_impo_reg_par" /> + + EUR</fo:block> + </fo:table-cell> + </fo:table-row> + </xsl:for-each> + </fo:table-body> + +<!-- Fin de la table du pied du tableau des propiétés non baties --> + </fo:table> + </fo:block> + </fo:table-cell> + </fo:table-row> + +<!-- Fin du corps du tableau global --> + </fo:table-body> + +<!-- Fin du tableau global --> + </fo:table> + + <fo:block id="theEnd" /> + </fo:flow> + </fo:page-sequence> + </fo:root> + </xsl:template> +</xsl:stylesheet> + diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/RP.xslt b/src/module_cadastre/web_service/class/majic_lib/xsl/RP.xslt new file mode 100755 index 0000000000000000000000000000000000000000..0dae5920b7c5ea243e24c24766bed273d10c901b --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/RP.xslt @@ -0,0 +1,3036 @@ +<?xml version="1.0" encoding="utf-8"?> + +<!DOCTYPE xsl:stylesheet [ + <!ENTITY nbsp " "> +]> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/> + <xsl:template match="/"> + <xsl:param name="poste"/> + <xsl:param name="type"/> + + <html xmlns="http://www.w3.org/1999/xhtml" + lang="fr" + > + <body> + <table table-layout="fixed" width="100%" CELLSPACING="0" CELLPADDING="0"> + + <!-- Début de l'en-tête qui se retrouvera sur chaque page du RP --> + + <thead> + <tr> + <td width="100%"> + + <table style="text-align: center; font-size: 10pt;line-height: 0.8cm;" width="100%" CELLSPACING="0" CELLPADDING="1" > + <tbody> + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + <tr> + <td style="border-width: 0.5pt; border-style: solid; border-color: black; border-right: hidden;" width="4.14%"> + <div style="vertical-align: middle; line-height: 0.3cm; text-align: center;">ANNEE DE MAJ</div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black; border-right: hidden;" width="2.07%"> + <div style="vertical-align: middle; line-height: 0.6cm; text-align: center;"> + <xsl:value-of select="@annee_de_maj"/> + </div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black; border-right: hidden;" width="2.07%"> + <div style="vertical-align: middle; line-height: 0.3cm; text-align: center;">DEP DIR</div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black; border-right: hidden;" width="3.11%"> + <div style="vertical-align: middle; line-height: 0.6cm; text-align: center;"> + <xsl:value-of select="@dep_dir"/> + </div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black; border-right: hidden;" whidth="3.11%"> + <div style="vertical-align: middle; line-height: 0.6cm; text-align: center;">COM</div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black;" whidth="22.08%"> + <div style="vertical-align: middle; line-height: 0.6cm; text-align: center;"> + <xsl:value-of select="@com"/> + </div> + </td> + <td whidth="53.13%"> + <div style="font-style: italic; font-size: 16pt; vertical-align: middle; line-height: 0.5cm; text-align: center;"> + RELEVE DE PROPRIETE + </div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black; border-right: hidden;" whidth="6.21%"> + <div style="vertical-align: middle; line-height: 0.3cm; text-align: center;">NUMERO COMMUNAL</div> + </td> + <td style="border-width: 0.5pt; border-style: solid; border-color: black;" whidth="3.11%"> + <div style="vertical-align: middle; line-height: 0.6cm; text-align: center;"> + <xsl:value-of select="substring(@numero_communal,6)"/> + </div> + </td> + </tr> + </xsl:for-each> + </tbody> + </table> + </td> + </tr> + <!-- Affichage de la ligne titre "PROPRIETAIRE" --> + <tr> + <td width="100%"> + <table style="text-align: center;" width="100%"> + <tbody> + <tr> + <td padding-top="0.5cm" padding-bottom="0.1cm"> + <div style="font-size: 10pt; text-align: center;">PROPRIETAIRE</div> + </td> + </tr> + </tbody> + </table> + </td> + </tr> + <!-- Affichage du tableau proprietaire --> + + <tr> + + <td> + + <table style="text-align: left; table-layout: fixed; border-color: black; border: 0.5pt; border-style: solid; border-collapse: collapse; font-size: 10pt; padding-top: 0.2cm; padding-bottom: 0.1cm;" width="100%" > + + + <tbody> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Proprietaire | Mj/Mj_Compte_Communal_Parcelle/Mj_Proprietaire"> + + <tr> + <xsl:if test="$type='complet'"> + <td width="75%" style="padding-left: 0.3cm;"> + <div> + <xsl:value-of select="@l_ccodro"/> <xsl:value-of select="@l_ccodem"/> <xsl:value-of select="@dnuper"/> <xsl:value-of select="@proprietaire_nom"/> + </div> + </td> + + <td width="25%" style="padding-left: 0.3cm;"> + <div> + <xsl:value-of select="@jdatnss"/> + </div> + </td> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td width="100%" style="padding-left: 0.3cm;"> + <div> + <xsl:value-of select="@l_ccodro"/> <xsl:value-of select="@l_ccodem"/> <xsl:value-of select="@dnuper"/> <xsl:value-of select="@proprietaire_nom_tiers"/> + </div> + </td> + </xsl:if> + </tr> + + <tr> + <td style="padding-left: 0.3cm;"> + <div> + <xsl:value-of select="@proprietaire_adresse"/> + </div> + </td> + <xsl:if test="$type='complet'"> + <td> + <div> + <xsl:value-of select="@dldnss"/> + </div> + </td> + </xsl:if> + </tr> + </xsl:for-each> + </tbody> + </table> + </td> + </tr> + </thead> + <!-- Fin de l'en-tête --> + <!-- Début du corps du tableau global --> + + <tbody> + <!-- Affichage des poprietes baties --> + + <tr> + + <td width="100%"> + + <table width="100%" style="text-align: center; font-size: 10pt;" CELLSPACING="0" CELLPADDING="0" > + + <!-- Affichage de l'en-tête des propriétés baties --> + + <thead width="100%"> + + <tr > + <xsl:if test="$type='complet'"> + <td style="text-align: center; border-color: black; border-style: solid; border-left: hidden; border-right: hidden; border-top: hidden; border-bottom: hidden; border-width: 0.5pt; padding-top: 1cm; padding-bottom: 0.1cm;" valign="top" colspan="26" > + <div style ="text-align: center; font-size: 8pt; line-height: 0.5cm; vertical-align: middle;" >PROPRIETES BATIES</div> + </td> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td style="text-align: center; border-color: black; border-style: solid; border-left: hidden; border-right: hidden; border-top: hidden; border-bottom: hidden; border-width: 0.5pt; padding-top: 1cm; padding-bottom: 0.1cm;" valign="top" colspan="20" > + <div style ="text-align: center; font-size: 8pt; line-height: 0.5cm; vertical-align: middle;" >PROPRIETES BATIES</div> + </td> + </xsl:if> + </tr> + + <tr> + + <td style="border-color: black; border-style: solid; border-right: hidden; border-bottom: hidden; border-width: 0.5pt;" valign="top" colspan="7"> + <div style ="text-align: center; font-size: 8pt; line-height: 0.5cm; vertical-align: middle;" >DESIGNATION DES PROPRIETES</div> + </td> + + <td style="border-color: black; border-style: solid; border-left: hidden; border-bottom: hidden; border-right: hidden; border-width: 0.5pt;" valign="top" colspan="5"> + <div style ="text-align: center; font-size: 8pt; line-height: 0.5cm; vertical-align: middle;" >IDENTIFICATION DU LOCAL</div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-color: black; border-style: solid; border-left: hidden; border-bottom: hidden; border-width: 0.5pt;" valign="top" colspan="14"> + <div style ="text-align: center; font-size: 8pt; line-height: 0.5cm; vertical-align: middle;" >EVALUATION DU LOCAL</div> + </td> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td style="border-color: black; border-style: solid; border-left: hidden; border-bottom: hidden; border-width: 0.5pt;" valign="top" colspan="8"> + <div style ="text-align: center; font-size: 8pt; line-height: 0.5cm; vertical-align: middle;" >EVALUATION DU LOCAL</div> + </td> + </xsl:if> + </tr> + + <!-- Affichage des titres des colonnes des propriétés baties --> + + <tr> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">AN</div> + </td> + + <td width="4.14%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">SECTION</div> + </td> + + <td width="3.45%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">N°PLAN</div> + </td> + + <td width="1.38%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">CP</div> + </td> + + <td width="4.14%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">N° Voirie</div> + </td> + + <xsl:if test="$type='complet'"> + <td width="22.08%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">ADRESSE</div> + </td> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td width="38.99%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">ADRESSE</div> + </td> + </xsl:if> + + <td width="3.11%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">CODE RIVOLI</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">BAT</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">ENT</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">NIV</div> + </td> + + <td width="4.14%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">N°PORTE</div> + </td> + + <td width="6.21%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">N°INVAR</div> + </td> + + <td width="2.42%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">S TAR</div> + </td> + + <td width="2.42%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">M EVAL</div> + </td> + + <td width="1.38%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">AF</div> + </td> + + <td width="4.14%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">NAT LOC</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">CAT</div> + </td> + + <td width="8.28%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">REVENU CADASTRAL</div> + </td> + + <xsl:if test="$type='complet'"> + <td width="2.42%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">COLL</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">NAT EXO</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">AN RET</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">AN DEB</div> + </td> + + <td width="6.21%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">FRACTION RC EXO</div> + </td> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">% EXO</div> + </td> + </xsl:if> + + <td width="2.07%" style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">TX OM</div> + </td> + + <td width="2.42%" style="border-style: solid; border-width: 0.5pt; border-color: black;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">COEF</div> + </td> + </tr> + </thead> + + <tfoot> + + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + </xsl:if> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-left: hidden;" valign="top"> + <div> + </div> + </td> + </tr> + </tfoot> + <!-- Affichage des données des propriétés baties --> + + <tbody> + + <tr> + + <td> + <div> + </div> + </td> + </tr> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Bati | Mj/Mj_Compte_Communal_Parcelle/Mj_Bati"> + <xsl:sort select="substring(@num_invar,1,3)" /> + + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@date"/> + </div> + </td> + + <td style="padding-right: 0.1cm;border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@section"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@num_plan"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@cp"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@voirie"/> + </div> + </td> + + <td style="padding-left: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@code_rivoli"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@bat"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@ent"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@niv"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@num_de_porte"/> + </div> + </td> + + <td style="padding-left: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;"> + + <div vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@num_invar"/> + </div> + </td> + + <!-- Affichage du PEV lorsqu'il n'y en a qu'un (même ligne) --> + + <xsl:if test="count(Mj_Pev) = 1"> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@s_tar"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@m_eva"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@af"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@nat_loc"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@cat"/> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral"/> + </div> + </td> + + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.5cm"> + + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + + </div> + </td> + </xsl:if> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@tx_om"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <!--Affichage du premier PEV lorsqu'il y en a plusieurs (même ligne) --> + + <xsl:if test="count(Mj_Pev) > 1"> + + <xsl:for-each select="Mj_Pev"> + + <xsl:if test="position()=1"> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@s_tar"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="../@m_eva"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@af"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="../@nat_loc"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@cat"/> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@revenu_cadastral"/> + </div> + </td> + + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + </xsl:for-each> + </xsl:if> + </tr> + <!--Affichage des PEV suivants (lignes suivantes) --> + + + <xsl:for-each select="Mj_Pev"> + + <xsl:if test="position()>1"> + + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@s_tar"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="../@m_eva"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@af"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="../@nat_loc"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@cat"/> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.3cm"> + <xsl:value-of select="@revenu_cadastral"/> + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.3cm"> + <xsl:value-of select="../@revenu_cadastral"/> + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="../@tx_om"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> +<xsl:if test="count(Mj_Exone_Pev) > 0"> + <xsl:for-each select="Mj_Exone_Pev"> + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.3cm"> + + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@coll"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@an_ret"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@an_deb"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@fraction_rc_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@pourc_exo"/> + </div> + </td> + </xsl:if> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </xsl:if> + <xsl:if test="position() = 1"> + <xsl:if test="count(Mj_Exone_Pev) > 0"> + <xsl:for-each select="Mj_Exone_Pev"> + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div text-align="right" vertical-align="middle" line-height="0.3cm"> + + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@coll"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@an_ret"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@an_deb"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@fraction_rc_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@pourc_exo"/> + </div> + </td> + </xsl:if> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </xsl:if> + </xsl:for-each> + <!--Affichage des Lot_Local s'il y en a --> + + <xsl:if test="count(Mj_Lot_Local) > 0"> + + <xsl:for-each select="Mj_Lot_Local"> + + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-left: 0.4cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div vertical-align="middle" line-height="0.3cm"> + <xsl:value-of select="@lot"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top" > + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div text-align="right" vertical-align="middle" line-height="0.3cm"> + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-right: hidden; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </tbody> + </table> + </td> + </tr> + + <!-- Affichage du pied du tableau des proprietes baties --> + + <tr> + + <td> + + <div keep-together="always" keep-with-previous="always"> + + <table table-layout="fixed" width="100%" style="border-collapse: collapse; border-color: black; border-right: 0.5pt; border-left: 0.5pt; border-top: 0pt; border-bottom: 0.5pt; border-style: solid; font-size: 8pt; padding-top: 0.2cm; padding-bottom: 0.1cm;" > + <td width="6.21%" /> + <td width="6.9%" /> + <td width="8.63%" /> + <td width="5.18%" /> + <td width="6.9%" /> + <td width="8.63%" /> + <td width="5.18%" /> + <td width="6.9%" /> + <td width="8.63%" /> + <td width="5.18%" /> + <td width="6.9%" /> + <td width="23.81%" /> + + <tbody> + + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + + <tr> + <xsl:if test="$type='complet'"> + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R EXO</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@exo_com_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R EXO</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@exo_dep_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R EXO</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@exo_reg_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + </xsl:if> + </tr> + + <tr> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">REV IMPOSABLE</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">COM</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">DEP</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">R</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + </tr> + + <tr> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R IMP</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_com_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R IMP</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_dep_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R IMP</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_reg_bati_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + </tr> + </xsl:for-each> + </tbody> + </table> + </div> + </td> + </tr> + <!-- Affichage des proprietes non baties --> + + <tr> + + <td> + + <table table-layout="fixed" width="100%" style="border-collapse: collapse; font-size: 10pt;" CELLSPACING="0" CELLPADDING="0"> + <tr> + <td width="2.07%"/> + <td width="5.18%"/> + <td width="4.14%"/> + <td width="4.14%"/> + <xsl:if test="$type='complet'"> + <td width="27.26%"/> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td width="41.76%"/> + </xsl:if> + <td width="3.11%"/> + <td width="4.83%"/> + <td width="2.07%"/> + <td width="2.07%"/> + <td width="3.11%"/> + <td width="3.80%"/> + <td width="3.45%"/> + <td width="3.11%"/> + <td width="2.42%"/> + <td width="2.42%"/> + <td width="2.42%"/> + <td width="6.9%0"/> + <xsl:if test="$type='complet'"> + <td width="3.11%"/> + <td width="2.07%"/> + <td width="2.07%"/> + <td width="5.18%"/> + <td width="2.07%"/> + </xsl:if> + <td width="2.07%"/> + </tr> + <!-- Affichage de l'en-tête des proprietes non baties --> + + <thead> + + <tr> + <xsl:if test="$type='complet'"> + <td colspan="23" style="border-color: black; border-style: solid; border-right: hidden; border-left: hidden; border-top: hidden; border-width: 0.5pt; padding-top: 1cm; padding-bottom: 0.1cm;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">PROPRIETES NON BATIES</div> + </td> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td colspan="18" style="border-color: black; border-style: solid; border-right: hidden; border-left: hidden; border-top: hidden; border-width: 0.5pt; padding-top: 1cm; padding-bottom: 0.1cm;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">PROPRIETES NON BATIES</div> + </td> + </xsl:if> + </tr> + + <tr> + + <td colspan="6" style="border-color: black; border-style: solid; border-right: hidden; border-width: 0.5pt;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">DESIGNATION DES PROPRIETES</div> + </td> + + <xsl:if test="$type='complet'"> + <td colspan="17" style="border-color: black; border-style: solid; border-left: hidden; border-width: 0.5pt;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">EVALUATION</div> + </td> + </xsl:if> + <xsl:if test="not($type='complet')"> + <td colspan="12" style="border-color: black; border-style: solid; border-left: hidden; border-width: 0.5pt;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">EVALUATION</div> + </td> + </xsl:if> + </tr> + + <!-- Affichage des titres des colonnes des proprietes non baties --> + + <tr> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">AN</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">SECTION</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">N°PLAN</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">N° Voirie</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">ADRESSE</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">CODE RIVOLI</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">N°PARC PRIM</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">FP DP</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">S TAR</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">SUF</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">GR/SS GR</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">CLASSE</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">NAT CULT</div> + </td> + + <!-- Creation d'une table pour afficher le titre de colonne (CONTENANCE HA A CA) --> + + <td colspan="3" style="border-color: black; border-width: 0.5pt; border-style: solid;"> + + <table table-layout="fixed" style="font-size: 8pt; border-collapse: collapse;" width="100%"> + <tbody> + + <tr> + <td colspan="3" style="padding-top: 0.05cm;"> + <div style="text-align: center; vertical-align: middle; line-height: 0.3cm;">CONTENANCE</div> + </td> + </tr> + + <tr> + + <td width="33%"> + <div style="text-align: center; vertical-align: middle; line-height: 0.3cm;">HA</div> + </td> + + <td width="33%"> + <div style="text-align: center; vertical-align: middle; line-height: 0.3cm;">A</div> + </td> + + <td width="33%"> + <div style="text-align: center; vertical-align: middle; line-height: 0.3cm;">CA</div> + </td> + </tr> + </tbody> + </table> + </td> + + <!-- Suite de l'affichage des titres des colonnes des proprietes non baties --> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">REVENU CADASTRAL</div> + </td> + + <xsl:if test="$type='complet'"> + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">COLL</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">NAT EXO</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">AN RET</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">FRACTION RC EXO</div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;">% EXO</div> + </td> + </xsl:if> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;">POS</div> + </td> + </tr> + </thead> + + <tfoot> + + <tr> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td colspan="3" style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <xsl:if test="$type='complet'"> + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <td style="border-color: black; border-width: 0.5pt; border-style: solid; border-right: hidden; border-left: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + </tr> + </tfoot> + <!-- Affichage des donnees des proprietes non baties --> + + <tbody> + + <tr> + + <td> + <div> + </div> + </td> + </tr> + + <xsl:for-each select="Mj/Mj_Compte_Communal/Mj_Parcelle | Mj/Mj_Compte_Communal_Parcelle/Mj_Parcelle"> + <xsl:sort select="@section" /> + <xsl:sort select="@num_plan" data-type="number"/> + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@date"/> + </div> + </td> + + <td style="padding-right:0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@section"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@num_plan"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@num_voirie"/> + </div> + </td> + + <td style="padding-left:0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div vertical-align="middle" line-height="0.5cm"> + <xsl:value-of select="@adresse"/> + </div> + </td> + + <td style="padding-left:0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@code_rivoli"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@num_parc_prim"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@fp_dp"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@s_tar"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@suf"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@grss_gr"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@clas"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@nat_cult"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@ha"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@a"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@ca"/> + </div> + </td> + + <!-- Affichage de la colonne revenu cadastral lorsqu'il a une seule suf --> + + <xsl:if test="count(Mj_Suf)=1"> + + <td style="padding-right:0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="@revenu_cadastral"/> + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="Mj_Suf/@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <!-- Affichage de la colonne revenu cadastral lorsqu'il a plusieurs sufs --> + + <xsl:if test="count(Mj_Suf) > 1"> + + <td style="padding-right:0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + <xsl:value-of select="Mj_Suf/@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.5cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + + <!-- Suite de l'affichage des donnees des proprietes non baties --> + + </tr> + + <!-- Affichage des Suf lorsqu'il y en a plusieurs --> + <xsl:choose> + <xsl:when test="count(Mj_Suf) > 1"> + + <xsl:for-each select="Mj_Suf"> + + <tr> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@s_tar"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@suf"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@grss_gr"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@clas"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_cult"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@ha"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@a"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden; border-left: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@ca"/> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center;line-height: 0.3cm; vertical-align: middle;" > + <xsl:value-of select="@revenu_cadastral"/> + </div> + </td> + <xsl:if test="$type='complet'"> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo"/> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </xsl:if> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + <xsl:if test="$type='complet'"> + <!-- Affichage des Exon_Suf lorsqu'il y en a --> + <xsl:if test="count(Mj_Exon_Suf) > 0"> + <xsl:for-each select="Mj_Exon_Suf"> + <tr> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-right: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-right: hidden;border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-rigth: hidden; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-rigth: hidden; padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-left: hidden;border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@ccolloc" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@pexn div 100" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@rcexnba div 100" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </xsl:if> + </xsl:for-each> + </xsl:when> + <xsl:when test="count(Mj_Suf)>0"> + <xsl:if test="$type='complet'"> + <xsl:for-each select="Mj_Suf"> + <!-- Affichage des Exon_Suf lorsqu'il y en a --> + <xsl:if test="count(Mj_Exon_Suf) > 0"> + <xsl:for-each select="Mj_Exon_Suf"> + <tr> + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-right: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-right: hidden;border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-rigth: hidden; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-rigth: hidden; padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-left: hidden;border-right: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-left: hidden; padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;border-left: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="padding-right: 0.1cm; border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;" valign="top"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@ccolloc" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@nat_exo" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@pexn div 100" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + <xsl:value-of select="@rcexnba div 100" /> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + + <td style="border-style: solid; border-width: 0.5pt; border-color: black; border-bottom: hidden; border-top: hidden;"> + <div style="text-align: center; line-height: 0.3cm; vertical-align: middle;"> + </div> + </td> + </tr> + </xsl:for-each> + </xsl:if> + </xsl:for-each> + </xsl:if> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </tbody> + </table> + </td> + </tr> + + <!-- Affichage du pied du tableau des proprietes non baties --> + + <tr> + + <td> + + <div keep-together="always" keep-with-previous="always"> + + <table width="100%" table-layout="fixed" style="border-color: black; border-right: 0.5pt; border-left: 0.5pt; border-top: 0pt; border-bottom: 0.5pt; border-style: solid; border-collapse: collapse; font-size: 8pt; padding-top: 0.2cm; padding-bottom: 0.1cm;"> + + <td width="3.45%" /> + <td width="3.45%" /> + <td width="3.45%" /> + <td width="3.45%" /> + <td width="13.46%" /> + <td width="6.9%" /> + <td width="6.9%" /> + <td width="5.18%" /> + <td width="6.9%" /> + <td width="6.9%" /> + <td width="5.18%" /> + <td width="6.9%" /> + <td width="6.9%" /> + <td width="5.18%" /> + <td width="6.9%" /> + <td width="7.94%" /> + + <tbody> + + <xsl:for-each select="Mj/Mj_Compte_Communal | Mj/Mj_Compte_Communal_Parcelle"> + + <tr> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + </div> + </td> + + <td> + <div style="text-align: center; line-height: 0.20cm; vertical-align: middle;">HA</div> + </td> + + <td> + <div style="text-align: center; line-height: 0.20cm; vertical-align: middle;">A</div> + </td> + + <td> + <div style="text-align: center; line-height: 0.20cm; vertical-align: middle;">CA</div> + </td> + <xsl:if test="$type='complet'"> + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R EXO</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@exo_com_par_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R EXO</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@exo_tax_ad_par_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"></div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + </xsl:if> + </tr> + + <tr> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">CONT</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">REV IMPOSABLE</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_par_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">COM</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">TAXE AD</div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;"></div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td padding-right="0.8cm"> + <div style="text-align: right; line-height: 0.60cm; vertical-align: middle;">MAJ POS</div> + </td> + </tr> + + <tr> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + </div> + </td> + + <td> + + <div style="text-align: center; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@ha"/> + </div> + </td> + + <td> + + <div style="text-align: center; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@a"/> + </div> + </td> + + <td> + + <div style="text-align: center; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@ca"/> + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R IMP</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_com_par_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;">R IMP</div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + <xsl:value-of select="@rev_impo_taxe_ad_par_float"/> + + + EUR + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"></div> + </td> + + <td> + + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"> + </div> + </td> + + <td> + <div style="text-align: right; line-height: 0.20cm; vertical-align: middle;"/> + </td> + </tr> + </xsl:for-each> + </tbody> + + <!-- Fin de la table du pied du tableau des propiétés non baties --> + </table> + </div> + </td> + </tr> + <!-- Fin du corps du tableau global --> + </tbody> + <!-- Fin du tableau global --> + </table> + </body> + </html> + </xsl:template> +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/commande_fo2html.txt b/src/module_cadastre/web_service/class/majic_lib/xsl/commande_fo2html.txt new file mode 100755 index 0000000000000000000000000000000000000000..53435cedf0c3491c0f763b8f7f306295eecc22fe --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/commande_fo2html.txt @@ -0,0 +1,5 @@ +fop -xml monxml.xml -xsl mj_fo.xsl -foout res.fo +fop -xml res.fo -xsl fo2html.xsl -foout res.html + + +C:\serveurs\fop-0.93\fop -xml C:\serveurs\Apache2\htdocs\rgd\fp\2010\complet\740011000AR0497.xml -xsl C:\serveurs\Apache2\htdocs\lib\majic_lib\xsl\FP_fo_Complet.xsl -pdf C:\serveurs\Apache2\htdocs\rgd\fp\2010\complet\740011000AR0497.pdf \ No newline at end of file diff --git a/src/module_cadastre/web_service/class/majic_lib/xsl/fo2html.xsl b/src/module_cadastre/web_service/class/majic_lib/xsl/fo2html.xsl new file mode 100755 index 0000000000000000000000000000000000000000..a4ca0b5740c2d846731cbd7d9ae1e55b5641b8bc --- /dev/null +++ b/src/module_cadastre/web_service/class/majic_lib/xsl/fo2html.xsl @@ -0,0 +1,643 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- =============================================================== --> +<!-- --> +<!-- Convert XSL FO (as in REC 2001-10-15) to HTML --> +<!-- --> +<!-- © RenderX 2000-2001 --> +<!-- Permission to copy and modify is granted, provided this notice --> +<!-- is included in all copies and/or derived work. --> +<!-- --> +<!-- Author: Nikolai Grigoriev, grig@renderx.com --> +<!-- --> +<!-- =============================================================== --> +<!DOCTYPE xsl:stylesheet [ + <!ENTITY anchor "<xsl:apply-templates select='@id' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'/>"> + <!ENTITY add-style "<xsl:call-template name='add-style-attribute' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'/>"> +]> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" exclude-result-prefixes="fo"> + +<xsl:output method="html" version="4.0" encoding="utf-8" doctype-public="-//W3C//DTD HTML 4.0 Transitional//EN" indent="no"/> + +<!-- =============================================================== --> +<!-- Root. Create the bone and call templates for each page sequence --> +<!-- =============================================================== --> + +<xsl:template match="fo:root"> + <html> + <head> + <title> + <xsl:choose> + <xsl:when test="descendant::fo:title[1]"> + <xsl:value-of select="fo:title"/> + </xsl:when> + <xsl:otherwise>XSL FO Document</xsl:otherwise> + </xsl:choose> + </title> + <META http-equiv="Content-Style-Type" content="text/css"/> + <style type="text/css"> + a { color: black; border: none; text-decoration: none; } + img { border: none; } + </style> + </head> + + <body bgcolor="white" marginwidth="6" marginheight="6" leftmargin="6" topmargin="6"> + <xsl:apply-templates select="fo:page-sequence"/> + </body> + </html> + +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:page-sequence. Draws a header before and a footer after. --> +<!-- Sidebars are skipped: there's no way to rotate the text in HTML --> +<!-- and horizontal text in the sidebars eats up too much space. --> +<!-- =============================================================== --> + +<xsl:template match="fo:page-sequence"> + + <xsl:variable name="current-master"><xsl:value-of select="@master-reference"/></xsl:variable> + + <!-- One page master will be used for the whole page sequence --> + <xsl:variable name="page-master-name"> + <xsl:choose> + <xsl:when test="../fo:layout-master-set/fo:simple-page-master[@master-name=$current-master]"> + <!-- specified master is a page master: use it --> + <xsl:value-of select="$current-master"/> + </xsl:when> + <xsl:otherwise> + <!-- specified master is a page sequence master: --> + <!-- find master name for the first page --> + <xsl:apply-templates select="../fo:layout-master-set/fo:page-sequence-master[@master-name=$current-master]"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <!-- Load the page master into a variable. No problem if it's null; should work the same ;-) --> + <xsl:variable name="page-master" select="../fo:layout-master-set/fo:simple-page-master[@master-name=$page-master-name]"/> + + + <!-- Start real drawing --> + <br/> <!-- make an offset before each page sequence --> + + <!-- Header --> + <xsl:variable name="header-region" select="$page-master/fo:region-before"/> + <xsl:apply-templates select="fo:static-content[@flow-name = $header-region/@region-name or (@flow-name='xsl-region-before' and not($header-region/@region-name))]"> + <xsl:with-param name="region" select="$header-region"/> + </xsl:apply-templates> + + <!-- Body --> + <xsl:apply-templates select="fo:flow"> + <xsl:with-param name="region" select="$page-master/fo:region-body"/> + </xsl:apply-templates> + + <!-- Footer --> + <xsl:variable name="footer-region" select="$page-master/fo:region-after"/> + <xsl:apply-templates select="fo:static-content[@flow-name = $footer-region/@region-name or (@flow-name='xsl-region-after' and not($footer-region/@region-name))]"> + <xsl:with-param name="region" select="$footer-region"/> + </xsl:apply-templates> + + <br/> <!-- make an offset after each page sequence --> + +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:block --> +<!-- =============================================================== --> + +<xsl:template match="fo:block"> + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><div><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates mode="check-for-pre"/></div> +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:inline-sequence --> +<!-- =============================================================== --> + +<xsl:template match="fo:inline | fo:wrapper"> + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><span><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates/></span> +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:list-block --> +<!-- =============================================================== --> + +<xsl:template match="fo:list-block"> + <xsl:variable name="label-separation"> + <xsl:choose> + <xsl:when test="@provisional-label-separation"> + <xsl:apply-templates select="@provisional-label-separation" mode="convert-to-pixels"/> + </xsl:when> + <xsl:otherwise>8</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="body-offset"> + <xsl:choose> + <xsl:when test="@provisional-distance-between-starts"> + <xsl:apply-templates select="@provisional-distance-between-starts" mode="convert-to-pixels"/> + </xsl:when> + <xsl:otherwise>32</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <div><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <table width="100%"> + <xsl:apply-templates select="fo:list-item | fo:list-item-label"> + <xsl:with-param name="label-width" select="$body-offset - $label-separation"/> + <xsl:with-param name="gap-width" select="$label-separation"/> + </xsl:apply-templates> + </table> + </div> + +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:list-item --> +<!-- =============================================================== --> + +<xsl:template match="fo:list-item"> + <xsl:param name="label-width"/> + <xsl:param name="gap-width"/> + + <tr><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates select="fo:list-item-label" mode="draw-cell"> + <xsl:with-param name="width" select="$label-width"/> + </xsl:apply-templates> + <xsl:if test="$gap-width > 0"> + <td width="{$gap-width}"> </td> + </xsl:if> + + <xsl:apply-templates select="fo:list-item-body" mode="draw-cell"/> + </tr> +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:list-item-label - itemless lists --> +<!-- =============================================================== --> + +<xsl:template match="fo:list-block/fo:list-item-label"> + <xsl:param name="label-width"/> + <xsl:param name="gap-width"/> + + <tr> + <xsl:apply-templates select="." mode="draw-cell"> + <xsl:with-param name="width" select="$label-width"/> + </xsl:apply-templates> + <xsl:if test="$gap-width > 0"> + <td width="{$gap-width}"> </td> + </xsl:if> + + <xsl:apply-templates select="following-sibling::fo:list-item-body[1]" mode="draw-cell"/> + </tr> +</xsl:template> + + +<!-- =============================================================== --> +<!-- fo:list-item-body - itemless lists --> +<!-- =============================================================== --> + +<xsl:template match="fo:list-item-label | fo:list-item-body" mode="draw-cell"> + <xsl:param name="width" select="'auto'"/> + <td valign="top"><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:if test="$width != 'auto'"> + <xsl:attribute name="width"> + <xsl:value-of select="$width"/> + </xsl:attribute> + </xsl:if> + + <xsl:apply-templates mode="check-for-pre"/> + </td> +</xsl:template> + + +<!-- =============================================================== --> +<!-- fo:table and its components --> +<!-- =============================================================== --> + +<xsl:template match="fo:table"> + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <table><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:if test="not(@display-align)"> + <xsl:attribute name="valign">top</xsl:attribute> + <xsl:attribute name="width">100%</xsl:attribute> + <xsl:attribute name="CELLSPACING">0</xsl:attribute> + <xsl:attribute name="CELLPADDING">0</xsl:attribute> + </xsl:if> + + <xsl:apply-templates/> + </table> +</xsl:template> + +<xsl:template match="fo:table-header"> + <thead><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates/> + </thead> +</xsl:template> + +<xsl:template match="fo:table-footer"> + <tfoot><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates/> + </tfoot> +</xsl:template> + +<xsl:template match="fo:table-body"> + <tbody><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates/> + </tbody> +</xsl:template> + +<xsl:template match="fo:table-row"> + <tr><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates mode="display"/> + </tr> +</xsl:template> + +<xsl:template match="fo:table-cell" mode="display"> + <td><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:if test="not(@display-align)"> + <xsl:attribute name="valign">top</xsl:attribute> + <!-- <xsl:attribute name="style">border-right:true</xsl:attribute>--> + </xsl:if> + + <xsl:apply-templates select="@*" mode="get-table-attributes"/> + <xsl:apply-templates mode="check-for-pre"/> + </td> +</xsl:template> + +<xsl:template match="fo:table-cell" priority="-1"/> + +<!-- This template accounts for "rowless" tables --> +<xsl:template priority="1" match="fo:table-cell[not(parent::fo:table-row)] [not(preceding-sibling::fo:table-cell) or @starts-row='true' or preceding-sibling::fo:table-cell[1][@ends-row='true']]"> + <tr> + <xsl:call-template name="enumerate-rowless-cells"/> + </tr> +</xsl:template> + +<xsl:template name="enumerate-rowless-cells"> + <xsl:apply-templates select="." mode="display"/> + <xsl:if test="not(@ends-row='true')"> + <xsl:for-each select="following-sibling::fo:table-cell[1] [not(@starts-row='true')]"> + <xsl:call-template name="enumerate-rowless-cells"/> + </xsl:for-each> + </xsl:if> +</xsl:template> + + +<!-- =============================================================== --> +<!-- fo:inline-graphic --> +<!-- =============================================================== --> + +<xsl:template match="fo:external-graphic"> + <xsl:variable name="cleaned-url"> + <xsl:apply-templates select="@src" mode="unbracket-url"/> + </xsl:variable> + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><img src="{$cleaned-url}"><xsl:apply-templates select="@height|@width|@*[starts-with(name(),'border')]"/></img> +</xsl:template> + +<!-- =============================================================== --> +<!-- fo:basic-link --> +<!-- =============================================================== --> + +<xsl:template match="fo:basic-link[@external-destination]"> + + <xsl:variable name="cleaned-url"> + <xsl:apply-templates select="@external-destination" mode="unbracket-url"/> + </xsl:variable> + + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><a href="{$cleaned-url}"><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates/></a> +</xsl:template> + +<xsl:template match="fo:basic-link[@internal-destination]"> + <xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><a href="#{@internal-destination}"><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates/></a> +</xsl:template> + + +<!-- =============================================================== --> +<!-- fo:marker/fo:retrieve-marker --> +<!-- =============================================================== --> + +<xsl:template match="fo:marker"/> +<xsl:template match="fo:marker" mode="retrieve-marker"> + <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="fo:retrieve-marker"> + + <xsl:variable name="class-name" select="@retrieve-class-name"/> + <xsl:variable name="matching-markers" select="ancestor::fo:page-sequence/descendant::fo:marker[@marker-class-name=$class-name]"/> + + <xsl:choose> + <xsl:when test="@retrieve-position='last-starting-within-page' or @retrieve-position='last-ending-within-page'"> + <xsl:apply-templates select="$matching-markers[position()=last()]" mode="retrieve-marker"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$matching-markers[1]" mode="retrieve-marker"/> + </xsl:otherwise> + </xsl:choose> + +</xsl:template> + + + + + +<!-- *************************************************************** --> +<!-- Treatment of attributes that are either identical to their CSS1 --> +<!-- counterparts, of find an equivalent expression there --> + +<!-- =============================================================== --> +<!-- Default rule: copy CSS1 attributes and suppress all other --> +<!-- =============================================================== --> + +<xsl:template match="@*" priority="-2" mode="collect-style-attributes"/> + +<xsl:template match="@color | @background | @background-color | @background-image | @background-position | @background-repeat | @padding | @padding-top | @padding-bottom | @padding-right | @padding-left | @margin | @margin-top | @margin-bottom | @margin-right | @margin-left | @border | @border-width | @border-top-width | @border-bottom-width | @border-right-width | @border-left-width | @border-color | @border-top-color | @border-bottom-color | @border-right-color | @border-left-color | @border-style | @border-top-style | @border-bottom-style | @border-right-style | @border-left-style | @letter-spacing | @word-spacing | @line-height | @font | @font-family | @font-size | @font-weight | @font-style | @font-variant | @vertical-align | @text-decoration | @text-indent | @text-transform" mode="collect-style-attributes"> + <xsl:value-of select="name()"/> + <xsl:text>: </xsl:text> + <xsl:value-of select="."/> + <xsl:text>; </xsl:text> +</xsl:template> + +<!-- =============================================================== --> +<!-- Some attributes deserve special treatment --> + +<xsl:template match="@text-align" mode="collect-style-attributes"> + <xsl:text>text-align: </xsl:text> + <xsl:choose> + <xsl:when test=".='start' or .='inside'">left</xsl:when> + <xsl:when test=".='end' or .='outside'">right</xsl:when> + <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise> + </xsl:choose> + <xsl:text>; </xsl:text> +</xsl:template> + +<!-- =============================================================== --> +<!-- Handling writing-mode in borders, padding, and margins --> +<!-- This version presumes lr-tb writing mode only. --> + +<xsl:template match="@space-before.optimum | @space-before [not (../@space-before.optimum)] | @space-before.minimum [not (../@space-before.optimum) and not (../@space-before)] | @space-before.maximum [not (../@space-before.optimum) and not (../@space-before) and not (../@space-before.minimum)] | @space-after.optimum | @space-after [not (../@space-after.optimum)] | @space-after.minimum [not (../@space-after.optimum) and not (../@space-after)] | @space-after.maximum [not (../@space-after.optimum) and not (../@space-after) and not (../@space-after.minimum)] | @space-start.optimum | @space-start [not (../@space-start.optimum)] | @space-start.minimum [not (../@space-start.optimum) and not (../@space-start)] | @space-start.maximum [not (../@space-start.optimum) and not (../@space-start) and not (../@space-start.minimum)] | @space-end.optimum | @space-end [not (../@space-end.optimum)] | @space-end.minimum [not (../@space-end.optimum) and not (../@space-end)] | @space-end.maximum [not (../@space-end.optimum) and not (../@space-end) and not (../@space-end.minimum)] | @start-indent[not(parent::fo:list-item-body)] | @end-indent[not(parent::fo:list-item-label)] | @padding-before | @padding-before.length | @margin-before | @border-before | @border-before-width | @border-before-width.length | @border-before-color | @border-before-style | @padding-after | @padding-after.length | @margin-after | @border-after | @border-after-width | @border-after-width.length | @border-after-color | @border-after-style | @padding-start | @padding-start.length | @margin-start | @border-start | @border-start-width | @border-start-width.length | @border-start-color | @border-start-style | @padding-end | @padding-end.length | @margin-end | @border-end | @border-end-width | @border-end-width.length | @border-end-color | @border-end-style" mode="collect-style-attributes"> + + <xsl:variable name="property"> + <xsl:choose> + <xsl:when test="starts-with(name(), 'border')">border</xsl:when> + <xsl:when test="starts-with(name(), 'padding')">padding</xsl:when> + <xsl:when test="starts-with(name(), 'margin')">margin</xsl:when> + <xsl:when test="starts-with(name(), 'space')">margin</xsl:when> + <xsl:when test="contains(name(), '-indent')">margin</xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="side"> + <xsl:choose> + <xsl:when test="contains(name(), '-before') or contains(name(), '-top')">-top</xsl:when> + <xsl:when test="contains(name(), '-after') or contains(name(), '-bottom')">-bottom</xsl:when> + <xsl:when test="contains(name(), '-start') or starts-with(name(), 'start-') or contains(name(), '-left')">-left</xsl:when> + <xsl:when test="contains(name(), '-end') or starts-with(name(), 'end-') or contains(name(), '-right')">-right</xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="parameter"> + <xsl:choose> + <xsl:when test="contains(name(), '-width')">-width</xsl:when> + <xsl:when test="contains(name(), '-color')">-color</xsl:when> + <xsl:when test="contains(name(), '-style')">-style</xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:value-of select="concat($property, $side, $parameter)"/> + <xsl:text>: </xsl:text> + <xsl:value-of select="."/> + <xsl:text>; </xsl:text> +</xsl:template> + +<xsl:template match="*" mode="check-for-pre" priority="-1"> + <xsl:apply-templates select="."/> +</xsl:template> + +<xsl:template match="*[@white-space-collapse='false' or @linefeed-treatment='preserve' or @wrap-option='no-wrap' or @white-space='pre']" mode="check-for-pre"> + <pre><xsl:apply-templates select="."/></pre> +</xsl:template> + +<!-- =============================================================== --> +<!-- Recalculate a length to pixels. 1 in = 96 px, 1 em = 1 pc; --> +<!-- this gives reasonable results for 800x600 and 1024x768 screens --> +<!-- =============================================================== --> + +<xsl:template match="@*" mode="convert-to-pixels"> + <xsl:variable name="scaling-factor"> + <xsl:choose> + <xsl:when test="contains (., 'pt')">1.33</xsl:when> + <xsl:when test="contains (., 'px')">1</xsl:when> + <xsl:when test="contains (., 'pc')">16</xsl:when> + <xsl:when test="contains (., 'in')">96</xsl:when> + <xsl:when test="contains (., 'cm')">37.8</xsl:when> + <xsl:when test="contains (., 'mm')">3.78</xsl:when> + <xsl:when test="contains (., 'em')">16</xsl:when> <!-- guess: 1em = 12pt --> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="numeric-value" select="translate (., '-0123456789.ptxcinme', '-0123456789.')"/> + <xsl:value-of select="$numeric-value * $scaling-factor"/> +</xsl:template> + +<!-- =============================================================== --> +<!-- Remove brackets & quotes around URLs --> +<!-- =============================================================== --> + +<xsl:template match="@*" mode="unbracket-url"> + <xsl:variable name="href" select="normalize-space(.)"/> + + <xsl:choose> + <xsl:when test="(starts-with($href, 'url(') or starts-with($href, 'url (')) and substring ($href, string-length($href)) = ')'"> + <!-- Remove 'url' from the beginning --> + <xsl:variable name="bracketed" select="normalize-space(substring($href, 4))"/> + <!-- Remove brackets --> + <xsl:variable name="quoted" select="normalize-space(substring($bracketed, 2, string-length ($bracketed) - 2 ))"/> + + <xsl:variable name="q" select="'"'"/> + <xsl:variable name="a" select=""'""/> + <!-- Remove optional quotes --> + <xsl:choose> + <xsl:when test="( substring($quoted, 1, 1) = $q and substring($quoted, string-length($quoted), 1) = $q ) or ( substring($quoted, 1, 1) = $a and substring($quoted, string-length($quoted), 1) = $a )"> + <xsl:value-of select="substring($quoted, 2, string-length($quoted) - 2)"/> + </xsl:when> + <xsl:otherwise><xsl:value-of select="$quoted"/></xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- =============================================================== --> +<!-- Page number - replace by a bullet --> +<!-- =============================================================== --> + +<xsl:template match="fo:page-number | fo:page-number-citation"> + <span><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:text>•</xsl:text></span> +</xsl:template> + +<!-- =============================================================== --> +<!-- Leader - replace by a space --> +<!-- =============================================================== --> + +<xsl:template match="fo:leader"> + <xsl:text> </xsl:text> +</xsl:template> + + + +<!-- =============================================================== --> +<!-- Static content - add a <hr/> before or after it --> +<!-- =============================================================== --> + +<xsl:template match="fo:flow | fo:static-content"> + <xsl:param name="region"/> + + <div><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates select="$region"/> + <xsl:apply-templates/> + <xsl:if test=".//fo:footnote"> + <br/><hr/> + <xsl:apply-templates select=".//fo:footnote" mode="after-text"/> + </xsl:if> + </div> +</xsl:template> + +<!-- =============================================================== --> +<!-- Footnotes --> +<!-- =============================================================== --> + +<xsl:template match="fo:footnote"> + <xsl:apply-templates select="fo:inline"/> +</xsl:template> + +<xsl:template match="fo:footnote" mode="after-text"> + <div><xsl:call-template name="add-style-attribute" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/><xsl:apply-templates select="@id" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> + <xsl:apply-templates select="fo:footnote-body"/> + </div> +</xsl:template> + +<!-- =============================================================== --> +<!-- Copy all CSS1-compatible attributes to "style" property --> +<!-- =============================================================== --> + +<xsl:template name="add-style-attribute"> + <xsl:param name="orientation" select="0"/> + <xsl:variable name="style"> + <xsl:apply-templates select="@*" mode="collect-style-attributes"/> + </xsl:variable> + + <xsl:if test="string-length($style) > 0"> + <xsl:attribute name="style"><xsl:value-of select="normalize-space($style)"/></xsl:attribute> + </xsl:if> +</xsl:template> + +<!-- =============================================================== --> +<!-- Create an anchor --> +<!-- =============================================================== --> + +<xsl:template match="@id"><a name="{.}"/></xsl:template> + +<!-- =============================================================== --> +<!-- Table cell geometry --> +<!-- =============================================================== --> + +<xsl:template match="@*" mode="get-table-attributes" priority="-1"/> + +<xsl:template match="@number-columns-spanned" mode="get-table-attributes"> + <xsl:attribute name="colspan"><xsl:value-of select="."/></xsl:attribute> +</xsl:template> + +<xsl:template match="@number-rows-spanned" mode="get-table-attributes"> + <xsl:attribute name="rowspan"><xsl:value-of select="."/></xsl:attribute> +</xsl:template> + + + +<!-- =============================================================== --> +<!-- Page layout: determine master name for the first page --> +<!-- =============================================================== --> + +<xsl:template match="fo:page-sequence-master"> + <xsl:apply-templates select="*[1]"/> +</xsl:template> + +<xsl:template match="fo:single-page-master-reference | fo:repeatable-page-master-reference"> + <xsl:value-of select="@master-reference"/> +</xsl:template> + +<xsl:template match="fo:repeatable-page-master-alternatives"> + <xsl:choose> + <xsl:when test="fo:conditional-page-master-reference[@page-position='first']"> + <xsl:value-of select="fo:conditional-page-master-reference[@page-position='first'][1]/@master-reference"/> + </xsl:when> + <xsl:when test="fo:conditional-page-master-reference[@odd-or-even='odd' and not (@blank-or-not-blank='blank')]"> + <xsl:value-of select="fo:conditional-page-master-reference[@odd-or-even='odd' and not (@blank-or-not-blank='blank')][1]/@master-reference"/> + </xsl:when> + <xsl:when test="fo:conditional-page-master-reference[not(@odd-or-even='even') and not (@blank-or-not-blank='blank')]"> + <xsl:value-of select="fo:conditional-page-master-reference[not(@odd-or-even='even') and not (@blank-or-not-blank='blank')][1]/@master-reference"/> + </xsl:when> + <xsl:otherwise> <!-- cannot guess; take the first --> + <xsl:value-of select="fo:conditional-page-master-reference[1]/@master-reference"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + + +<!-- =============================================================== --> +<!-- Header/footer properties --> +<!-- =============================================================== --> + + +<xsl:template match="@extent"> + <xsl:attribute name="width"><xsl:apply-templates select="." mode="convert-to-pixels"/></xsl:attribute> +</xsl:template> + +<xsl:template match="@width | @height"> + <xsl:attribute name="{name()}"><xsl:apply-templates select="." mode="convert-to-pixels"/></xsl:attribute> +</xsl:template> + +<xsl:template match="fo:region-before | fo:region-after"> + <xsl:call-template name="get-area-attributes"/> + + <!-- For header and footer, we suppress margins and padding --> + <xsl:variable name="style"> + <xsl:apply-templates select="@*[not (starts-with (name(), 'margin') or starts-with (name(), 'space') or starts-with (name(), 'padding'))]" mode="collect-style-attributes"> + <xsl:with-param name="orientation" select="@reference-orientation"/> + </xsl:apply-templates> + </xsl:variable> + + <xsl:if test="string-length($style) > 0"> + <xsl:attribute name="style"><xsl:value-of select="normalize-space($style)"/></xsl:attribute> + </xsl:if> + +</xsl:template> + +<xsl:template match="fo:region-body"> + <xsl:call-template name="get-area-attributes"/> + + <!-- For region-body, we suppress margin attributes --> + <xsl:variable name="style"> + <xsl:apply-templates select="@*[not (starts-with (name(), 'margin') or starts-with (name(), 'space'))]" mode="collect-style-attributes"> + <xsl:with-param name="orientation" select="@reference-orientation"/> + </xsl:apply-templates> + </xsl:variable> + + <xsl:if test="string-length($style) > 0"> + <xsl:attribute name="style"><xsl:value-of select="normalize-space($style)"/></xsl:attribute> + </xsl:if> +</xsl:template> + +<xsl:template match="fo:region-start | fo:region-end"/> + +<xsl:template name="get-area-attributes"> + <xsl:attribute name="valign"> + <xsl:choose> + <xsl:when test="@display-align"><xsl:value-of select="@display-align"/></xsl:when> + <xsl:otherwise>top</xsl:otherwise> + </xsl:choose> + </xsl:attribute> +</xsl:template> + +</xsl:stylesheet> \ No newline at end of file diff --git a/src/module_cadastre/web_service/conf/version.inc b/src/module_cadastre/web_service/conf/version.inc new file mode 100755 index 0000000000000000000000000000000000000000..eedb3a0e0513a5ef8b2349e807e833b9c2611598 --- /dev/null +++ b/src/module_cadastre/web_service/conf/version.inc @@ -0,0 +1,7 @@ +<?php +// Numéro de la version de cadastre +define ("VM_VERSION", "[VERSION]"); +define ("VM_BUILD", "[BUILD]"); +define ("VM_MONTH_YEAR", "[MONTH_YEAR]"); +define ("VM_STATUS", "UNSTABLE"); +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Adresse.class.inc b/src/module_cadastre/web_service/ws/Adresse.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..3cff33960b08a533bd9afc35655195da0511d703 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Adresse.class.inc @@ -0,0 +1,74 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Adresse.class.inc + * \class Adresse + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Adresse php class + * + * This class defines operation for one Adresse + * + */ +class Adresse extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array(oid, 'ID_COM', 'IDU_', 'ID_PAR', 'CCODEP', 'CCODIR', 'CCOCOM', 'CCOPRE', 'CCOSEC', 'DNUPLA', 'CENR', 'DCNTPA', 'DSRPAR', 'DNUPRO', 'JDATAT', 'DREFLF', 'GPDL', 'CPRSECR', 'CCOSECR', 'DNUPLAR', 'DNUPDL', 'GURBPA', 'DPARPI', 'CCOARP', 'GPARNF', 'GPARBAT', 'CCOVOI', 'CCORIV', 'CCOCIF', 'CODE_INSEE', 'ID_RIVOLI', 'ID_DNUPRO', 'DNVOIRI', 'DINDIC', 'L_NATURE_VOIE', 'DVOILIB'); + } + + /** + * @SWG\Get(path="/adresses/{ID_PAR}", + * tags={"Adresse"}, + * summary="Get Adresse", + * description="Request to get Adresse by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_PAR", + * in="path", + * description="adresse id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/adresses") + * ) + * ) + */ + + /** + * get informations about Adresse + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['adresse'], 'ID_PAR'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Adresses.class.inc b/src/module_cadastre/web_service/ws/Adresses.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..38dea19da77a97608e2ce677de865e285f588033 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Adresses.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file Adresses.class.inc + * \class Adresses + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Adresses php class + * + * This class defines Rest Api to Vmap Adresses + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Adresse.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Adresses extends Cadastre { + /** + * @SWG\Definition( + * definition="/adresses", + * allOf={ + * @SWG\Schema(ref="#/definitions/adresses") + * } + * ) + * * @SWG\Tag( + * name="Adresses", + * description="Operations about cadastre" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array(oid, 'ID_COM', 'IDU_', 'ID_PAR', 'CCODEP', 'CCODIR', 'CCOCOM', 'CCOPRE', 'CCOSEC', 'DNUPLA', 'CENR', 'DCNTPA', 'DSRPAR', 'DNUPRO', 'JDATAT', 'DREFLF', 'GPDL', 'CPRSECR', 'CCOSECR', 'DNUPLAR', 'DNUPDL', 'GURBPA', 'DPARPI', 'CCOARP', 'GPARNF', 'GPARBAT', 'CCOVOI', 'CCORIV', 'CCOCIF', 'CODE_INSEE', 'ID_RIVOLI', 'ID_DNUPRO', 'DNVOIRI', 'DINDIC', 'L_NATURE_VOIE', 'DVOILIB'); + } + + /** + * @SWG\Get(path="/adresses", + * tags={"Adresse"}, + * summary="Get Adresses", + * description="Request to get Adresses", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/adresses") + * ) + * ) + */ + + /** + * get Adresses + * @return Adresses + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['adresse'], 'ID_PAR'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/CHANGE_LOG.txt b/src/module_cadastre/web_service/ws/CHANGE_LOG.txt new file mode 100755 index 0000000000000000000000000000000000000000..73f8e2a171d20fd3726bdc9974fcb57bba034679 --- /dev/null +++ b/src/module_cadastre/web_service/ws/CHANGE_LOG.txt @@ -0,0 +1,8 @@ + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + + + + VEREMES - Web Service Cadastre (Modèle Veremap) change log + + + + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + diff --git a/src/module_cadastre/web_service/ws/Cadastre.class.inc b/src/module_cadastre/web_service/ws/Cadastre.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..ce60eb55d573d3d112d716df3de2dbc184f2464d --- /dev/null +++ b/src/module_cadastre/web_service/ws/Cadastre.class.inc @@ -0,0 +1,36 @@ +<?php + +require_once __DIR__ . "/../../class/vitis_lib/DbClass.class.inc"; +require_once __DIR__ . '/../vmap/Vmap.class.inc'; + +class Cadastre extends Vmap { + + //Chemin du fichier de ressources contenant les requêtes SQL + var $sRessourcesFile = 'Vitis.class.sql.inc'; + + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * Return true if the user have raghts on the "commune" else return false + * @param string $id_com + * @return boolean + */ + function haveCommuneRights($id_com) { + // Vérifie si on a les droits sur la commune + $aFilter = array( + 'column' => 'id_com', + 'compare_operator' => '=', + 'value' => $id_com + ); + $aCommunes = $this->vmapGet('public', $this->aProperties['cadastre']['views']['commune'], array('id_com'), $aFilter, array('limit' => 1)); + if (sizeOf($aCommunes) > 0) + return true; + else + return false; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/CadastreProperties.class.inc b/src/module_cadastre/web_service/ws/CadastreProperties.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..9946176f4f9a15e3d9455c7e4184fe51e68abd31 --- /dev/null +++ b/src/module_cadastre/web_service/ws/CadastreProperties.class.inc @@ -0,0 +1,74 @@ +<?php + +require_once __DIR__ . '/../vitis/Vitis.class.inc'; + +/** + * \file cadastreproperties.class.inc + * \class CadatsreProperties + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Properties php class + * + * This class defines the rest api for properties + * + */ +class CadastreProperties extends Vitis { + /** + * @SWG\Definition( + * definition="/cadastreproperties", + * allOf={ + * @SWG\Schema(ref="#/definitions/cadastreproperties") + * } + * ) + * * @SWG\Tag( + * name="properties", + * description="Operations about properties" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function properties($aPath, $aValues, $properties, $bShortcut = false) { + $this->aValues = $aValues; + $this->aPath = $aPath; + $this->aProperties = (object) $properties; + } + + /** + * @SWG\Get(path="/cadastreproperties", + * tags={"Properties"}, + * summary="Get the cadastre properties", + * description="Request to get properties", + * operationId="GET", + * produces={"application/json", "application/x-vm-json"}, + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitionscadastre/properties") + * ) + * ) + */ + + /** + * + * @return properties + */ + function GET() { + + $this->aFields['data'] = $this->aProperties->cadastre; + $aXmlRacineAttribute['status'] = 1; + $sMessage = $this->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + + return $sMessage; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Commune.class.inc b/src/module_cadastre/web_service/ws/Commune.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..9aec3ee25051f953f327c52bb2750cb507d783d8 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Commune.class.inc @@ -0,0 +1,75 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Commune.class.inc + * \class Commune + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Commune php class + * + * This class defines operation for one Commune + * + */ +class Commune extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("id_com", "code_com", "nom", "geom"); + } + + /** + * @SWG\Get(path="/communes/{id_com}", + * tags={"Commune"}, + * summary="Get Commune", + * description="Request to get Commune by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="id_com", + * in="path", + * description="commune id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/communes") + * ) + * ) + */ + + /** + * get informations about Commune + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['commune'], 'id_com'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Communes.class.inc b/src/module_cadastre/web_service/ws/Communes.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..a3b21489e889db80c02d807bcb8382755be4276d --- /dev/null +++ b/src/module_cadastre/web_service/ws/Communes.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file Communes.class.inc + * \class Communes + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Communes php class + * + * This class defines Rest Api to Vmap Communes + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Commune.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Communes extends Cadastre { + /** + * @SWG\Definition( + * definition="/communes", + * allOf={ + * @SWG\Schema(ref="#/definitions/communes") + * } + * ) + * * @SWG\Tag( + * name="Communes", + * description="Operations about cadastre" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("id_com", "code_com", "nom", "geom"); + } + + /** + * @SWG\Get(path="/communes", + * tags={"Commune"}, + * summary="Get Communes", + * description="Request to get Communes", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/communes") + * ) + * ) + */ + + /** + * get Communes + * @return Communes + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['commune'], 'id_com'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/DescriptionParcelle.class.inc b/src/module_cadastre/web_service/ws/DescriptionParcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..7fe77be3b88b1d2b854692bb26d16f50e99a264a --- /dev/null +++ b/src/module_cadastre/web_service/ws/DescriptionParcelle.class.inc @@ -0,0 +1,74 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file DescriptionParcelle.class.inc + * \class DescriptionParcelle + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the DescriptionParcelle php class + * + * This class defines operation for one DescriptionParcelle + * + */ +class DescriptionParcelle extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array(oid, 'ID_COM', 'IDU_', 'ID_PAR', 'CCODEP', 'CCODIR', 'CCOCOM', 'CCOPRE', 'CCOSEC', 'DNUPLA', 'CENR', 'DCNTPA', 'DSRPAR', 'DNUPRO', 'JDATAT', 'DREFLF', 'GPDL', 'CPRSECR', 'CCOSECR', 'DNUPLAR', 'DNUPDL', 'GURBPA', 'DPARPI', 'CCOARP', 'GPARNF', 'GPARBAT', 'CCOVOI', 'CCORIV', 'CCOCIF', 'CODE_INSEE', 'ID_RIVOLI', 'ID_DNUPRO', 'DNVOIRI', 'DINDIC', 'L_NATURE_VOIE', 'DVOILIB'); + } + + /** + * @SWG\Get(path="/descriptionparcelles/{ID_PAR}", + * tags={"Parcelle"}, + * summary="Get DescriptionParcelle", + * description="Request to get DescriptionParcelle by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_PAR", + * in="path", + * description="descriptionparcelle id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/descriptionparcelles") + * ) + * ) + */ + + /** + * get informations about DescriptionParcelle + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['description_parcelle'], 'ID_PAR'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/DescriptionParcelles.class.inc b/src/module_cadastre/web_service/ws/DescriptionParcelles.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..a0beaf77137f79f0e9198b5b3f2678af12966ead --- /dev/null +++ b/src/module_cadastre/web_service/ws/DescriptionParcelles.class.inc @@ -0,0 +1,132 @@ +<?php + +/** + * \file DescriptionParcelles.class.inc + * \class DescriptionParcelles + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the DescriptionParcelles php class + * + * This class defines Rest Api to Vmap DescriptionParcelles + * + */ +require_once 'Cadastre.class.inc'; +require_once 'DescriptionParcelle.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class DescriptionParcelles extends Cadastre { + /** + * @SWG\Definition( + * definition="/descriptionparcelles", + * allOf={ + * @SWG\Schema(ref="#/definitions/descriptionparcelles") + * } + * ) + * * @SWG\Tag( + * name="DescriptionParcelles", + * description="Operations about descriptionparcelles" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array(oid, 'ID_COM', 'IDU_', 'ID_PAR', 'CCODEP', 'CCODIR', 'CCOCOM', 'CCOPRE', 'CCOSEC', 'DNUPLA', 'CENR', 'DCNTPA', 'DSRPAR', 'DNUPRO', 'JDATAT', 'DREFLF', 'GPDL', 'CPRSECR', 'CCOSECR', 'DNUPLAR', 'DNUPDL', 'GURBPA', 'DPARPI', 'CCOARP', 'GPARNF', 'GPARBAT', 'CCOVOI', 'CCORIV', 'CCOCIF', 'CODE_INSEE', 'ID_RIVOLI', 'ID_DNUPRO', 'DNVOIRI', 'DINDIC', 'L_NATURE_VOIE', 'DVOILIB'); + } + + /** + * @SWG\Get(path="/descriptionparcelles", + * tags={"Parcelle"}, + * summary="Get DescriptionParcelles", + * description="Request to get DescriptionParcelles", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/descriptionparcelles") + * ) + * ) + */ + + /** + * get DescriptionParcelles + * @return DescriptionParcelles + */ + function GET() { + $this->aValues['filter'] = str_replace("id_par", "ID_PAR", $this->aValues['filter']); + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['description_parcelle'], 'ID_PAR'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/DownloadRapport.class.inc b/src/module_cadastre/web_service/ws/DownloadRapport.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..07ac4813249b3aef74991a0cfc6e0ed51bfd8166 --- /dev/null +++ b/src/module_cadastre/web_service/ws/DownloadRapport.class.inc @@ -0,0 +1,131 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../vitis/Vitis.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +/** + * \file downloadrapport.class.inc + * \class DownloadRapport + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the DownloadRapport php class + * + * This class defines the rest api for downloadrapport + * + */ +class DownloadRapport extends Cadastre { + /** + * @SWG\Definition( + * definition="/downloadrapport", + * allOf={ + * @SWG\Schema(ref="#/definitions/downloadrapport") + * } + * ) + * * @SWG\Tag( + * name="DownloadRapport", + * description="Operations about DownloadRapport" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * @SWG\Get(path="/downloadrapport", + * tags={"ReleveDePropriete"}, + * summary="Create the releve de propriete sheet", + * description="Request to get the element", + * operationId="GET", + * produces={"application/json"}, + * @SWG\Parameter( + * name="sYear", + * in="query", + * description="year folder name (ex: 2013)", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="sType", + * in="query", + * description="type folder name", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="sFileName", + * in="query", + * description="file name (includes the extension)", + * required=true, + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="DownloadRapport Response", + * @SWG\Schema(ref="#/definitions/downloadrapport") + * ) + * ) + */ + function GET() { + + if (!in_array('vmap_cadastre_user', $this->oConnection->aPrivileges)) { + $oError = new VitisError(0, 'INSUFFICIENT_PRIVILEGES'); + $aXmlRacineAttribute['status'] = 0; + $sMessage = $oError->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + return $sMessage; + } + + if ($this->oConnection->oError == null) { + if (!empty($this->aValues['sFileName'])) { + $aRestriction = explode('|', $_SESSION['ses_restriction']); + if (strpos($this->aValues['sFileName'], "../") === false && ($_SESSION['ses_restriction'] == "%" || in_array(substr($this->aValues['sFileName'], 0, 5), $aRestriction))) { + $sFile = $this->aProperties["cadastre"]["rp"]["rp_dir"] . "/" . $this->aValues['sYear'] . '/' . $this->aValues['sType'] . '/' . $this->aValues['sFileName']; + if (is_file($sFile)) { + switch (pathinfo($sFile, PATHINFO_EXTENSION)) { + case 'pdf': + if (file_exists($sFile)) { + header('Content-Type: application/pdf'); + } + break; + case 'xls': + if (file_exists($sFile)) { + header('Content-Type: application/vnd.ms-excel'); + } + break; + default: + http_response_code(403); + //echo (json_encode(array("status" => "0", "sMessage" => "forbidden"))); + exit; + break; + } + header('Expires: 0'); + header('Cache-Control: must-revalidate'); + header('Pragma: public'); + header('Content-Length: ' . filesize($sFile)); + readfile($sFile); + } else { + return 'Une erreur est survenue lors de la g�n�ration du rapport'; + } + } else { + http_response_code(403); + } + } + } else { + http_response_code(403); + } + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/FicheDescriptiveInvariant.class.inc b/src/module_cadastre/web_service/ws/FicheDescriptiveInvariant.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..96887da22e43a10422febafa8b0b343b8af99828 --- /dev/null +++ b/src/module_cadastre/web_service/ws/FicheDescriptiveInvariant.class.inc @@ -0,0 +1,142 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../vitis/Vitis.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +/** + * \file fichedescriptiveinvariant.class.inc + * \class FicheDescriptiveInvariant + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the FicheDescriptiveInvariant php class + * + * This class defines the rest api for fichedescriptiveinvariant + * + */ +class FicheDescriptiveInvariant extends Cadastre { + /** + * @SWG\Definition( + * definition="/fichedescriptiveinvariant", + * allOf={ + * @SWG\Schema(ref="#/definitions/fichedescriptiveinvariant") + * } + * ) + * * @SWG\Tag( + * name="fichedescriptiveinvariant", + * description="Operations about fichedescriptiveinvariant" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * @SWG\Get(path="/fichedescriptiveinvariant/{ID_BAT}", + * tags={"Invariant"}, + * summary="Get the fichedescriptiveinvariant whith a table", + * description="Request to get a element intersected", + * operationId="GET", + * produces={"application/json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_BAT", + * in="path", + * description="ID_BAT", + * required=true, + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="FicheDescriptiveInvariant Response", + * @SWG\Schema(ref="#/definitions/fichedescriptiveinvariant") + * ) + * ) + */ + + /** + * Get function to generate a token + * @return the token + */ + function GET() { + + if (!in_array('vmap_cadastre_user', $this->oConnection->aPrivileges)) { + $oError = new VitisError(0, 'INSUFFICIENT_PRIVILEGES'); + $aXmlRacineAttribute['status'] = 0; + $sMessage = $oError->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + return $sMessage; + } + + // Infos sur l'invariant + $ID_BAT = $this->aPath[2]; + $sSchema = 'public'; + $sTable = 'v_maj_fiche_inv_descr'; +// $sFilter = "\"ID_BAT\" = '" . $ID_BAT . "'"; + $aFilter = array( + 'column' => 'ID_BAT', + 'compare_operator' => '=', + 'value' => $ID_BAT + ); + $aAttributs = Array('ID_BAT', 'DVOILIB', 'LIBCOM', 'ID_COM', 'L_DTELOC', 'L_CCONLC', 'L_DNATLC', 'JDATAT', 'JANNAT', 'CCHPR', 'BIPEVLA1', 'DNBNIV', 'DNUBAT', 'DESC', 'DNIV', 'DVLTRT', 'INVAR'); + + $oInvariantInfos['data'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter)[0]; + + // Infos sur le P.E.V + $sTable = 'v_maj_fiche_inv_pev'; + $aAttributs = Array('ID_BAT', 'DNUPEV', 'L_CCOAFF', 'DCAPEC', 'CCOSTB', 'DNUREF', 'BIPEVLA1', 'VLBAIA1'); + + $oInvariantInfos['data']['PEV'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + // Infos sur les habitations + $sTable = 'v_maj_fiche_inv_hab'; + $aAttributs = Array('ID_BAT', 'DNUPEV', 'GEAULC', 'GELELC', 'GCHCLC', 'GTEGLC', 'DNBBAI', 'DNBDOU', 'DNBLAV', 'DNBWC', 'DEQDHA', 'DNBPPR', 'DNBPDC', 'DSUPDC', 'L_DMATGM', 'L_DMATTO', 'JANNAT', 'L_DETENT', 'DNBNIV', 'DNBSAM', 'DNBCHA', 'DNBCU8', 'DNBCU9', 'DNBSEA', 'DNBANN', 'CCONAD1', 'L_CCONAD1', 'DSUEIC1', 'CCONAD2', 'L_CCONAD2', 'DSUEIC2', 'CCONAD3', 'L_CCONAD3', 'DSUEIC3', 'CCONAD4', 'L_CCONAD4', 'DSUEIC4'); + + $oInvariantInfos['data']['habitations'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + // Infos sur les locaux pros + $sTable = 'v_maj_fiche_inv_local_pro'; + $aAttributs = Array('ID_BAT', 'DNUPEV', 'DNUDES', 'VSURZT'); + + $oInvariantInfos['data']['locauxPros'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + // Infos sur les dépendances + $sTable = 'v_maj_fiche_inv_dep'; + $aAttributs = Array('ID_BAT', 'DNUPEV', 'DSUDEP', 'GEAULC', 'GELELC', 'GCHCLC', 'DNBBAI', 'DNBDOU', 'DNBLAV', 'DNBWC', 'L_DMATGM', 'L_DMATTO', 'L_DETENT', 'L_CCONAD'); + + $oInvariantInfos['data']['dependances'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + // Infos sur les propriétaires + $sTable = 'v_maj_fiche_inv_prop'; + $aAttributs = Array('ID_BAT', 'DQUALP', 'DDENOM', 'JDATNSS', 'DLDNSS', 'DLIGN3', 'DLIGN4', 'DLIGN6', 'L_CCODEM', 'L_CCODRO'); + + $oInvariantInfos['data']['proprietaires'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + // Infos sur les lots + $sTable = 'v_maj_fiche_inv_lot'; + $aAttributs = Array('ID_BAT', 'KLOT', 'DNUMQL', 'DDENQL'); + + $oInvariantInfos['data']['lots'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + return json_encode($oInvariantInfos); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/FicheDescriptiveParcelle.class.inc b/src/module_cadastre/web_service/ws/FicheDescriptiveParcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..b6bd656795e3f594c6e7243c478d73b222084743 --- /dev/null +++ b/src/module_cadastre/web_service/ws/FicheDescriptiveParcelle.class.inc @@ -0,0 +1,214 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../vitis/Vitis.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +/** + * \file fichedescriptiveparcelle.class.inc + * \class FicheDescriptiveParcelle + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the FicheDescriptiveParcelle php class + * + * This class defines the rest api for fichedescriptiveparcelle + * + */ +class FicheDescriptiveParcelle extends Cadastre { + /** + * @SWG\Definition( + * definition="/fichedescriptiveparcelle", + * allOf={ + * @SWG\Schema(ref="#/definitions/fichedescriptiveparcelle") + * } + * ) + * * @SWG\Tag( + * name="FicheDescriptiveParcelle", + * description="Operations about FicheDescriptiveParcelle" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * @SWG\Get(path="/fichedescriptiveparcelle/{ID_PAR}", + * tags={"Parcelle"}, + * summary="Get the fichedescriptiveparcelle whith a table", + * description="Request to get a element intersected", + * operationId="GET", + * produces={"application/json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_PAR", + * in="path", + * description="ID_PAR", + * required=true, + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="FicheDescriptiveParcelle Response", + * @SWG\Schema(ref="#/definitions/fichedescriptiveparcelle") + * ) + * ) + */ + + /** + * Get function to generate a token + * @return the token + */ + function GET() { + + $ID_PAR = $this->aPath[2]; + + if (!in_array('vmap_cadastre_user', $this->oConnection->aPrivileges) && !in_array('vmap_cadastre_light_user', $this->oConnection->aPrivileges)) { + $oError = new VitisError(0, 'INSUFFICIENT_PRIVILEGES'); + $aXmlRacineAttribute['status'] = 0; + $sMessage = $oError->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + return $sMessage; + } + + // Vérifie les droits de d'utilisateur sur la commune + if ($this->haveCommuneRights(substr($ID_PAR, 0, 6)) == false) { + http_response_code(403); + $aReturn['error']['errorMessage'] .= "L'utilisateur n'a pas les droits sur la commune"; + return json_encode($aReturn); + } + + // Infos sur la parcelle + $sSchema = 'public'; + $sTable = 'v_maj_fiche_prc_descr'; +// $sFilter = "\"ID_PAR\" = '" . $ID_PAR . "'"; + $aFilter = array( + 'column' => 'ID_PAR', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + $aAttributs = Array('ID_PAR', 'ID_COM', 'parcelle', 'commune', 'sup_fiscale', 'DCNTPA', 'DNVOIRI', 'DINDIC', 'L_NATURE_VOIE', 'DVOILIB', 'CCORIV', 'GPARBAT', 'GURBPA'); + + $oParcelleInfos['data'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter)[0]; + + // Infos sur le proprietaire + $sSchemaProp = 'public'; + $sTableProp = 'v_maj_fiche_prc_prop'; +// $sFilterProp = "\"ID_PAR\" = '" . $ID_PAR . "'"; + $aFilterProp = array( + 'column' => 'ID_PAR', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + $aAttributsProp = Array('ID_PAR', 'DQUALP', 'DNUPRO', 'DDENOM', 'JDATNSS', 'DLDNSS', 'DLIGN3', 'DLIGN6', 'L_CCODEM', 'L_CCODRO', 'GDESIP', 'DLIGN4'); + + $oParcelleInfos['data']['aProprietaires'] = $this->vmapGet($sSchemaProp, $sTableProp, $aAttributsProp, $aFilterProp); + + // infos sur la subdivision fiscale + $sSchemaSub = 'public'; + $sTableSub = 'v_maj_fiche_prc_suf'; +// $sFilterSub = "\"ID_PAR\" = '" . $ID_PAR . "'"; + $aFilterSub = array( + 'column' => 'ID_PAR', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + $aAttributsSub = Array('ID_PAR', 'CCOSUB', 'DSGRPF', 'CNATSP', 'L_DSGRPF', 'DCLSSF', 'DCNTSF', 'DRCSUBA', 'DRCSUB'); + + $oParcelleInfos['data']['aSubdivisionFiscale'] = $this->vmapGet($sSchemaSub, $sTableSub, $aAttributsSub, $aFilterSub); + + // Infos sur le bâti + $sSchemaBatis = 'public'; + $sTableBatis = 'v_maj_fiche_prc_bat'; +// $sFilterBatis = "\"ID_PAR\" = '" . $ID_PAR . "'"; + $aFilterBatis = array( + 'column' => 'ID_PAR', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + $aAttributsBatis = Array('ID_BAT', 'ID_PAR', 'INVAR', 'ID_BAT', 'L_DTELOC', 'L_CCONLC', 'L_DNATLC', 'JDATAT', 'JANNAT', 'DDENOM'); + + $oParcelleInfos['data']['aBatis'] = $this->vmapGet($sSchemaBatis, $sTableBatis, $aAttributsBatis, $aFilterBatis); + + + // Infos complémentaires (paramétrées par l'administrateur) + $iTolerance = $this->aProperties["cadastre"]["descr_parcel"]["intersect"]["tolerance"]; + $aIntersectionViews = $this->aProperties['cadastre']['descr_parcel']['intersect']['views']; + + // Récupère la géométrie de la parcelle + $sSchema = 'public'; + $sTable = $this->aProperties['cadastre']['views']['parcelle']; + $aFilter = array( + 'column' => 'id_par', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + $aAttributs = Array('ST_AsEWKT(geom) as geom'); + $parcelleGeom = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter)[0]['geom']; + + // Récupère les intersections + $oParcelleInfos['data']['aIntersections'] = array(); + + foreach ($aIntersectionViews as $key => $value) { + + if (strpos($key, ".") === false) { + $sSchema = "public"; + $sTable = $key; + } else { + $aTmp = explode(".", $key); + $sSchema = $aTmp[0]; + $sTable = $aTmp[1]; + } + $aAttributs = Array(); + + foreach ($value as $key2 => $value2) { + if ($key2 != 'title' && $key2 != 'type' && $key2 != 'intersect' && $key2 != 'geom_column') { + array_push($aAttributs, $key2); + } + } + + if (!empty($value['geom_column'])) { + $sGeomColumn = $value['geom_column']; + } else { + $sGeomColumn = 'geom'; + } + + if (!empty($value['type'])) { + $sGeomType = $value['type']; + } else { + $sGeomType = 'POLYGON'; + } + + $aIntersect = $this->vmapIntersectGet($sSchema, $sTable, $parcelleGeom, $aAttributs, $iTolerance, $sGeomColumn, $sGeomType); + + $value['data'] = $aIntersect; + if (isset($value['data'][0]) && !empty($value['data'][0])) { + $value['aFields'] = array_keys($value['data'][0]); + } else { + $value['aFields'] = array(); + } + + array_push($oParcelleInfos['data']['aIntersections'], $value); + } + + return json_encode($oParcelleInfos); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/FicheUrbanisme.class.inc b/src/module_cadastre/web_service/ws/FicheUrbanisme.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..aaa0c4e25bc3456af45d30782dd2a0da5b08941a --- /dev/null +++ b/src/module_cadastre/web_service/ws/FicheUrbanisme.class.inc @@ -0,0 +1,187 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../vitis/Vitis.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +/** + * \file ficheurbanisme.class.inc + * \class FicheUrbanisme + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the FicheUrbanisme php class + * + * This class defines the rest api for ficheurbanisme + * + */ +class FicheUrbanisme extends Cadastre { + /** + * @SWG\Definition( + * definition="/ficheurbanisme", + * allOf={ + * @SWG\Schema(ref="#/definitions/ficheurbanisme") + * } + * ) + * * @SWG\Tag( + * name="ficheurbanisme", + * description="Operations about ficheurbanisme" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * @SWG\Get(path="/ficheurbanisme/{ID_PAR}", + * tags={"Parcelle"}, + * summary="Get the ficheurbanisme whith a table", + * description="Request to get a element intersected", + * operationId="GET", + * produces={"application/json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_PAR", + * in="path", + * description="ID_PAR", + * required=true, + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="FicheUrbanisme Response", + * @SWG\Schema(ref="#/definitions/ficheurbanisme") + * ) + * ) + */ + + /** + * Get function to generate a token + * @return the token + */ + function GET() { + + if (!in_array('vmap_cadastre_user', $this->oConnection->aPrivileges)) { + $oError = new VitisError(0, 'INSUFFICIENT_PRIVILEGES'); + $aXmlRacineAttribute['status'] = 0; + $sMessage = $oError->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + return $sMessage; + } + + $ID_PAR = $this->aPath[2]; + + // Vérifie les droits de d'utilisateur sur la commune + if ($this->haveCommuneRights(substr($ID_PAR, 0, 6)) == false) { + http_response_code(403); + $aReturn['error']['errorMessage'] .= "L'utilisateur n'a pas les droits sur la commune"; + return json_encode($aReturn); + } + + // Infos sur la parcelle + $sSchema = 'public'; + $sTable = 'v_maj_fiche_urb_vmap'; + // $sFilter = "\"ID_PAR\" = '" . $ID_PAR . "'"; + $aFilter = array( + 'column' => 'ID_PAR', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + $aAttributs = Array('ID_PAR', 'LIBDEP', 'LIBCOM', 'DNUPLA', 'CCOSEC', 'DCNTPA', 'DDENOM', 'DLIGN3', 'DLIGN4', 'DLIGN6', '"DNVOIRI" || "DINDIC" || \' \' || "CCONVO" || \' \' || "DVOILIB" as "ADRESSE"', 'l_dsgrpf as "DSGRPF"'); + + $oParcelleInfos['data'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter); + + // Géométrie + $sTable = $this->aProperties['cadastre']['views']['parcelle']; + // $sFilter = "id_par = '" . $ID_PAR . "'"; + $aFilter = array( + 'column' => 'id_par', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + if (!empty($this->aValues['result_srid'])) + $aAttributs = Array('ST_AsEWKT(ST_Transform(geom, ' . $this->aValues['result_srid'] . ')) as geom'); + else + $aAttributs = Array('ST_AsEWKT(geom) as geom'); + + $oParcelleInfos['data']['geometry'] = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter)[0]; + + // Récupère la géométrie de la parcelle + $sSchema = 'public'; + $sTable = $this->aProperties['cadastre']['views']['parcelle']; + // $sFilter = "\"id_par\" = '" . $ID_PAR . "'"; + $aFilter = array( + 'column' => 'id_par', + 'compare_operator' => '=', + 'value' => $ID_PAR + ); + if (!empty($this->aValues['result_srid'])) + $aAttributs = Array('ST_AsEWKT(ST_Transform(geom, ' . $this->aValues['result_srid'] . ')) as geom'); + else + $aAttributs = Array('ST_AsEWKT(geom) as geom'); + $parcelleGeom = $this->vmapGet($sSchema, $sTable, $aAttributs, $aFilter)[0]['geom']; + + // Récupère les intersections + $oParcelleInfos['data']['aIntersections'] = array(); + $oParcelleInfos['data']['aIntersectionsArray'] = array(); + + // Infos complémentaires (paramétrées par l'administrateur) + $aIntersectionViews = $this->aProperties['cadastre']['fiche_urb']['intersect']['views']; + $iTolerance = $this->aProperties["cadastre"]["fiche_urb"]["intersect"]["tolerance"]; + if (is_array($aIntersectionViews)) { + foreach ($aIntersectionViews as $key => $value) { + + $sTable = $key; + $aAttributs = Array(); + + foreach ($value as $key2 => $value2) { + if ($key2 != 'title' && $key2 != 'type' && $key2 != 'intersect') { + array_push($aAttributs, $key2); + } + } + + $oIntersect = $this->vmapIntersectGet($sSchema, $sTable, $parcelleGeom, $aAttributs, $iTolerance); + $value['data'] = $oIntersect; + + array_push($oParcelleInfos['data']['aIntersections'], $value); + } + } + $aIntersectionArrayViews = $this->aProperties['cadastre']['fiche_urb']['intersect']['array_views']; + if (is_array($aIntersectionArrayViews)) { + for ($i = 0; $i < count($aIntersectionArrayViews); $i++) { + foreach ($aIntersectionArrayViews[$i] as $key => $value) { + $sTable = $key; + $aAttributs = Array(); + foreach ($value as $key2 => $value2) { + if ($key2 != 'title' && $key2 != 'type' && $key2 != 'intersect') { + array_push($aAttributs, $key2); + } + } + $oIntersect = $this->vmapIntersectGet($sSchema, $sTable, $parcelleGeom, $aAttributs, $iTolerance); + $value['data'] = $oIntersect; + array_push($oParcelleInfos['data']['aIntersectionsArray'], $value); + } + } + } + + return json_encode($oParcelleInfos); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Invariant.class.inc b/src/module_cadastre/web_service/ws/Invariant.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..4c901af7f013153b1d8bc25777dc657df8411eee --- /dev/null +++ b/src/module_cadastre/web_service/ws/Invariant.class.inc @@ -0,0 +1,74 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Invariant.class.inc + * \class Invariant + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Invariant php class + * + * This class defines operation for one Invariant + * + */ +class Invariant extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array('oid', 'ID_BAT', 'ID_COM', 'INVAR', 'DNUPRO', 'ID_PAR', 'CCOSEC', 'DNUPLA'); + } + + /** + * @SWG\Get(path="/invariants/{ID_BAT}", + * tags={"Invariant"}, + * summary="Get Invariant", + * description="Request to get Invariant by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_BAT", + * in="path", + * description="invariant id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/invariants") + * ) + * ) + */ + + /** + * get informations about Invariant + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['invariant'], 'ID_BAT'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Invariants.class.inc b/src/module_cadastre/web_service/ws/Invariants.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..13c9beff6bacb2d12fcaa5a6909641d089f42683 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Invariants.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file Invariants.class.inc + * \class Invariants + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Invariants php class + * + * This class defines Rest Api to Vmap Invariants + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Invariant.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Invariants extends Vmap { + /** + * @SWG\Definition( + * definition="/invariants", + * allOf={ + * @SWG\Schema(ref="#/definitions/invariants") + * } + * ) + * * @SWG\Tag( + * name="invariants", + * description="Operations about invariants" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array('oid', 'ID_BAT', 'ID_COM', 'INVAR', 'DNUPRO', 'ID_PAR', 'CCOSEC', 'DNUPLA'); + } + + /** + * @SWG\Get(path="/invariants", + * tags={"Invariant"}, + * summary="Get Invariants", + * description="Request to get Invariants", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/invariants") + * ) + * ) + */ + + /** + * get Invariants + * @return Invariants + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['invariant'], 'ID_BAT'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/LieuDit.class.inc b/src/module_cadastre/web_service/ws/LieuDit.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..992c02e9ee4ec8b63b38f8737824906ac21fd69a --- /dev/null +++ b/src/module_cadastre/web_service/ws/LieuDit.class.inc @@ -0,0 +1,33 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file LieuDit.class.inc + * \class LieuDit + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the LieuDit php class + * + * This class defines operation for one LieuDit + * + */ +class LieuDit extends Cadastre { + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/LieuDits.class.inc b/src/module_cadastre/web_service/ws/LieuDits.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..13db1fe7334f6aad3addeb58606f3864cca5272d --- /dev/null +++ b/src/module_cadastre/web_service/ws/LieuDits.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file LieuDits.class.inc + * \class LieuDits + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the LieuDits php class + * + * This class defines Rest Api to Vmap LieuDits + * + */ +require_once 'Cadastre.class.inc'; +require_once 'LieuDit.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class LieuDits extends Cadastre { + /** + * @SWG\Definition( + * definition="/lieudits", + * allOf={ + * @SWG\Schema(ref="#/definitions/lieudits") + * } + * ) + * * @SWG\Tag( + * name="lieudits", + * description="Operations about lieudits" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("oid", "id_com", "code_com", "section", "pre", "texte", "tex", "tex2", "tex3", "tex4", "tex5", "tex6", "tex7", "tex8", "tex9", "tex10", "geom"); + } + + /** + * @SWG\Get(path="/lieudits", + * tags={"LieuDit"}, + * summary="Get LieuDits", + * description="Request to get LieuDits", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/lieudits") + * ) + * ) + */ + + /** + * get LieuDits + * @return LieuDits + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['lieu_dit'], 'oid'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Parcelle.class.inc b/src/module_cadastre/web_service/ws/Parcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..de1fee3c765eea7378465647c20d5ce1545f05c6 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Parcelle.class.inc @@ -0,0 +1,74 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Parcelle.class.inc + * \class Parcelle + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Parcelle php class + * + * This class defines operation for one Parcelle + * + */ +class Parcelle extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("id_com", "id_sec", "code_com", "commune", "parcelle", "section", "pre", "coar", "codm", "indp", "idu", "id_par", "sup_fiscale", "numero", "feuille", "geom"); + } + + /** + * @SWG\Get(path="/parcelles/{id_par}", + * tags={"Parcelle"}, + * summary="Get Parcelle", + * description="Request to get Parcelle by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="id_par", + * in="path", + * description="parcelle id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/parcelles") + * ) + * ) + */ + + /** + * get informations about Parcelle + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['parcelle'], 'id_par'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Parcelles.class.inc b/src/module_cadastre/web_service/ws/Parcelles.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..797ab424f7961dc302d6dc4157206081124fd67b --- /dev/null +++ b/src/module_cadastre/web_service/ws/Parcelles.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file Parcelles.class.inc + * \class Parcelles + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Parcelles php class + * + * This class defines Rest Api to Vmap Parcelles + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Parcelle.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Parcelles extends Cadastre { + /** + * @SWG\Definition( + * definition="/parcelles", + * allOf={ + * @SWG\Schema(ref="#/definitions/parcelles") + * } + * ) + * * @SWG\Tag( + * name="parcelles", + * description="Operations about parcelles" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("id_com", "id_sec", "code_com", "commune", "parcelle", "section", "pre", "coar", "codm", "indp", "idu", "id_par", "sup_fiscale", "numero", "feuille", "geom"); + } + + /** + * @SWG\Get(path="/parcelles", + * tags={"Parcelle"}, + * summary="Get Parcelles", + * description="Request to get Parcelles", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/parcelles") + * ) + * ) + */ + + /** + * get Parcelles + * @return Parcelles + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['parcelle'], 'id_par'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Proprietaire.class.inc b/src/module_cadastre/web_service/ws/Proprietaire.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..6c52fdf26682f9ea4b118b9c2b972a93c850342a --- /dev/null +++ b/src/module_cadastre/web_service/ws/Proprietaire.class.inc @@ -0,0 +1,33 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Proprietaire.class.inc + * \class Proprietaire + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Proprietaire php class + * + * This class defines operation for one Proprietaire + * + */ +class Proprietaire extends Cadastre { + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Proprietaires.class.inc b/src/module_cadastre/web_service/ws/Proprietaires.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..ebf25726bae7ba7c3373b5a7db3a7bd2cd44897f --- /dev/null +++ b/src/module_cadastre/web_service/ws/Proprietaires.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file Proprietaires.class.inc + * \class Proprietaires + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Proprietaires php class + * + * This class defines Rest Api to Vmap Proprietaires + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Proprietaire.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Proprietaires extends Cadastre { + /** + * @SWG\Definition( + * definition="/proprietaires", + * allOf={ + * @SWG\Schema(ref="#/definitions/proprietaires") + * } + * ) + * * @SWG\Tag( + * name="proprietaires", + * description="Operations about proprietaires" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array('oid', 'ID_COM', 'DDENOM', 'DNUPRO', 'COMMUNE'); + } + + /** + * @SWG\Get(path="/proprietaires", + * tags={"Proprietaire"}, + * summary="Get Proprietaires", + * description="Request to get Proprietaires", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/proprietaires") + * ) + * ) + */ + + /** + * get Proprietaires + * @return Proprietaires + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['proprietaire'], 'oid'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/RapportsCadastreParcelle.class.inc b/src/module_cadastre/web_service/ws/RapportsCadastreParcelle.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..b50102dfc207d2f15d82e3037804607fc5a9b384 --- /dev/null +++ b/src/module_cadastre/web_service/ws/RapportsCadastreParcelle.class.inc @@ -0,0 +1,283 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../vitis/Vitis.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +/** + * \file rapportscadastreparcelle.class.inc + * \class RapportsCadastreParcelle + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the RapportsCadastreParcelle php class + * + * This class defines the rest api for rapportscadastreparcelle + * + */ +class RapportsCadastreParcelle extends Cadastre { + /** + * @SWG\Definition( + * definition="/rapportscadastreparcelle", + * allOf={ + * @SWG\Schema(ref="#/definitions/rapportscadastreparcelle") + * } + * ) + * * @SWG\Tag( + * name="rapportscadastreparcelle", + * description="Operations about rapportscadastreparcelle" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * @SWG\Get(path="/rapportscadastreparcelle", + * tags={"RapportsCadastreParcelle"}, + * summary="Create the releve de propriete sheet", + * description="Request to get the element", + * operationId="GET", + * produces={"application/json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="parcelles", + * in="query", + * description="id_par des parcelles (ex: 340039000AI0166|340332000AC0005)", + * required=true, + * default="", + * type="string" + * ), + * @SWG\Parameter( + * name="rapport_type", + * in="query", + * description="type de rapport: ToutesInfos, BatieNonBatie, Proprietaire, SubdivisionFiscale, EmprisePosPlu, Locaux, ProprietaireLocaux", + * required=true, + * default="", + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="RapportsCadastreParcelle Response", + * @SWG\Schema(ref="#/definitions/rapportscadastreparcelle") + * ) + * ) + */ + function GET() { + + if (!in_array('vmap_cadastre_user', $this->oConnection->aPrivileges)) { + $oError = new VitisError(0, 'INSUFFICIENT_PRIVILEGES'); + $aXmlRacineAttribute['status'] = 0; + $sMessage = $oError->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + return $sMessage; + } + + /** + * Tableau contenant les id_par des parcelles à utiliser + * @type array + */ + $aParcelles = explode("|", $this->aValues["parcelles"]); + + /** + * Type de rapport + * @type string + */ + $rapportType = $this->aValues['rapport_type']; + + /** + * Objet BD + * @type object + */ + $oBD = new BD($this->aProperties["cadastre"]["rp"]["login"], $this->aProperties["cadastre"]["rp"]["pass"], $this->aProperties["database"], $this->aProperties["server"], $this->aProperties["port"], $this->aProperties["sgbd"], $this->aProperties["page_encoding"]); + $this->oConnection->oBd = $oBD; + /** + * Properties + * @type array + */ + $properties = $this->aProperties; + + /** + * Returned array + * @type array + */ + $aReturn = Array(); + + + // Mémorise la date de début + $iDebutPdf = (date("G") * 60) * 60 + (date("i") * 60) + date("s"); + $DebutPdf = date("G") . 'h ' . date("i") . 'min ' . date("s") . 's'; + + // Connexion avec uVitis pour récupérer les données majic + + $oBD = new BD($properties["cadastre"]["rp"]["login"], $properties["cadastre"]["rp"]["pass"], $properties["database"], $properties["server"], $properties["port"], $properties["sgbd"], $properties["page_encoding"]); + $this->oConnection->oBd = $oBD; + + // Récupère l'année + $sYear = $this->vmapGet('majic', '"ANNEE_REFERENCE"', array('ANNEE'), '', array('limit' => 1))[0]['ANNEE']; + + // Patch pour décoder les properties UTF-8 parce que les rapports sont générés en ISO + if (is_array($properties["cadastre"]["fiche_urb"]["intersect"]["views"])) { + $properties["cadastre"]["fiche_urb"]["intersect"]["views"] = $this->decodeUtf8Array($properties["cadastre"]["fiche_urb"]["intersect"]["views"]); + } + + // Charge les données + if ($rapportType != 'Locaux' && $rapportType != 'ProprietaireLocaux') { + require_once(__DIR__ . "/../../class/majic_libV2/Mj_Compte_Communal_Parcelles.class.inc"); + $oRapport = new Mj_Compte_Communal_Parcelles($aParcelles, $oBd, $properties, "polygon"); + } else { + require_once(__DIR__ . "/../../class/majic_libV2/Mj_Bati_Parcelles.class.inc"); + $oRapport = new Mj_Bati_Parcelles($aParcelles, $oBd, $properties); + } + + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"])) { + mkdir($properties["cadastre"]["rp"]["rp_dir"]); + } + // Crée les dossiers correspondants + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear)) + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear); + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType)) + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType); + + + // Crée les XML + if ($oRapport->isError()) { + http_response_code(500); + writeToErrorLog('Erreur lors de l\'extraction des données avec la librairie majic : ' . $oRapport->sMessage); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du rapport."; + return json_encode($aReturn); + } else { + // Création du fichier XML. + $sFile = ""; + foreach ($aParcelles as $parcelle) { + $sFile .= $parcelle; + } + if (count($aParcelles) > 2) { + $sFile = UniqFileName(); + } + + $sXmlFileName = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType . "/" . $sFile . ".xml"; + + if ($rapportType === 'ToutesInfos') + $sXslFileName = __DIR__ . "/../../class/majic_lib/xsl/Mj_Rapport.xsl"; + else + $sXslFileName = __DIR__ . "/../../class/majic_lib/xsl/Mj_Rapport_Parcelle_" . $rapportType . ".xsl"; + + if (!file_exists($sXmlFileName)) { + $oRapport->asXMLFile("", $sXmlFileName, "Rapport_Parcelle", "UTF-8", "ISO-8859-1"); + } + } + + + // Crée les PDF et XSL + if ($rapportType === 'ToutesInfos') { + + // Chemin vers le fichier + $filePath = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType . "/" . $sFile . ".pdf"; + + if (!file_exists($filePath)) { + + // Pour faire du pdf + $sPdfFileName = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType . "/" . $sFile . ".pdf"; + + // Création du fichier PDF. + $sCommandLine = $properties["fop_root_dir"] . "/fop -xsl " . $sXslFileName . " -xml " . $sXmlFileName . " -pdf " . $sPdfFileName; + + exec($sCommandLine, $aCommand, $iResult); + + if ($iResult) { + http_response_code(500); + $aReturn['error']['errorMessage'] .= "Erreur lors de la génération du rapport."; + writeToErrorLog("Erreur lors de la génération d'un rapport au format PDF."); + writeToErrorLog("Ligne de commande : " . $sCommandLine); + } + } + + $downloadFilePath = $properties['web_server_name'] . '/' . $properties['services_alias'] . '/cadastre/downloadrapport?sYear=' . $sYear . '&sType=Rapport_Parcelle_' . $rapportType . '&sFileName=' . urlencode($sFile) . '.pdf'; + } else { + + // Pour faire de l'excel + $sFileName = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType . "/transform.xml"; + + // Chemin vers le fichier + $filePath = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType . "/" . $sFile . ".xls"; + + if (!file_exists($filePath)) { + $doc = new DOMDocument(); + $xsl = new XSLTProcessor(); + if (file_exists($sXslFileName)) { + $doc->load($sXslFileName); + $xsl->importStyleSheet($doc); + $doc->load($sXmlFileName); + $oHandle = fopen($sFileName, 'w'); + if ($oHandle == false) { + http_response_code(500); + $aReturn['error']['errorMessage'] .= "Impossible de créer le fichier " . $sFileName . ". Impossible de générer le rapport."; + } else { + fwrite($oHandle, $xsl->transformToXML($doc)); + fclose($oHandle); + $sRapportCree = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/Rapport_Parcelle_" . $rapportType . "/" . $sFile . ".xls"; + // copie du fichier pour créer le fichier excel + if (!copy($sFileName, $sRapportCree)) { + http_response_code(500); + $aReturn['error']['errorMessage'] .= "La copie du fichier '" . $sFileName . "' vers '" . $sRapportCree . "' n'a pas réussi. Impossible de générer le rapport."; + } + } + } else { + writeToErrorLog("Le fichier " . $sXslFileName . " n'existe pas."); + } + } else { + $aReturn['data']['alreadyExists'] = true; + } + + $downloadFilePath = $properties['web_server_name'] . '/' . $properties['services_alias'] . '/cadastre/downloadrapport?sYear=' . $sYear . '&sType=Rapport_Parcelle_' . $rapportType . '&sFileName=' . urlencode($sFile) . '.xls'; + } + + $iFinPdf = (date("G") * 60) * 60 + (date("i") * 60) + date("s"); + $FinPdf = date("G") . 'h ' . date("i") . 'min ' . date("s") . 's'; + + $aReturn['data']['rapport'] = $downloadFilePath; + $aReturn['data']['format'] = pathinfo($filePath, PATHINFO_EXTENSION); + $aReturn['data']['debut'] = $DebutPdf; + $aReturn['data']['fin'] = $FinPdf; + $aReturn['data']['temps'] = $iFinPdf - $iDebutPdf . 's'; + + return json_encode($aReturn); + } + + /** + * Fonction permettant de décoder un tableau multidimensionnel UTF8 en ISO. + * /param $s Tableau à décoder. + */ + function decodeUtf8Array($s) { + if (is_array($s)) { + $result = array(); + foreach ($s as $id => $value) { + if (is_array($value)) + $result[$id] = $this->decodeUtf8Array($value); + else + $result[$id] = utf8_decode($value); + } + return $result; + } else + return $s; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/ReleveDePropriete.class.inc b/src/module_cadastre/web_service/ws/ReleveDePropriete.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..667891e9984217dca6937669473282e44cc1f8ea --- /dev/null +++ b/src/module_cadastre/web_service/ws/ReleveDePropriete.class.inc @@ -0,0 +1,259 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../vitis/Vitis.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +/** + * \file relevedepropriete.class.inc + * \class ReleveDePropriete + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the ReleveDePropriete php class + * + * This class defines the rest api for relevedepropriete + * + */ +class ReleveDePropriete extends Cadastre { + /** + * @SWG\Definition( + * definition="/relevedepropriete", + * allOf={ + * @SWG\Schema(ref="#/definitions/relevedepropriete") + * } + * ) + * * @SWG\Tag( + * name="relevedepropriete", + * description="Operations about relevedepropriete" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + } + + /** + * @SWG\Get(path="/relevedepropriete", + * tags={"ReleveDePropriete"}, + * summary="Create the releve de propriete sheet", + * description="Request to get the element", + * operationId="GET", + * produces={"application/json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="type", + * in="query", + * description="standard / tiers / parcelle", + * required=true, + * default="parcelle", + * type="string" + * ), + * @SWG\Parameter( + * name="IDDNUPRO", + * in="query", + * description="concaténation entre ID_COM et DNUPRO", + * required=false, + * default="L00048", + * type="string" + * ), + * @SWG\Parameter( + * name="ID_PAR", + * in="query", + * description="ID_PAR", + * required=false, + * default="340039000AI0166", + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="ReleveDePropriete Response", + * @SWG\Schema(ref="#/definitions/relevedepropriete") + * ) + * ) + */ + function GET() { + + if (!in_array('vmap_cadastre_user', $this->oConnection->aPrivileges)) { + $oError = new VitisError(0, 'INSUFFICIENT_PRIVILEGES'); + $aXmlRacineAttribute['status'] = 0; + $sMessage = $oError->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']); + return $sMessage; + } + + $ID_PAR = $this->aValues['ID_PAR']; + $IDDNUPRO = $this->aValues['IDDNUPRO']; + $sType = $this->aValues['type']; + $properties = $this->aProperties; + $aReturn = Array(); + + // Vérifie que l'utilisateur a les droits sur la commune + $communeRights = false; + if ($ID_PAR != '') + $communeRights = $this->haveCommuneRights(substr($ID_PAR, 0, 6)); + if ($IDDNUPRO != '') + $communeRights = $this->haveCommuneRights(substr($IDDNUPRO, 0, 6)); + + // Vérifie les droits sur la commune + if ($communeRights == false) { + http_response_code(403); + writeToErrorLog("L'utilisateur n'a pas les droits sur la commune"); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } + + // Vérifie la validité des informations passées en properties + if (!is_dir($properties["fop_root_dir"])) { + http_response_code(500); + writeToErrorLog("Dossier fop introuvable: " . $properties["fop_root_dir"]); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } + if (!is_dir(__DIR__ . '/../../class/majic_lib')) { + http_response_code(500); + writeToErrorLog("Dossier majic_lib introuvable"); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } + + $oBD = new BD($properties["cadastre"]["rp"]["login"], $properties["cadastre"]["rp"]["pass"], $properties["database"], $properties["server"], $properties["port"], $properties["sgbd"], $properties["page_encoding"]); + $this->oConnection->oBd = $oBD; + + // Récupère l'année + $sYear = $this->vmapGet('majic', '"ANNEE_REFERENCE"', array('ANNEE'), '', array('limit' => 1))[0]['ANNEE']; + + if (strlen($sYear) < 1) { + http_response_code(500); + writeToErrorLog("Impossible de récupérer l'année de référence dans le schema Majic"); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } + + // Récupère le chemin du fichier + switch ($sType) { + case "tiers" : + case "standard" : + $fileName = $IDDNUPRO; + break; + + case "parcelle" : + $fileName = $ID_PAR; + break; + } + + $filePath = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . '/' . $sType . '/' . $fileName . ".pdf"; + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"])) + @mkdir($properties["cadastre"]["rp"]["rp_dir"]); + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear)) + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear); + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . '/' . $sType)) + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . '/' . $sType); + + + if (file_exists($filePath)) { + $aReturn['data']['releveDePropriete'] = $properties['web_server_name'] . '/' . $properties['services_alias'] . '/cadastre/downloadrapport?sYear=' . $sYear . '&sType=' . $sType . '&sFileName=' . urlencode($fileName) . '.pdf'; + $aReturn['data']['alreadyExists'] = true; + } else { + if (!file_exists($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear)) { + if (@mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear)) { + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/standard"); + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/tiers"); + @mkdir($properties["cadastre"]["rp"]["rp_dir"] . "/" . $sYear . "/parcelle"); + } else { + http_response_code(500); + writeToErrorLog("Erreur lors de la création des répertoires de l'année courante pour les relevés de propriété."); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } + } + + // Création d'un nouvel objet Relevé de Propriété + switch ($sType) { + case "tiers" : + case "standard" : + require_once __DIR__ . '/../../class/majic_lib/Mj_Compte_Communal.class.inc'; + $oRP = new Mj_Compte_Communal($IDDNUPRO, $oBD); + if ($oRP->isError()) { + http_response_code(500); + writeToErrorLog("Erreur lors de l'extraction des données Majic."); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } else { + if ($sType === "tiers") { + $sDir = $sYear . "/tiers/"; + } else { + $sDir = $sYear . "/standard/"; + } + $sFile = str_replace("*", "~", $IDDNUPRO); + } + break; + + case "parcelle" : + require_once __DIR__ . '/../../class/majic_lib/Mj_Compte_Communal_Parcelle.class.inc'; + $oRP = new Mj_Compte_Communal_Parcelle("", $ID_PAR, $oBD); + if ($oRP->isError()) { + http_response_code(500); + writeToErrorLog("Erreur lors de l'extraction des données Majic."); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } else { + $sDir = $sYear . "/parcelle/"; + $sFile = str_replace("*", "~", $ID_PAR); + } + break; + } + if (!$bError) { + $sXMLFile = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sDir . $sFile . ".xml"; + if ($sType === "tiers") { + $sXSLFile = __DIR__ . '/../../class/majic_lib/xsl/Mj_fo_tiers.xsl'; + } else { + $sXSLFile = __DIR__ . '/../../class/majic_lib/xsl/Mj_fo.xsl'; + } + $sPDFFile = $properties["cadastre"]["rp"]["rp_dir"] . "/" . $sDir . $sFile . ".pdf"; + + if (!file_exists($sPDFFile)) { + $oRP->asXMLFile("", $sXMLFile, "Mj"); + } + + $sCommand = $properties["fop_root_dir"] . "/fop -xml " . $sXMLFile . " -xsl " . $sXSLFile . " -pdf " . $sPDFFile; + + exec($sCommand, $aCommand, $iResult); + + if (!$iResult) { + $aReturn['data']['releveDePropriete'] = $properties['web_server_name'] . '/' . $properties['services_alias'] . '/cadastre/downloadrapport?sYear=' . $sYear . '&sType=' . $sType . '&sFileName=' . urlencode($sFile) . '.pdf'; + } else { + writeToErrorLog("Erreur lors de la génération du fichier PDF de relevé de propriété :"); + writeToErrorLog("Ligne de commande : " . $sCommand); + writeToErrorLog("Message d'erreur : "); + foreach ($aCommand as $sValeur) { + writeToErrorLog($sValeur); + } + http_response_code(500); + writeToErrorLog("Erreur lors de la génération du fichier PDF de relevé de propriété."); + $aReturn['error']['errorMessage'] = "Erreur lors de la génération du fichier PDF de relevé de propriété."; + return json_encode($aReturn); + } + } + } + + return json_encode($aReturn); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Section.class.inc b/src/module_cadastre/web_service/ws/Section.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..403db32906ee226299e5e1066f853f75ee8cf8c3 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Section.class.inc @@ -0,0 +1,75 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Section.class.inc + * \class Section + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Section php class + * + * This class defines operation for one Section + * + */ +class Section extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("id_com", "id_sec", "code_com", "commune", "section", "pre", "idu", "tex", "texte", "geom"); + } + + /** + * @SWG\Get(path="/sections/{id_sec}", + * tags={"Section"}, + * summary="Get Section", + * description="Request to get Section by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="id_sec", + * in="path", + * description="section id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/sections") + * ) + * ) + */ + + /** + * get informations about Section + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['section'], 'id_sec'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Sections.class.inc b/src/module_cadastre/web_service/ws/Sections.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..be0c3b5ce521ec68435e04d2c5a1bea644607fc5 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Sections.class.inc @@ -0,0 +1,132 @@ +<?php + +/** + * \file Sections.class.inc + * \class Sections + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Sections php class + * + * This class defines Rest Api to Vmap Sections + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Section.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Sections extends Cadastre { + /** + * @SWG\Definition( + * definition="/sections", + * allOf={ + * @SWG\Schema(ref="#/definitions/sections") + * } + * ) + * * @SWG\Tag( + * name="sections", + * description="Operations about sections" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array("id_com", "id_sec", "code_com", "commune", "replace(pre, '000', '')||replace(section, '0', '') as section", "pre", "idu", "tex", "texte", "geom"); + } + + //(pre, '000', '')||replace(section, '0', '') as section + /** + * @SWG\Get(path="/sections", + * tags={"Section"}, + * summary="Get Sections", + * description="Request to get Sections", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/sections") + * ) + * ) + */ + + /** + * get Sections + * @return Sections + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['section'], 'id_sec'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Versions.class.inc b/src/module_cadastre/web_service/ws/Versions.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..590e00622dbb1c95900d983006e4fd74a2df5b15 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Versions.class.inc @@ -0,0 +1,77 @@ +<?php + +require_once 'Cadastre.class.inc'; +/** +* \file Versions.class.inc +* \class Versions +* +* \author Yoann Perollet <yoann.perollet@veremes.com>. +* +* \brief This file contains the Versions php class +* +* This class defines the rest api for versions +* +*/ +class Versions extends Vmap{ + + /** + * @SWG\Definition( + * definition="/Versions", + * allOf={ + * @SWG\Schema(ref="#/definitions/Versions") + * } + * ) + * @SWG\Tag( + * name="Versions", + * description="Operations about versions" + * ) + */ + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $versions ptroperties + */ + function __construct($aPath, $aValues, $properties){ + $this->aValues = $aValues; + $this->aPath = $aPath; + $this->aProperties = $properties; + } + + /** + * @SWG\Get(path="/Versions", + * tags={"Versions"}, + * summary="Get versions", + * description="Request to get versions", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/Versions") + * ) + * ) + */ + /** + * + * @return versions + */ + function GET(){ + $this->getVersion("cadastre"); + //$this->aFields = $this->aVersions; + + // + $aXmlRacineAttribute['status']=1; + $sMessage = $this->asDocument('','vitis',$this->aValues['sEncoding'],True,$aXmlRacineAttribute,$this->aValues['sSourceEncoding'],$this->aValues['output']); + return $sMessage; + } +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Voie.class.inc b/src/module_cadastre/web_service/ws/Voie.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..74d96ba2d0ec5bf5a9b65a05cbdccfbc1dfc0563 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Voie.class.inc @@ -0,0 +1,74 @@ +<?php + +require_once 'Cadastre.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; + +/** + * \file Voie.class.inc + * \class Voie + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Voie php class + * + * This class defines operation for one Voie + * + */ +class Voie extends Cadastre { + + public $oError; + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array('LIBCOM', 'ID_COM', 'ID_RIVOLI', 'CCODEP', 'CCODIR', 'CCOCOM', 'RIVOLI', 'CLERIVOLI', 'LIBVOIE', 'TYPCOM', 'RUR', 'CARVOIE', 'ANNULATION', 'DATEANNUL', 'DATECREA', 'MAJIC2', 'TYPEVOIE', 'INDIC', 'MOTCLASS', 'CODE_INSEE', 'NATURE', 'L_NATURE_VOIE'); + } + + /** + * @SWG\Get(path="/voies/{ID_RIVOLI}", + * tags={"Voie"}, + * summary="Get Voie", + * description="Request to get Voie by id", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="ID_RIVOLI", + * in="path", + * description="voie id", + * required=true, + * type="integer", + * format="int32" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/voies") + * ) + * ) + */ + + /** + * get informations about Voie + */ + function GET() { + require __DIR__ . "/../vitis/" . $this->sRessourcesFile; + $this->aFields = $this->getFields('public', $this->aProperties['cadastre']['views']['voie'], 'ID_RIVOLI'); + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/Voies.class.inc b/src/module_cadastre/web_service/ws/Voies.class.inc new file mode 100755 index 0000000000000000000000000000000000000000..e9f61e93ba32519bc80146cdb82a1c3495512977 --- /dev/null +++ b/src/module_cadastre/web_service/ws/Voies.class.inc @@ -0,0 +1,131 @@ +<?php + +/** + * \file Voies.class.inc + * \class Voies + * + * \author Armand Bahi <armand.bahi@veremes.com>. + * + * \brief This file contains the Voies php class + * + * This class defines Rest Api to Vmap Voies + * + */ +require_once 'Cadastre.class.inc'; +require_once 'Voie.class.inc'; +require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc'; +require_once __DIR__ . '/../../class/vmlib/BdDataAccess.inc'; + +class Voies extends Cadastre { + /** + * @SWG\Definition( + * definition="/voies", + * allOf={ + * @SWG\Schema(ref="#/definitions/voies") + * } + * ) + * * @SWG\Tag( + * name="voies", + * description="Operations about voies" + * ) + */ + + /** + * construct + * @param type $aPath url of the request + * @param type $aValues parameters of the request + * @param type $properties properties + * @param type $bShortcut false to reinit variables + * @param type $oConnection connection object + */ + function __construct($aPath, $aValues, $properties, $bShortcut = false, $oConnection = false) { + parent::__construct($aPath, $aValues, $properties, $bShortcut, $oConnection); + $this->aSelectedFields = Array('ID_RIVOLI', 'L_NATURE_VOIE', 'DVOILIB'); + } + + /** + * @SWG\Get(path="/voies", + * tags={"Voie"}, + * summary="Get Voies", + * description="Request to get Voies", + * operationId="GET", + * produces={"application/xml", "application/json", "application/x-vm-json"}, + * @SWG\Parameter( + * name="token", + * in="query", + * description="user token", + * required=true, + * type="string" + * ), + * @SWG\Parameter( + * name="order_by", + * in="query", + * description="list of ordering fields", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="sort_order", + * in="query", + * description="sort order", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="limit", + * in="query", + * description="number of element", + * required=false, + * type="integer", + * default="4", + * format="int32" + * ), + * @SWG\Parameter( + * name="offset", + * in="query", + * description="index of first element", + * required=false, + * type="string", + * format="int32" + * ), + * @SWG\Parameter( + * name="attributs", + * in="query", + * description="list of attributs", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="filter", + * in="query", + * description="filter results", + * required=false, + * type="string" + * ), + * @SWG\Parameter( + * name="distinct", + * in="query", + * description="delete duplicates", + * required=false, + * type="boolean" + * ), + * @SWG\Response( + * response=200, + * description="Poprerties Response", + * @SWG\Schema(ref="#/definitions/voies") + * ) + * ) + */ + + /** + * get Voies + * @return Voies + */ + function GET() { + $aReturn = $this->genericGet('public', $this->aProperties['cadastre']['views']['voie'], 'ID_RIVOLI'); + return $aReturn['sMessage']; + } + +} + +?> \ No newline at end of file diff --git a/src/module_cadastre/web_service/ws/overview.phtml b/src/module_cadastre/web_service/ws/overview.phtml new file mode 100755 index 0000000000000000000000000000000000000000..6e2671fd6c08fdba779ea28e8fdc96dc0a7f35c0 --- /dev/null +++ b/src/module_cadastre/web_service/ws/overview.phtml @@ -0,0 +1,24 @@ +<?php +/** + * @SWG\Swagger( + * basePath="/[service_alias]/cadastre", + * host="[server]", + * schemes={"[protocol]"}, + * produces={ + * "application/json", + "application/xml", + "text/html" + * }, + * @SWG\Info( + * version="1.0.0", + * title="Cadastre Test Rest", + * description="All features to access server operation for cadastre", + * ) + * ) + */ +?> + +<h1 class="titleOverview">Service Cadastre</h1> +<p> + <a class="linkOverview" href="javascript:sService='cadastre';LoadApi()">Cadastre</a>: this is the most comprehensive service which should be used as a preference when developing applications communicating with Cadastre. Those services allow you to administrate Cadastre applications. +</p> \ No newline at end of file