Spaces:
Sleeping
Sleeping
| from sqlalchemy import create_engine, Column, Integer, String, Float | |
| from sqlalchemy.ext.declarative import declarative_base | |
| from sqlalchemy.orm import sessionmaker | |
| Base = declarative_base() | |
| class Candidate(Base): | |
| __tablename__ = 'candidates' | |
| id = Column(Integer, primary_key=True) | |
| unique_id = Column(String, unique=True) | |
| name = Column(String) | |
| location = Column(String) | |
| experience = Column(String) | |
| education = Column(String) | |
| skills = Column(String) | |
| class Job(Base): | |
| __tablename__ = 'jobs' | |
| id = Column(Integer, primary_key=True) | |
| unique_id = Column(String, unique=True) | |
| title = Column(String) | |
| description = Column(String) | |
| DATABASE_URL = "sqlite:////tmp/ats_demo.db" | |
| engine = create_engine(DATABASE_URL, echo=False) | |
| Base.metadata.create_all(engine) | |
| Session = sessionmaker(bind=engine) | |
| session = Session() | |
| def save_candidate(parsed_data, unique_id): | |
| candidate = Candidate( | |
| unique_id=unique_id, | |
| name=parsed_data.get("name"), | |
| location=parsed_data.get("location"), | |
| experience=parsed_data.get("experience"), | |
| education=parsed_data.get("education"), | |
| skills=parsed_data.get("skills") | |
| ) | |
| session.add(candidate) | |
| session.commit() | |
| def save_job(job_title, job_description, unique_id): | |
| job = Job( | |
| unique_id=unique_id, | |
| title=job_title, | |
| description=job_description | |
| ) | |
| session.add(job) | |
| session.commit() | |
| def delete_candidate(unique_id): | |
| candidate = session.query(Candidate).filter_by(unique_id=unique_id).first() | |
| if candidate: | |
| session.delete(candidate) | |
| session.commit() | |
| return True | |
| return False | |
| def delete_job(unique_id): | |
| job = session.query(Job).filter_by(unique_id=unique_id).first() | |
| if job: | |
| session.delete(job) | |
| session.commit() | |
| return True | |
| return False | |