5 changed files with 2 additions and 80 deletions
@ -1,22 +0,0 @@ |
|||||||
from sqlalchemy import Column, UUID, ForeignKey, DateTime, JSON |
|
||||||
from sqlalchemy.orm import relationship |
|
||||||
from apiApp.database import Base |
|
||||||
import uuid |
|
||||||
from datetime import datetime |
|
||||||
|
|
||||||
|
|
||||||
class AiConclusion(Base): |
|
||||||
__tablename__ = "ai_conclusion" |
|
||||||
|
|
||||||
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) |
|
||||||
audio_id = Column(UUID(as_uuid=True), ForeignKey("audio.id"), nullable=False) |
|
||||||
conclusion = Column(JSON, default=lambda: { |
|
||||||
"transcription": [], |
|
||||||
"ai_transcription": [], |
|
||||||
"conclusion": {} |
|
||||||
}) |
|
||||||
index_date = Column(DateTime, default=datetime.utcnow) |
|
||||||
end_date = Column(DateTime) |
|
||||||
|
|
||||||
audio_id = Column(UUID(as_uuid=True), ForeignKey("audio.id")) |
|
||||||
version = relationship("ConclusionVersion", back_populates="ai_conclusion") |
|
||||||
@ -1,28 +0,0 @@ |
|||||||
from sqlalchemy import Column, String, DateTime, UUID, ForeignKey, Float, Integer |
|
||||||
from sqlalchemy.orm import relationship |
|
||||||
from apiApp.database import Base |
|
||||||
import uuid |
|
||||||
from datetime import datetime |
|
||||||
|
|
||||||
|
|
||||||
class Audio(Base): |
|
||||||
__tablename__ = "audio" |
|
||||||
|
|
||||||
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) |
|
||||||
filename = Column(String(255), nullable=False) |
|
||||||
index_date = Column(DateTime, default=datetime.utcnow) |
|
||||||
file_path = Column(String(500)) |
|
||||||
duration = Column(Float) |
|
||||||
file_size = Column(Integer) |
|
||||||
|
|
||||||
ai_conclusion = relationship("AiConclusion", back_populates="audio", cascade="all, delete-orphan") |
|
||||||
|
|
||||||
def to_dict(self): |
|
||||||
return { |
|
||||||
"id": str(self.id), |
|
||||||
"filename": self.filename, |
|
||||||
"index_date": self.index_date.isoformat() if self.index_date else None, |
|
||||||
"file_path": self.file_path, |
|
||||||
"duration": self.duration, |
|
||||||
"file_size": self.file_size |
|
||||||
} |
|
||||||
@ -1,12 +0,0 @@ |
|||||||
from sqlalchemy import Column, UUID, ForeignKey, Integer, Text |
|
||||||
from apiApp.database import Base |
|
||||||
import uuid |
|
||||||
|
|
||||||
|
|
||||||
class ConclusionVersion(Base): |
|
||||||
__tablename__ = "conclusion_version" |
|
||||||
|
|
||||||
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) |
|
||||||
conclusion_id = Column(UUID(as_uuid=True), ForeignKey("ai_conclusion.id")) |
|
||||||
version = Column(Integer) |
|
||||||
content = Column(Text) |
|
||||||
@ -1,16 +0,0 @@ |
|||||||
from sqlalchemy import Column, UUID, String, Integer |
|
||||||
from sqlalchemy.orm import relationship |
|
||||||
from apiApp.database import Base |
|
||||||
import uuid |
|
||||||
|
|
||||||
|
|
||||||
class Operator(Base): |
|
||||||
__tablename__ = "operator" |
|
||||||
|
|
||||||
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) |
|
||||||
fio = Column(String(100)) |
|
||||||
num = Column(Integer) |
|
||||||
|
|
||||||
calls = relationship("Call", back_populates="operator") |
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in new issue