30 lines
1.2 KiB
Python
30 lines
1.2 KiB
Python
from sqlalchemy import Column, DateTime, Integer, String
|
|
from database.database import Base
|
|
|
|
class User(Base):
|
|
__tablename__ = "users"
|
|
id = Column(Integer, primary_key=True, index=True)
|
|
email = Column(String, unique=True, index=True)
|
|
password = Column(String)
|
|
full_name = Column(String, nullable=True)
|
|
role = Column(String, default="user") # ← nouveau
|
|
|
|
class Document(Base):
|
|
__tablename__ = "documents"
|
|
id = Column(Integer, primary_key=True, index=True)
|
|
title = Column(String)
|
|
ingredient = Column(String)
|
|
source = Column(String)
|
|
document_type = Column(String)
|
|
meeting_date = Column(String, nullable=True)
|
|
pdf_url = Column(String, unique=True)
|
|
|
|
class ScraperRun(Base):
|
|
__tablename__ = "scraper_runs"
|
|
id = Column(Integer, primary_key=True, index=True)
|
|
source = Column(String, index=True)
|
|
status = Column(String, default="pending")
|
|
started_at = Column(DateTime(timezone=True))
|
|
finished_at = Column(DateTime(timezone=True), nullable=True)
|
|
documents_added = Column(Integer, default=0)
|
|
message = Column(String, nullable=True) |