source: trunk/info/info/alkis/alkisbaurecht.php @ 287

Revision 287, 7.2 KB checked in by frank.jaeger, 7 years ago (diff)

ALKIS-Auskunft "Bodenrecht", Link dazu im Flurstücksnachweis.

Line 
1<?php
2/*      alkisbaurecht.php - Baurecht
3        ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
4
5        Version:
6        2013-06-27      Neu als Variante von alkis*inlay*baurecht.ph (mit Footer, Balken und Umschaltung Key)
7*/
8session_start();
9$cntget = extract($_GET);
10require_once("alkis_conf_location.php");
11if ($auth == "mapbender") {require_once($mapbender);}
12include("alkisfkt.php"); // f. Footer
13if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}
14$keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
15if ($keys == "j") {$showkey=true;} else {$showkey=false;}
16
17?>
18<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
19<html>
20<head>
21        <meta name="author" content="b600352" >
22        <meta http-equiv="cache-control" content="no-cache">
23        <meta http-equiv="pragma" content="no-cache">
24        <meta http-equiv="expires" content="0">
25        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
26        <title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title>
27        <link rel="stylesheet" type="text/css" href="alkisauszug.css">
28        <link rel="shortcut icon" type="image/x-icon" href="ico/Gericht.ico">
29        <script type="text/javascript">
30        function imFenster(dieURL) {
31                var link = encodeURI(dieURL);
32                window.open(link,'','left=10,top=10,width=680,height=800,resizable=yes,menubar=no,toolbar=no,location=no,status=no,scrollbars=yes');
33        }
34        </script>
35</head>
36<body>
37
38<?php
39$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
40if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
41
42// wie View "baurecht"
43$sql ="SELECT r.ogc_fid, r.artderfestlegung as adfkey, r.name, r.stelle, r.bezeichnung AS rechtbez, ";
44$sql.="a.bezeichner AS adfbez, d.bezeichnung AS stellbez, d.stellenart, ";
45$sql.="round(st_area(r.wkb_geometry)::numeric,0) AS flae ";
46$sql.="FROM ax_bauraumoderbodenordnungsrecht r ";
47$sql.="LEFT JOIN ax_bauraumoderbodenordnungsrecht_artderfestlegung a ON r.artderfestlegung = a.wert ";
48$sql.="LEFT JOIN ax_dienststelle d ON r.land = d.land AND r.stelle = d.stelle ";
49$sql.="WHERE r.gml_id= $1 ;";
50
51$v = array($gmlid);
52$res = pg_prepare("", $sql);
53$res = pg_execute("", $v);
54
55if (!$res) {
56        echo "\n<p class='err'>Fehler bei Baurecht.</p>\n";
57        if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}
58}
59
60if ($row = pg_fetch_array($res)) {
61        $artfest=$row["adfkey"];  // Art der Festlegung, Key
62        $verfnr=$row["rechtbez"]; // Verfahrens-Nummer
63
64        // Balken
65        echo "<p class='recht'>ALKIS Bau-, Raum- oder Bodenordnungsrecht ".$artfest."-".$verfnr."&nbsp;</p>\n";
66
67        echo "\n<h2><img src='ico/Gericht.ico' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>\n";
68
69        echo "\n<table>";
70
71                echo "\n<tr>";
72                        echo "\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>";
73                        if ($showkey) {
74                                echo "<span class='key'>(".$artfest.")</span> ";
75                        }
76                        echo "<span class='wichtig'>".$row["adfbez"]."</span></td>";
77                echo "\n</tr>";
78
79                $enam=$row["name"];
80                if ($enam != "") {
81                        echo "\n<tr>";
82                                echo "\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>";
83                        echo "\n</tr>";
84                }
85
86                echo "\n<tr>";
87                        echo "\n\t<td class='li'>Verfahrensnummer:</td>";
88                        echo "\n\t<td>".$verfnr."</td>";
89                        // if ($idanzeige) {linkgml($gkz, $gmlid, "Verfahren"); } // KEINE Bez.!
90                echo "\n</tr>";
91
92                $stellk=$row["stelle"]; // LEFT JOIN !
93                $stellb=$row["stellbez"];
94                $stella=$row["stellenart"];
95                if ($stellb != "") { // z.B. Umlegung mit und Baulast ohne Dienststelle
96                        echo "\n<tr>";
97                                echo "\n\t<td class='li'>Dienststelle:</td>\n\t<td>";
98                                        if ($showkey) {echo "<span class='key'>(".$stellk.")</span> ";}
99                                        echo $stellb;
100                                echo "</td>";
101                        echo "\n</tr>";
102                        if ($stella != "") {
103                                echo "\n<tr>";
104                                        echo "\n\t<td class='li'>Art der Dienststelle:</td>";
105                                        echo "\n\t<td>";
106                                                if ($showkey) {echo " <span class='key'>(".$stella.")</span>";}
107                                                // d.stellenart -- weiter entschluesseln 1000, 1200, 1300
108                                                // Dazu SchlÃŒsseltabelle aus GeoInfoDok erfassen
109                                                echo "&nbsp;"; // Platzhalter
110                                        echo "</td>";
111                                echo "\n</tr>";
112                        }
113                }
114
115                echo "\n<tr>";
116                        echo "\n\t<td class='li'>Fl&auml;che:</td>";
117                        $flae=number_format($row["flae"],0,",",".")." m&#178;";
118                        echo "\n\t<td>".$flae."</td>";
119                echo "\n</tr>";
120
121        echo "\n</table>";
122} else {
123        echo "\n<p class='err'>Fehler! Kein Treffer bei gml_id=".$gmlid."</p>";
124}
125
126echo "\n<h2><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> betroffene Flurst&uuml;cke</h2>\n";
127echo "\n<p>Ermittelt durch geometrische Verschneidung. Nach Gr&ouml;&szlig;e absteigend.</p>";
128
129$sql ="SELECT f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, ";
130$sql.="round(st_area(ST_Intersection(r.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae ";
131$sql.="FROM ax_flurstueck f, ax_bauraumoderbodenordnungsrecht r  ";
132$sql.="WHERE r.gml_id= $1 ";
133$sql.="AND st_intersects(r.wkb_geometry,f.wkb_geometry) = true ";
134$sql.="AND st_area(st_intersection(r.wkb_geometry,f.wkb_geometry)) > 0.05 ";  // > 0.0 ist gemeint, Ungenauigkeit durch st_simplify
135$sql.="ORDER BY schnittflae DESC ";
136$sql.="LIMIT 40;"; // Limit: Flurbereinig. kann gross werden!
137// Trotz Limit lange Antwortzeit, wegen OrderBy -> intersection
138$v = array($gmlid);
139$res = pg_prepare("", $sql);
140$res = pg_execute("", $v);
141
142if (!$res) {
143        echo "\n<p class='err'>Keine Flurst&uuml;cke ermittelt.<br>\nSQL=<br></p>\n";
144        if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}
145}
146
147echo "\n<table class='fs'>";
148        echo "\n<tr>"; // Header
149                echo "\n\t<td class='head' title='Flur- und Flurst&uuml;cksnummer'>Flurst&uuml;ck</td>";
150                echo "\n\t<td class='head fla' title='geometrische Schnittfl&auml;che'>Fl&auml;che</td>";
151                echo "\n\t<td class='head fla' title='amtliche Flurst&uuml;cksfl&auml;che, Buchfl&auml;che'>von</td>";
152                echo "\n\t<td class='head nwlink' title='Link zum Flurst&uuml;ck'>weitere Auskunft</td>";
153        echo "\n</tr>";
154
155        $fscnt=0;
156        while($row = pg_fetch_array($res)) {
157                $fscnt++;
158                echo "\n<tr>";
159                        echo "\n\t<td>".$row["flurnummer"]."-<span class='wichtig'>".$row["zaehler"];
160                        $nen=$row["nenner"];
161                        if ($nen != "") {
162                                echo "/".$nen;
163                        }
164                        echo "</span></td>";
165                        echo "\n\t<td class='fla'>".$row["schnittflae"]." m&#178;</td>";
166                        echo "\n\t<td class='fla'>".$row["amtlicheflaeche"]." m&#178;</td>";
167                        echo "\n\t<td class='nwlink noprint'>";
168                                echo "\n\t\t<a href='javascript:imFenster(\"alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$row["gml_id"]."&amp;eig=n\")' " ;                                         echo "title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck ";
169                                        echo "\n\t\t\t<img src='ico/Flurstueck_Link.ico' width='16' height='16' alt=''>";
170                                echo "\n\t\t</a>";
171                        echo "\n\t</td>";
172                echo "\n</tr>";
173        }
174echo "\n</table>";
175
176if ($fscnt == 40) {
177        echo "<p>... und weitere Flurst&uuml;cke (Limit 40 erreicht).</p>";
178}
179
180pg_close($con);
181echo <<<END
182
183<form action=''>
184        <div class='buttonbereich noprint'>
185        <hr>
186                <a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.ico" width="16" height="16" alt="zur&uuml;ck" /></a>&nbsp;
187                <a title="Drucken" href='javascript:window.print()'><img src="ico/print.ico" width="16" height="16" alt="Drucken" /></a>&nbsp;
188        </div>
189</form>
190END;
191
192footer($gmlid, $_SERVER['PHP_SELF']."?", "");
193
194?>
195
196</body>
197</html>
Note: See TracBrowser for help on using the repository browser.