generated from dopt-python/py311
switch to new data model with distinct company and person data
This commit is contained in:
@@ -154,11 +154,11 @@ def initrec_comp_contact_person_search_get_info(
|
||||
|
||||
|
||||
# // internals
|
||||
def initrec_insert_initial_recording(
|
||||
def initrec_company_insert_initial_recording(
|
||||
data: dict[str, Any],
|
||||
) -> InitRecId:
|
||||
logger.debug("[Call backend] insert_initial_recording")
|
||||
stmt = db.grunderfassung.insert()
|
||||
stmt = db.grunderfassung_unternehmen.insert()
|
||||
with db.ENGINE.begin() as conn:
|
||||
ret = conn.execute(stmt, data)
|
||||
|
||||
@@ -171,21 +171,25 @@ def initrec_insert_initial_recording(
|
||||
return prim_keys[0]
|
||||
|
||||
|
||||
def initrec_update_initial_recording(
|
||||
def initrec_company_update_initial_recording(
|
||||
id_: InitRecId,
|
||||
data: dict[str, Any],
|
||||
) -> None:
|
||||
logger.debug("[Call backend] update_initial_recording")
|
||||
stmt = db.grunderfassung.update().where(db.grunderfassung.c.erfassung_id == id_)
|
||||
stmt = db.grunderfassung_unternehmen.update().where(
|
||||
db.grunderfassung_unternehmen.c.un_id == id_
|
||||
)
|
||||
with db.ENGINE.begin() as conn:
|
||||
conn.execute(stmt, data)
|
||||
|
||||
|
||||
def initrec_get_initial_recording(
|
||||
def initrec_company_get_initial_recording(
|
||||
id_: InitRecId,
|
||||
) -> dict[str, Any]:
|
||||
logger.debug("[Call backend] get_initial_recording")
|
||||
stmt = db.grunderfassung.select().where(db.grunderfassung.c.erfassung_id == id_)
|
||||
stmt = db.grunderfassung_unternehmen.select().where(
|
||||
db.grunderfassung_unternehmen.c.un_id == id_
|
||||
)
|
||||
with db.ENGINE.begin() as conn:
|
||||
ret = conn.execute(stmt)
|
||||
|
||||
@@ -198,11 +202,75 @@ def initrec_get_initial_recording(
|
||||
return row._asdict()
|
||||
|
||||
|
||||
def initrec_delete_initial_recording(
|
||||
def initrec_company_delete_initial_recording(
|
||||
id_: InitRecId,
|
||||
) -> None:
|
||||
logger.debug("[Call backend] delete_initial_recording")
|
||||
stmt = db.grunderfassung.delete().where(db.grunderfassung.c.erfassung_id == id_)
|
||||
stmt = db.grunderfassung_unternehmen.delete().where(
|
||||
db.grunderfassung_unternehmen.c.un_id == id_
|
||||
)
|
||||
with db.ENGINE.begin() as conn:
|
||||
ret = conn.execute(stmt)
|
||||
|
||||
if ret.rowcount == 0:
|
||||
raise KeyError(f"Database ID {id_} not found for deletion")
|
||||
|
||||
|
||||
def initrec_person_insert_initial_recording(
|
||||
data: dict[str, Any],
|
||||
) -> InitRecId:
|
||||
logger.debug("[Call backend] insert_initial_recording")
|
||||
stmt = db.grunderfassung_personen.insert()
|
||||
with db.ENGINE.begin() as conn:
|
||||
ret = conn.execute(stmt, data)
|
||||
|
||||
if ret.rowcount == 0:
|
||||
raise IOError("Entry was not inserted correctly")
|
||||
|
||||
prim_keys = ret.inserted_primary_key
|
||||
assert prim_keys
|
||||
|
||||
return prim_keys[0]
|
||||
|
||||
|
||||
def initrec_person_update_initial_recording(
|
||||
id_: InitRecId,
|
||||
data: dict[str, Any],
|
||||
) -> None:
|
||||
logger.debug("[Call backend] update_initial_recording")
|
||||
stmt = db.grunderfassung_personen.update().where(
|
||||
db.grunderfassung_personen.c.pers_id == id_
|
||||
)
|
||||
with db.ENGINE.begin() as conn:
|
||||
conn.execute(stmt, data)
|
||||
|
||||
|
||||
def initrec_person_get_initial_recording(
|
||||
id_: InitRecId,
|
||||
) -> dict[str, Any]:
|
||||
logger.debug("[Call backend] get_initial_recording")
|
||||
stmt = db.grunderfassung_personen.select().where(
|
||||
db.grunderfassung_personen.c.pers_id == id_
|
||||
)
|
||||
with db.ENGINE.begin() as conn:
|
||||
ret = conn.execute(stmt)
|
||||
|
||||
if ret.rowcount == 0:
|
||||
raise KeyError(f"Database ID {id_} not found")
|
||||
|
||||
row = ret.fetchone()
|
||||
assert row, "row was not obtained"
|
||||
|
||||
return row._asdict()
|
||||
|
||||
|
||||
def initrec_person_delete_initial_recording(
|
||||
id_: InitRecId,
|
||||
) -> None:
|
||||
logger.debug("[Call backend] delete_initial_recording")
|
||||
stmt = db.grunderfassung_personen.delete().where(
|
||||
db.grunderfassung_personen.c.pers_id == id_
|
||||
)
|
||||
with db.ENGINE.begin() as conn:
|
||||
ret = conn.execute(stmt)
|
||||
|
||||
@@ -218,15 +286,16 @@ class FrontpageCompany:
|
||||
is_company: bool
|
||||
|
||||
|
||||
# TODO separate functions for companies and person: focus on companies first
|
||||
def front_get_company_list() -> list[FrontpageCompany]:
|
||||
logger.debug("[Call backend] get_company_list")
|
||||
stmt = sql.select(
|
||||
db.grunderfassung.c.erfassung_id,
|
||||
db.grunderfassung.c.Partnersuche__un_suche,
|
||||
db.grunderfassung.c.Stammdaten__vorname,
|
||||
db.grunderfassung.c.Stammdaten__name,
|
||||
db.grunderfassung.c.Metadaten_aktualisierung,
|
||||
).order_by(db.grunderfassung.c.Metadaten_aktualisierung.desc())
|
||||
db.grunderfassung_unternehmen.c.un_id,
|
||||
db.grunderfassung_unternehmen.c.Partnersuche__un_suche,
|
||||
# db.grunderfassung_unternehmen.c.Stammdaten__vorname,
|
||||
# db.grunderfassung_unternehmen.c.Stammdaten__name,
|
||||
db.grunderfassung_unternehmen.c.Metadaten_aktualisierung,
|
||||
).order_by(db.grunderfassung_unternehmen.c.Metadaten_aktualisierung.desc())
|
||||
|
||||
with db.ENGINE.connect() as conn:
|
||||
res = conn.execute(stmt)
|
||||
@@ -234,7 +303,7 @@ def front_get_company_list() -> list[FrontpageCompany]:
|
||||
front_page_companies: list[FrontpageCompany] = []
|
||||
|
||||
for entry in res.mappings():
|
||||
erfassung_id = entry["erfassung_id"]
|
||||
erfassung_id = entry["un_id"]
|
||||
ma_id = entry["Partnersuche__un_suche"]
|
||||
datetime_akt = cast(datetime.datetime, entry["Metadaten_aktualisierung"])
|
||||
datetime_akt = datetime_akt.astimezone()
|
||||
|
||||
Reference in New Issue
Block a user