v1.0.155: VM PostgreSQL + modular db/ & services/ — Lucee stays SPA shell only

This commit is contained in:
2026-06-23 16:01:26 +04:00
parent 568758a23c
commit ee374171d8
16 changed files with 814 additions and 494 deletions
+47
View File
@@ -0,0 +1,47 @@
"""Supplements CRUD."""
from .connection import query, execute, execute_returning
def insert(contract_id, document_id, supp_type="additional"):
return execute_returning(
"""INSERT INTO supplements (contract_id, document_id, type)
VALUES (%s, %s, %s) RETURNING *""",
(contract_id, document_id, supp_type),
)
def list_by_contract(contract_id):
"""Supplements with parsed documents, ordered by created_at."""
return query(
"""SELECT s.id, s.type, s.document_id, d.filename
FROM supplements s
JOIN documents d ON s.document_id = d.id
WHERE s.contract_id = %s AND d.elements_json IS NOT NULL
ORDER BY s.created_at""",
(contract_id,),
)
def get(supp_id):
rows = query("SELECT * FROM supplements WHERE id = %s", (supp_id,))
return rows[0] if rows else None
def delete_by_document(contract_id, filename):
"""Delete supplement+document by contract+filename."""
row = query(
"""SELECT s.id as sid, s.document_id FROM supplements s
JOIN documents d ON d.id = s.document_id
WHERE s.contract_id = %s AND d.filename = %s""",
(contract_id, filename),
)
if row:
r = row[0]
execute("DELETE FROM supplements WHERE id = %s", (r["sid"],))
execute("DELETE FROM documents WHERE id = %s", (r["document_id"],))
return True
return False
def delete(supp_id):
return execute("DELETE FROM supplements WHERE id = %s", (supp_id,))