def create(request): form = ClienteForm(request.POST or None) if form.is_valid(): form.save() return redirect('cliente_principal') return render(request, 'cliente_novo.html', {'form': form})
def edit_cliente(request, pk): redirect_to = request.REQUEST.get('next', '') try: id_clie = Cliente.objects.get(pk=pk) except ObjectDoesNotExist as ex: mensaje = "El cliente no existe" except Exception as ex: mensaje = "se ha producido un error"+str(ex) if request.method == 'POST': # formulario enviado editar_clie = ClienteForm(request.POST, instance=id_clie) if editar_clie.is_valid(): # formulario validado correctamente editar_clie.save() #return HttpResponseRedirect(reverse('uclientes:lista_cliente')) if redirect_to: return HttpResponseRedirect(redirect_to) else: return HttpResponseRedirect(reverse('uclientes:ficha_cliente', args=(id_clie.id,))) else: # formulario inicial editar_clie = ClienteForm(instance=id_clie) mensaje = "" return render_to_response('cliente_edit.html', {'editar_clie': editar_clie, 'id_cli': pk, 'create': False, 'mensaje': mensaje}, context_instance=RequestContext(request))
def cliente(request): activate('es') if request.method == "POST": form = ClienteForm(request.POST) if form.is_valid(): try: form.save() return redirect('/cliente/todos') except Exception as e: print('%s (%s)' % (e, type(e))) pass else: print('no valido') else: form = ClienteForm() if form.errors: for field in form: for error in field.errors: #print(field.name % " | " % error) print(error) # for error in form.non_field_errors: # print('NFE | ') # print(error) return render(request, 'cliente/agregar.html', {'form': form})
def create(request): form = ClienteForm(request.POST or None) if form.is_valid(): form.save() return redirect("cliente_principal") return render(request, "cliente_novo.html", {"form": form})
def cliente_editar(request,id_cliente): ''' @cliente_editar: Metodo de edição de um cliente cadastrado na base ''' cliente = Cliente.objects.get(id=id_cliente) formCliente = ClienteForm(instance=cliente) if request.user.groups.all()[0].name == 'Tecnico Externo': usuario = Usuario.objects.get(id=request.user.id) formCliente.fields['grupo_trabalho'].queryset = GrupoTrabalho.objects.filter(id=usuario.grupo_trabalho.id) if request.method == 'POST': formCliente = ClienteForm(request.POST,instance=cliente) if request.user.groups.all()[0].name == 'Tecnico Externo': usuario = Usuario.objects.get(id=request.user.id) formCliente.fields['grupo_trabalho'].queryset = GrupoTrabalho.objects.filter(id=usuario.grupo_trabalho.id) if formCliente.is_valid(): cliente = formCliente.save(commit=False) cliente.save() return HttpResponseRedirect( r('cliente:clientes')) else : return render(request, 'cliente_novo.html', { 'form':formCliente ,'id_cliente':id_cliente,'status':'Editar'}) else: return render(request,'cliente_novo.html',{'form':formCliente,'id_cliente':id_cliente,'status':'Editar'})
def solicitudPrestamo(request): if request.method == 'GET': solicitudForm = SolicitudForm() formCliente = ClienteForm() return render(request, 'solicitud.html', { 'solicitudForm': solicitudForm, 'formCliente': formCliente }) elif request.method == 'POST': solicitudForm = SolicitudForm(request.POST, request.FILES) formCliente = ClienteForm(request.POST, request.FILES) if solicitudForm.is_valid() and formCliente.is_valid(): try: cliente_obj = Cliente.objects.get( identificacion=formCliente['identificacion'].value()) except Cliente.DoesNotExist: cliente_obj = formCliente.save() prestamo = solicitudForm.save(commit=False) prestamo.cliente = cliente_obj emails = [] curadores = Usuario.objects.filter(rol='curador') for curador in curadores: emails.append(curador.email) directores = Usuario.objects.filter(rol='director') for director in directores: emails.append(director.email) emails.append(cliente_obj.correo) email_subject = 'Solicitud prestamo' email_body = "Buen día, \n Se ha realizado la solicitud de prestamo exitosamente" # send_mail(email_subject, email_body, '*****@*****.**', emails, fail_silently=False) prestamo.save() messages.success( request, "Se ha realizado la solicitud de prestamo exitosamente") return HttpResponseRedirect( reverse_lazy('prestamo:solicitar_prestamo')) else: prestamo = Prestamo() cliente = Cliente() solicitudForm = SolicitudForm(request.POST, request.FILES, instance=prestamo) formCliente = ClienteForm(request.POST, request.FILES, instance=cliente) messages.error(request, 'Por favor verifique los campos del formulario') return render(request, 'solicitud.html', { 'solicitudForm': solicitudForm, 'formCliente': formCliente })
def cliente_update(request, pk): cliente = Cliente.objects.get(id=pk) form = ClienteForm(request.POST or None, instance=cliente) if form.is_valid(): form.save() return redirect('cliente_lista') return render(request, 'cliente_detalhe.html', {'object':cliente, 'form': form})
def actualizar(request, id): activate('es') cliente = get_object_or_404(Cliente, _id=id) form = ClienteForm(request.POST or None, instance=cliente) if form.is_valid(): form.save() return redirect("/cliente/todos") return render(request, 'cliente/editar.html', { 'form' : form })
def cliente_update(request, pk): cliente = Cliente.objects.get(pk=pk) form = ClienteForm(request.POST or None, instance=cliente) if form.is_valid(): form.save() return redirect("cliente_principal") # return HttpResponse('Cliente'+str(pk)) return render(request, "cliente_listagem.html", {"objets": cliente, "form": form})
def cliente(request): # Pega as informacoes necessarias para o preenchimento da tabela: # # 1. Nome do cliente # 2. Telefone celular do cliente # 3. Ha pedidos em aberto (True || False) # 4. Quantidade de produtos comprados # clientes = Cliente.objects.all() for cliente in clientes: cliente.produtos = Produto.objects.filter(cliente=cliente.id) cliente.pedidos = Pedido.objects.filter( cliente=cliente.id, prazo__gte=datetime.datetime.now()) # Envia os formularios para adicionar novo cliente e endereco clienteForm = ClienteForm() enderecoForm = EnderecoForm() retornoAdd = False if request.method == 'POST': clienteForm = ClienteForm(request.POST) enderecoForm = EnderecoForm(request.POST) cliente_valido = clienteForm.is_valid() endereco_valido = enderecoForm.is_valid() if cliente_valido and endereco_valido: # Salva o novo endereco no BD endereco = enderecoForm.save() # Salva o novo cliente no BD cliente = clienteForm.save(commit=False) cliente.endereco = endereco tipo_id = clienteForm.cleaned_data.get("tipo_identidade") if (tipo_id == 'FISICA'): cliente.juridico = False else: cliente.juridico = True cliente.save() clienteForm = ClienteForm() enderecoForm = EnderecoForm() retornoAdd = True return render( request, 'cliente.html', { 'clientes': clientes, 'clienteForm': clienteForm, 'enderecoForm': enderecoForm, 'retornoAdd': retornoAdd })
def editar_cliente(request, id): cliente = Clientes.objects.get(docCliente=id) if request.method == 'GET': cliente_form = ClienteForm(instance=cliente) else: cliente_form = ClienteForm(request.POST, instance=cliente) if cliente_form.is_valid(): cliente_form.save() redirect('index') return render(request, 'cliente/crear_cliente.html', {'form': cliente_form})
def crear_cliente(request): if request.method == 'POST': cliente_form = ClienteForm(request.POST) if cliente_form.is_valid(): cliente_form.save() messages.error(request, "Ya existe un cliente con esta identificacion!!") return redirect("index") else: cliente_form = ClienteForm() return render(request, 'cliente/crear_cliente.html', {'form': cliente_form})
def cadastro(request): if request.method != 'POST': form = ClienteForm() return render(request, 'cliente/cadastro.html', {'form': form}) form = ClienteForm(request.POST) if not form.is_valid(): form = ClienteForm(request.POST) return render(request, 'cliente/cadastro.html', {'form': form}) form.save() return redirect('cliente')
def update(request, pk): cliente = Cliente.objects.get( pk=pk) # NOME DA CLASSE.objects.get(PARAMETRO WHERE) form = ClienteForm(request.POST or None, instance=cliente) if form.is_valid(): form.save() return redirect('cliente_principal') return render(request, 'cliente_detalhe.html', { 'object': cliente, 'form': form })
def cliente(request): # Pega as informacoes necessarias para o preenchimento da tabela: # # 1. Nome do cliente # 2. Telefone celular do cliente # 3. Ha pedidos em aberto (True || False) # 4. Quantidade de produtos comprados # clientes = Cliente.objects.all() for cliente in clientes: cliente.produtos = Produto.objects.filter(cliente=cliente.id) cliente.pedidos = Pedido.objects.filter(cliente=cliente.id, prazo__gte=datetime.datetime.now()) # Envia os formularios para adicionar novo cliente e endereco clienteForm = ClienteForm() enderecoForm = EnderecoForm() retornoAdd = False if request.method == 'POST': clienteForm = ClienteForm(request.POST) enderecoForm = EnderecoForm(request.POST) cliente_valido = clienteForm.is_valid() endereco_valido = enderecoForm.is_valid() if cliente_valido and endereco_valido: # Salva o novo endereco no BD endereco = enderecoForm.save() # Salva o novo cliente no BD cliente = clienteForm.save(commit=False) cliente.endereco = endereco tipo_id = clienteForm.cleaned_data.get("tipo_identidade") if (tipo_id == 'FISICA'): cliente.juridico = False else: cliente.juridico = True cliente.save() clienteForm = ClienteForm() enderecoForm = EnderecoForm() retornoAdd = True return render(request, 'cliente.html', {'clientes': clientes, 'clienteForm': clienteForm, 'enderecoForm': enderecoForm, 'retornoAdd':retornoAdd})
def add_cliente(request): mensaje = '' if request.method == 'POST': try: cliente_form = ClienteForm(request.POST) if cliente_form.is_valid(): cliente_form.save() mensaje = 'Se ha guardado la información del cliente' return HttpResponseRedirect(reverse('uclientes:lista_cliente')) except Exception as ex: cliente_form = ClienteForm() mensaje = "se ha producido un error"+str(ex) else: cliente_form = ClienteForm() return render_to_response('cliente_add.html', {'cliente_form': cliente_form, 'create': True, 'mensaje': mensaje}, context_instance=RequestContext(request))
def salvar(request, id=None): dados = {} form = ClienteForm(request.POST or None) formEndereco = EnderecoForm(request.POST or None) if form.is_valid() and formEndereco.is_valid(): cliente = form.save(commit=False) if id not in (None, '0'): cliente.id = id cliente.endereco = formEndereco.save() cliente.save() mensagem = 'Cliente salvo com sucesso!' return lista(request) else: dados['form'] = form dados['formEndereco'] = formEndereco dados['erros'] = form.errors dados['errosEnd'] = formEndereco.errors return render(request, template_novo, dados)
def edit_cliente(request, pk): redirect_to = request.REQUEST.get('next', '') try: id_clie = Cliente.objects.get(pk=pk) except ObjectDoesNotExist as ex: mensaje = "El cliente no existe" except Exception as ex: mensaje = "se ha producido un error" + str(ex) if request.method == 'POST': # formulario enviado editar_clie = ClienteForm(request.POST, instance=id_clie) if editar_clie.is_valid(): # formulario validado correctamente editar_clie.save() #return HttpResponseRedirect(reverse('uclientes:lista_cliente')) if redirect_to: return HttpResponseRedirect(redirect_to) else: return HttpResponseRedirect( reverse('uclientes:ficha_cliente', args=(id_clie.id, ))) else: # formulario inicial editar_clie = ClienteForm(instance=id_clie) mensaje = "" return render_to_response('cliente_edit.html', { 'editar_clie': editar_clie, 'id_cli': pk, 'create': False, 'mensaje': mensaje }, context_instance=RequestContext(request))
def add_cliente(request): mensaje = '' if request.method == 'POST': try: cliente_form = ClienteForm(request.POST) if cliente_form.is_valid(): cliente_form.save() mensaje = 'Se ha guardado la información del cliente' return HttpResponseRedirect(reverse('uclientes:lista_cliente')) except Exception as ex: cliente_form = ClienteForm() mensaje = "se ha producido un error" + str(ex) else: cliente_form = ClienteForm() return render_to_response('cliente_add.html', { 'cliente_form': cliente_form, 'create': True, 'mensaje': mensaje }, context_instance=RequestContext(request))
def cliente_novo(request): ''' @cliente_novo: Metodo de criação de um novo Cliente ''' formCliente = ClienteForm() if request.user.groups.all()[0].name == 'Tecnico Externo': usuario = Usuario.objects.get(id=request.user.id) formCliente.fields['grupo_trabalho'].queryset = GrupoTrabalho.objects.filter(id=usuario.grupo_trabalho.id) if request.method == 'POST': formCliente = ClienteForm(request.POST) if request.user.groups.all()[0].name == 'Tecnico Externo': usuario = Usuario.objects.get(id=request.user.id) formCliente.fields['grupo_trabalho'].queryset = GrupoTrabalho.objects.filter(id=usuario.grupo_trabalho.id) if formCliente.is_valid(): cliente = formCliente.save(commit=False) cliente.save() return HttpResponseRedirect( r('cliente:contatos', kwargs={'id_cliente':cliente.id})) else: return render(request,'cliente_novo.html',{'form': formCliente,'status':'Novo'}) else: return render(request,'cliente_novo.html',{'form': formCliente,'status':'Novo'})
def test_form_cliente(self): form = ClienteForm(data=self.data) self.assertEqual(form.is_valid(), True) response = self.client.post(reverse('add_cliente'), {'data': self.data}) self.assertEqual(response.status_code, 302)
def realizarPrestamo(request, pk): if request.method == 'GET': prestamo = Prestamo() cliente = Cliente() try: prestamo = Prestamo.objects.get(pk=pk) cliente = prestamo.cliente prestamoForm = PrestamoForm(instance=prestamo) formCliente = ClienteForm(instance=cliente) for field in formCliente.fields.items(): if field[0] != 'correo' and field[0] != 'num_contacto': field[1].widget.attrs['readonly'] = True return render(request, 'prestamo.html', { 'prestamoForm': prestamoForm, 'formCliente': formCliente }) except Prestamo.DoesNotExist: messages.error(request, 'No existe la solicitud en consulta') return HttpResponseRedirect( reverse_lazy('prestamo:listar_solicitud')) elif request.method == 'POST': prestamoForm = PrestamoForm(request.POST, request.FILES) formCliente = ClienteForm(request.POST, request.FILES) try: prestamo = Prestamo.objects.get(pk=pk) cliente = prestamo.cliente except Prestamo.DoesNotExist: messages.error(request, 'No existe la solicitud en consulta') return HttpResponseRedirect( reverse_lazy('prestamo:listar_solicitud')) if prestamoForm.is_valid() and formCliente.is_valid(): prestamo.solicitud = prestamoForm['solicitud'].value() prestamo.num_registro = prestamoForm['num_registro'].value() prestamo.fecha_entrega = datetime.now() prestamo.fecha_devolucion = prestamoForm['fecha_devolucion'].value( ) prestamo.observaciones_entrega = prestamoForm[ 'observaciones_entrega'].value() prestamo.encargado = request.user cliente.nombre_completo = formCliente['nombre_completo'].value() cliente.tipo_identificacion = formCliente[ 'tipo_identificacion'].value() cliente.identificacion = formCliente['identificacion'].value() cliente.correo = formCliente['correo'].value() cliente.num_contacto = formCliente['num_contacto'].value() prestamo.cliente = cliente prestamo.estado = 'prestamo' cliente.save() prestamo.save() messages.success(request, 'Se ha realizado el prestamo con éxito') return HttpResponseRedirect( reverse_lazy('prestamo:listar_solicitud')) else: messages.error(request, 'Por favor verifique los datos del formulario') prestamoForm = PrestamoForm(request.POST, request.FILES, instance=prestamo) formCliente = ClienteForm(request.POST, request.FILES, instance=cliente) return render(request, 'prestamo.html', { 'prestamoForm': prestamoForm, 'formCliente': formCliente })
def RegistrarServicio(request, pk=None): if pk: try: servicio = Servicios.objects.get(pk=pk) cliente = Cliente.objects.get(pk=servicio.cliente.pk) mensaje_exito = "Se edito exitosamente" except Servicios.DoesNotExist: messages.error(request, 'No existe el servicio en consulta') return HttpResponseRedirect( reverse_lazy('servicios:crear_servicio')) else: servicio = Servicios() cliente = Cliente() mensaje_exito = 'Se ha guardado exitosamente' # viewsRedirect='especimen:crear_especimen' if request.method == 'POST': print("solicitud post") formServicio = ServiciosForm(request.POST, request.FILES, instance=servicio) formCliente = ClienteForm(request.POST, request.FILES, instance=cliente) if formServicio.is_valid() and formCliente.is_valid(): print("valido") try: cliente_obj = Cliente.objects.get( identificacion=formCliente['identificacion'].value()) except Cliente.DoesNotExist: cliente_obj = formCliente.save() servicio = formServicio.save(commit=False) servicio.cliente = cliente_obj if pk == None: servicio.encargado = request.user servicio.ticket = genTicket() servicio.save() messages.success(request, mensaje_exito) print("se envio") return HttpResponseRedirect( reverse_lazy('servicios:listar_servicio')) else: print('algun formulario esta invalido') print(formServicio.errors) print(formCliente.errors) contexto = { 'formServicio': formServicio, 'formCliente': formCliente, 'submit': True } else: formServicio = ServiciosForm(instance=servicio) formCliente = ClienteForm(instance=cliente) contexto = { 'formServicio': formServicio, 'formCliente': formCliente, 'submit': True } return render(request, 'registrar_servicio.html', contexto)