Пример #1
0
    def finalizarPersistencia(self, id_adm_saude, id_paciente):  # Cadastra o atendimento e o agendamento

        db = Database()

        # Finaliza o cadastro do atendimento e recupera o id salvo
        db.saveData(self.atendimento)
        id_atendimento = db.selectIf(Atendimento, id_paciente=self.atendimento.id_paciente,
                                     data=self.atendimento.data).id

        # Para cada relacionamento salvo, insere o ID do atendimento e cadastra
        for rel in self.relations:
            self.insertRelation(rel, id_atendimento)

        # Cálculo da data do próximo atendimento (agendamento)
        interval = db.selectData(TempoContatoAcompanhamento).intervalo_contato
        data = self.atendimento.data + timedelta(hours=interval)

        # Salva o agendamento
        agendamento = Agendamento()
        agendamento.id_adm_saude = id_adm_saude
        agendamento.id_atendimento = id_atendimento
        agendamento.id_paciente = id_paciente
        agendamento.data = data

        db.saveData(agendamento)
Пример #2
0
 def encontrarIdValor(self, obj, value):
     db = Database()
     res = db.selectIf(obj, value=value)
     if res is None:
         newObj = obj(value)
         db.saveData(newObj)
         id = db.selectData(newObj)
     else:
         id = res.id
     return id
Пример #3
0
def updateTimes(intervalo, maximo):
    db = Database()
    times = db.selectAllData(TempoContatoAcompanhamento)
    if len(times) == 0:
        db.saveData(TempoContatoAcompanhamento(intervalo, maximo))
    else:
        id = times[0]['id']
        tempo = TempoContatoAcompanhamento(intervalo, maximo)
        tempo.id = id
        db.updateData(TempoContatoAcompanhamento, tempo, id)
Пример #4
0
def inserirPaciente(nome, cpf, cns, telefone, endereco, data_nasc, id_etnia, id_genero, id_cidade=None):
    db = Database()
    paciente = db.selectIf(Paciente, cpf=cpf)
    if paciente:
        # atualizar paciente
        updatePaciente(paciente.id, nome, cpf, cns, telefone, id_etnia, id_genero, data_nasc, endereco, id_cidade)
        return paciente.id
    else:
        new_paciente = Paciente(nome, cpf, cns, telefone, data_nasc, id_etnia, id_genero, endereco, id_cidade)
        db.saveData(new_paciente)
        return db.selectIf(Paciente, cpf=cpf).id
Пример #5
0
def inserirPaciente(nome, cpf, telefone, endereco, data_nasc, id_etnia,
                    id_genero):
    db = Database()
    paciente = db.selectIf(Paciente, cpf=cpf)
    if paciente:
        return paciente.id
    else:
        new_paciente = Paciente(nome, cpf, telefone, data_nasc, id_etnia,
                                id_genero, endereco)
        db.saveData(new_paciente)
        return db.selectIf(Paciente, cpf=cpf).id
Пример #6
0
    def inserirAtendimentoInicial(self, endereco, qtd_comodos, is_agua_encanada):
        if (not self.atendimento.is_primeiro):  # Caso esse atendimento NAO seja inicial, nao deixa inserir
            return
        inicial = AtendimentoInicial()
        inicial.endereco = endereco
        inicial.qtd_comodos = qtd_comodos
        inicial.is_agua_encanada = is_agua_encanada

        db = Database()
        db.saveData(inicial)

        # Recupera o ultimo atendimento inicial salvo para recuperar o ID.
        id = db.Session().query(AtendimentoInicial).order_by(desc(AtendimentoInicial.id)).first().id

        self.atendimento.id_atendimento_inicial = id
Пример #7
0
def savePaciente(nome, cpf, cns, telefone, dataNasc, id_etnia, id_genero, endereco, id_cidade=None):
    nome = data_or_null(nome)
    cpf = data_or_null(cpf, only_num)
    cns = data_or_null(cns, only_num)
    telefone = data_or_null(telefone, only_num)
    endereco = data_or_null(endereco)
    id_etnia = data_or_null(id_etnia, int)
    id_genero = data_or_null(id_genero, int)

    paciente = Paciente(nome, cpf, cns, telefone, dataNasc, id_etnia, id_genero, endereco, id_cidade)

    try:
        db = Database()
        db.saveData(paciente)
    except Exception as e:
        print(e)
Пример #8
0
def registrar():

    if not (current_user.perfil == 'master' or current_user.perfil == 'admin'):
        return redirect(url_for('MenuAtendente.index'))

    if request.method == 'POST':
        nome = request.form['nome']
        CRM = request.form['crm']
        cpf = only_num(request.form['cpf'])

        if 'cidade' in request.form:
            id_cidade = request.form['cidade']
        else:
            id_cidade = current_user.id_cidade

        supervisor = request.form['perfil']

        senha = request.form['senha']
        #id = request.form['id']

        db = Database()
        userCPF = db.selectIf(AdmSaude, cpf=cpf)

        if userCPF:
            flash('CPF já cadastrado.')
            return redirect(url_for('Registrar.registrar'))

        usuario = AdmSaude(nome, CRM, cpf, supervisor, senha, id_cidade)
        if usuario.validarCPF():
            db.saveData(usuario)

            return redirect(url_for('admin.admin'))
        else:
            flash('CPF inválido.')

    fields = {
        "nome": inputs.adm_nome,
        "crm": inputs.adm_crm,
        "cpf": inputs.adm_cpf,
        "senha": inputs.adm_senha,
        "cidade": inputs.cidade
    }

    return render_template('registrar.html',
                           fields=fields,
                           dados=ler_dados(),
                           master=(current_user.perfil == 'master'))
Пример #9
0
def savePaciente(nome, cpf, telefone, dataNasc, id_etnia, id_genero, endereco):

    nome = data_or_null(nome)
    cpf = data_or_null(cpf, only_num)
    telefone = data_or_null(telefone, only_num)
    endereco = data_or_null(endereco)
    dataNasc = datetime.strptime(
        dataNasc, '%d/%m/%Y').date() if len(dataNasc) != 0 else None
    id_etnia = data_or_null(id_etnia, int)
    id_genero = data_or_null(id_genero, int)

    paciente = Paciente(nome, cpf, telefone, dataNasc, id_etnia, id_genero,
                        endereco)

    try:
        db = Database()
        db.saveData(paciente)
    except Exception as e:
        print(e)
Пример #10
0
def registrar():

    if not current_user.is_supervisor:
        return redirect(url_for('MenuAtendente.index'))

    if request.method == 'POST':
        nome = request.form['nome']
        CRM = request.form['crm']
        cpf = only_num(request.form['cpf'])

        supervisor = 'is_supervisor' in request.form

        print("Supervisor registrar {}".format(supervisor))
        senha = request.form['senha']
        #id = request.form['id']

        db = Database()
        userCPF = db.selectIf(AdmSaude, cpf=cpf)

        if userCPF:
            flash('CPF já cadastrado.')
            return redirect(url_for('Registrar.registrar'))

        usuario = AdmSaude(nome, CRM, cpf, supervisor, senha)
        if usuario.validarCPF():
            db.saveData(usuario)

            return redirect(url_for('admin.admin'))
        else:
            flash('CPF inválido.')

    fields = {
        "nome": inputs.adm_nome,
        "crm": inputs.adm_crm,
        "cpf": inputs.adm_cpf,
        "senha": inputs.adm_senha,
        "is_supervisor": inputs.adm_is_supervisor,
    }

    return render_template('registrar.html', fields=fields, dados=ler_dados())
Пример #11
0
def newEsf(name, id_cidade):

    esf = EstrategiaSaudeFamiliar(name, id_cidade)

    db = Database()
    db.saveData(esf)
Пример #12
0
 def insertRelation(self, obj, id):
     obj.id_atendimento = id
     db = Database()
     db.saveData(obj)
Пример #13
0
    "Não apresentou nenhum sintoma"
])

# Indicadores de medicamento
db.saveList(Indicador, [
    "Médico", "Enfermeiro", "Vizinho/Familiar/Amigo/Conhecido", "Dentista",
    "Tomou por conta própria"
])

# Orientacoes finais
db.saveList(OrientacaoFinal, [
    "Encaminhamento para avaliação presencial",
    "Acompanhamento telefônico em 24 horas",
    "Acompanhamento telefônico em 48 horas",
    "Discussão do caso com o supervisor", "Contato com o serviço"
])

db.saveData(
    AdmSaude(nome='Edson Onildo Machado do Bonfim Junior',
             crm=None,
             cpf='45381108842',
             is_supervisor=True,
             senha='32461462'))

db.saveData(
    AdmSaude(nome='Isabela Silva de Carvalho',
             crm=None,
             cpf='99999999999',
             is_supervisor=True,
             senha='12345678910'))