protected void imbAgregarDetalle_Click(object sender, ImageClickEventArgs e) { lblAviso.Text = ""; //Evitar mandar valores nullos para las conversiones decimal dCantidad, dIeps, dImp1 = 0, dImp2 = 0, dIva, dPrecio, dTotal; bool bEsEnsamble; if (txbCant.Text.Equals("")) dCantidad = 0; else dCantidad = int.Parse(txbCant.Text); //Calcular el total dPrecio = decimal.Parse(cmbPrecios.SelectedValue); dTotal = dCantidad * dPrecio; //IEPS if (txbIeps.Text.Equals("")) dIeps = 0; else dIeps = dTotal * (decimal.Parse(txbIeps.Text) / 100); ////Imp1 //if (txbImp1.Text.Equals("")) // dImp1 = 0; //else // dImp1 = dTotal * (decimal.Parse(txbImp1.Text) / 100); /////Imp2 //if (txbImp2.Text.Equals("")) // dImp2 = 0; //else // dImp2 = dTotal * (decimal.Parse(txbImp2.Text) / 100); ///Iva if (txbIva.Text.Equals("")) dIva = 0; else dIva = dTotal * (decimal.Parse(txbIva.Text) / 100); //Agregar los impuestos al total dTotal += dIeps + dImp1 + dImp2 + dIva; //Recuperar el id del producto para ya tenerlo en la lista MedNeg.Productos.BlProductos oblProducto = new MedNeg.Productos.BlProductos(); int iIdProducto = oblProducto.RecuperarIdProducto(txbClave.Text); MedNeg.Usuarios.BlUsuarios oblUsuarios = new MedNeg.Usuarios.BlUsuarios(); MedDAL.DAL.usuarios oUsuario = new MedDAL.DAL.usuarios(); oUsuario = (MedDAL.DAL.usuarios)oblUsuarios.Buscar(int.Parse(Session["usuarioid"].ToString())); List<MedDAL.DAL.productos_almacen> lstProductosAlmacen = new List<MedDAL.DAL.productos_almacen>(); lstProductosAlmacen.AddRange(oblProducto.ObtenerExistenciaProducto(iIdProducto, oUsuario.idAlmacen)); string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); MedNeg.Configuracion.BlConfiguracion oblConfiguracion = new MedNeg.Configuracion.BlConfiguracion(); MedDAL.Configuracion.DALConfiguracion objConfiguracion = new MedDAL.Configuracion.DALConfiguracion(); objConfiguracion = (MedDAL.Configuracion.DALConfiguracion)oblConfiguracion.CargaDatos(sRutaArchivoConfig); if (lstProductosAlmacen.Count != 0) { if (lstProductosAlmacen[0].Cantidad >= dCantidad || (objConfiguracion.iVentasNegativas == 1 && lstProductosAlmacen[0].Cantidad < dCantidad)) { if ((int)Session["sBolEsEnsamble"] == 1) bEsEnsamble = true; else bEsEnsamble = false; //Crear el objeto ya con sus parametros oblDetallePartida = new MedNeg.Facturas.BlDetallePartida( iIdProducto, txbClave.Text, txbProducto.Text, dCantidad, dIeps, //dImp1, //dImp2, dIva, dPrecio, txbObservaciones.Text, dTotal, txbProducto.Text, bEsEnsamble); //Agregar el objeto detalle partida al objeto lstDetallePartidaPedidos ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartidaPedidos"]).Add(oblDetallePartida); Session["sTotalFactura"] = Convert.ToDecimal(Session["sTotalFactura"]) + dTotal; lblTotal.Text = "TOTAL:$" + Session["sTotalFactura"].ToString(); dgvPartidaDetalle.DataBind(); LimpiarDatosDetalle(); txbClave.Focus(); } else if (objConfiguracion.iVentasNegativas == 0 && lstProductosAlmacen[0].Cantidad < dCantidad) { lblAviso.Text = "El producto que desea agregar no cuenta con suficientes existencias"; } } }
protected void imbAgregarDetalle_Click(object sender, ImageClickEventArgs e) { //Evitar mandar valores nullos para las conversiones //int iCantidad; decimal dCantidad, dIeps, dImp1 = 0, dImp2 = 0, dIva, dPrecio, dTotal; if (txbCant.Text.Equals("")) dCantidad = 0; else dCantidad = int.Parse(txbCant.Text); //Calcular el total dPrecio = decimal.Parse(cmbPrecios.SelectedValue); dTotal = dCantidad * dPrecio; //IEPS if (txbIeps.Text.Equals("")) dIeps = 0; else dIeps = dTotal * (decimal.Parse(txbIeps.Text) / 100); ////Imp1 //if (txbImp1.Text.Equals("")) // dImp1 = 0; //else // dImp1 = dTotal * (decimal.Parse(txbImp1.Text) / 100); /////Imp2 //if (txbImp2.Text.Equals("")) // dImp2 = 0; //else // dImp2 = dTotal * (decimal.Parse(txbImp2.Text) / 100); ///Iva if (txbIva.Text.Equals("")) dIva = 0; else dIva = dTotal * (decimal.Parse(txbIva.Text) / 100); //Agregar los impuestos al total dTotal += dIeps + dImp1 + dImp2 + dIva; //Recuperar el id del producto para ya tenerlo en la lista MedNeg.Productos.BlProductos oblProducto = new MedNeg.Productos.BlProductos(); int iIdProducto = oblProducto.RecuperarIdProducto(txbClave.Text); //Crear el objeto ya con sus parametros oblDetallePartida = new MedNeg.Facturas.BlDetallePartida( iIdProducto, txbClave.Text, txbProducto.Text, dCantidad, dIeps, //dImp1, //dImp2, dIva, dPrecio, txbObservaciones.Text, dTotal); //Agregar el objeto detalle partida al objeto lstDetallePartida ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Add(oblDetallePartida); dgvPartidaDetalle.DataBind(); Session["sTotalFactura"] = Convert.ToDecimal(Session["sTotalFactura"]) + dTotal; lblTotal.Text = "TOTAL:$" + Session["sTotalFactura"].ToString(); LimpiarDatosDetalle(); txbClave.Focus(); }
/// <summary> /// Agregar detalle a la partida /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void imbAgregarDetalle_Click(object sender, ImageClickEventArgs e) { lblAviso.Text = ""; //Evitar mandar valores nullos para las conversiones //int iCantidad; decimal dCantidad,dIeps, dImp1=0, dImp2=0, dIva, dPrecio, dTotal; if (txbCant.Text.Equals("")) dCantidad = 0; else dCantidad = int.Parse(txbCant.Text); //Calcular el total dPrecio = decimal.Parse(cmbPrecios.SelectedValue); dTotal = dCantidad * dPrecio; //IEPS if (txbIeps.Text.Equals("")) dIeps = 0; else dIeps = dTotal * (decimal.Parse(txbIeps.Text) / 100); ////Imp1 //if (txbImp1.Text.Equals("")) // dImp1 = 0; //else // dImp1 = dTotal * (decimal.Parse(txbImp1.Text) / 100); /////Imp2 //if (txbImp2.Text.Equals("")) // dImp2 = 0; //else // dImp2 = dTotal * (decimal.Parse(txbImp2.Text) / 100); ///Iva if (txbIva.Text.Equals("")) dIva = 0; else dIva = dTotal * (decimal.Parse(txbIva.Text) / 100); //Agregar los impuestos al total dTotal += dIeps + dImp1 + dImp2 + dIva; //Recuperar el id del producto para ya tenerlo en la lista MedNeg.Productos.BlProductos oblProducto = new MedNeg.Productos.BlProductos(); int iIdProducto = oblProducto.RecuperarIdProducto(txbClave.Text); MedNeg.Usuarios.BlUsuarios oblUsuarios = new MedNeg.Usuarios.BlUsuarios(); MedDAL.DAL.usuarios oUsuario = new MedDAL.DAL.usuarios(); oUsuario = (MedDAL.DAL.usuarios)oblUsuarios.Buscar(int.Parse(Session["usuarioid"].ToString())); List<MedDAL.DAL.productos_almacen> lstProductosAlmacen = new List<MedDAL.DAL.productos_almacen>(); lstProductosAlmacen.AddRange(oblProducto.ObtenerExistenciaProducto(iIdProducto, oUsuario.idAlmacen)); string sRutaArchivoConfig = Server.MapPath("~/Archivos/Configuracion.xml"); MedNeg.Configuracion.BlConfiguracion oblConfiguracion = new MedNeg.Configuracion.BlConfiguracion(); MedDAL.Configuracion.DALConfiguracion objConfiguracion = new MedDAL.Configuracion.DALConfiguracion(); objConfiguracion = (MedDAL.Configuracion.DALConfiguracion)oblConfiguracion.CargaDatos(sRutaArchivoConfig); if (lstProductosAlmacen.Count != 0) { if (lstProductosAlmacen[0].Cantidad >= dCantidad || (objConfiguracion.iVentasNegativas == 1 && lstProductosAlmacen[0].Cantidad < dCantidad) || lstProductosAlmacen[0].FechaCaducidad.Value > DateTime.Today) { // 0087 Datos del ensamble bool bEsEnsamble; if ((int)Session["sBolEsEnsamble"] == 1) bEsEnsamble = true; else bEsEnsamble = false; //Crear el objeto ya con sus parametros oblDetallePartida = new MedNeg.Facturas.BlDetallePartida( iIdProducto, txbClave.Text, txbProducto.Text, dCantidad, dIeps, //dImp1, //dImp2, dIva, dPrecio, txbObservaciones.Text, dTotal, txbProducto.Text, // 0087 Datos del ensamble bEsEnsamble); // 0087 Datos del ensamble //Agregar el objeto detalle partida al objeto lstDetallePartida ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstDetallePartida"]).Add(oblDetallePartida); dgvPartidaDetalle.DataBind(); //GT: Agregar los nuevos detalles a una lista alterna para poder modificar sus existencias sin duplicar las de los productos ya existentes if ((int)Session["accion"] == 2) ((List<MedNeg.Facturas.BlDetallePartida>)Session["lstremisionespartidaedicion"]).Add(oblDetallePartida); Session["sTotalFactura"] = Convert.ToDecimal(Session["sTotalFactura"]) + dTotal; lblTotal.Text = "TOTAL:$" + Session["sTotalFactura"].ToString(); LimpiarDatosDetalle(); txbClave.Focus(); if (lstProductosAlmacen[0].FechaCaducidad.Value <= DateTime.Today.AddDays(objConfiguracion.iCaducidad)) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarCaducidad(2);", true); } } else if (objConfiguracion.iVentasNegativas == 0 && lstProductosAlmacen[0].Cantidad < dCantidad) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarStock(2);", true); } else if (lstProductosAlmacen[0].FechaCaducidad.Value <= DateTime.Today) { ScriptManager.RegisterStartupScript(pnlFormulario, pnlFormulario.GetType(), "alertstock", "alertarCaducidad(3);", true); } } }