From 79efcdfdbd6045cccbd3254f45913b019b81920b Mon Sep 17 00:00:00 2001 From: Josako Date: Wed, 24 Apr 2024 14:06:56 +0200 Subject: [PATCH] Add Document Model --- eveai_app/models/document.py | 37 ++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/eveai_app/models/document.py b/eveai_app/models/document.py index e69de29..2d64608 100644 --- a/eveai_app/models/document.py +++ b/eveai_app/models/document.py @@ -0,0 +1,37 @@ +from ..extensions import db + + +class Document(db.Model): + id = db.Column(db.Integer, primary_key=True) + name = db.Column(db.String(100), nullable=False) + tenant_id = db.Column(db.Integer, db.ForeignKey('tenant.id'), nullable=False) + valid_from = db.Column(db.DateTime, nullable=True) + valid_to = db.Column(db.DateTime, nullable=True) + + # Versioning Information + created_at = db.Column(db.DateTime, nullable=False, server_default=db.func.now()) + created_by = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False) + updated_at = db.Column(db.DateTime, nullable=False, server_default=db.func.now(), onupdate=db.func.now()) + updated_by = db.Column(db.Integer, db.ForeignKey('user.id')) + + +class DocumentLanguage(db.Model): + id = db.Column(db.Integer, primary_key=True) + document_id = db.Column(db.Integer, db.ForeignKey('document.id'), nullable=False) + language = db.Column(db.String(2), nullable=False) + + # Versioning Information + created_at = db.Column(db.DateTime, nullable=False, server_default=db.func.now()) + created_by = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False) + + +class DocumentVersion(db.Model): + id = db.Column(db.Integer, primary_key=True) + doc_lang_id = db.Column(db.Integer, db.ForeignKey('document_language.id'), nullable=False) + url = db.Column(db.String(200), nullable=True) + embeddings = db.Column(db.PickleType, nullable=True) + + # Versioning Information + created_at = db.Column(db.DateTime, nullable=False, server_default=db.func.now()) + created_by = db.Column(db.Integer, db.ForeignKey('user.id')) +