Feature: Läufigkeit & Trächtigkeit — Zyklen, Progesterontests, Deckdaten, Meilensteine (SW by-v894)
This commit is contained in:
parent
5a639d47a9
commit
f3308a6a94
8 changed files with 997 additions and 8 deletions
|
|
@ -2265,6 +2265,51 @@ def _migrate(conn_factory):
|
|||
except Exception as e:
|
||||
logger.warning(f"Migration behavior_log: {e}")
|
||||
|
||||
try:
|
||||
conn.execute("""
|
||||
CREATE TABLE IF NOT EXISTS laeufi_log (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
hund_id INTEGER NOT NULL REFERENCES zucht_hunde(id) ON DELETE CASCADE,
|
||||
beginn TEXT NOT NULL,
|
||||
ende TEXT,
|
||||
notiz TEXT,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
||||
)
|
||||
""")
|
||||
conn.execute("""
|
||||
CREATE TABLE IF NOT EXISTS progesteron_tests (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
laeufi_id INTEGER NOT NULL REFERENCES laeufi_log(id) ON DELETE CASCADE,
|
||||
datum TEXT NOT NULL,
|
||||
wert REAL,
|
||||
einheit TEXT NOT NULL DEFAULT 'ng/ml',
|
||||
labor TEXT,
|
||||
notiz TEXT,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
||||
)
|
||||
""")
|
||||
conn.execute("""
|
||||
CREATE TABLE IF NOT EXISTS deckdaten (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
hund_id INTEGER NOT NULL REFERENCES zucht_hunde(id) ON DELETE CASCADE,
|
||||
laeufi_id INTEGER REFERENCES laeufi_log(id) ON DELETE SET NULL,
|
||||
deckdatum TEXT NOT NULL,
|
||||
ruede_id INTEGER REFERENCES zucht_hunde(id) ON DELETE SET NULL,
|
||||
ruede_name TEXT,
|
||||
deckart TEXT NOT NULL DEFAULT 'natuerlich',
|
||||
traechtig INTEGER NOT NULL DEFAULT 0,
|
||||
ultraschall_datum TEXT,
|
||||
notiz TEXT,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
||||
)
|
||||
""")
|
||||
conn.execute("CREATE INDEX IF NOT EXISTS idx_laeufi_hund ON laeufi_log(hund_id, beginn DESC)")
|
||||
conn.execute("CREATE INDEX IF NOT EXISTS idx_prog_laeufi ON progesteron_tests(laeufi_id, datum)")
|
||||
conn.execute("CREATE INDEX IF NOT EXISTS idx_deck_hund ON deckdaten(hund_id, deckdatum DESC)")
|
||||
logger.info("Migration: laeufi_log, progesteron_tests, deckdaten bereit.")
|
||||
except Exception as e:
|
||||
logger.warning(f"Migration laeufi: {e}")
|
||||
|
||||
try:
|
||||
conn.execute("""
|
||||
CREATE TABLE IF NOT EXISTS litter_waitlist (
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue