aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--justice_main.py89
-rw-r--r--main.py2
-rw-r--r--models.py55
-rw-r--r--templates/extract-actual.html19
-rw-r--r--templates/extract.html81
5 files changed, 190 insertions, 56 deletions
diff --git a/justice_main.py b/justice_main.py
index ab96098..4fe5dcd 100644
--- a/justice_main.py
+++ b/justice_main.py
@@ -33,27 +33,34 @@ def parse_to_DB(file):
conn.close()
return 0
-def purge_DB(c):
- conn = sqlite3.connect('justice.db')
- c = conn.cursor()
- c.execute("DELETE FROM companies")
- c.execute("DELETE FROM obce")
- c.execute("DELETE FROM ulice")
- c.execute("DELETE FROM ulice_relation")
- c.execute("DELETE FROM osoby")
- c.execute("DELETE FROM obce_relation")
- c.execute("DELETE FROM sqlite_sequence")
- c.execute("DELETE FROM pravni_formy")
- c.execute("DELETE FROM pravni_formy_relation")
- c.execute("DELETE FROM insolvency_events")
- c.execute("DELETE FROM predmety_podnikani")
- c.execute("DELETE FROM predmety_podnikani_relation")
- c.execute("DELETE FROM predmety_cinnosti")
- c.execute("DELETE FROM predmety_cinnosti_relation")
- c.execute("DELETE FROM zakladni_kapital")
- c.execute("DELETE FROM ostatni_skutecnosti")
- c.execute("DELETE FROM akcie")
- return 0
+def purge_DB():
+ try:
+ conn = sqlite3.connect('justice.db')
+ c = conn.cursor()
+ c.execute("DELETE FROM companies")
+ c.execute("DELETE FROM obce")
+ c.execute("DELETE FROM ulice")
+ c.execute("DELETE FROM ulice_relation")
+ c.execute("DELETE FROM osoby")
+ c.execute("DELETE FROM obce_relation")
+ c.execute("DELETE FROM sqlite_sequence")
+ c.execute("DELETE FROM pravni_formy")
+ c.execute("DELETE FROM pravni_formy_relation")
+ c.execute("DELETE FROM insolvency_events")
+ c.execute("DELETE FROM predmety_podnikani")
+ c.execute("DELETE FROM predmety_podnikani_relation")
+ c.execute("DELETE FROM predmety_cinnosti")
+ c.execute("DELETE FROM predmety_cinnosti_relation")
+ c.execute("DELETE FROM zakladni_kapital")
+ c.execute("DELETE FROM ostatni_skutecnosti")
+ c.execute("DELETE FROM akcie")
+ c.execute("DELETE FROM zapis_soudy")
+ c.execute("DELETE FROM nazvy")
+ conn.commit()
+ conn.close()
+ return 0
+ except Exception as f:
+ print(f)
def find_other_properties(c, ICO, element, conn, primary_sql_key):
try:
@@ -77,8 +84,12 @@ def find_other_properties(c, ICO, element, conn, primary_sql_key):
find_ostatni_skutecnosti(c, ICO, elem2, conn, primary_sql_key, element)
elif str(get_prop(elem2, ".//udajTyp/kod")) == "AKCIE_SEKCE":
find_akcie(c, ICO, elem2, conn, primary_sql_key, element)
- except:
- pass
+ elif str(get_prop(elem2, ".//udajTyp/kod")) == "SPIS_ZN":
+ find_sp_zn(c, ICO, elem2, conn, primary_sql_key, element)
+ elif str(get_prop(elem2, ".//udajTyp/kod")) == "NAZEV":
+ find_nazev(c, ICO, elem2, conn, primary_sql_key, element)
+ except Exception as f:
+ print (f)
def find_predmet_podnikani(c, ICO, predmet_podnikani_elem, conn, primary_sql_key, element):
try:
@@ -116,6 +127,27 @@ def find_predmet_cinnosti(c, ICO, predmet_cinnosti_elem, conn, primary_sql_key,
except:
pass
+def find_sp_zn(c, ICO, elem2, conn, primary_sql_key, element):
+ try:
+ zapis_datum = str(get_prop(elem2, ".//zapisDatum"))
+ vymaz_datum = str(get_prop(elem2, ".//vymazDatum"))
+ soud = str(get_prop(elem2, ".//spisZn/soud/kod"))
+ oddil = str(get_prop(elem2, ".//spisZn/oddil"))
+ vlozka = str(get_prop(elem2, ".//spisZn/vlozka"))
+ c.execute("INSERT INTO zapis_soudy (company_id, zapis_datum, vymaz_datum, oddil, vlozka, soud) VALUES(?, ?, ?, ?, ?, ?)", (primary_sql_key, zapis_datum, vymaz_datum, oddil, vlozka, soud,))
+ except:
+ pass
+
+def find_nazev(c, ICO, elem2, conn, primary_sql_key, element):
+ try:
+ zapis_datum = str(get_prop(elem2, ".//zapisDatum"))
+ vymaz_datum = str(get_prop(elem2, ".//vymazDatum"))
+ nazev = str(get_prop(elem2, ".//hodnotaText"))
+ print(ICO, zapis_datum, vymaz_datum, nazev)
+ c.execute("INSERT INTO nazvy (company_id, zapis_datum, vymaz_datum, nazev_text) VALUES(?, ?, ?, ?)", (primary_sql_key, zapis_datum, vymaz_datum, nazev,))
+ except Exception as f:
+ print(f)
+
def find_zakladni_kapital(c, ICO, elem2, conn, primary_sql_key, element):
try:
zapis_datum = str(get_prop(elem2, ".//zapisDatum"))
@@ -624,17 +656,18 @@ def unzip_file(filename, temp_file):
def delete_archive(file):
send2trash.send2trash(file)
+purge_DB()
-# parse_to_DB("as-full-ostrava-2021.xml")
+parse_to_DB("as-full-ostrava-2021.xml")
# parse_to_DB("ks-actual-ostrava-2021.xml")
# parse_to_DB("sro-actual-praha-2020.xml")
-def do_both():
- # general_update("down")
- general_update("db_update")
+# def do_both():
+# # general_update("down")
+# general_update("db_update")
-do_both()
+# do_both()
# cProfile.run('do_both()') \ No newline at end of file
diff --git a/main.py b/main.py
index ccc4578..3a33ae4 100644
--- a/main.py
+++ b/main.py
@@ -4,7 +4,7 @@ from db_setup import init_db, db_session
from forms import JusticeSearchForm, CompanyForm
from flask import flash, render_template, request, redirect
# from models import Company, Soud
-from models import Company, Obce, Ulice, Pravni_Forma, Insolvency_Events, Predmet_Podnikani, Predmety_Podnikani_Association, Predmet_Cinnosti, Predmety_Cinnosti_Association, Zakladni_Kapital, Akcie
+from models import Company, Obce, Ulice, Pravni_Forma, Insolvency_Events, Predmet_Podnikani, Predmety_Podnikani_Association, Predmet_Cinnosti, Predmety_Cinnosti_Association, Zakladni_Kapital, Akcie, Nazvy
from tables import Results
init_db()
diff --git a/models.py b/models.py
index aaaf97b..31f4c87 100644
--- a/models.py
+++ b/models.py
@@ -53,10 +53,25 @@ def convert_month_to_string(my_month):
else:
return "podivného měsíce"
+def convert_soud_to_string(my_soud):
+ if my_soud == "MSPH":
+ return "Městského soudu v Praze"
+ elif my_soud == "KSCB":
+ return "Krajského soudu v Českých Budějovicích"
+ elif my_soud == "KSPL":
+ return "Krajského soudu v Plzni"
+ elif my_soud == "KSUL":
+ return "Krajského soudu v Ústí nad Labem"
+ elif my_soud == "KSHK":
+ return "Krajského soudu v Hradci Králové"
+ elif my_soud == "KSBR":
+ return "Krajského soudu v Brně"
+ elif my_soud == "KSOS":
+ return "Krajského soudu v Ostravě"
+ else:
+ return "podivného soudu"
+
class MyType(types.TypeDecorator):
- '''Prefixes Unicode values with "PREFIX:" on the way in and
- strips it off on the way out.
- '''
impl = types.Unicode
@@ -70,6 +85,20 @@ class MyType(types.TypeDecorator):
def copy(self, **kw):
return MyType(self.impl.length)
+class MySoud(types.TypeDecorator):
+
+ impl = types.Unicode
+
+ # def process_bind_param(self, value, dialect):
+ # return convert_soud_to_string(value)
+
+ def process_result_value(self, value, dialect):
+ # return "PREFIX:" + value
+ return convert_soud_to_string(value)
+
+ def copy(self, **kw):
+ return MySoud(self.impl.length)
+
association_table = db.Table("obce_relation",
db.Column("company_id", db.Integer, db.ForeignKey("companies.id"), primary_key=True, nullable=False),
@@ -134,6 +163,8 @@ class Company(db.Model):
zakladni_kapital = db.relationship("Zakladni_Kapital", backref="companies")
ostatni_skutecnosti = db.relationship("Ostatni_Skutecnosti", backref="companies")
akcie = db.relationship("Akcie", backref="companies")
+ obchodni_firma = db.relationship("Nazvy", backref="companies")
+ soudni_zapis = db.relationship("Soudni_Zapisy", backref="companies")
class Obce(db.Model):
@@ -204,3 +235,21 @@ class Akcie(db.Model):
akcie_hodnota_typ = db.Column(db.String)
akcie_hodnota_value = db.Column(db.String)
akcie_text = db.Column(db.String)
+
+class Nazvy(db.Model):
+ __tablename__ = "nazvy"
+ id = db.Column(db.Integer, primary_key=True)
+ company_id = db.Column(db.String, db.ForeignKey("companies.id"))
+ zapis_datum = db.Column(MyType)
+ vymaz_datum = db.Column(MyType)
+ nazev_text = db.Column(db.String)
+
+class Soudni_Zapisy(db.Model):
+ __tablename__ = "zapis_soudy"
+ id = db.Column(db.Integer, primary_key=True)
+ company_id = db.Column(db.String, db.ForeignKey("companies.id"))
+ zapis_datum = db.Column(MyType)
+ vymaz_datum = db.Column(MyType)
+ oddil = db.Column(db.String)
+ vlozka = db.Column(db.String)
+ soud = db.Column(MySoud) \ No newline at end of file
diff --git a/templates/extract-actual.html b/templates/extract-actual.html
index f42a9b8..bccf13c 100644
--- a/templates/extract-actual.html
+++ b/templates/extract-actual.html
@@ -36,6 +36,7 @@
{% endfor %}
+
{% set zapis_split = row.zapis.split("-") %}
{% if zapis_split[1] == "01" %}
{% set mesic = "ledna" %}
@@ -104,7 +105,11 @@
{% endif %}
<h1>Výpis z obchodního rejstříku</h1>
-<h2>{{ row.nazev }}, {{ row.oddil }} {{ row.vlozka }} vedená u {{ soud }}</h2>
+{% for i in range (row.soudni_zapis|length) %}
+ {% if row.soudni_zapis[i].vymaz_datum == 0 %}
+<h2>{{ row.nazev }}, {{ row.soudni_zapis[i].oddil }} {{ row.soudni_zapis[i].vlozka }} vedená u {{ row.soudni_zapis[i].soud }}</h2>
+{% endif %}
+{% endfor %}
<p><a href="/">Zpět na vyhledání.</a></p>
<table class= "table" style="width: 100%">
@@ -114,11 +119,19 @@
</tr>
<tr>
<td>Spisová značka:</td>
- <td>{{ row.oddil }} {{ row.vlozka }} vedená u {{ soud }}</td>
+ {% for i in range (row.soudni_zapis|length) %}
+ {% if row.soudni_zapis[i].vymaz_datum == 0 %}
+ <td>{{ row.soudni_zapis[i].oddil }} {{ row.soudni_zapis[i].vlozka }} vedená u {{ row.soudni_zapis[i].soud }}</td>
+ {% endif %}
+ {% endfor %}
</tr>
<tr>
<td>Obchodní firma:</td>
- <td>{{ row.nazev }}</td>
+ {% for i in range (row.obchodni_firma|length) %}
+ {% if row.obchodni_firma[i].vymaz_datum == 0 %}
+ <td>{{ row.obchodni_firma[i].nazev_text }}</td>
+ {% endif %}
+ {% endfor %}
</tr>
<tr>
<td>Sídlo:</td>
diff --git a/templates/extract.html b/templates/extract.html
index 4623bc0..3738ce9 100644
--- a/templates/extract.html
+++ b/templates/extract.html
@@ -40,22 +40,6 @@
{% set den = zapis_split[2] %}
{% endif %}
-{% if row.soud == "MSPH" %}
- {% set soud = "Městského soudu v Praze" %}
-{% elif row.soud == "KSCB" %}
- {% set soud = "Krajského soudu v Českých Budějovicích" %}
-{% elif row.soud == "KSOS" %}
- {% set soud = "Krajského soudu v Ostravě" %}
-{% elif row.soud == "KSPL" %}
- {% set soud = "Krajského soudu v Plzni" %}
-{% elif row.soud == "KSBR" %}
- {% set soud = "Krajského soudu v Brně" %}
-{% elif row.soud == "KSHK" %}
- {% set soud = "Krajského soudu v Hradci Králové" %}
-{% elif row.soud == "KSUL" %}
- {% set soud = "Krajského soudu v Ústí nad Labem" %}
-{% endif %}
-
{% if insolvency_notes|length > 0 %}
{% set table_style = "table table-danger" %}
{% elif loop.index % 2 == 0 %}
@@ -74,11 +58,18 @@
{% set ico_buffer = "" %}
{% endif %}
+
+
{% set undedrline_open_deleted = "<u>" %}
{% set undedrline_closed_deleted = "</u>" %}
<h1>Výpis z obchodního rejstříku</h1>
-<h2>{{ row.nazev }}, {{ row.oddil }} {{ row.vlozka }} vedená u {{ soud }}</h2>
+{% for i in range (row.soudni_zapis|length) %}
+ {% if row.soudni_zapis[i].vymaz_datum == 0 %}
+<h2>{{ row.nazev }}, {{ row.soudni_zapis[i].oddil }} {{ row.soudni_zapis[i].vlozka }} vedená u {{ row.soudni_zapis[i].soud }}</h2>
+{% endif %}
+{% endfor %}
+
<p><a href="/">Zpět na vyhledání.</a></p>
<table class= "table" style="width: 100%">
@@ -87,16 +78,64 @@
<td style="width:60%">{{den}}. {{mesic}} {{zapis_split[0]}}</td>
<td style="width:25%"></td>
</tr>
+ {% if row.soudni_zapis|length > 0 %}
<tr>
<td>Spisová značka:</td>
- <td>{{ row.oddil }} {{ row.vlozka }} vedená u {{ soud }}</td>
- <td></td>
+ {% if row.soudni_zapis[0].vymaz_datum != 0 %}
+ {% set underlne_style_open = undedrline_open_deleted %}
+ {% set underlne_style_close = undedrline_closed_deleted %}
+ {% else %}
+ {% set underlne_style_open = "" %}
+ {% set underlne_style_close = "" %}
+ {% endif %}
+ <td>{{ underlne_style_open|safe }} {{ row.soudni_zapis[0].oddil }} {{ row.soudni_zapis[0].vlozka }} vedená u {{ row.soudni_zapis[0].soud }} {{ underlne_style_close|safe }}</td>
+ <td>{{ underlne_style_open|safe }} Zapsáno: {{ row.soudni_zapis[0].zapis_datum }} {% if row.soudni_zapis[0].vymaz_datum != 0 %} <br> Vymazáno: {{ row.soudni_zapis[0].vymaz_datum }} {% endif %} {{ underlne_style_close|safe }}</td>
</tr>
+
+ {% for i in range (1, row.soudni_zapis|length) %}
<tr>
- <td>Obchodní firma:</td>
- <td>{{ row.nazev }}</td>
<td></td>
+ {% if row.soudni_zapis[i].vymaz_datum != 0 %}
+ {% set underlne_style_open = undedrline_open_deleted %}
+ {% set underlne_style_close = undedrline_closed_deleted %}
+ {% else %}
+ {% set underlne_style_open = "" %}
+ {% set underlne_style_close = "" %}
+ {% endif %}
+ <td>{{ underlne_style_open|safe }} {{ row.soudni_zapis[i].oddil }} {{ row.soudni_zapis[i].vlozka }} vedená u {{ row.soudni_zapis[i].soud }} {{ underlne_style_close|safe }}</td>
+ <td>{{ underlne_style_open|safe }} Zapsáno: {{ row.soudni_zapis[i].zapis_datum }} {% if row.soudni_zapis[i].vymaz_datum != 0 %} <br> Vymazáno: {{ row.soudni_zapis[i].vymaz_datum }} {% endif %} {{ underlne_style_close|safe }}</td>
+ </tr>
+ {% endfor %}
+ {% endif %}
+
+ {% if row.obchodni_firma|length > 0 %}
+ <tr>
+ <td>Obchodní firma:</td>
+ {% if row.obchodni_firma[0].vymaz_datum != 0 %}
+ {% set underlne_style_open = undedrline_open_deleted %}
+ {% set underlne_style_close = undedrline_closed_deleted %}
+ {% else %}
+ {% set underlne_style_open = "" %}
+ {% set underlne_style_close = "" %}
+ {% endif %}
+ <td>{{ underlne_style_open|safe }} {{ row.obchodni_firma[0].nazev_text }} {{ underlne_style_close|safe }}</td>
+ <td>{{ underlne_style_open|safe }} Zapsáno: {{ row.obchodni_firma[0].zapis_datum }} {% if row.obchodni_firma[0].vymaz_datum != 0 %} <br> Vymazáno: {{ row.obchodni_firma[0].vymaz_datum }} {% endif %} {{ underlne_style_close|safe }}</td>
</tr>
+ {% for i in range (1, row.obchodni_firma|length) %}
+ <tr>
+ <td></td>
+ {% if row.obchodni_firma[i].vymaz_datum != 0 %}
+ {% set underlne_style_open = undedrline_open_deleted %}
+ {% set underlne_style_close = undedrline_closed_deleted %}
+ {% else %}
+ {% set underlne_style_open = "" %}
+ {% set underlne_style_close = "" %}
+ {% endif %}
+ <td>{{ underlne_style_open|safe }} {{ row.obchodni_firma[i].nazev_text }} {{ underlne_style_close|safe }}</td>
+ <td>{{ underlne_style_open|safe }} Zapsáno: {{ row.obchodni_firma[i].zapis_datum }} {% if row.obchodni_firma[i].vymaz_datum != 0 %} <br> Vymazáno: {{ row.obchodni_firma[i].vymaz_datum }} {% endif %} {{ underlne_style_close|safe }}</td>
+ </tr>
+ {% endfor %}
+ {% endif %}
<tr>
<td>Sídlo:</td>
<td>{{ row.sidlo }}</td>