Spaces:
Runtime error
Runtime error
from datetime import datetime | |
from sqlalchemy import DateTime, Sequence, LargeBinary, JSON, func | |
from sqlalchemy_serializer import SerializerMixin | |
from ..ext.database import db | |
from flask_login import UserMixin | |
class User(db.Model, UserMixin): | |
__tablename__ = 'users' | |
id = db.Column(db.Integer, primary_key=True, nullable=False ) | |
nome = db.Column(db.String(128), nullable=False) | |
sobrenome = db.Column(db.String(128), nullable=False) | |
email = db.Column(db.String(128), nullable=False) | |
username = db.Column(db.String(128), nullable=False) | |
password = db.Column(db.String(128), nullable=False) | |
dt_criacao = db.Column(DateTime, default=datetime.now(), nullable=False) | |
status = db.Column(db.String(128), nullable=False) | |
user_type = db.Column(db.String(128), nullable=False) | |
class Vagas(db.Model, SerializerMixin): | |
__tablename__ = 'vagas' | |
id = db.Column(db.Integer, primary_key=True, autoincrement=True, nullable=False ) | |
cargo = db.Column(db.String(128), nullable=False) | |
departamento = db.Column(db.String(128), nullable=False) | |
local = db.Column(db.String(128), nullable=False) | |
nivel = db.Column(db.String(128), nullable=False) | |
escopo_vaga = db.Column(db.Text, nullable=False) | |
requisitos = db.Column(db.Text, nullable=False) | |
qualificacoes = db.Column(db.Text, nullable=False) | |
info_adicionais = db.Column(db.Text, nullable=True) | |
data_abertura = db.Column(db.Date, default=datetime.now(), nullable=False) | |
data_fechamento = db.Column(db.Date, nullable=True) | |
status = db.Column(db.String(128), default='ativo', nullable=False) | |
class Candidatos(db.Model, SerializerMixin): | |
__tablename__ = 'candidatos' | |
id = db.Column(db.Integer, primary_key=True, autoincrement=True, nullable=False ) | |
vaga_id = db.Column(db.Integer, db.ForeignKey('vagas.id'), nullable=False) | |
vaga = db.relationship('Vagas', backref='candidatos') | |
nome = db.Column(db.String(128), nullable=True) | |
idade = db.Column(db.String(128), nullable=True) | |
email = db.Column(db.String(128), nullable=True) | |
telefone = db.Column(db.String(128), nullable=True) | |
localizacao = db.Column(db.String(128), nullable=True) | |
experiencia = db.Column(JSON, nullable=True) | |
educacao = db.Column(JSON, nullable=True) | |
habilidades = db.Column(JSON, nullable=True) | |
curriculo_pdf = db.Column(LargeBinary(length=(2**32)-1), nullable=False) | |
status = db.Column(db.String(128), default='Currículo enviado', nullable=False) | |
data_cadastro = db.Column(DateTime, nullable=False, server_default=func.now()) | |
data_encerramento = db.Column(DateTime, nullable=True) | |
motivo_encerramento = db.Column(db.Text, nullable=True) | |
resumo_ia = db.Column(db.Text, nullable=True) | |
avaliacao_ia = db.Column(db.Text, nullable=True) |