Files

26 lines
676 B
Python

"""Contracts CRUD."""
from .connection import query, execute, execute_returning
def insert(number, client=""):
return execute_returning(
"INSERT INTO contracts (number, client) VALUES (%s, %s) RETURNING *",
(number, client),
)
def get(contract_id):
rows = query("SELECT * FROM contracts WHERE id = %s", (contract_id,))
return rows[0] if rows else None
def delete(contract_id):
return execute("DELETE FROM contracts WHERE id = %s", (contract_id,))
def delete_orphaned():
"""Remove contracts with no supplements."""
execute(
"DELETE FROM contracts WHERE id NOT IN (SELECT DISTINCT contract_id FROM supplements)"
)