from sqlalchemy import Column, Integer, String, Text, DateTime, ForeignKey, JSON
from sqlalchemy.sql import func
from app.database import Base


class Candidate(Base):
    __tablename__ = "candidates"

    id = Column(Integer, primary_key=True, index=True)
    company_id = Column(Integer, ForeignKey("companies.id"), nullable=False)
    name = Column(String(100))
    email = Column(String(255))
    resume_text = Column(Text)
    phone = Column(String(50))
    portfolio_url = Column(String(255))
    desired_salary = Column(String(100))
    desired_position = Column(String(100))
    parsed_data = Column(JSON, nullable=True)
    embedding_id = Column(String(100), nullable=True)  # Pinecone vector ID
    created_at = Column(DateTime, server_default=func.now())
    updated_at = Column(DateTime, server_default=func.now(), onupdate=func.now())
