class Funcionario(db.Model): __tablename__ = 'funcionario' id = db.Column(db.VARCHAR(36), primary_key=True, default=Util.__generate_id__()) registro = db.Column(db.VARCHAR(25), unique=True, default=('F' + Util.__gerar_num_matricula__())) ativado = db.Column(db.BOOLEAN, default=True) cargo_id = db.Column(db.VARCHAR(36), db.ForeignKey('cargo.id', name='FK_funcionario_cargo'), nullable=False) pessoa_id = db.Column(db.VARCHAR(36), db.ForeignKey('pessoa.id', name='FK_funcionario_pessoa'), nullable=False) def __init__(self): self.id = Util.__generate_id__() self.registro = 'F' + Util.__gerar_num_matricula__() # RELATIONSHIP # many to one cargo = db.relationship('Cargo', backref=backref('funcionarios', lazy='dynamic')) @property def dict_class(self): dicionario = [{ 'Registro': self.registro }, { 'Cargo': self.cargo }, { 'Pessoa': DAO.buscar_por_criterio(Pessoa, id=self.pessoa_id) }] return dicionario @property def dict_fieldname(self): return {'Registro': 'registro', 'Cargo': 'Cargo', 'Pessoa': 'Pessoa'} def __repr__(self): return '<Funcionario %s: %s, %s>' % (self.id, self.registro, self.cargo)
class Aluno(db.Model): __tablename__ = 'aluno' id = db.Column(db.VARCHAR(36), primary_key=True, default=Util.__generate_id__()) matricula = db.Column(db.VARCHAR(25), nullable=False, unique=True, default=('A' + Util.__gerar_num_matricula__())) ativado = db.Column(db.BOOLEAN, default=True) pessoa_id = db.Column(db.VARCHAR(36), db.ForeignKey('pessoa.id', name='FK_aluno_pessoa'), nullable=False) def __init__(self): self.id = Util.__generate_id__() self.matricula = 'A' + Util.__gerar_num_matricula__() # Relacionamento # many to many planos = db.relationship('Plano', secondary='planos_alunos', backref=backref('aluno', lazy='dynamic')) # one to many avaliacoes = db.relationship('AvaliacaoFisica', backref=backref('aluno', lazy='joined')) fichas = db.relationship('Ficha', backref=backref('aluno', lazy='joined')) @property def dict_class(self): dicionario = [{ 'Matricula': self.matricula }, { 'Pessoa': DAO.buscar_por_criterio(Pessoa, id=self.pessoa_id) }] return dicionario @property def dict_fieldname(self): return {'Matricula': 'matricula', 'Pessoa': 'Pessoa'} def __repr__(self): return '<Aluno %r: %r, %r>' % (self.id, self.matricula, self.pessoa_id)
def __init__(self): self.id = Util.__generate_id__() self.matricula = 'A' + Util.__gerar_num_matricula__()
def __init__(self): self.id = Util.__generate_id__() self.registro = 'F' + Util.__gerar_num_matricula__()