ipns-eval-poc-backend / src /models /_proposal_evaluation.py
Aryan Jain
update the apis according to the scores
7a511fb
from enum import Enum as PyEnum
from sqlalchemy import (
Column,
DateTime,
Enum,
Float,
ForeignKey,
Integer,
String,
func,
)
from sqlalchemy.dialects.postgresql import UUID
from pydantic import BaseModel
from ._base import Base
class EvaluationType(PyEnum):
TECHNICAL = "TECHNICAL"
MANAGEMENT = "MANAGEMENT"
PAST_PERFORMANCE = "PAST_PERFORMANCE"
PRICE = "PRICE"
class Evaluations(Base):
__tablename__ = "evaluations"
id = Column(UUID(as_uuid=True), primary_key=True)
proposal_id = Column(
UUID(as_uuid=True),
ForeignKey("proposals.id", ondelete="CASCADE"),
nullable=False,
)
evaluation_type = Column(Enum(EvaluationType), nullable=False)
ai_score = Column(Float(), nullable=True)
adjusted_score = Column(Float(), nullable=True)
created_at = Column(DateTime(), nullable=False, default=func.now())
updated_at = Column(
DateTime(), nullable=False, default=func.now(), onupdate=func.now()
)