Example #1
0
def ajax_checkin_paciente(request, paciente_id):
    paciente = get_object_or_404(Paciente, pk=paciente_id)
    
    if request.method == 'POST':
        checkin_paciente_form = CheckinPacienteForm(request.POST)
        if checkin_paciente_form.is_valid():
            tratamento              = checkin_paciente_form.cleaned_data['tratamento']
            senha                   = checkin_paciente_form.cleaned_data['senha']
            redirecionar            = checkin_paciente_form.cleaned_data['redirecionar']
            prioridade              = checkin_paciente_form.cleaned_data['prioridade']
            observacao_prioridade   = checkin_paciente_form.cleaned_data['observacao_prioridade']

            try:
                logic_atendimento.checkin_paciente(paciente, tratamento, senha, redirecionar, prioridade, observacao_prioridade)
                return HttpResponse("O checking de %s foi realizado com sucesso" % paciente.nome)
            except Exception, e:
                return HttpResponse("Erro: %s" % e)
        else:
            return HttpResponse("errro %s" % str(checkin_paciente_form.errors))
Example #2
0
def ajax_checkin_paciente(request, paciente_id):
    paciente = get_object_or_404(Paciente, pk=paciente_id)
    
    dic_retorno = {'sucesso_checkin':False, 'sucesso_ponto':False, 'mensagem_checin':'', 'mensagem_ponto':''}
    lista_atendimentos = logic_atendimento.atendimentos_paciente(paciente.id)
    
    voluntarios = Voluntario.objects.filter(paciente = paciente, ativo = True)
    voluntario = None
    if len(voluntarios) > 0:
        voluntario = voluntarios[0]
    
    
    if request.method == 'POST':
        checkin_paciente_form = CheckinPacienteForm(request.POST)
        if checkin_paciente_form.is_valid():
            tratamento              = checkin_paciente_form.cleaned_data['tratamento']
            senha                   = checkin_paciente_form.cleaned_data['senha']
            redirecionar            = checkin_paciente_form.cleaned_data['redirecionar']
            prioridade              = checkin_paciente_form.cleaned_data['prioridade']
            observacao_prioridade   = checkin_paciente_form.cleaned_data['observacao_prioridade']
            ponto_voluntario        = checkin_paciente_form.cleaned_data['ponto_voluntario']
            forcar_checkin          = checkin_paciente_form.cleaned_data['forcar_checkin']

            dic_ponto = None
            dic_checkin = None
            msg_validacao = None

            if redirecionar == None and tratamento == None and ponto_voluntario == 'N':
                msg_validacao = "Favor informar o tratamento ou confirmar o ponto do voluntário"

            if ponto_voluntario == 'S' and (redirecionar != None or tratamento != None):
                msg_validacao = "Operação não realizada: Para efetuar o ponto de saída do voluntário é necessário que \
                    todos os outros campos estejam vazios"

            try:
                if msg_validacao == None and (tratamento or redirecionar):
                    dic_checkin = logic_atendimento.checkin_paciente(paciente, tratamento, \
                        senha, redirecionar, prioridade, observacao_prioridade, forcar_checkin)
                
                if msg_validacao == None and ponto_voluntario != 'N':
                    dic_ponto = voluntario_logic.ponto_voluntario(paciente, ponto_voluntario)

                return render_to_response('ajax-checkin-paciente-resultado.html', {'paciente':paciente, \
                    'voluntario':voluntario, 'dic_checkin':dic_checkin, 'dic_ponto':dic_ponto, \
                    'msg_validacao':msg_validacao, 'senha':senha})
                
            except Exception, e:
                return HttpResponse("Erro: %s" % str(e))
        else:
            return HttpResponse("Erro %s" % str(checkin_paciente_form.errors))
Example #3
0
    def save(self, paciente):
        ts = self.cleaned_data["tratamentos"]

        if paciente == None:
            return []

        lista_dic = []
        for t in self.TRATAMENTOS_CHOICES:
            if str(t[0]) in ts:
                # realiza check-in para o tratamento.
                tratamento = Tratamento.objects.get(descricao_basica=t[1])
                dic = logic_atendimento.checkin_paciente(paciente, tratamento, None, None, False, None, False)
                lista_dic.append(dic)

        return lista_dic