Automated commit

This commit is contained in:
gitea_admin 2026-06-11 10:33:14 +00:00
parent 6ff996b707
commit 9b9b6344a9
1 changed files with 37 additions and 23 deletions

View File

@ -1,30 +1,44 @@
"""Database models. from datetime import datetime, date, timezone
Define your SQLAlchemy models here. They will be auto-created on startup. from sqlalchemy import Column, Date, DateTime, Integer, String, Text
Example: from app.database import Base
class Category(Base):
__tablename__ = "categories"
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid4) class Permit(Base):
name = Column(String(100), nullable=False) __tablename__ = "permits"
created_at = Column(DateTime, default=lambda: datetime.now(timezone.utc))
"""
from datetime import datetime, timezone # noqa: F401 id = Column(Integer, primary_key=True, autoincrement=True)
from uuid import uuid4 # noqa: F401 # Core identification
permit_number = Column(String(100), nullable=True, index=True)
source_file = Column(String(500), nullable=True)
source_system = Column(String(100), nullable=True)
from sqlalchemy import ( # noqa: F401 # Extracted metadata (FR-03)
Boolean, applicant_name = Column(String(200), nullable=True, index=True)
Column, permit_holder_name = Column(String(200), nullable=True)
DateTime, issuer_name = Column(String(200), nullable=True)
ForeignKey, location = Column(String(300), nullable=True, index=True)
Integer, issue_date = Column(Date, nullable=True)
String, expiry_date = Column(Date, nullable=True)
Text, applicable_law = Column(String(200), nullable=True)
) work_type = Column(String(200), nullable=True)
from sqlalchemy.dialects.postgresql import UUID # noqa: F401 water_type = Column(String(200), nullable=True)
from sqlalchemy.orm import relationship # noqa: F401 embankment_type = Column(String(200), nullable=True)
from app.database import Base # noqa: F401 # AI classification
permit_type = Column(String(100), nullable=True, index=True)
# Archive compliance (FR-09/10/11, BR-01 to BR-06)
archive_nomination = Column(String(50), nullable=True) # bewaren / vernietigen
retention_years = Column(Integer, nullable=True)
archive_status = Column(String(100), nullable=True)
# Full text
extracted_text = Column(Text, nullable=True)
# Processing
status = Column(String(50), default="processing")
error_message = Column(Text, nullable=True)
upload_date = Column(DateTime, default=lambda: datetime.now(timezone.utc))
created_at = Column(DateTime, default=lambda: datetime.now(timezone.utc))