示例#1
0
文件: views.py 项目: vaj25/sic
def comprobacion(request):
    global user

    per = EstadoPeriodo.objects.filter(periodoActivo=True)
    if len(per) != 0:
        return render(request, 'error.html', {
            'mensaje': "No se ha cerrado periodo contable",
            'link': '/index'
        })

    c = Cuenta.objects.order_by('tipoCuenta_id')
    tm1 = TipoMonto.objects.get(id=1)
    tm2 = TipoMonto.objects.get(id=2)
    trans = Transaccion.objects.all()
    monto1 = 0
    monto2 = 0
    p = EstadoPeriodo()
    for periodo in per:
        p = periodo
    for t in trans:
        t.delete()
    for cuenta in c:
        comp = Comprobacion()
        tran = Transaccion()
        monto = float(cuenta.saldo)
        if monto < 0:
            tran.monto = monto * (-1)
            tran.tipoMonto = tm2
            tran.cuenta = cuenta
            monto = monto * -1
            monto2 = monto2 + monto
            comp.nombreCuenta = cuenta.nom_cuenta
            comp.debe = monto
            comp.haber = 0
        else:
            tran.monto = monto
            tran.cuenta = cuenta
            tran.tipoMonto = tm1
            monto1 = monto1 + monto
            comp.nombreCuenta = cuenta.nom_cuenta
            comp.haber = monto
            comp.debe = 0
        tran.save()
        comp.estadoPeriodo_id = 28
        comprobando = Comprobacion.objects.all()
        for co in comprobando:
            if comp.nombreCuenta == co.nombreCuenta:
                comp.estadoPeriodo_id = co.estadoPeriodo_id
                comp.debe = co.debe
                comp.haber = co.haber
                comp.id = co.id
        comp.save()
        trans = Transaccion.objects.all()
    return render(request, 'comprobacion.html', {
        'transaccion': trans,
        'cuenta': c,
        'm1': monto1,
        'm2': monto2
    })