예제 #1
0
def atualiza_paciente(request):
    """Função para atualização de pacientes"""
    dados = get_dados(request)
    if request.method == 'POST':
        paciente_id = request.POST['paciente_id']
        paciente = get_object_or_404(Paciente, id=paciente_id)
        paciente.nome = request.POST['nome']
        paciente.sexo = request.POST['sexo']
        paciente.data_nascimento = datetime.strptime(request.POST['dt_nasc'],
                                                     '%d/%m/%Y').date()
        paciente.carteira_convenio = request.POST['convenio']
        paciente.cpf = request.POST['cpf']
        paciente.rg = request.POST['rg']
        paciente.email = request.POST['email']
        paciente.telefone = request.POST['telefone']
        paciente.celular = request.POST['celular']
        if dados['tipo'] == 1:
            paciente.peso = request.POST['peso']
            paciente.altura = request.POST['altura']
        if dados['tipo'] == 2:
            paciente.endereco = request.POST['endereco']
            paciente.end_num = request.POST['end_num']
            paciente.complemento = request.POST['complemento']
        paciente.save()

    return redirect('pacientes')
예제 #2
0
def nova_consulta(request):
    """
    Função para redirecionar para o cadastro de novas consultas
    """
    dados = get_dados(request)
    dados['form'] = CadConsulta()
    
    return render(request, 'consulta/nova_consulta.html', dados)
예제 #3
0
def editar(request, consulta_id):
    dados = get_dados(request)
    dados['form'] = CadConsulta()
    try:
        dados['consulta'] = get_object_or_404(Consulta, id=consulta_id)
    except:
        pass

    return render(request, 'consulta/editar_consulta.html', dados)
예제 #4
0
def detalhe(request, paciente_id):
    paciente = get_object_or_404(Paciente, id=paciente_id)
    imc = calculo_imc(paciente.peso, paciente.altura)
    paciente.imc = imc
    exames = get_list_or_404(Exame_Resultado, paciente=paciente)
    dados = get_dados(request)
    exames.reverse()
    paginator = Paginator(exames, 5)
    page = request.GET.get('page')
    exames_por_pagina = paginator.get_page(page)

    dados['paciente'] = paciente
    dados['exames'] = exames_por_pagina
    return render(request, 'paciente/det_paciente.html', dados)
예제 #5
0
def listar(request):
    dados = get_dados(request)
    filtro = request.GET.get('filtro', '')
    if filtro is not None:
        lst_pacientes = Paciente.objects.filter(
            Q(nome__icontains=filtro) | Q(carteira_convenio__icontains=filtro))
    else:
        lst_pacientes = Paciente.objects.all()

    paginator = Paginator(lst_pacientes, 5)
    page = request.GET.get('page')
    pacientes_por_pagina = paginator.get_page(page)
    dados['lst_pacientes'] = pacientes_por_pagina

    return render(request, 'paciente/lista_pacientes.html', dados)
예제 #6
0
def listar(request):
    """Função para listar as consultas"""
    dados = get_dados(request)
    data = date.today()

    if dados['tipo'] == 1:
        lst_consultas = Consulta.objects.filter(medico=dados['usuario'], data__gte=data).order_by('data', 'hora')
    else:
        lst_consultas = Consulta.objects.filter(data__gte=data).order_by('data', 'hora')


    paginator = Paginator(lst_consultas, 5)
    page = request.GET.get('page')
    consulta_por_pagina = paginator.get_page(page)
    dados['consultas'] = consulta_por_pagina

    return render(request, 'consulta/consultas.html', dados)
예제 #7
0
def detalhe(request, paciente_id):
    """Função para detalhes de pacientes"""
    paciente = get_object_or_404(Paciente, id=paciente_id)
    imc = calculo_imc(paciente.peso, paciente.altura)
    paciente.imc = imc
    dados = get_dados(request)
    exames = Exame_Resultado.objects.filter(
        paciente=paciente).order_by('data_exame').reverse()

    if len(exames) > 0:
        paginator = Paginator(exames, 5)
        page = request.GET.get('page')
        exames_por_pagina = paginator.get_page(page)
        dados['exames'] = exames_por_pagina

    dados['paciente'] = paciente
    return render(request, 'paciente/det_paciente.html', dados)
예제 #8
0
def detalhes(request, paciente_id):
    """Função para mostrar os detalhes do paciente e exames."""
    dados = get_dados(request)
    paciente = get_object_or_404(Paciente, id=paciente_id)
    paciente.idade = calculo_idade(paciente.data_nascimento)
    paciente.imc = calculo_imc(paciente.peso, paciente.altura)
    #Paginação
    exames = Exame_Resultado.objects.filter(
        paciente=paciente).order_by('data_exame').reverse()
    paginator = Paginator(exames, 6)
    page = request.GET.get('page')
    exames_por_pagina = paginator.get_page(page)
    dados['paciente'] = paciente
    dados['exames'] = exames_por_pagina
    dados['lst_estimativa'] = estimativa(paciente)
    dados['exame_referencia'] = exame_referencia(paciente.idade)
    dados['exames_grafico'] = converte_grafico(exames)

    return render(request, 'exames/exames.html', dados)
예제 #9
0
def listar(request):
    dados = get_dados(request)
    url = ''
    if dados['tipo'] == 1:
        lst_consultas = Consulta.objects.filter(medico=dados['usuario']).reverse()
        lst_consultas = separa_data_hr(lst_consultas)
        url = 'consulta/consultas_medico.html'
    else:
        lst_consultas = Consulta.objects.order_by('medico').reverse()
        lst_consultas = separa_data_hr(lst_consultas)
        url = 'consulta/consultas_atendente.html'
            
    
    paginator = Paginator(lst_consultas, 5)  
    page = request.GET.get('page')
    consulta_por_pagina = paginator.get_page(page)
    dados['consultas'] = consulta_por_pagina

    return render(request, url , dados)
    
예제 #10
0
def adicionar(request):
    paciente = Paciente()
    dados = get_dados(request)
    dados['paciente'] = paciente
    return render(request, 'paciente/adiciona_paciente.html', dados)
예제 #11
0
def alterar(request, paciente_id):
    paciente = get_object_or_404(Paciente, id=paciente_id)
    dados = get_dados(request)
    dados['paciente'] = paciente
    return render(request, 'paciente/altera_paciente.html', dados)
예제 #12
0
def adicionar(request):
    """Função para redirecionar para pagina de cadastro de pacientes"""
    dados = get_dados(request)
    paciente = Paciente()
    dados['paciente'] = paciente
    return render(request, 'paciente/adiciona_paciente.html', dados)
예제 #13
0
def alterar(request, paciente_id):
    """Função para redirecionar para a pagina de alteração de pacientes"""
    paciente = get_object_or_404(Paciente, id=paciente_id)
    dados = get_dados(request)
    dados['paciente'] = paciente
    return render(request, 'paciente/altera_paciente.html', dados)