change database structure for initial recording of individual persons

This commit is contained in:
2026-06-17 09:45:26 +02:00
parent 44402af0b7
commit 4a1d5d4647
3 changed files with 28 additions and 8 deletions

19
prototypes/db_alter.py Normal file
View File

@@ -0,0 +1,19 @@
# %%
import sqlalchemy as sql
from wce_crm import db
# %%
stmt = sql.text(
"ALTER TABLE grunderfassung_unternehmen ADD COLUMN Metadaten_wiedereintrittsdatum DATE"
)
with db.ENGINE.begin() as conn:
conn.execute(stmt)
# %%
stmt = sql.text("ALTER TABLE grunderfassung_unternehmen RENAME TO grunderfassung")
with db.ENGINE.begin() as conn:
conn.execute(stmt)
# %%

View File

@@ -30,8 +30,8 @@ engine = sql.create_engine(f"sqlite:///{str(db_path)}")
engine_crm = sql.create_engine(f"sqlite:///{str(crm_path)}")
# %%
stmt = sql.select(
db.grunderfassung_unternehmen.c.erfassung_id,
db.grunderfassung_unternehmen.c.Partnersuche__un_suche,
db.grunderfassung.c.erfassung_id,
db.grunderfassung.c.Partnersuche__un_suche,
)
with engine.connect() as conn:
@@ -44,7 +44,7 @@ for r in res:
# %%
backend.get_company_list()
backend.front_get_company_list()
# %%

View File

@@ -323,8 +323,8 @@ def get_ext_crm_contact_person(
# df_contact_person = get_ext_crm_contact_person(None)
DF_CONTACT_PERSON = get_ext_crm_contact_person(constants.Config.DB_PATH_CRM)
grunderfassung_unternehmen: sql.Table = Table(
"grunderfassung_unternehmen",
grunderfassung: sql.Table = Table(
"grunderfassung",
md_main,
Column(
"erfassung_id",
@@ -346,6 +346,7 @@ grunderfassung_unternehmen: sql.Table = Table(
onupdate=lambda: datetime.datetime.now(datetime.UTC),
),
Column("Metadaten_nutzer", sql.String(20), nullable=True),
Column("Metadaten_wiedereintrittsdatum", sql.Date, nullable=True, default=None),
Column("Arbeitserfahrung", sql.Text, nullable=True),
Column("Grunderfassung_fallnummer", sql.Text, nullable=True),
Column("Grunderfassung_notiz", sql.Text, nullable=True),
@@ -362,9 +363,9 @@ grunderfassung_unternehmen: sql.Table = Table(
), # TODO: check if needed when set by trigger
Column("Kontaktperson__KP_titel", sql.Text, nullable=True),
Column("Kontaktperson__KP_vorname", sql.Text, nullable=True),
Column("Partnersuche__kanal_aufmerksamkeit", sql.Text, nullable=True),
Column("Partnersuche__person_suche", sql.Integer, nullable=True),
Column("Partnersuche__un_suche", sql.Integer, nullable=True),
Column("Partnersuche__kanal_aufmerksamkeit", sql.Text, nullable=True, default=None),
Column("Partnersuche__person_suche", sql.Integer, nullable=True, default=None),
Column("Partnersuche__un_suche", sql.Integer, nullable=True, default=None),
Column("Projektrelevanz__relevanz", sql.Text, nullable=True),
Column("Projektrelevanz__foerderperiode", sql.Text, nullable=True),
Column("Schulbildung", sql.Text, nullable=True),