示例#1
0
        public List <EInventario> Buscar(string KeyWoard)
        {
            List <EInventario> List = new List <EInventario>();

            try
            {
                SQLParameter[] parameters = new SQLParameter[1];
                parameters[0] = new SQLParameter("@KeyWoard", KeyWoard, SqlDbType.VarChar);
                DataTable data = new DataTable();
                data = Conexion.ExecuteProcedureD("USP_S_BuscarInventario", parameters).Tables[0];
                foreach (DataRow row in data.Rows)
                {
                    EInventario be = new EInventario
                    {
                        ID              = Convert.ToInt32(row[0]),
                        Producto        = row["Producto"].ToString(),
                        ValorUnitario   = Convert.ToDouble(row[2]),
                        Existencias     = Convert.ToInt32(row[3]),
                        ValorInventario = Convert.ToDouble(row[4])
                    };
                    List.Add(be);
                }
            }
            catch
            {
                Console.WriteLine("No se encontro Procedimiento Almacenado");
            }
            return(List);
        }
示例#2
0
        public List <EInventario> Listar()
        {
            List <EInventario> List = new List <EInventario>();

            try
            {
                DataTable data = new DataTable();
                data = Conexion.ExecuteProcedureD("USP_S_ListarInventario").Tables[0];
                foreach (DataRow row in data.Rows)
                {
                    EInventario be = new EInventario
                    {
                        ID              = Convert.ToInt32(row[0]),
                        Producto        = row["Producto"].ToString(),
                        ValorUnitario   = Convert.ToDouble(row[2]),
                        Existencias     = Convert.ToInt32(row[3]),
                        ValorInventario = Convert.ToDouble(row[4])
                    };
                    List.Add(be);
                }
            }
            catch
            {
                Console.WriteLine("No se encontro Procedimiento Almacenado");
            }
            return(List);
        }
示例#3
0
 public bool Agregar(EProducto obj)
 {
     SQLParameter[] parameters = new SQLParameter[9];
     parameters[0] = new SQLParameter("@Categoria", obj.Categoria, SqlDbType.Int);
     parameters[1] = new SQLParameter("@SubCategoria", obj.SubCategoria, SqlDbType.Int);
     parameters[2] = new SQLParameter("@Codigo", obj.Codigo, SqlDbType.VarChar);
     parameters[3] = new SQLParameter("@Nombre", obj.Nombre, SqlDbType.VarChar);
     parameters[4] = new SQLParameter("@Imagen", obj.Imagen, SqlDbType.VarChar);
     parameters[5] = new SQLParameter("@TipoExistencia", obj.TipoExistencia, SqlDbType.VarChar);
     parameters[6] = new SQLParameter("@UnidadMedida", obj.UnidadMedida, SqlDbType.VarChar);
     parameters[7] = new SQLParameter("@Marca", obj.Marca, SqlDbType.Int);
     parameters[8] = new SQLParameter("@Estado", obj.Estado, SqlDbType.Int);
     Response      = Conexion.ExecuteProcedureB("USP_I_AgregarProducto", parameters);
     if (Response == true)
     {
         EInventario beIventario = new EInventario
         {
             Producto        = obj.Codigo,
             ValorUnitario   = 0,
             Existencias     = 0,
             ValorInventario = 0
         };
         NInventario boInventario = new NInventario();
         boInventario.Agregar(beIventario);
     }
     return(Response);
 }
示例#4
0
 public bool Modificar(EInventario obj)
 {
     SQLParameter[] parameters = new SQLParameter[4];
     parameters[0] = new SQLParameter("@Producto", obj.Producto, SqlDbType.VarChar);
     parameters[1] = new SQLParameter("@ValorUnitario", obj.ValorUnitario, SqlDbType.Decimal);
     parameters[2] = new SQLParameter("@Existencias", obj.Existencias, SqlDbType.Int);
     parameters[3] = new SQLParameter("@ValorInventario", obj.ValorInventario, SqlDbType.Decimal);
     Response      = Conexion.ExecuteProcedureB("USP_U_ModificarInventario", parameters);
     return(Response);
 }
示例#5
0
 private void BtnSeleccionar_Click(object sender, EventArgs e)
 {
     if (DgvProducto.SelectedRows.Count > 0)
     {
         int rowindex = DgvProducto.CurrentRow.Index;
         if (rowindex != -1)
         {
             try
             {
                 Frm_Registrar_Venta frm = Owner as Frm_Registrar_Venta;
                 string codigoproducto   = DgvProducto.CurrentRow.Cells[3].Value.ToString();
                 frm.TxtProducto.Text = codigoproducto;
                 NProducto boProducto = new NProducto();
                 EProducto producto   = boProducto.Seleccionar(codigoproducto);
                 if (string.IsNullOrEmpty(producto.Codigo))
                 {
                     MessageBox.Show("No Existe Producto", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                 }
                 else
                 {
                     NInventario boInventario = new NInventario();
                     EInventario inventario   = boInventario.Seleccionar(producto.Codigo);
                     if (!string.IsNullOrEmpty(inventario.Producto))
                     {
                         if (inventario.Existencias > 0)
                         {
                             double utilidad    = Frm_Principal.ValorUtilidad;
                             double precioventa = Math.Round((inventario.ValorUnitario * utilidad), 2);
                             frm.AddItems(producto, 1, precioventa);
                             //Mostrar imagen
                             if (!string.IsNullOrEmpty(producto.Imagen))
                             {
                                 frm.PbxImgProducto.Image = Image.FromFile(CarpetaImagen + "/" + producto.Imagen);
                             }
                         }
                         else
                         {
                             MessageBox.Show("No hay Cantidad Suficiente");
                         }
                     }
                 }
                 Close();
             }
             catch
             {
                 //
             }
         }
     }
     else
     {
         MessageBox.Show("Seleccione un registro");
     }
 }
 private void ActualizarCantidad(string operation, int quantity = 1)
 {
     if (MLVDetalle.SelectedItems.Count > 0)
     {
         string      codigoproducto = MLVDetalle.SelectedItems[0].SubItems[0].Text;
         NInventario boInventario   = new NInventario();
         EInventario inventario     = boInventario.Seleccionar(codigoproducto);
         //Datos
         double precio   = Convert.ToDouble(MLVDetalle.SelectedItems[0].SubItems[3].Text);
         int    cantidad = Convert.ToInt32(MLVDetalle.SelectedItems[0].SubItems[4].Text);
         if (operation.Equals("Aumentar"))
         {
             if (cantidad < inventario.Existencias)
             {
                 cantidad += quantity;
             }
             else
             {
                 MessageBox.Show("No hay mas productos");
             }
         }
         else if (operation.Equals("Disminuir"))
         {
             cantidad -= quantity;
         }
         else if (operation.Equals("Nueva"))
         {
             if (quantity <= inventario.Existencias)
             {
                 cantidad = quantity;
             }
             else
             {
                 MessageBox.Show("No hay mas productos");
             }
         }
         double importe = precio * cantidad;
         MLVDetalle.SelectedItems[0].SubItems[4].Text = cantidad.ToString();
         MLVDetalle.SelectedItems[0].SubItems[5].Text = importe.ToString();
         TxtCantidadItem.Text = cantidad.ToString();
         ActualizarResumen();
     }
     else
     {
         MessageBox.Show("Seleccione Item");
     }
 }
示例#7
0
 private void CargarDatosProducto()
 {
     try
     {
         string      codigoproducto = DgvProducto.CurrentRow.Cells[3].Value.ToString();
         NInventario boInventario   = new NInventario();
         EInventario inventario     = boInventario.Seleccionar(codigoproducto);
         TxtProducto.Text     = DgvProducto.CurrentRow.Cells[4].Value.ToString();
         TxtExistencias.Text  = inventario.Existencias.ToString();
         txtPrecioCompra.Text = inventario.ValorUnitario.ToString("N2");
         double precioventa = Math.Round((inventario.ValorUnitario * Frm_Principal.ValorUtilidad), 2);
         TxtPrecioVenta.Text = precioventa.ToString("N2");
     }
     catch
     {
         //
     }
 }
示例#8
0
 public EInventario Seleccionar(string Codigo)
 {
     try
     {
         SQLParameter[] parameters = new SQLParameter[1];
         parameters[0] = new SQLParameter("@Producto", Codigo, SqlDbType.VarChar);
         DataRow     row = Conexion.ExecuteProcedureD("USP_S_SeleccionarInventario", parameters).Tables[0].Rows[0];
         EInventario be  = new EInventario
         {
             ID              = Convert.ToInt32(row[0]),
             Producto        = row["Producto"].ToString(),
             ValorUnitario   = Convert.ToDouble(row[2]),
             Existencias     = Convert.ToInt32(row[3]),
             ValorInventario = Convert.ToDouble(row[4])
         };
         return(be);
     }
     catch
     {
         EInventario be = new EInventario();
         return(be);
     }
 }
        private void GuardarVenta()
        {
            string tipocomprobante  = CbxTipoComprobante.SelectedValue.ToString();
            string ventaserie       = "####";
            string ventacorrelativo = "########";
            NVenta venta            = new NVenta();

            if (venta.ObtenerSerieCorrelativo(tipocomprobante) != null)
            {
                DataRow row = venta.ObtenerSerieCorrelativo(tipocomprobante);
                ventaserie       = row["Serie"].ToString();
                ventacorrelativo = row["Correlativo"].ToString();
            }
            EVenta beVenta = new EVenta
            {
                Cliente         = Convert.ToInt32(LblIDCliente.Text),
                Empleado        = Frm_Principal.AccesoUsernameID,
                TipoComprobante = tipocomprobante,
                Serie           = ventaserie,
                Numero          = ventacorrelativo,
                Fecha           = Convert.ToDateTime(DateTime.Now),
                Hora            = Convert.ToDateTime(DateTime.Now),
                SubTotal        = Venta_SubTotal,
                Igv             = Venta_Igv,
                Total           = Venta_Total,
                Estado          = 1
            };
            NVenta boVenta = new NVenta();

            if (boVenta.Agregar(beVenta) == true)
            {
                if (MLVDetalle.Items.Count > 0)
                {
                    NDetalleVenta boDetalleVenta = new NDetalleVenta();
                    foreach (ListViewItem items in MLVDetalle.Items)
                    {
                        EDetalleVenta beDetalleVenta = new EDetalleVenta
                        {
                            Serie    = beVenta.Serie,
                            Numero   = beVenta.Numero,
                            Producto = items.SubItems[0].Text,
                            Precio   = Convert.ToDouble(items.SubItems[3].Text),
                            Cantidad = Convert.ToInt32(items.SubItems[4].Text),
                            Importe  = Convert.ToDouble(items.SubItems[5].Text)
                        };
                        //Agregar dettalle compra
                        if (boDetalleVenta.Agregar(beDetalleVenta) == true)
                        {
                            int    cantidadfinal      = 0;
                            double costounitariofinal = 0;
                            double costototalfinal    = 0;
                            //Obteniendo Ultimo Movimiento
                            NMovimiento boM   = new NMovimiento();
                            EMovimiento datos = boM.SeleccionarUltimoMovimientoProducto(beDetalleVenta.Producto);
                            if (!string.IsNullOrEmpty(datos.Producto))
                            {
                                //Si hay datos
                                cantidadfinal      = datos.CantidadFinal - beDetalleVenta.Cantidad;
                                costounitariofinal = datos.CostoUnitarioFinal;
                                double costofinaly = Math.Round((costounitariofinal * beDetalleVenta.Cantidad), 2);
                                costototalfinal = datos.CostoTotalFinal - costofinaly;
                                //Movimiento
                                EMovimiento beMovimiento = new EMovimiento
                                {
                                    Fecha                = DateTime.Now,
                                    TipoComprobante      = beVenta.TipoComprobante,
                                    Serie                = beVenta.Serie,
                                    Numero               = beVenta.Numero,
                                    TipoOperacion        = "01",
                                    Producto             = beDetalleVenta.Producto,
                                    CantidadEntrada      = 0,
                                    CostoUnitarioEntrada = 0,
                                    CostoTotalEntrada    = 0,

                                    CantidadSalida      = beDetalleVenta.Cantidad,
                                    CostoUnitarioSalida = costounitariofinal,
                                    CostoTotalSalida    = costofinaly,

                                    CantidadFinal      = cantidadfinal,
                                    CostoUnitarioFinal = costounitariofinal,
                                    CostoTotalFinal    = costototalfinal
                                };
                                NMovimiento boMovimiento = new NMovimiento();
                                if (boMovimiento.Agregar(beMovimiento) == true)
                                {
                                    EInventario beInventario = new EInventario
                                    {
                                        Producto        = beMovimiento.Producto,
                                        ValorUnitario   = beMovimiento.CostoUnitarioFinal,
                                        Existencias     = beMovimiento.CantidadFinal,
                                        ValorInventario = beMovimiento.CostoTotalFinal
                                    };
                                    NInventario boInventario = new NInventario();
                                    boInventario.Modificar(beInventario);
                                }
                            }
                        }
                    }
                }
                //message
                Frm_Buscar_venta frm = Owner as Frm_Buscar_venta;
                frm.Listar();
                Close();
                Frm_Principal.Main.ChangeMessage("La Venta se ingreso correctamente", "Success");
            }
            else
            {
                Frm_Principal.Main.ChangeMessage("Algo salio mal", "Failed");
            }
        }
示例#10
0
        private void GuardarCompra()
        {
            ECompra beCompra = new ECompra
            {
                Proveedor       = Convert.ToInt32(LblIDProveedor.Text),
                Empleado        = Frm_Principal.AccesoUsernameID,
                TipoComprobante = CbxTipoComprobante.SelectedValue.ToString(),
                Serie           = TxtSerie.Text,
                Numero          = TxtNumero.Text,
                Fecha           = Convert.ToDateTime(DtpFecha.Text),
                SubTotal        = Compra_SubTotal,
                Igv             = Compra_Igv,
                Total           = Compra_Total,
                Estado          = 1
            };
            NCompra boCompra = new NCompra();

            if (boCompra.Agregar(beCompra) == true)
            {
                if (MLVDetalle.Items.Count > 0)
                {
                    NDetalleCompra boDetalleCompra = new NDetalleCompra();
                    foreach (ListViewItem items in MLVDetalle.Items)
                    {
                        EDetalleCompra beDetalleCompra = new EDetalleCompra
                        {
                            Serie          = beCompra.Serie,
                            Numero         = beCompra.Numero,
                            Producto       = items.SubItems[0].Text,
                            PrecioUnitario = Convert.ToDouble(items.SubItems[3].Text),
                            Cantidad       = Convert.ToInt32(items.SubItems[4].Text),
                            PrecioTotal    = Convert.ToDouble(items.SubItems[5].Text)
                        };
                        //Agregar dettalle compra
                        if (boDetalleCompra.Agregar(beDetalleCompra) == true)
                        {
                            int    cantidadfinal      = 0;
                            double costounitariofinal = 0;
                            double costototalfinal    = 0;
                            //Obteniendo Ultimo Movimiento
                            NMovimiento boM   = new NMovimiento();
                            EMovimiento datos = boM.SeleccionarUltimoMovimientoProducto(beDetalleCompra.Producto);
                            if (string.IsNullOrEmpty(datos.Producto))
                            {
                                cantidadfinal      = beDetalleCompra.Cantidad;
                                costounitariofinal = beDetalleCompra.PrecioUnitario;
                                costototalfinal    = beDetalleCompra.PrecioTotal;
                            }
                            else
                            {
                                //Si hay datos
                                cantidadfinal      = datos.CantidadFinal + beDetalleCompra.Cantidad;
                                costototalfinal    = datos.CostoTotalFinal + beDetalleCompra.PrecioTotal;
                                costounitariofinal = Math.Round((costototalfinal / cantidadfinal), 2);
                            }
                            EMovimiento beMovimiento = new EMovimiento
                            {
                                Fecha                = DateTime.Now,
                                TipoComprobante      = beCompra.TipoComprobante,
                                Serie                = beCompra.Serie,
                                Numero               = beCompra.Numero,
                                TipoOperacion        = "02",
                                Producto             = beDetalleCompra.Producto,
                                CantidadEntrada      = beDetalleCompra.Cantidad,
                                CostoUnitarioEntrada = beDetalleCompra.PrecioUnitario,
                                CostoTotalEntrada    = beDetalleCompra.PrecioTotal,
                                CantidadSalida       = 0,
                                CostoUnitarioSalida  = 0,
                                CostoTotalSalida     = 0,
                                CantidadFinal        = cantidadfinal,
                                CostoUnitarioFinal   = costounitariofinal,
                                CostoTotalFinal      = costototalfinal
                            };
                            NMovimiento boMovimiento = new NMovimiento();
                            if (boMovimiento.Agregar(beMovimiento) == true)
                            {
                                EInventario beInventario = new EInventario
                                {
                                    Producto        = beMovimiento.Producto,
                                    ValorUnitario   = beMovimiento.CostoUnitarioFinal,
                                    Existencias     = beMovimiento.CantidadFinal,
                                    ValorInventario = beMovimiento.CostoTotalFinal
                                };
                                NInventario boInventario = new NInventario();
                                boInventario.Modificar(beInventario);
                            }
                        }
                    }
                }
                //message
                Frm_Buscar_Compra frm = Owner as Frm_Buscar_Compra;
                frm.Listar();
                Close();
                Frm_Principal.Main.ChangeMessage("La Compra se ingreso correctamente", "Success");
            }
            else
            {
                Frm_Principal.Main.ChangeMessage("Algo salio mal", "Failed");
            }
        }