Esempio n. 1
0
def ingresar_cuenta(request):
    global user
    if user.has_perm('contable.add_cuenta') == False:
        return render(request ,'error.html',{'mensaje':"No tiene permisos", 'link':'/index'})

    if request.method == 'GET':
        return render(request ,'registrar_cuenta.html', {'tipo':TipoCuenta.objects.all()})
    if request.POST:
        c=request.POST['Cuenta']
        if (c=="0"):
            return HttpResponseRedirect('/cuenta')
        else:
            a = Cuenta()
            s = TipoCuenta()
            a.nom_cuenta = request.POST['nom_cuenta']
            a.saldo = 0
            s=TipoCuenta.objects.get(id=c)
            a.tipoCuenta = s
            cod = ''
            if c == '1':
                cod = 'A0'
            elif c == '2':
                cod = 'P0'
            elif c == '3':
                cod = 'C0'
            elif c == '4':
                cod = 'R0'

            cod = cod + str(len(Cuenta.objects.all()) + 1)
            a.codigo = cod
            a.montoCargo=0
            a.montoAbono=0
            a.save()
            return HttpResponseRedirect('/index')
    return render(request,'registrar_cuenta.html')
Esempio n. 2
0
File: views.py Progetto: vaj25/sic
def ingresar_cuenta(request):
    global user
    if user.has_perm('contable.add_cuenta') == False:
        return render(request, 'error.html', {
            'mensaje': "No tiene permisos",
            'link': '/index'
        })

    if request.method == 'GET':
        return render(request, 'registrar_cuenta.html',
                      {'tipo': TipoCuenta.objects.all()})
    if request.POST:
        c = request.POST['Cuenta']
        if (c == "0"):
            return HttpResponseRedirect('/cuenta')
        else:
            a = Cuenta()
            s = TipoCuenta()
            a.nom_cuenta = request.POST['nom_cuenta']
            a.saldo = 0
            s = TipoCuenta.objects.get(id=c)
            a.tipoCuenta = s
            cod = ''
            if c == '1':
                cod = 'A0'
            elif c == '2':
                cod = 'P0'
            elif c == '3':
                cod = 'C0'
            elif c == '4':
                cod = 'R0'

            cod = cod + str(len(Cuenta.objects.all()) + 1)
            a.codigo = cod
            a.montoCargo = 0
            a.montoAbono = 0
            a.save()
            return HttpResponseRedirect('/index')
    return render(request, 'registrar_cuenta.html')
Esempio n. 3
0
def transaccion(request):
    global user
    if user.has_perm('contable.add_transaccion') == False:
        return render(request ,'error.html',{'mensaje':"No tiene permisos", 'link':'/index'})

    if request.method == "GET":
        return render(request ,'form-transaccion.html', {'cuentas':Cuenta.objects.all()})

    if request.method=="POST":
        count=int(request.POST['counter'])
        i=1
        l=1
        montoCa=0
        montoAb=0
        for k in range(count):
            var1='cuenta'+str(l)
            var2='monto'+str(l)
            if (request.POST[var2]) == '':
                mont=0
            else:
                mont=float(request.POST[var2])
            cuent=int(request.POST[var1])
            if cuent!=0:
                if l%2==0: #es abono
                    montoAb=montoAb+mont
                else:
                    montoCa=montoCa+mont
            l=l+1
        t=Transacciones.objects.all()
        num=0
        for h in t:
            num = int(h.numero)
        num = num + 1
        if montoCa==montoAb: #partida doble
            for j in range(count):
                var1='cuenta'+str(i)
                cuent=int(request.POST[var1])
                if cuent!=0:
                    c=Cuenta()
                    tr = Transacciones()
                    var1='cuenta'+str(i)
                    var2='monto'+str(i)
                    monto=float(request.POST[var2])
                    c=Cuenta.objects.get(id=request.POST[var1])
                    tm1=TipoMonto.objects.get(id=1)
                    tm2=TipoMonto.objects.get(id=2)
                    #t.monto=monto
                    tr.cuenta=c
                    tr.numero=num
                    tr.fecha=time.strftime("%x")
                    if i%2==0:
                        #t.tipoMonto=tm2  #es abono
                        c.montoAbono=c.montoAbono+monto
                        tr.abono=monto
                        tr.cargo=0
                    else:
                        tr.cargo=monto   #es cargo
                        tr.abono=0
                        c.montoCargo=c.montoCargo+monto
                    c.saldo = c.montoCargo - c.montoAbono
                    c.save()
                    tr.save()
                i=i+1
        else:
            m = "No se cumple partida doble"
            r = '/transaccion'
            return  render(request ,'error.html', {'mensaje' : m})
        return HttpResponseRedirect('/index')
    else:
        return HttpResponseRedirect('/transaccion')
Esempio n. 4
0
File: views.py Progetto: vaj25/sic
def transaccion(request):
    global user
    if user.has_perm('contable.add_transaccion') == False:
        return render(request, 'error.html', {
            'mensaje': "No tiene permisos",
            'link': '/index'
        })

    if request.method == "GET":
        return render(request, 'form-transaccion.html',
                      {'cuentas': Cuenta.objects.all()})

    if request.method == "POST":
        count = int(request.POST['counter'])
        i = 1
        l = 1
        montoCa = 0
        montoAb = 0
        for k in range(count):
            var1 = 'cuenta' + str(l)
            var2 = 'monto' + str(l)
            if (request.POST[var2]) == '':
                mont = 0
            else:
                mont = float(request.POST[var2])
            cuent = int(request.POST[var1])
            if cuent != 0:
                if l % 2 == 0:  #es abono
                    montoAb = montoAb + mont
                else:
                    montoCa = montoCa + mont
            l = l + 1
        t = Transacciones.objects.all()
        num = 0
        for h in t:
            num = int(h.numero)
        num = num + 1
        if montoCa == montoAb:  #partida doble
            for j in range(count):
                var1 = 'cuenta' + str(i)
                cuent = int(request.POST[var1])
                if cuent != 0:
                    c = Cuenta()
                    tr = Transacciones()
                    var1 = 'cuenta' + str(i)
                    var2 = 'monto' + str(i)
                    monto = float(request.POST[var2])
                    c = Cuenta.objects.get(id=request.POST[var1])
                    tm1 = TipoMonto.objects.get(id=1)
                    tm2 = TipoMonto.objects.get(id=2)
                    #t.monto=monto
                    tr.cuenta = c
                    tr.numero = num
                    tr.fecha = time.strftime("%x")
                    if i % 2 == 0:
                        #t.tipoMonto=tm2  #es abono
                        c.montoAbono = c.montoAbono + monto
                        tr.abono = monto
                        tr.cargo = 0
                    else:
                        tr.cargo = monto  #es cargo
                        tr.abono = 0
                        c.montoCargo = c.montoCargo + monto
                    c.saldo = c.montoCargo - c.montoAbono
                    c.save()
                    tr.save()
                i = i + 1
        else:
            m = "No se cumple partida doble"
            r = '/transaccion'
            return render(request, 'error.html', {'mensaje': m})
        return HttpResponseRedirect('/index')
    else:
        return HttpResponseRedirect('/transaccion')