def test_create_form_invalid(self): usuario = Usuario(username='******', password='******') cliente = Cliente(nombre='client1', direccion='Azara', email='*****@*****.**') cliente.save() usuario.save() form = ProyectoForm({ 'nombre': 'proyecto', 'fecha_creacion': timezone.now(), 'fecha_fin': (timezone.now() - timezone.timedelta(days=1)), 'fecha_inicio': timezone.now(), 'lider_proyecto': str(usuario.pk), 'cliente': str(cliente.pk), 'descripcion': 'Descripcion', 'estado': 'PEN', 'observaciones': 'No hay observaciones' }) self.assertFalse(form.is_valid())
def create_cliente(request): """ Funcion para crear cliente utilizando el form ClienteForm. Recibe en el request el form completado, o displaya uno vacio en caso de que no se llame a post. Controla la validez del form antes de guardarlo como un cliente nuevo en la base de datos. Parametros: Recibe el request. Retorna: -El render del template cliente_create.html en caso de form vacio o invalido. -Redireccion a lista de clientes si el form es valido """ if request.method == 'POST': form = ClienteForm(request.POST) if form.is_valid(): nombreC = form.cleaned_data['nombre'] direccionC = form.cleaned_data['direccion'] emailC = form.cleaned_data['email'] p = Cliente(nombre=nombreC, direccion=direccionC, email=emailC) p.save() return HttpResponseRedirect('/cliente/' + str(p.id)) else: form = ClienteForm() return render(request, 'cliente_create.html', {'form': form}, context_instance=RequestContext(request))
def save(request): '''Graba los datos''' c = {} c.update(csrf(request)) if request.method == 'POST': nombre = request.POST['nombre'] apellido = request.POST['apellido'] provincia = request.POST['provincia'] pais = request.POST['pais'] fechaNacimiento = request.POST['fechaNacimiento'] if request.POST['id'] != "": clienteSave = Cliente.objects.get(pk=request.POST['id']) clienteSave.nombre = nombre clienteSave.apellido = apellido clienteSave.provincia = provincia clienteSave.pais = pais clienteSave.fechaNacimiento = fechaNacimiento else: clienteSave = Cliente(nombre=nombre, apellido=apellido, provincia=provincia, pais=pais, fechaNacimiento=fechaNacimiento) try: clienteSave.save() return render(request, 'cliente/save_cliente.html') except: print 'error_message'
def apropriar_dados_http_chave(cls, request): m_cliente = Cliente() d_dados_app = request.data['dados_app'] d_cliente = d_dados_app['cliente'] m_cliente.cpf = d_cliente['cpf'] m_cliente.email = d_cliente['email'] return m_cliente
def extrair_cliente_dados_http(cls, request): m_cliente = Cliente() d_dados_app = request.data['dados_app'] d_cliente = d_dados_app['cliente'] m_cliente.cpf = d_cliente['cpf'] return m_cliente
def cadastro_cliente(request): form = FormularioCadastroCliente(request.POST) if form.is_valid(): dados = form.data usuario = User.objects.create_user(username= dados['login'] , password= dados['senha'] , email= dados['email']) cliente = Cliente(nome= dados['nome'] , telefone= dados['telefone'] , usuario= usuario) cliente.save() carrinho = Carrinho(cliente= cliente) carrinho.save() return render(request , 'pagina_incial.html') return render(request , 'pagina_incial.html' , {'erro_cadastro' : True , 'formulario' : form})
def apropriar_dados_http(cls, request): m_produto = ProdutoViewSet.apropriar_dados_http_chave(request) m_produto.nome = request.data['nome'] m_produto.tipo = request.data['tipo'] m_produto.valor = request.data['valor'] m_cliente = Cliente() m_cliente.cpf = request.data['cpf'] m_produto.cliente = m_cliente return m_produto
def post(self, request): #verificando se eu tenho algo no request cliente = Cliente() cliente.nome = 'João' cliente.save() return Response({"Sucesso": True})
def apropriar_dados_http(cls, request): m_contrato = Contrato() m_cliente = Cliente() m_contrato.cliente = m_cliente d_dados_app = request.data d_contrato = d_dados_app['contrato'] d_cliente = d_dados_app['cliente'] m_cliente.cpf = d_cliente['cpf'] m_contrato.id_contrato = d_contrato['id_contrato'] return m_contrato
def obter_ultimo(self, request): try: m_cliente = Cliente() retorno_cliente = m_cliente.obter_ultimo() return Response(retorno_cliente.json()) except Exception as e: print(traceback.format_exception(None, e, e.__traceback__), file=sys.stderr, flush=True) retorno = Retorno( False, 'Falha de comunicação. Em breve será normalizado.', '') return Response(retorno.json())
def inicializar_contexto(self, request): super().inicializar_contexto(request) self.m_veiculo = Veiculo() self.m_cliente = Cliente() self.definir_contexto(self.m_veiculo) self.definir_contexto(self.m_cliente)
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 setUp(self): usuario = Usuario.objects.create_user(username='******', email='*****@*****.**', password='******', is_staff=True, is_superuser=True) cliente = Cliente(nombre='client1', direccion='Azara', email='*****@*****.**') cliente.save() usuario.save() self.client.login(username='******', password='******') proyecto = Proyecto( id=1, nombre='proyecto', fecha_fin=timezone.now(), fecha_inicio=timezone.now(), lider_proyecto=usuario, cliente=cliente, descripcion='Descripcion', ) proyecto.save() equipo = Equipo(proyecto=proyecto, nombre='equipo1') equipo.save() equipo.permisos = {'1'} equipo.usuarios = {'1'} equipo.save() tipo = TipoUS(pk=1, nombre='tipo') tipo.save() actividad = Actividades(pk=3, nombre='actividad', tipoUS=TipoUS.objects.get(pk=1)) actividad.save() us = US(descripcion_corta='a', descripcion_larga='a', tiempo_planificado=3, valor_negocio=1, urgencia=1, tipoUS=tipo, usuario_asignado=Usuario.objects.get(pk=1), proyecto=proyecto) us.save()
def apropriar_cliente_dados_http(self, d_contrato): m_cliente = self.definir_contexto(Cliente()) d_cliente = d_contrato['cliente'] m_cliente.nome = d_cliente['nome'] m_cliente.cpf = d_cliente['cpf'] m_cliente.email = d_cliente['email'] m_cliente.telefone = d_cliente['telefone'] return m_cliente
def test_puede_buscar_cliente(self): cliente = Cliente() cliente.nombre = 'ali' cliente.apellido = 'almandoz' cliente.telefono = 123456 cliente.direccion = 'ali' cliente.slug = 'ali-ali' cliente.mail = '*****@*****.**' cliente.save() self.browser.get(self.live_server_url) # ivan ingresa a la pagina. # nota que el titulo es: Bienvenido: self.assertIn('ArchivoImprimir.com.ar', self.browser.title) # Ivan hace una búsqueda en el sistema para averiguar si el cliente esta registrado en la base de datos. inputbox = self.browser.find_element_by_id('id_buscador') self.assertEqual(inputbox.get_attribute('placeholder'), 'Buscar Cliente') inputbox.send_keys('ali') inputbox.send_keys(Keys.ENTER) self.wait_for_row_in_list_table('ali')
def cliente_new(request): if request.method == 'POST': form = ClienteForm(request.POST, request.FILES) if form.is_valid(): form.save() return HttpResponse( '<h1>Cliente cadastrado com sucesso</h1><p><a href="/clientes/">Voltar</a></p>' ) else: c = Cliente() form = ClienteForm(instance=c) return render_to_response('cliente_new.html', {'form': form}, context_instance=RequestContext(request))
def _crear_cliente(self, num_clientes): """ arguments: num_clientes int load a num_clientes numbrer of Clientes instances in to the database the data is collected from a xlsx file in the pdf static folder through openpyxl library. """ help = 'load a num_clientes number of clients instances in to the data base' print('cargando {0} clientes en la base de datos'.format(num_clientes)) db_cli = [] for cliente in Cliente.objects.all(): db_cli.append(cliente.slug) for __ in range(num_clientes): row = random.randrange(1, 119) lista = load_workbook(filename='cliente/static/pdf/contactos.xlsx', read_only=True) cliente = Cliente( nombre=lista['contactos']['a' + str(row)].value, apellido=lista['contactos']['b' + str(row)].value, mail=lista['contactos']['e' + str(row)].value, telefono=lista['contactos']['d' + str(row)].value, direccion=lista['contactos']['c' + str(row)].value, slug=slugify(lista['contactos']['a' + str(row)].value + '-' + lista['contactos']['b' + str(row)].value), ) if cliente.slug in db_cli: print(cliente.slug + ': cliente en lista') else: cliente.save() print(cliente.nombre, cliente.apellido, cliente.slug, " agregado")
def test_log(self): usuario = Usuario.objects.create_user(username='******', email='*****@*****.**', password='******', is_staff=True, is_superuser=True) cliente = Cliente(nombre='client1', direccion='Azara', email='*****@*****.**') cliente.save() usuario.save() self.client.login(username='******', password='******') proyecto = Proyecto( id=1, nombre='proyecto', fecha_fin=timezone.now(), fecha_inicio=timezone.now(), lider_proyecto=usuario, cliente=cliente, descripcion='Descripcion', ) proyecto.save() resp = self.client.get('/proyecto/log_proyecto/1') self.assertEqual(resp.status_code, 301)
def crearUsuario(datos): id = int(datos['lugarNacimiento']) entidad = Entidad.objects.get(pk=id) nombres = datos['nombres'] apellidoPaterno = datos['apellidoPaterno'] apellidoMaterno = datos['apellidoMaterno'] nss = datos['nss'] email = datos['email'] servicios = datos['servicios'] fechaNacimiento = datos['fechaNacimiento'] fechaNacimiento = datetime.strptime(fechaNacimiento, '%Y-%m-%d') telefono = datos['telefono'] comentariosCliente = datos['comentariosCliente'] if nss != "": cl = Cliente(nombres=nombres, apellidoPaterno=apellidoPaterno, apellidoMaterno=apellidoMaterno, nss=nss, fechaNacimiento=fechaNacimiento, telefono=telefono, email=email, lugarNacimiento=entidad, comentariosCliente=comentariosCliente) else: cl = Cliente(nombres=nombres, apellidoPaterno=apellidoPaterno, apellidoMaterno=apellidoMaterno, fechaNacimiento=fechaNacimiento, telefono=telefono, email=email, lugarNacimiento=entidad, comentariosCliente=comentariosCliente) cl.save() cl.servicios.add(servicios) return cl
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)
class ClienteViewSet(AutenticacaoTriSafeViewSet, viewsets.ModelViewSet, permissions.BasePermission): queryset = Cliente.objects.all() serializer_class = ClienteSerializer def inicializar_contexto(self, request): super().inicializar_contexto(request) self.m_cliente = Cliente() self.definir_contexto(self.m_cliente) @action(detail=False, methods=['post']) def obter(self, request): try: self.apropriar_dados_http_chave(request.data) retorno_cliente = self.m_cliente.obter() return retorno_cliente.gerar_resposta_http() except Exception as e: retorno = Retorno(False, self, 'A consulta dos dados cadastrais falhou.', None, None, e) return retorno.gerar_resposta_http() @action(detail=False, methods=['post']) def obter_ultimo(self, request): try: self.apropriar_dados_http(request.data) retorno_cliente = self.m_cliente.obter_ultimo() return retorno_cliente.gerar_resposta_http() except Exception as e: retorno = Retorno(False, self, 'A consulta dos dados cadastrais falhou.', None, None, e) return retorno.gerar_resposta_http() @action(detail=False, methods=['post']) def incluir(self, request): try: self.apropriar_dados_http(request.data) retorno = self.m_cliente.incluir() return retorno.gerar_resposta_http() except Exception as e: retorno = Retorno(False, self, 'A inclusão dos dados cadastrais falhou.', None, None, e) return retorno.gerar_resposta_http() @action(detail=False, methods=['post']) def alterar(self, request): try: self.apropriar_dados_http(request.data) retorno = self.m_cliente.alterar() return retorno.gerar_resposta_http() except Exception as e: retorno = Retorno(False, self, 'A atualização dos dados cadastrais falhou.', None, None, e) return retorno.gerar_resposta_http() @action(detail=False, methods=['post']) def salvar_foto_cnh(self, request): try: self.apropriar_dados_http_chave(request.data) foto_cnh_base64 = self.apropriar_dados_http_foto_cnh(request.data) retorno_cliente = self.m_cliente.salvar_foto_cnh(foto_cnh_base64) return retorno_cliente.gerar_resposta_http() except Exception as e: retorno = Retorno(False, self, 'A inclusão da foto CNH falhou.', None, None, e) return retorno.gerar_resposta_http() def apropriar_dados_http_chave(self, d_dados_requisicao): d_cliente = d_dados_requisicao['cliente'] self.m_cliente.cpf = d_cliente['cpf'] self.m_cliente.email = d_cliente['email'] def apropriar_dados_http(self, d_dados_requisicao): self.apropriar_dados_http_chave(d_dados_requisicao) d_cliente = d_dados_requisicao['cliente'] self.m_cliente.nome = d_cliente['nome'] self.m_cliente.nome_usuario = d_cliente['nome_usuario'] self.m_cliente.rua = d_cliente['rua'] self.m_cliente.telefone = d_cliente['telefone'] self.m_cliente.numero = d_cliente['numero'] self.m_cliente.bairro = d_cliente['bairro'] self.m_cliente.cidade = d_cliente['cidade'] self.m_cliente.complemento = d_cliente['complemento'] self.m_cliente.cep = d_cliente['cep'] self.m_cliente.uf = d_cliente['uf'] def apropriar_dados_http_foto_cnh(self, d_dados_requisicao): d_veiculo = d_dados_requisicao['cliente'] d_foto_cnh = d_veiculo['foto_cnh'] return d_foto_cnh['foto_base64']
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 })