예제 #1
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()
예제 #2
0
def pago_mover_reserva(idPagoAMover, h_inicio, h_fin, diferencia,
                       estacionamiento, tarjetaTipo):
    pagoAnterior = Pago.objects.get(pk=idPagoAMover)
    crear_pago(h_inicio, h_fin, pagoAnterior.monto + diferencia,
               estacionamiento, tarjetaTipo, pagoAnterior)
    cancelacion = Cancelaciones(id=asigna_id_unico(),
                                pagoCancelado=pagoAnterior,
                                monto=0,
                                fechaTransaccion=datetime.now())
    cancelacion.save()
    pagoAnterior.fue_movido()
예제 #3
0
def crear_recarga(billetera, numTarjeta, monto):
    billetera = BilleteraElectronica.objects.get(pk=billetera)
    recarga = Recargas(id=asigna_id_unico(),
                       fechaTransaccion=datetime.now(),
                       cedulaTipo='V',
                       cedula='12345678',
                       tarjetaTipo='Vista',
                       monto=monto,
                       billetera=billetera,
                       numTarjeta=numTarjeta)
    recarga.save()
예제 #4
0
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()
예제 #5
0
def crear_factura(_reserva, monto, tarjetaTipo, id_billetera):
    pago = Pago(
            reserva = _reserva,
            id = asigna_id_unico(),
            fechaTransaccion = datetime.now(),
            cedula = "10",
            cedulaTipo = "V",
            tarjetaTipo = tarjetaTipo,
            monto = Decimal(monto),
            idBilletera = id_billetera
    )
    pago.save()
예제 #6
0
def crear_recarga(billetera, numTarjeta, monto):
    billetera = BilleteraElectronica.objects.get(pk = billetera)
    recarga = Recargas(
                id = asigna_id_unico(),
                fechaTransaccion = datetime.now(),
                cedulaTipo = 'V',
                cedula = '12345678',
                tarjetaTipo = 'Vista',
                monto = monto,
                billetera = billetera,
                numTarjeta = numTarjeta
    ) 
    recarga.save()
예제 #7
0
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()
예제 #8
0
def cancelar_reservacion(id_pago, id_billetera, tiempo = datetime.now() + timedelta(seconds = 60)):
    try:
        pago = Pago.objects.get(pk = id_pago)
        _billetera = BilleteraElectronica.objects.get(pk = id_billetera)
        if ((pago.validar_cancelacion(tiempo)) and 
            (_billetera.validar_recarga(pago.monto))):
            c = Cancelaciones(
                  pagoCancelado = pago,
                  billetera = _billetera,
                  id = asigna_id_unico(),
                  monto = pago.monto,
                  fechaTransaccion = datetime.now()            
            )
            pago.cancelar_reserva()
            _billetera.recargar_saldo(pago.monto)
            c.save()
    except:
        pass
예제 #9
0
def cancelar_reservacion(id_pago,
                         id_billetera,
                         tiempo=datetime.now() + timedelta(seconds=60)):
    try:
        pago = Pago.objects.get(pk=id_pago)
        _billetera = BilleteraElectronica.objects.get(pk=id_billetera)
        if ((pago.validar_cancelacion(tiempo))
                and (_billetera.validar_recarga(pago.monto))):
            c = Cancelaciones(pagoCancelado=pago,
                              billetera=_billetera,
                              id=asigna_id_unico(),
                              monto=pago.monto,
                              fechaTransaccion=datetime.now())
            pago.cancelar_reserva()
            _billetera.recargar_saldo(pago.monto)
            c.save()
    except:
        pass
예제 #10
0
def recarga_mover_reserva(idPagoAMover, h_inicio, h_fin, diferencia,
                          id_billetera, estacionamiento, tarjetaTipo):
    pagoAnterior = Pago.objects.get(pk=idPagoAMover)
    administracion = AdministracionSage.objects.get(pk=1)
    nuevo_monto = pagoAnterior.monto - diferencia
    if pagoAnterior.tarjetaTipo != 'Billetera Electronica':
        monto_debitar = administracion.calcular_monto(nuevo_monto)
    else:
        if pagoAnterior.facturaMovida != None:
            monto_debitar = administracion.calcular_monto(nuevo_monto)
        else:
            monto_debitar = 0
    billetera = BilleteraElectronica.objects.get(pk=id_billetera)
    montoARecargar = diferencia
    crear_pago(h_inicio, h_fin, pagoAnterior.monto - montoARecargar,
               estacionamiento, tarjetaTipo, pagoAnterior)
    cancelacion = Cancelaciones(id=asigna_id_unico(),
                                pagoCancelado=pagoAnterior,
                                billetera=billetera,
                                monto=montoARecargar,
                                fechaTransaccion=datetime.now())
    cancelacion.save()
    pagoAnterior.fue_movido()
    billetera.recargar_saldo(montoARecargar - monto_debitar)