public void CargarVentas(Ccaja_diaria caja)
 {
     if (caja.LISTAVENTAS() == null)
     {
         caja.InstanciarVentas();
         DataTable         DT        = Cdatos_ventas.Devolver(caja);
         Ctrl_formas_pagos admformas = Ctrl_formas_pagos.ClaseActiva();
         if (DT.Rows.Count != 0)
         {
             Cpago       pago;
             int         idventa;
             int         anterior  = 0;
             Ctrl_Ventas admVentas = Ctrl_Ventas.ClaseActiva();
             Cventa      oventa    = new Cventa();
             foreach (DataRow DR in DT.Rows)
             {
                 pago    = new Cpago(admformas.BuscarPorID(Convert.ToInt32(DR[3])), Convert.ToDecimal(DR[4]), DR[5].ToString(), Convert.ToDecimal(DR[6]));
                 idventa = Convert.ToInt32(DR[0]);
                 if (anterior == idventa)
                 {
                     oventa.Pago2        = pago;
                     oventa.DescRecargo += pago.Descuento;
                 }
                 else
                 {
                     oventa = new Cventa(idventa, Convert.ToDecimal(DR[1]), Convert.ToDecimal(DR[2]), pago.Descuento, pago);
                     admVentas.CargarItems(oventa, caja.ID);
                     caja.AgregarVenta(oventa);
                 }
                 anterior = idventa;
             }
         }
     }
 }
Beispiel #2
0
        public static Ctrl_Ventas ClaseActiva()
        {
            if (Control == null)
            {
                Control = new Ctrl_Ventas();
            }

            return(Control);
        }
        public void ActualizarInflacionDeCreditos(Ccuenta_corriente ocuenta)
        {
            foreach (Cpago_credito ocredito in ocuenta.Creditos)
            {
                Cventa oVenta = ocredito.Venta();
                if (oVenta != null)
                {
                    if (oVenta.Items().Count == 0)
                    {
                        Ctrl_Ventas admventa = Ctrl_Ventas.ClaseActiva();
                        admventa.CargarItems(oVenta, ocredito.ID_Caja_Diaria());
                    }
                    decimal TotalInflado = 0;
                    foreach (Citem item in oVenta.Items())
                    {
                        TotalInflado += item.Articulo.Precio * item.Cantidad;
                    }

                    decimal ImporteNuevoCredito;
                    if (oVenta.Pago2 != null)
                    {
                        decimal importeAcuenta;
                        if (oVenta.Pago.FormaPago.ID == 2)
                        {
                            importeAcuenta = oVenta.Pago.Importe;
                        }
                        else
                        {
                            importeAcuenta = oVenta.Pago2.Importe;
                        }
                        ImporteNuevoCredito = (importeAcuenta / oVenta.Total) * TotalInflado;
                    }
                    else
                    {
                        ImporteNuevoCredito = TotalInflado;
                    }
                    ImporteNuevoCredito = Math.Round(ImporteNuevoCredito, 2, MidpointRounding.AwayFromZero);
                    if (ImporteNuevoCredito != ocredito.Importe)
                    {
                        ocuenta.ModificarCredito(ocredito, ImporteNuevoCredito);
                        ModificarOperacion(ocredito);
                    }
                }
            }
        }
Beispiel #4
0
 public int VerificarStock()
 {
     try
     {
         Ctrl_compras admCompras = Ctrl_compras.ClaseActiva();
         Ctrl_Ventas  admVentas  = Ctrl_Ventas.ClaseActiva();
         decimal      cantComprada;
         decimal      cantVendida;
         decimal      cantActual;
         int          CantCorregida = 0;
         foreach (Carticulo oArt in listavigentes)
         {
             cantComprada = admCompras.CantidadHistorica(oArt);
             cantVendida  = admVentas.CantidadDeArtHistorico(oArt);
             cantActual   = cantComprada - cantVendida;
             if (oArt.Stock != cantActual)
             {
                 oArt.Stock = cantActual;
                 ModificarStock(oArt);
                 CantCorregida++;
             }
         }
         foreach (Carticulo oArt in listanovigentes)
         {
             cantComprada = admCompras.CantidadHistorica(oArt);
             cantVendida  = admVentas.CantidadDeArtHistorico(oArt);
             cantActual   = cantComprada - cantVendida;
             if (oArt.Stock != cantActual)
             {
                 oArt.Stock = cantActual;
                 ModificarStock(oArt);
                 CantCorregida++;
             }
         }
         return(CantCorregida);
     }
     catch (Exception)
     {
         return(-1);
     }
 }