protected void Editar() { oProductosAlmacenStocks = new MedDAL.DAL.productos_almacen_stocks(); oProductosAlmacenStocks.idProAlmStocks = int.Parse(gdvDatos.SelectedDataKey.Value.ToString()); oProductosAlmacenStocks.StockMin = int.Parse(txbMinimo.Text); oProductosAlmacenStocks.StockMax = int.Parse(txbMaximo.Text); if (oblInventarios.EditarProductosAlmacenStock(oProductosAlmacenStocks)) { lblAviso.Text = "El máximo y mínimo de stock se actualizó con éxito"; oBitacora = new MedDAL.DAL.bitacora(); oBitacora.FechaEntradaSrv = DateTime.Now; oBitacora.FechaEntradaCte = DateTime.Now;//Linea Temporal oBitacora.Modulo = "Inventario"; oBitacora.Usuario = Session["usuario"].ToString(); oBitacora.Nombre = Session["nombre"].ToString(); oBitacora.Accion = "Actualización de Stock"; oBitacora.Descripcion = "Mínimo: " + txbMinimo.Text + ", Máximo: " + txbMaximo.Text; if (!oblBitacora.NuevoRegistro(oBitacora)) { lblAviso2.Text = "El evento no pudo ser registrado en la bitácora"; } } else { lblAviso.Text = "El máximo y mínimo de stock no pudo ser actualizado"; } }
public void FinalizaEntradaSalida() { if (grvEntSalArticulos.Rows.Count > 0) { decimal costoTotal = 0M; foreach (Producto p in ((List<MedNeg.Inventarios.Producto>)Session["invEntSalLsProductos"])) { costoTotal += p.costo; } if (costoTotal <= blInventarios.BuscarCantCreditoLineaCredito(int.Parse(ddlEntSalLineasDeCredito.SelectedValue))) { try { int idAlmacen = int.Parse(ddlEntSalAlmacenes.SelectedValue); foreach (Producto p in ((List<MedNeg.Inventarios.Producto>)Session["invEntSalLsProductos"])) { blInventarios.GestionarExistenciaProducto(idAlmacen, p.dbProducto.idProducto, p.lote, p.serie, p.fechaCaducidad, p.cantidad, ddlEntSalConceptoMov.SelectedValue, Convert.ToInt32(ddlEntSalLineasDeCredito.SelectedValue.ToString())); } MedDAL.DAL.inventario inventario = new MedDAL.DAL.inventario(); inventario.idLineaCredito = int.Parse(ddlEntSalLineasDeCredito.SelectedValue); inventario.idTipoMovimiento = int.Parse(ddlEntSalTiposMovimiento.SelectedValue); inventario.idAlmacen = idAlmacen; inventario.Observaciones = txtEntSalComentarios.Text; inventario.Fecha = DateTime.Now; inventario.Concepto = ddlEntSalConceptoMov.SelectedValue; inventario.Pedimento = txbPedimento.Text; if (inventario.Concepto == "Salida") { inventario.idAlmacenSalida = int.Parse(ddlEntSalAlmacenSalida.SelectedValue); } List<MedDAL.DAL.inventario_partida> lpartida = new List<MedDAL.DAL.inventario_partida>(); ; MedDAL.DAL.inventario_partida partida; costoTotal = 0M; foreach (Producto p in ((List<MedNeg.Inventarios.Producto>)Session["invEntSalLsProductos"])) { partida = new MedDAL.DAL.inventario_partida(); partida.idProducto = p.dbProducto.idProducto; partida.Cantidad = p.cantidad.ToString(); partida.Precio = p.costo; partida.Lote = p.lote; partida.NoSerie = p.serie; costoTotal += p.costo; lpartida.Add(partida); } blInventarios.agregarRegistroInventario(inventario, lpartida); foreach (MedDAL.DAL.inventario_partida oInventarioPartida in lpartida) { if (!blInventarios.BuscarAlmacenProductoStocks(idAlmacen, oInventarioPartida.idProducto)) { MedDAL.DAL.productos_almacen_stocks oProductoAlmacenStock = new MedDAL.DAL.productos_almacen_stocks(); oProductoAlmacenStock.idAlmacen = idAlmacen; oProductoAlmacenStock.idProducto = oInventarioPartida.idProducto; oProductoAlmacenStock.StockMax = 0; oProductoAlmacenStock.StockMin = 0; blInventarios.NuevoProductosAlmacenStock(oProductoAlmacenStock); } List<MedDAL.DAL.recetas_partida_faltantes> lstRetecasPartidaFaltantes = oblRecetasPartidaFaltantes.BuscarPorProductoAlmacen(oInventarioPartida.idProducto, idAlmacen); if (lstRetecasPartidaFaltantes.Count > 0) { foreach (MedDAL.DAL.recetas_partida_faltantes oRecetaPartidaFaltante in lstRetecasPartidaFaltantes) { oblRecetasPartidaFaltantes.EliminarRegistro(oRecetaPartidaFaltante); } } } if (ddlEntSalConceptoMov.SelectedValue.Equals("Entrada")) blInventarios.DescontarCreditoALinea(int.Parse(ddlEntSalLineasDeCredito.SelectedValue), costoTotal); lbEntSalAvisos.Text = "Proceso finalizado con éxito"; Session["invEntSalLsProductos"] = new List<MedNeg.Inventarios.Producto>(); LimpiarPantallaEntradaSalida(); } catch (Exception ex) { lbEntSalAvisos.Text = ex.Message; } } else lbEntSalAvisos.Text = "Fondos insuficientes en Línea de crédito: " + ddlEntSalLineasDeCredito.SelectedItem.Text; } else { if (ddlEntSalConceptoMov.SelectedIndex == 0) { lbEntSalAvisos.Text = "La entrada no tiene productos registrados"; } else if (ddlEntSalConceptoMov.SelectedIndex == 1) { lbEntSalAvisos.Text = "La salida no tiene productos registrados"; } } }
public void FinalizaEntradaSalida() { decimal costoTotal = 0M; foreach (Producto p in ((List <MedNeg.Inventarios.Producto>)Session["invEntSalLsProductos"])) { costoTotal += p.costo; } if (costoTotal <= blInventarios.BuscarCantCreditoLineaCredito(int.Parse(ddlEntSalLineasDeCredito.SelectedValue))) { try { int idAlmacen = int.Parse(ddlEntSalAlmacenes.SelectedValue); foreach (Producto p in ((List <MedNeg.Inventarios.Producto>)Session["invEntSalLsProductos"])) { blInventarios.GestionarExistenciaProducto(idAlmacen, p.dbProducto.idProducto, p.lote, p.serie, p.fechaCaducidad, p.cantidad, ddlEntSalConceptoMov.SelectedValue, Convert.ToInt32(ddlEntSalLineasDeCredito.SelectedValue.ToString())); } MedDAL.DAL.inventario inventario = new MedDAL.DAL.inventario(); inventario.idLineaCredito = int.Parse(ddlEntSalLineasDeCredito.SelectedValue); inventario.idTipoMovimiento = int.Parse(ddlEntSalTiposMovimiento.SelectedValue); inventario.idAlmacen = idAlmacen; inventario.Observaciones = txtEntSalComentarios.Text; inventario.Fecha = DateTime.Now; inventario.Concepto = ddlEntSalConceptoMov.SelectedValue; inventario.Pedimento = txbPedimento.Text; List <MedDAL.DAL.inventario_partida> lpartida = new List <MedDAL.DAL.inventario_partida>();; MedDAL.DAL.inventario_partida partida; costoTotal = 0M; foreach (Producto p in ((List <MedNeg.Inventarios.Producto>)Session["invEntSalLsProductos"])) { partida = new MedDAL.DAL.inventario_partida(); partida.idProducto = p.dbProducto.idProducto; partida.Cantidad = p.cantidad.ToString(); partida.Precio = p.costo; partida.Lote = p.lote; partida.NoSerie = p.serie; costoTotal += p.costo; lpartida.Add(partida); } blInventarios.agregarRegistroInventario(inventario, lpartida); //Codigo Renard, para que funcione el modulo de inventarios. foreach (MedDAL.DAL.inventario_partida oInventarioPartida in lpartida) { if (!blInventarios.BuscarAlmacenProductoStocks(idAlmacen, oInventarioPartida.idProducto)) { MedDAL.DAL.productos_almacen_stocks oProductoAlmacenStock = new MedDAL.DAL.productos_almacen_stocks(); oProductoAlmacenStock.idAlmacen = idAlmacen; oProductoAlmacenStock.idProducto = oInventarioPartida.idProducto; oProductoAlmacenStock.StockMax = 0; oProductoAlmacenStock.StockMin = 0; blInventarios.NuevoProductosAlmacenStock(oProductoAlmacenStock); } List <MedDAL.DAL.recetas_partida_faltantes> lstRetecasPartidaFaltantes = oblRecetasPartidaFaltantes.BuscarPorProductoAlmacen(oInventarioPartida.idProducto, idAlmacen); if (lstRetecasPartidaFaltantes.Count > 0) { foreach (MedDAL.DAL.recetas_partida_faltantes oRecetaPartidaFaltante in lstRetecasPartidaFaltantes) { oblRecetasPartidaFaltantes.EliminarRegistro(oRecetaPartidaFaltante); } } } if (ddlEntSalConceptoMov.SelectedValue.Equals("Entrada")) { blInventarios.DescontarCreditoALinea(int.Parse(ddlEntSalLineasDeCredito.SelectedValue), costoTotal); } lbEntSalAvisos.Text = "Proceso finalizado con éxito"; } catch (Exception ex) { lbEntSalAvisos.Text = ex.Message; } } else { lbEntSalAvisos.Text = "Fondos insuficientes en Línea de crédito: " + ddlEntSalLineasDeCredito.SelectedItem.Text; } }