예제 #1
0
 def criaConsulta(cls, form, status, usuario):
     if type(form) is ConsultaForm:
         medicoId = form.cleaned_data['medico']
     else:
         medicoId = form.cleaned_data['idMedico']
     pacienteId = form.cleaned_data['idPaciente']
     consulta = Consulta()
     medico = Medico.objects.get(id=medicoId)
     paciente = Paciente.objects.get(id=pacienteId)
     consulta.medico = medico
     consulta.paciente = paciente
     consulta.status = status
     consulta.data = form.cleaned_data['dataConsulta']
     if Consulta.isConsultaDuplicada(medico, paciente):
         raise ConsultationLimitException, 'O paciente %(nomePaciente)s ja tem uma consulta\
          marcada com o medico %(nomeMedico)s' % {
             'nomePaciente': paciente.first_name,
             'nomeMedico': medico.first_name
         }
     consulta.save()
     medico.agenda.consultas.add(consulta)
     Mensagem.consultaMarcada(medico, usuario)
     if status == Consulta.PENDENTE:
         Tarefa.criaTarefaConfirmacaoConsulta(medico, consulta)
     for atendente in Atendente.objects.all():
         Mensagem.consultaMarcada(atendente, usuario)
         if status == Consulta.PENDENTE:
             Tarefa.criaTarefaConfirmacaoConsulta(atendente, consulta)
     return consulta
예제 #2
0
 def criaConsulta(cls, form, status, usuario):
     if type(form) is ConsultaForm:
         medicoId = form.cleaned_data['medico']
     else:
         medicoId = form.cleaned_data['idMedico']
     pacienteId = form.cleaned_data['idPaciente']
     consulta = Consulta()
     medico = Medico.objects.get(id=medicoId)
     paciente = Paciente.objects.get(id=pacienteId)
     consulta.medico = medico
     consulta.paciente = paciente
     consulta.status = status
     consulta.data = form.cleaned_data['dataConsulta']
     if Consulta.isConsultaDuplicada(medico, paciente):
         raise ConsultationLimitException, 'O paciente %(nomePaciente)s ja tem uma consulta\
          marcada com o medico %(nomeMedico)s' %{'nomePaciente':paciente.first_name, 'nomeMedico':medico.first_name}
     consulta.save()
     medico.agenda.consultas.add(consulta)
     Mensagem.consultaMarcada(medico, usuario)
     if status == Consulta.PENDENTE:
         Tarefa.criaTarefaConfirmacaoConsulta(medico, consulta)
     for atendente in Atendente.objects.all():
         Mensagem.consultaMarcada(atendente, usuario)
         if status == Consulta.PENDENTE:
             Tarefa.criaTarefaConfirmacaoConsulta(atendente, consulta)
     return consulta
예제 #3
0
def atendente(request):
    atendimentosMes = Atendimento.buscaAtendimentosPorPeriodo("mes")
    atendimentosHoje = Atendimento.buscaAtendimentosPorPeriodo("dia")
    atendimentosAguardandoChegada = Atendimento.buscaAtendimentosPorStatus(Atendimento.AGUARDANDO_CHEGADA)
    consultasAguardandoConfirmacao = Consulta.buscaConsultasPorStatus(Consulta.PENDENTE)
    listaMensagens = []
    listaTarefas = []
    if request.user.id != None:
        listaMensagens = Mensagem.buscaMensagens(request.user)  
        listaTarefas = Tarefa.buscaTarefasPorStatus(request.user, Tarefa.PENDENTE)
    return render_to_response('dashboard/atendente.html', {'atendimentosMes':atendimentosMes, 'atendimentosHoje':atendimentosHoje, 
                                'atendimentosAguardandoChegada':atendimentosAguardandoChegada, 'consultasAguardandoConfirmacao':consultasAguardandoConfirmacao, 
                                'listaMensagens':listaMensagens, 'listaTarefas':listaTarefas}, context_instance=RequestContext(request))
예제 #4
0
def mostrar(request, id):
    tarefa = Tarefa()
    consulta = Consulta.objects.get(id=id)
    try:
        tarefa = Tarefa.objects.get(id=request.GET['tarefa_id'])
    except MultiValueDictKeyError:
        pass


#    if consulta == None:
#      return redirect('atendimento_listar')
    return render_to_response('consulta/mostrar.html', {
        'tarefa': tarefa,
        'consulta': consulta
    },
                              context_instance=RequestContext(request))
예제 #5
0
def atendente(request):
    atendimentosMes = Atendimento.buscaAtendimentosPorPeriodo("mes")
    atendimentosHoje = Atendimento.buscaAtendimentosPorPeriodo("dia")
    atendimentosAguardandoChegada = Atendimento.buscaAtendimentosPorStatus(
        Atendimento.AGUARDANDO_CHEGADA)
    consultasAguardandoConfirmacao = Consulta.buscaConsultasPorStatus(
        Consulta.PENDENTE)
    listaMensagens = []
    listaTarefas = []
    if request.user.id != None:
        listaMensagens = Mensagem.buscaMensagens(request.user)
        listaTarefas = Tarefa.buscaTarefasPorStatus(request.user,
                                                    Tarefa.PENDENTE)
    return render_to_response('dashboard/atendente.html', {
        'atendimentosMes': atendimentosMes,
        'atendimentosHoje': atendimentosHoje,
        'atendimentosAguardandoChegada': atendimentosAguardandoChegada,
        'consultasAguardandoConfirmacao': consultasAguardandoConfirmacao,
        'listaMensagens': listaMensagens,
        'listaTarefas': listaTarefas
    },
                              context_instance=RequestContext(request))