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))
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))
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