Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

pand correct

  • Loading branch information...
commit 38d9bfa04a45da389fb8a8bcf5daf2444c272b0b 1 parent 4326157
@milovanderlinden authored
View
12 src/bagfilereader.py
@@ -163,6 +163,10 @@ def processXML(self, naam, xml):
def processDOM(self, node):
self.config.logger.debug("bagfilereader.processDOM(naam, xml)")
+
+ from objecten.ligplaats import Ligplaats
+ from objecten.standplaats import Standplaats
+ from objecten.pand import Pand
self.ligplaatsen = []
self.verblijfsobjecten = []
self.openbareRuimten = []
@@ -191,7 +195,6 @@ def processDOM(self, node):
if productnode.localName == 'LVC-product':
for node in productnode.childNodes:
if node.localName == 'Ligplaats':
- from objecten.ligplaats import Ligplaats
_obj = Ligplaats(node, self.config)
self.ligplaatsen.append(_obj)
#self.config.logger.debug(_obj)
@@ -204,11 +207,11 @@ def processDOM(self, node):
elif node.localName == 'Nummeraanduiding':
_obj = Nummeraanduiding()
elif node.localName == 'Standplaats':
- from objecten.standplaats import Standplaats
_obj = Standplaats(node,self.config)
self.standplaatsen.append(_obj)
elif node.localName == 'Pand':
- _obj = Pand()
+ _obj = Pand(node, self.config)
+ self.panden.append(_obj)
mydb = self.config.get_database()
mydb.verbind()
@@ -221,6 +224,9 @@ def processDOM(self, node):
standplaats.insert()
mydb.uitvoeren(standplaats.sql, standplaats.valuelist)
+ for pand in self.panden:
+ pand.insert()
+ mydb.uitvoeren(pand.sql, pand.valuelist)
elif node.localName == 'BAG-Mutaties-Deelbestand-LVC':
mode = 'Mutatie'
View
60 src/objecten/pand.py
@@ -1,45 +1,46 @@
-class Pand():
+from objecten.tijdvakgeldigheid import Tijdvakgeldigheid
+from objecten.bron import Bron
- def __init__(self):
- self.id = None
+class Pand():
- def __init__(self,xmlnode):
+ def __init__(self, xmlnode, configuratie):
+ self.config = configuratie
self.tag = "bag_LVC:Pand"
self.naam = "Pand"
self.type = 'PND'
+
+ mydb = self.config.get_database()
for node in xmlnode.childNodes:
if node.localName == 'bron':
- self.bron = Bron(node)
+ self.bron = Bron(node, self.config)
if node.localName == 'tijdvakgeldigheid':
- self.tijdvakgeldigheid = Tijdvakgeldigheid(node)
+ self.tijdvakgeldigheid = Tijdvakgeldigheid(node, self.config)
if node.localName == 'identificatie':
- self.identificatie = getText(node.childNodes)
+ self.identificatie = mydb.getText(node.childNodes)
if node.localName == 'aanduidingRecordInactief':
- self.inactief = getText(node.childNodes)
+ self.inactief = mydb.getBoolean(node.childNodes)
if node.localName == 'aanduidingRecordCorrectie':
- self.correctie = getText(node.childNodes)
+ self.correctie = mydb.getText(node.childNodes)
if node.localName == 'officieel':
- self.officieel = getText(node.childNodes)
+ self.officieel = mydb.getBoolean(node.childNodes)
if node.localName == 'inOnderzoek':
- self.inonderzoek = getText(node.childNodes)
+ self.inonderzoek = mydb.getBoolean(node.childNodes)
if node.localName == 'pandstatus':
- self.status = getText(node.childNodes)
+ self.status = mydb.getText(node.childNodes)
if node.localName == 'bouwjaar':
- self.bouwjaar = getText(node.childNodes)
+ self.bouwjaar = mydb.getText(node.childNodes)
if node.localName == 'pandGeometrie':
for geometrie in node.childNodes:
# sla pure tekst nodes over
if geometrie.nodeType == node.TEXT_NODE:
continue
-
- gml = geometrie.toxml()
- self.geometrie = ogr.CreateGeometryFromGML(str(gml))
+ self.geometrie = geometrie.toxml()
def __repr__(self):
return "<Pand('%s','%s', '%s', '%s')>" % (self.identificatie, self.status, self.tijdvakgeldigheid, self.bron)
def insert(self):
- self.sql = """INSERT INTO pand (
+ self.sql = """INSERT INTO """ + self.config.schema + """.pand (
identificatie,
aanduidingrecordinactief,
aanduidingrecordcorrectie,
@@ -49,18 +50,22 @@ def insert(self):
documentdatum,
pandstatus,
bouwjaar,
- begindatum,
- einddatum,
+ begindatumtijdvakgeldigheid,
+ einddatumtijdvakgeldigheid,
geometrie)
- VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, ST_GeomFromText(%s, %s))"""
+ VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, ST_GeomFromGML(%s))"""
self.valuelist = (self.identificatie, self.inactief, \
self.correctie, self.officieel, self.inonderzoek, self.bron.documentnummer, self.bron.documentdatum, \
self.status, self.bouwjaar, self.tijdvakgeldigheid.begindatum, \
- self.tijdvakgeldigheid.einddatum, str(self.geometrie.ExportToWkt()), '28992')
+ self.tijdvakgeldigheid.einddatum, self.geometrie)
- drop = "DROP TABLE IF EXISTS pand CASCADE;"
+ @staticmethod
+ def drop(schema):
+ return "DROP TABLE IF EXISTS " + schema + ".pand CASCADE;"
- create = """CREATE TABLE pand (
+ @staticmethod
+ def create(schema):
+ return """CREATE TABLE """ + schema + """.pand (
gid serial,
identificatie numeric(16,0),
aanduidingrecordinactief boolean,
@@ -73,12 +78,11 @@ def insert(self):
bouwjaar numeric(4,0),
begindatumtijdvakgeldigheid timestamp without time zone,
einddatumtijdvakgeldigheid timestamp without time zone,
- geom_valid boolean default TRUE,
- geovlak geometry,
+ geometrie geometry,
PRIMARY KEY (gid),
- CONSTRAINT enforce_dims_geometrie CHECK ((st_ndims(geovlak) = 3)),
+ CONSTRAINT enforce_dims_geometrie CHECK ((st_ndims(geometrie) = 3)),
CONSTRAINT enforce_geotype_geometrie CHECK (
- ((geometrytype(geovlak) = 'POLYGON'::text) OR (geovlak IS NULL))),
- CONSTRAINT enforce_srid_geometrie CHECK ((st_srid(geovlak) = 28992))
+ ((geometrytype(geometrie) = 'POLYGON'::text) OR (geometrie IS NULL))),
+ CONSTRAINT enforce_srid_geometrie CHECK ((st_srid(geometrie) = 28992))
);"""
View
2  src/objecten/standplaats.py
@@ -40,7 +40,7 @@ def __repr__(self):
return "<Standplaats('%s','%s', '%s', '%s')>" % (self.identificatie, self.gerelateerdeAdressen, self.tijdvakgeldigheid, self.bron)
def insert(self):
- self.sql = """INSERT INTO standplaats (identificatie, aanduidingrecordinactief,
+ self.sql = """INSERT INTO """ + self.config.schema + """.standplaats (identificatie, aanduidingrecordinactief,
aanduidingrecordcorrectie, officieel, inonderzoek, documentnummer, documentdatum, hoofdadres,
standplaatsstatus, begindatumtijdvakgeldigheid, einddatumtijdvakgeldigheid, geometrie) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s,%s,ST_GeomFromGml(%s))"""
self.valuelist = (self.identificatie, self.inactief, \
View
8 src/postgresdb.py
@@ -137,8 +137,8 @@ def maak_database(self):
self.cursor.execute(Ligplaats.drop(self.config.schema))
self.cursor.execute(Nummeraanduiding.drop)
self.cursor.execute(Openbareruimte.drop)
- self.cursor.execute(Pand.drop)
- self.cursor.execute(Standplaats.drop)
+ self.cursor.execute(Pand.drop(self.config.schema))
+ self.cursor.execute(Standplaats.drop(self.config.schema))
self.cursor.execute(Verblijfsobject.drop)
self.cursor.execute(Woonplaats.drop)
self.cursor.execute(Verblijfsobjectgebruiksdoel.drop)
@@ -150,8 +150,8 @@ def maak_database(self):
self.cursor.execute(Ligplaats.create(self.config.schema))
self.cursor.execute(Nummeraanduiding.create)
self.cursor.execute(Openbareruimte.create)
- self.cursor.execute(Pand.create)
- self.cursor.execute(Standplaats.create)
+ self.cursor.execute(Pand.create(self.config.schema))
+ self.cursor.execute(Standplaats.create(self.config.schema))
self.cursor.execute(Verblijfsobject.create)
self.cursor.execute(Woonplaats.create)
self.cursor.execute(Verblijfsobjectgebruiksdoel.create)
Please sign in to comment.
Something went wrong with that request. Please try again.