Exemple #1
0
 def test_dos_estacionamiento_muchos_pagos(self):
     n = 1000
     pro1 = Propietario(nombre="PepeUn",
                        ci='V-12345678',
                        tel="0412-1234567")
     pro1.save()
     e1 = Estacionamiento(
         ci_propietario=pro1,
         nombre="nom1",
         direccion="dir1",
         rif="J-123456789",
         capacidad=n,
         apertura=time(0, 0),
         cierre=time(23, 59),
     )
     pro2 = Propietario(nombre="PepeDos",
                        ci='V-12345679',
                        tel="0412-1234568")
     pro2.save()
     e2 = Estacionamiento(
         ci_propietario=pro2,
         nombre="nom2",
         direccion="dir3",
         rif="J-123456789",
         capacidad=n,
         apertura=time(0, 0),
         cierre=time(23, 59),
     )
     e1.save()
     e2.save()
     for i in range(0, n):
         r = Reserva(estacionamiento=e1,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0))
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedula="V-1234567",
             tipoPago="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     for i in range(0, n):
         r = Reserva(estacionamiento=e2,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0))
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedula="V-1234567",
             tipoPago="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     lista, total = consultar_ingresos("J-123456789")
     self.assertTrue(len(lista) == 2 and total == 2 * n * 100)
Exemple #2
0
 def test_dos_estacionamiento_muchos_pagos(self):
     n = 1000
     prop = Propietario(nombres="prop", apellidos="", cedula="")
     prop.save()
     e1 = Estacionamiento(
         propietario=prop,
         nombre="nom1",
         direccion="dir1",
         rif="J-123456789",
         capacidad=n,
         apertura=time(0, 0),
         cierre=time(23, 59),
     )
     e2 = Estacionamiento(
         propietario=prop,
         nombre="nom2",
         direccion="dir3",
         rif="J-123456789",
         capacidad=n,
         apertura=time(0, 0),
         cierre=time(23, 59),
     )
     e1.save()
     e2.save()
     for i in range(0, n):
         r = Reserva(estacionamiento=e1,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0))
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedulaTipo="V",
             cedula="1234567",
             tarjetaTipo="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     for i in range(0, n):
         r = Reserva(estacionamiento=e2,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0))
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedulaTipo="V",
             cedula="1234567",
             tarjetaTipo="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     lista, total = consultar_ingresos("J-123456789")
     self.assertTrue(len(lista) == 2 and total == 2 * n * 100)
Exemple #3
0
 def test_un_estacionamiento_un_pago(self):
     prop = Propietario(nombres="prop", apellidos="", cedula="")
     prop.save()
     e = Estacionamiento(
         propietario=prop,
         nombre="nom",
         direccion="dir",
         rif="J-123456789",
         capacidad=20,
         apertura=time(0, 0),
         cierre=time(23, 59),
     )
     e.save()
     r = Reserva(estacionamiento=e,
                 inicioReserva=datetime(2015, 3, 10, 3, 0),
                 finalReserva=datetime(2015, 3, 10, 5, 0))
     r.save()
     p = Pago(
         fechaTransaccion=datetime.now(),
         cedulaTipo="V",
         cedula="1234567",
         tarjetaTipo="VISTA",
         reserva=r,
         monto=150,
     )
     p.save()
     lista, total = consultar_ingresos("J-123456789")
     self.assertTrue(len(lista) == 1 and total == 150)
Exemple #4
0
 def test_muchos_estacionamiento_con_disintos_rif(self):
     n = 1000
     for i in range(0, n):
         pro = Propietario(nombre="prop%d" % i,
                           ci='V-12345678%d' % i,
                           tel="0412-1234567")
         pro.save()
         e1 = Estacionamiento(
             ci_propietario=pro,
             nombre="nom%d" % i,
             direccion="dir1",
             rif="J-%i" % (123456789 - i),
             capacidad=n,
             apertura=time(0, 0),
             cierre=time(23, 59),
         )
         e1.save()
         r = Reserva(estacionamiento=e1,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0))
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedula="V-1234567",
             tipoPago="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     lista, total = consultar_ingresos("J-123456789")
     self.assertTrue(len(lista) == 1 and total == 100)
Exemple #5
0
 def test_un_estacionamiento_muchos_pagos(self):
     n = 1000
     p = Puestos(particular=n, moto=20, carga=20, discapacitado=20)
     p.save()
     e = Estacionamiento(
         propietario=self.crear_propietario(),
         nombre="nom",
         direccion="dir",
         telefono1="041414141111",
         telefono2="041414141112",
         telefono3="04141414111",
         email1="*****@*****.**",
         email2="*****@*****.**",
         rif="J-123456789",
         capacidad=p,
         apertura=time(0, 0),
         cierre=time(23, 59),
     )
     e.save()
     for i in range(0, n):
         r = Reserva(estacionamiento=e,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0),
                     tipo_puesto='Particular')
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedula="V-1234567",
             tarjetaTipo="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     lista, total = consultar_ingresos("J-123456789")
     self.assertTrue(len(lista) == 1 and total == n * 100)
Exemple #6
0
def crear_factura(_reserva, monto, tarjetaTipo, facturaMovida):
    pago = Pago(reserva=_reserva,
                id=asigna_id_unico(),
                fechaTransaccion=datetime.now(),
                cedula="10",
                cedulaTipo="V",
                tarjetaTipo=tarjetaTipo,
                monto=Decimal(monto),
                facturaMovida=facturaMovida)
    pago.save()
Exemple #7
0
 def crear_Pago3(self):
     pago3 = Pago(
         fechaTransaccion=datetime.now(),
         cedula="V-2345678",
         tarjetaTipo='Vista',
         reserva=self.crear_Reserva3(),
         monto=8.08,
     )
     pago3.save()
     return pago3
def crear_factura(_reserva, monto):
    pago = Pago(reserva=_reserva,
                id=asigna_id_unico(),
                fechaTransaccion=datetime.now(),
                cedula="10",
                cedulaTipo="V",
                tarjetaTipo="Billetera Electronica",
                nombreUsuario='Maria',
                apellidoUsuario='Perez',
                idBilletera='1',
                monto=Decimal(monto))
    pago.save()
Exemple #9
0
    def test_muchos_estacionamiento_mitad_sin_pagos(self):
        n = 100
        m = 10
        for i in range(0, n):

            pro1 = Propietario(nombre="prop1%d" % i,
                               ci="V-12345678%d" % i,
                               tel="0412-1234567")
            pro2 = Propietario(nombre="prop2%d" % (i + 1),
                               ci="V-12345679%d" % (i + 1),
                               tel="0412-1234567")
            pro1.save()
            pro2.save()
            e1 = Estacionamiento(
                ci_propietario=pro1,
                nombre="nom%d" % i,
                direccion="dir1",
                rif="J-123456789",
                capacidad=m,
                apertura=time(0, 0),
                cierre=time(23, 59),
            )
            e2 = Estacionamiento(
                ci_propietario=pro2,
                nombre="no%d" % i,
                direccion="dir3",
                rif="J-123456789",
                capacidad=m,
                apertura=time(0, 0),
                cierre=time(23, 59),
            )
            e1.save()
            e2.save()
            for j in range(0, m):
                r = Reserva(estacionamiento=e1,
                            inicioReserva=datetime(2015, 3, 10, 3, 0),
                            finalReserva=datetime(2015, 3, 10, 5, 0))
                r.save()
                p = Pago(
                    fechaTransaccion=datetime.now(),
                    cedula="V-1234567",
                    tipoPago="VISTA",
                    reserva=r,
                    monto=100,
                )
                p.save()

        lista, total = consultar_ingresos("J-123456789")
        self.assertTrue(len(lista) == 2 * n and total == n * m * 100)
Exemple #10
0
 def test_muchos_estacionamiento_con_disintos_rif(self):
     n = 1000
     for i in range(0, n):
         prop = Propietario(
             nombre="prop%d" % i,
             apellido="apell",
             cedula="V-041414141111",
             telefono="041414141112",
             email="*****@*****.**",
         )
         prop.save()
         p = Puestos(particular=n, moto=20, carga=20, discapacitado=20)
         p.save()
         e1 = Estacionamiento(
             propietario=prop,
             nombre="nom%d" % i,
             direccion="dir1",
             rif="J-%i" % (123456789 - i),
             capacidad=p,
             apertura=time(0, 0),
             cierre=time(23, 59),
         )
         e1.save()
         r = Reserva(estacionamiento=e1,
                     inicioReserva=datetime(2015, 3, 10, 3, 0),
                     finalReserva=datetime(2015, 3, 10, 5, 0),
                     tipo_puesto='Particular')
         r.save()
         p = Pago(
             fechaTransaccion=datetime.now(),
             cedula="V-1234567",
             tarjetaTipo="VISTA",
             reserva=r,
             monto=100,
         )
         p.save()
     lista, total = consultar_ingresos("J-123456789")
     self.assertTrue(len(lista) == 1 and total == 100)
Exemple #11
0
def estacionamiento_pago(request, _id):
    form = PagoForm()

    try:
        estacionamiento = Estacionamiento.objects.get(id=_id)
    except ObjectDoesNotExist:
        raise Http404

    if (estacionamiento.apertura is None):
        return HttpResponse(
            status=403)  # No esta permitido acceder a esta vista aun

    if request.method == 'POST':
        form = PagoForm(request.POST)
        if form.is_valid():

            inicioReserva = datetime(
                year=request.session['anioinicial'],
                month=request.session['mesinicial'],
                day=request.session['diainicial'],
                hour=request.session['inicioReservaHora'],
                minute=request.session['inicioReservaMinuto'])

            finalReserva = datetime(
                year=request.session['aniofinal'],
                month=request.session['mesfinal'],
                day=request.session['diafinal'],
                hour=request.session['finalReservaHora'],
                minute=request.session['finalReservaMinuto'])

            reservaFinal = Reserva(
                estacionamiento=estacionamiento,
                inicioReserva=inicioReserva,
                finalReserva=finalReserva,
            )

            # Se guarda la reserva en la base de datos
            reservaFinal.save()

            monto = Decimal(request.session['monto']).quantize(Decimal('1.00'))
            pago = Pago(
                fechaTransaccion=datetime.now(),
                cedula=form.cleaned_data['cedula'],
                cedulaTipo=form.cleaned_data['cedulaTipo'],
                monto=monto,
                tarjetaTipo=form.cleaned_data['tarjetaTipo'],
                reserva=reservaFinal,
            )

            # Se guarda el recibo de pago en la base de datos
            pago.save()

            return render(
                request, 'pago.html', {
                    "id": _id,
                    "pago": pago,
                    "color": "green",
                    'mensaje':
                    "Se realizo el pago de reserva satisfactoriamente."
                })

    return render(request, 'pago.html', {'form': form})