public int CalcularStock(int IdProducto) { AccesoDB conexion = null; try { int stock = 0; conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDPRODUCTO, UNIDADESE FROM LOTES " + "WHERE IDPRODUCTO = @idproducto AND ACTIVO = 1"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idproducto", IdProducto); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { stock += (int)conexion.Lector["UNIDADESE"]; } return(stock); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public Lote ObtenerLote(long IdLote) { Lote aux = new Lote(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDLOTE, UNIDADESE FROM LOTES " + "WHERE IDLOTE = @idlote AND ACTIVO = 1"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idlote", IdLote); conexion.AbrirConexion(); conexion.EjecutarConsulta(); if (conexion.Lector.Read()) { aux.IdLote = (long)conexion.Lector["IDLOTE"]; aux.UnidadesE = (int)conexion.Lector["UNIDADESE"]; } return(aux); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public bool ValidarUsuario(Empleado e) { AccesoDB conexion; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDEMPLEADO, TIPOPERFIL FROM EMPLEADOS WHERE USUARIO = @usuario AND PASS = @pass AND ACTIVO = 1"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@usuario", e.Usuario); conexion.Comando.Parameters.AddWithValue("@pass", GenerarMD5(e.Pass)); conexion.AbrirConexion(); conexion.EjecutarConsulta(); if (conexion.Lector.Read()) { e.TipoPerfil = new TipoPerfil(); e.IdEmpleado = (int)conexion.Lector[0]; e.TipoPerfil.IdTipoPerfil = (int)conexion.Lector[1]; return(true); } else { return(false); } } catch (Exception ex) { throw ex; } }
public List <ProductoVendido> Listar(int IdVenta, int activo) { ProductoVendido aux; List <ProductoVendido> lstProductosVendidos = new List <ProductoVendido>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT PXV.IDPXV, PXV.IDPRODUCTO, PXV.CANTIDAD, P.DESCRIPCION, M.DESCRIPCION, TP.DESCRIPCION, P.STOCKMIN, P.IDMARCA, P.IDTIPOPRODUCTO, PXV.PRECIOPU FROM PRODUCTOS_X_VENTA AS PXV " + "INNER JOIN PRODUCTOS AS P ON PXV.IDPRODUCTO = P.IDPRODUCTO " + "INNER JOIN MARCAS AS M ON P.IDMARCA = M.IDMARCA " + "INNER JOIN TIPOSPRODUCTO AS TP ON P.IDTIPOPRODUCTO = TP.IDTIPOPRODUCTO " + "WHERE PXV.IDVENTA = @idventa AND PXV.ACTIVO = @activo"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idventa", IdVenta); conexion.Comando.Parameters.AddWithValue("@activo", activo); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new ProductoVendido { IdPxv = (long)conexion.Lector[0], Producto = new Producto(), Cantidad = (int)conexion.Lector[2] }; aux.Producto.Marca = new Marca(); aux.Producto.TipoProducto = new TipoProducto(); aux.Producto.IdProducto = (int)conexion.Lector[1]; aux.Producto.Descripcion = (string)conexion.Lector[3]; aux.Producto.Marca.Descripcion = (string)conexion.Lector[4]; aux.Producto.Marca.IdMarca = (int)conexion.Lector[7]; aux.Producto.StockMin = (int)conexion.Lector[6]; aux.Producto.TipoProducto.Descripcion = (string)conexion.Lector[5]; aux.Producto.TipoProducto.IdTipoProducto = (int)conexion.Lector[8]; aux.PrecioU = (float)Convert.ToDouble(conexion.Lector[9]); aux.PrecioT = (aux.PrecioU * aux.Cantidad); lstProductosVendidos.Add(aux); } return(lstProductosVendidos); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Lote> Listar(int IdCompra, int activo) { Lote aux; List <Lote> lstLotes = new List <Lote>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT L.IDLOTE, L.IDCOMPRA, L.IDPRODUCTO, P.DESCRIPCION, L.UNIDADESP, L.UNIDADESE, L.COSTOPU FROM LOTES AS L " + "INNER JOIN PRODUCTOS AS P ON P.IDPRODUCTO = L.IDPRODUCTO " + "WHERE L.IDCOMPRA = @idcompra AND L.ACTIVO = @activo " + "ORDER BY P.DESCRIPCION ASC"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idcompra", IdCompra); conexion.Comando.Parameters.AddWithValue("@activo", activo); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Lote { IdLote = (long)conexion.Lector["IDLOTE"], IdCompra = (int)conexion.Lector["IDCOMPRA"], Producto = new Producto(), UnidadesP = (int)conexion.Lector["UNIDADESP"], UnidadesE = (int)conexion.Lector["UNIDADESE"], CostoPU = (float)Convert.ToDouble(conexion.Lector["COSTOPU"]), }; aux.CostoT = aux.CostoPU * aux.UnidadesP; aux.Producto.IdProducto = (int)conexion.Lector["IDPRODUCTO"]; aux.Producto.Descripcion = (string)conexion.Lector[3]; lstLotes.Add(aux); } return(lstLotes); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Compra> Listar(int activo) { Compra aux; List <Compra> lstCompras = new List <Compra>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT C.IDCOMPRA, C.FECHACOMPRA, C.IDPROVEEDOR, C.FECHAREGISTRO, P.EMPRESA, P.CUIT FROM COMPRAS AS C " + "INNER JOIN PROVEEDORES AS P ON C.IDPROVEEDOR = P.IDPROVEEDOR " + "WHERE C.ACTIVO = @activo"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@activo", activo); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Compra { IdCompra = (int)conexion.Lector["IDCOMPRA"], Proveedor = new Proveedor(), FechaCompra = (DateTime)conexion.Lector["FECHACOMPRA"], FechaRegistro = (DateTime)conexion.Lector["FECHAREGISTRO"], }; aux.Proveedor.IdProveedor = (int)conexion.Lector["IDPROVEEDOR"]; aux.Proveedor.Empresa = (string)conexion.Lector["EMPRESA"]; aux.Proveedor.Cuit = Convert.ToInt64(conexion.Lector["CUIT"]); lstCompras.Add(aux); } return(lstCompras); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public void RestaurarStock(long IdPxv) { List <LoteVendido> lotesv = new List <LoteVendido>(); LoteVendido lotev; LoteNegocio negL = new LoteNegocio(); Lote lote; AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDLOTE, CANTIDAD FROM LOTES_X_VENTA WHERE IDPXV = @idpxv"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idpxv", IdPxv); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { lotev = new LoteVendido { IdPxv = IdPxv, IdLote = (long)conexion.Lector[0], Cantidad = (int)conexion.Lector[1] }; lotesv.Add(lotev); } foreach (LoteVendido lv in lotesv) { lote = negL.ObtenerLote(lv.IdLote); lote.UnidadesE += lv.Cantidad; negL.ModificarStock(lote.IdLote, lote.UnidadesE); } } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Domicilio> Listar(int IdRelacion) { Domicilio aux; List <Domicilio> lstDomicilios = new List <Domicilio>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDDOMICILIO, CALLE, ALTURA, DEPARTAMENTO, BARRIO, CIUDAD, PAIS, CP FROM DOMICILIOS WHERE IDRELACION = @idrelacion AND ACTIVO = 1"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idrelacion", IdRelacion); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Domicilio { IdDomicilio = (int)conexion.Lector["IDDOMICILIO"], IdRelacion = IdRelacion, Calle = (string)conexion.Lector["Calle"], Altura = (int)conexion.Lector["Altura"], Departamento = (string)conexion.Lector["DEPARTAMENTO"], Barrio = (string)conexion.Lector["BARRIO"], Ciudad = (string)conexion.Lector["CIUDAD"], Pais = (string)conexion.Lector["PAIS"], Cp = (int)conexion.Lector["CP"] }; lstDomicilios.Add(aux); } return(lstDomicilios); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public void ActualizarStock(int IdProducto) { AccesoDB conexion = null; int stock = 0; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT UNIDADESE FROM LOTES " + "WHERE IDPRODUCTO = @idproducto AND ACTIVO = 1"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idproducto", IdProducto); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { stock += (int)conexion.Lector[0]; } if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } conexion = new AccesoDB(); conexion.SetearConsulta("UPDATE PRODUCTOS SET STOCK = @stock WHERE IDPRODUCTO = @idproducto"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@stock", stock); conexion.Comando.Parameters.AddWithValue("@idproducto", IdProducto); conexion.AbrirConexion(); conexion.EjecutarAccion(); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Contacto> Listar(int id) { Contacto aux; List <Contacto> lstContactos = new List <Contacto>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT C.IDCONTACTO, C.NOMBRE, C.APELLIDO, C.DNI, C.EMAIL FROM CONTACTOS AS C " + "INNER JOIN CONTACTOS_X_RELACION AS CXR ON CXR.IDCONTACTO = C.IDCONTACTO " + "WHERE C.ACTIVO = 1 AND CXR.IDRELACION = @id"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@id", id); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Contacto { IdContacto = (int)conexion.Lector["IDCONTACTO"], Nombre = (string)conexion.Lector["NOMBRE"], Apellido = (string)conexion.Lector["APELLIDO"], Dni = (int)conexion.Lector["DNI"], Email = (string)conexion.Lector["EMAIL"], }; lstContactos.Add(aux); } return(lstContactos); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <ClienteP> Listar() { ClienteP aux; List <ClienteP> lstClientesP = new List <ClienteP>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT NOMBRE, APELLIDO, IDCLIENTE, DNICUIT, EMAIL FROM CLIENTES " + "WHERE ACTIVO = 1 AND TIPOCLIENTE = 'P'"); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new ClienteP { Nombre = (string)conexion.Lector["NOMBRE"], Apellido = (string)conexion.Lector["APELLIDO"], IdCliente = (int)conexion.Lector["IDCLIENTE"], Dni = (int)Convert.ToInt64(conexion.Lector["DNICUIT"]), Email = (string)conexion.Lector["EMAIL"] }; aux.NombreCompleto = aux.Nombre + " " + aux.Apellido; lstClientesP.Add(aux); } return(lstClientesP); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <ClienteE> Listar() { ClienteE aux; List <ClienteE> lstClientesE = new List <ClienteE>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT NOMBRE, IDCLIENTE, DNICUIT FROM CLIENTES " + "WHERE ACTIVO = 1 AND TIPOCLIENTE = 'E'"); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new ClienteE { LstContactos = new List <Contacto>(), Nombre = (string)conexion.Lector["NOMBRE"], IdCliente = (int)conexion.Lector["IDCLIENTE"], Cuit = (long)conexion.Lector["DNICUIT"], }; aux.NombreCompleto = aux.Nombre; lstClientesE.Add(aux); } return(lstClientesE); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Proveedor> Listar() { Proveedor aux; List <Proveedor> lstProveedores = new List <Proveedor>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDPROVEEDOR, EMPRESA, CUIT FROM PROVEEDORES WHERE ACTIVO = 1"); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Proveedor { IdProveedor = (int)conexion.Lector["IDPROVEEDOR"], Empresa = (string)conexion.Lector["EMPRESA"], Cuit = (long)conexion.Lector["CUIT"], LstContactos = new List <Contacto>(), LstProductos = new List <Producto>() }; lstProveedores.Add(aux); } return(lstProveedores); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Telefono> Listar(int IdRelacion) { Telefono aux; List <Telefono> lstTelefonos = new List <Telefono>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDTELEFONO, DESCRIPCION, NUMERO FROM TELEFONOS WHERE IDRELACION = @idrelacion AND ACTIVO = 1"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idrelacion", IdRelacion); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Telefono { IdTelefono = (int)conexion.Lector["IDTELEFONO"], IdRelacion = IdRelacion, Descripcion = (string)conexion.Lector["DESCRIPCION"], Numero = (int)conexion.Lector["NUMERO"] }; lstTelefonos.Add(aux); } return(lstTelefonos); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public bool ControlarStock(ProductoVendido pv) { bool stocked = false; int stockTotal = 0; AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT L.IDLOTE, L.UNIDADESE FROM LOTES AS L " + "INNER JOIN COMPRAS AS C ON C.IDCOMPRA = L.IDCOMPRA " + "WHERE L.IDPRODUCTO = @idproducto AND L.ACTIVO = 1 " + "ORDER BY C.FECHACOMPRA DESC"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idproducto", pv.Producto.IdProducto); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { stockTotal += (int)conexion.Lector[1]; } if (stockTotal >= pv.Cantidad) { stocked = true; } return(stocked); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public float CalcularPrecio(int IdProducto) { float precio = 0; AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT TOP 1 L.COSTOPU, P.GANANCIA FROM LOTES AS L " + "INNER JOIN COMPRAS AS C ON C.IDCOMPRA = L.IDCOMPRA " + "INNER JOIN PRODUCTOS AS P ON P.IDPRODUCTO = L.IDPRODUCTO " + "WHERE L.IDPRODUCTO = @idproducto AND L.ACTIVO = 1 " + "ORDER BY C.FECHACOMPRA ASC"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idproducto", IdProducto); conexion.AbrirConexion(); conexion.EjecutarConsulta(); if (conexion.Lector.Read()) { precio = (float)Math.Round(Convert.ToDouble(conexion.Lector[0]) * ((Convert.ToDouble(conexion.Lector[1]) / 100) + 1), 3); } return(precio); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Marca> Listar() { Marca aux; List <Marca> lstMarcas = new List <Marca>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDMARCA, DESCRIPCION FROM MARCAS WHERE ACTIVO = 1 ORDER BY DESCRIPCION ASC"); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Marca { IdMarca = (int)conexion.Lector["IDMARCA"], Descripcion = (string)conexion.Lector["DESCRIPCION"] }; lstMarcas.Add(aux); } return(lstMarcas); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <TipoProducto> Listar() { TipoProducto aux; List <TipoProducto> lstTiposProducto = new List <TipoProducto>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT IDTIPOPRODUCTO, DESCRIPCION FROM TIPOSPRODUCTO WHERE ACTIVO = 1 ORDER BY DESCRIPCION ASC"); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new TipoProducto { IdTipoProducto = (int)conexion.Lector["IDTIPOPRODUCTO"], Descripcion = (string)conexion.Lector["DESCRIPCION"] }; lstTiposProducto.Add(aux); } return(lstTiposProducto); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Empleado> Listar() { Empleado aux; List <Empleado> lstEmpleados = new List <Empleado>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT NOMBRE, APELLIDO, IDEMPLEADO, DNI, FECHANAC, TIPOPERFIL, EMAIL FROM EMPLEADOS WHERE ACTIVO = 1"); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Empleado { Nombre = (string)conexion.Lector["NOMBRE"], Apellido = (string)conexion.Lector["APELLIDO"], IdEmpleado = (int)conexion.Lector["IDEMPLEADO"], Dni = (int)conexion.Lector["DNI"], FechaNac = (DateTime)conexion.Lector["FECHANAC"], TipoPerfil = new TipoPerfil(), Email = (string)conexion.Lector["EMAIL"] }; aux.TipoPerfil.IdTipoPerfil = (int)conexion.Lector[5]; aux.NombreCompleto = aux.Nombre + " " + aux.Apellido; switch (aux.TipoPerfil.IdTipoPerfil) { case 1: aux.TipoPerfilS = "Administrador"; break; case 2: aux.TipoPerfilS = "Supervisor"; break; case 3: default: aux.TipoPerfilS = "Vendedor"; break; } lstEmpleados.Add(aux); } return(lstEmpleados); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Producto> Listar(int Id) { Producto aux; LoteNegocio negL = new LoteNegocio(); List <Producto> lstProductos = new List <Producto>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); if (Id == 0) { conexion.SetearConsulta("SELECT P.IDPRODUCTO, P.DESCRIPCION, M.DESCRIPCION, TP.DESCRIPCION, P.STOCKMIN, P.GANANCIA, P.IDMARCA, P.IDTIPOPRODUCTO, P.STOCK FROM PRODUCTOS AS P " + "INNER JOIN MARCAS AS M ON P.IDMARCA = M.IDMARCA " + "INNER JOIN TIPOSPRODUCTO AS TP ON P.IDTIPOPRODUCTO = TP.IDTIPOPRODUCTO " + "WHERE P.ACTIVO = 1 " + "ORDER BY P.DESCRIPCION ASC"); } else { conexion.SetearConsulta("SELECT P.IDPRODUCTO, P.DESCRIPCION, M.DESCRIPCION, TP.DESCRIPCION, P.STOCKMIN, P.GANANCIA, P.IDMARCA, P.IDTIPOPRODUCTO, P.STOCK FROM PRODUCTOS AS P " + "INNER JOIN PRODUCTOS_X_PROVEEDOR AS PXP ON PXP.IDPRODUCTO = P.IDPRODUCTO " + "INNER JOIN MARCAS AS M ON P.IDMARCA = M.IDMARCA " + "INNER JOIN TIPOSPRODUCTO AS TP ON P.IDTIPOPRODUCTO = TP.IDTIPOPRODUCTO " + "WHERE P.ACTIVO = 1 AND PXP.IDPROVEEDOR = @id " + "ORDER BY P.DESCRIPCION ASC"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@id", Id); } conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Producto { IdProducto = (int)conexion.Lector["IDPRODUCTO"], Marca = new Marca(), TipoProducto = new TipoProducto(), Descripcion = (string)conexion.Lector["DESCRIPCION"], StockMin = (int)conexion.Lector["STOCKMIN"], Ganancia = (float)Convert.ToDouble(conexion.Lector["GANANCIA"]), Stock = (int)conexion.Lector["STOCK"] }; aux.Marca.IdMarca = (int)conexion.Lector["IDMARCA"]; aux.Marca.Descripcion = (string)conexion.Lector[2]; aux.TipoProducto.IdTipoProducto = (int)conexion.Lector["IDTIPOPRODUCTO"]; aux.TipoProducto.Descripcion = (string)conexion.Lector[3]; lstProductos.Add(aux); } return(lstProductos); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public void DescontarStock(ProductoVendido pv) { Lote lote; int stockTotal = 0, cantidad; LoteNegocio negL = new LoteNegocio(); List <Lote> lstLotes = new List <Lote>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT L.IDLOTE, L.UNIDADESE FROM LOTES AS L " + "INNER JOIN COMPRAS AS C ON C.IDCOMPRA = L.IDCOMPRA " + "WHERE L.IDPRODUCTO = @idproducto AND L.ACTIVO = 1 " + "ORDER BY C.FECHACOMPRA DESC"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@idproducto", pv.Producto.IdProducto); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { lote = new Lote { IdLote = (long)conexion.Lector[0], UnidadesE = (int)conexion.Lector[1] }; stockTotal += lote.UnidadesE; lstLotes.Add(lote); } if (stockTotal >= pv.Cantidad) { int cantV = pv.Cantidad, i = 0; while (cantV > 0) { if (cantV <= lstLotes[i].UnidadesE) { cantidad = cantV; lstLotes[i].UnidadesE -= cantV; cantV = 0; } else { cantidad = lstLotes[i].UnidadesE; cantV -= lstLotes[i].UnidadesE; lstLotes[i].UnidadesE = 0; } ActualizarStock(lstLotes[i]); negL.ActualizarStock(pv.Producto.IdProducto); RegistrarMovimiento(pv.IdPxv, lstLotes[i].IdLote, cantidad); i++; } } return; } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }
public List <Venta> Listar(int activo, string b) { Venta aux; List <Venta> lstVentas = new List <Venta>(); AccesoDB conexion = null; try { conexion = new AccesoDB(); conexion.SetearConsulta("SELECT V.IDVENTA, E.NOMBRE, E.APELLIDO, V.IDEMPLEADO, C.NOMBRE, C.APELLIDO, V.IDCLIENTE, V.FECHAVENTA, V.FECHAREGISTRO FROM VENTAS AS V " + "INNER JOIN EMPLEADOS AS E ON V.IDEMPLEADO = E.IDEMPLEADO " + "INNER JOIN CLIENTES AS C ON C.IDCLIENTE = V.IDCLIENTE " + "WHERE V.ACTIVO = @activo"); conexion.Comando.Parameters.Clear(); conexion.Comando.Parameters.AddWithValue("@activo", activo); conexion.AbrirConexion(); conexion.EjecutarConsulta(); while (conexion.Lector.Read()) { aux = new Venta() { IdVenta = (int)conexion.Lector[0], Empleado = new Empleado(), FechaRegistro = (DateTime)conexion.Lector[8], FechaVenta = (DateTime)conexion.Lector[7] }; aux.Empleado.Nombre = (string)conexion.Lector[1]; aux.Empleado.Apellido = (string)conexion.Lector[2]; aux.Empleado.NombreCompleto = aux.Empleado.Nombre + " " + aux.Empleado.Apellido; aux.Empleado.IdEmpleado = (int)conexion.Lector[3]; aux.Empleado.IdContacto = aux.Empleado.IdEmpleado; if (conexion.Lector.IsDBNull(5)) { ClienteE auxC = new ClienteE { Nombre = (string)conexion.Lector[4] }; auxC.NombreCompleto = auxC.Nombre; aux.Cliente = auxC; } else { ClienteP auxC = new ClienteP { Nombre = (string)conexion.Lector[4], Apellido = (string)conexion.Lector[5] }; auxC.NombreCompleto = auxC.Nombre + " " + auxC.Apellido; aux.Cliente = auxC; } aux.Cliente.IdCliente = (int)conexion.Lector[6]; aux.Monto = (float)Math.Round(CalcularMonto(aux.IdVenta), 3); if (aux.IdVenta.ToString().Contains(b)) { lstVentas.Add(aux); } } return(lstVentas); } catch (Exception ex) { throw ex; } finally { if (conexion.CheckearConexion() == true) { conexion.CerrarConexion(); } } }