Intelliverse / utils /database.py
Hitika111's picture
Upload 20 files
96df7b1 verified
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
db = SQLAlchemy()
class Candidate(db.Model):
__tablename__ = 'candidates'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(200), nullable=False)
email = db.Column(db.String(200))
phone = db.Column(db.String(50))
score = db.Column(db.Float, default=0)
status = db.Column(db.String(50), default='pending') # pending, shortlisted, rejected, scheduled
job_title = db.Column(db.String(200))
skills_matched = db.Column(db.Text) # JSON list
skills_missing = db.Column(db.Text) # JSON list
reasoning = db.Column(db.Text)
resume_filename = db.Column(db.String(300))
interview_scheduled = db.Column(db.String(100))
created_at = db.Column(db.DateTime, default=datetime.utcnow)
def __repr__(self):
return f'<Candidate {self.name} | {self.score}%>'
class JobDescription(db.Model):
__tablename__ = 'job_descriptions'
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(200))
description = db.Column(db.Text)
threshold = db.Column(db.Integer, default=70)
created_at = db.Column(db.DateTime, default=datetime.utcnow)