Example #1
0
def registroMvt(request, monto, fecha, observacion, modulo):
    cajaOpen = caja.cajaUso.all()    
    if modulo == 'I':
        obj = ingreso(
                        totalIngreso = monto,    
                        fechaIngreso = fecha,
                        created = datetime.datetime.now(),
                        createdby = str(request.user.id),
                        isactive = "Y",
                        updated = datetime.datetime.now(),
                        updatedby = str(request.user.id),
                        descripcion = observacion,
                        cajaId_id = cajaOpen[0].id   )
    else:
        obj = egreso(
                        totalEgreso = monto,    
                        fechaEgreso = fecha,
                        created = datetime.datetime.now(),
                        createdby = str(request.user.id),
                        isactive = "Y",
                        updated = datetime.datetime.now(),
                        updatedby = str(request.user.id),
                        descripcion = observacion,
                        cajaId_id = cajaOpen[0].id   )
        
    
    
    obj.save()    
    return listaMvt(modulo, cajaOpen[0]) 
Example #2
0
def rIngreso(request):
    cajaOpen = caja.cajaUso.all()    
    
    obj = ingreso(      created = datetime.datetime.now() ,
                        createdby = str(request.user.id),
                        isactive = "Y",
                        updated = datetime.datetime.now() ,
                        updatedby = str(request.user.id),                        
                        totalIngreso = request.POST['txtmontoIngreso'],    
                        fechaIngreso = request.POST['txtFechaIngreso'],
                        descripcion = request.POST['txtAreaIngreso'],
                        cajaId = cajaOpen[0].id  )                     
    obj.save()
Example #3
0
def facturar (request, cabeceraId, formaPago, fechaFact, numFact):
    error = None
    cabecera = cabeceraVenta.objects.get(pk=cabeceraId)
    #validados si el tercero tiene credito
    if formaPago == 'F' :
        limiteCredito =  cabecera.clienteId.limitecredito
        if not limiteCredito == 0:
            if limiteCredito < cabecera.totalPagar + cabecera.clienteId.saldodeuda:
                error = 'C'
            
    if error == None:
        #actualizamos el inventario
        for i in productoVenta.objects.filter(cabecera_id=cabeceraId):
            prdEdit = producto.objects.get(pk=i.productoId_id)
            prdEdit.cantidad = prdEdit.cantidad - i.cantidad
            prdEdit.save()
        
        #actualizamos cabecera
        total = actualizaCabecera('', fechaFact, numFact, cabeceraId, formaPago, 'F')   
        
        
        #crear cxc o mover caja    
        if formaPago == 'F' :
            cabeceraCuenta = cabeceraCxc.objects.filter(clienteId_id = cabecera.clienteId_id)
            
            if not cabeceraCuenta:            
                cabeceraCuenta = cabeceraCxc(
                                             created = datetime.datetime.now(),
                                             createdby = str(request.user.id),
                                             isactive = "Y",
                                             updated = datetime.datetime.now(),
                                             updatedby = str(request.user.id),  
                                             totalAbonosGeneral = 0, 
                                             totalDeudaGeneral = total,
                                             clienteId_id = cabecera.clienteId_id
                                             )
                cabeceraCuenta.save()
                cabeceraGeneralId =  cabeceraCuenta.id
            else:
                cabeceraCuenta[0].totalDeudaGeneral = cabeceraCuenta[0].totalDeudaGeneral + total
                cabeceraCuenta[0].save()
                cabeceraGeneralId =  cabeceraCuenta[0].id
            
            
            cuenta = cuentaCobrar(created = datetime.datetime.now(),
                                    createdby = str(request.user.id),
                                    isactive = "Y",
                                    updated = datetime.datetime.now(),
                                    updatedby = str(request.user.id),  
                                    totalAbonos = 0,
                                    cabeceraId_id = cabeceraGeneralId,
                                    facturaId_id = cabeceraId,
                                    fechaCuenta = datetime.date.today(),
                                    totalDeuda = total
                                  )
            cuenta.save()
            
            #actualizo el saldo deuda de cliente
            cliente = cabecera.clienteId
            cliente.saldodeuda = cliente.saldodeuda + cabecera.totalPagar
            cliente.save()
            
        else:
            cajaUso = caja.cajaUso.all()
            ing = ingreso(created = datetime.datetime.now(),
                            createdby = str(request.user.id),
                            isactive = "Y",
                            updated = datetime.datetime.now(),
                            updatedby = str(request.user.id),                      
                            totalIngreso =  total , 
                            fechaIngreso = datetime.datetime.now(),
                            descripcion = 'Venta de contado',
                            cajaId_id = cajaUso[0].id                      
                          )
            ing.save()
    
    return simplejson.dumps({ 
                            'err' : error
                            })