protected void UiVistaOrdenDeVentaDetalle_BatchUpdate(object sender, ASPxDataBatchUpdateEventArgs e) { if (!ValidarConexionYUsuarioLogueado(sender)) { return; } foreach (var itemUpdate in e.UpdateValues) { var update = itemUpdate; foreach (var itemOrden in OrdenDeVentaDetalles.Where(itemOrden => itemOrden.SKU.Equals(update.Keys["SKU"]))) { itemOrden.QTY = decimal.Parse(itemUpdate.NewValues["QTY"].ToString()); itemOrden.TOTAL_LINE = itemOrden.PRICE * decimal.Parse(itemUpdate.NewValues["QTY"].ToString()); itemOrden.DISCOUNT = UiSpinDescuentoAplicado.Number; itemOrden.TOTAL_DISCOUNT = (itemOrden.TOTAL_LINE - ((itemOrden.TOTAL_LINE * itemOrden.DISCOUNT) / 100)); } } foreach (var itemDelete in e.DeleteValues) { var delete = itemDelete; foreach (var itemOrden in OrdenDeVentaDetalles.Where(itemOrden => itemOrden.SKU.Equals(delete.Keys["SKU"]))) { OrdenDeVentaDetalles.Remove(itemOrden); AgregarSkuAListaSkusParaVenta(itemOrden.SKU); break; } ((ASPxGridView)(sender)).JSProperties.Add("cpActualizarListaSkusParaVenta", "enable"); } e.Handled = true; }
private void AgregarSku(object sender) { try { Session["CargadoDeExcel"] = false; if (OrdenDeVentaDetalles == null) { OrdenDeVentaDetalles = new List <OrdenDeVentaDetalle>(); } var lst = UiListaSku.GridView.GetSelectedFieldValues("SKU;SKU_DESCRIPTION;COST"); int i = 1; foreach (var item in lst) { var existeSku = false; var item1 = item; foreach (var itemOrden in OrdenDeVentaDetalles.Where(itemOrden => item1.ToString().Split('|')[0].Equals(itemOrden.SKU))) { itemOrden.TOTAL_LINE = (itemOrden.QTY * itemOrden.PRICE); existeSku = true; break; } if (existeSku) { continue; } var lineaDetalle = new OrdenDeVentaDetalle(); lineaDetalle.SKU = item.ToString().Split('|')[0]; lineaDetalle.SKU_DESCRIPTION = item.ToString().Split('|')[1]; lineaDetalle.QTY = 1; lineaDetalle.PRICE = Convert.ToDecimal(item.ToString().Split('|')[2]); lineaDetalle.TOTAL_LINE = (lineaDetalle.PRICE * lineaDetalle.QTY); lineaDetalle.DISCOUNT = UiSpinDescuentoAplicado.Number; lineaDetalle.TOTAL_DISCOUNT = (lineaDetalle.TOTAL_LINE - ((lineaDetalle.TOTAL_LINE * lineaDetalle.DISCOUNT) / 100)); lineaDetalle.LINE_SEQ = i; lineaDetalle.POSTED_DATETIME = DateTime.Now; lineaDetalle.SERIE = "0"; lineaDetalle.SERIE_2 = "0"; lineaDetalle.REQUERIES_SERIE = 0; lineaDetalle.COMBO_REFERENCE = lineaDetalle.SKU; lineaDetalle.PARENT_SEQ = lineaDetalle.LINE_SEQ; lineaDetalle.IS_ACTIVE_ROUTE = 0; OrdenDeVentaDetalles.Add(lineaDetalle); i++; foreach (var itemSkuParaVenta in SkuParaVentas.Where(itemSkuParaVenta => itemSkuParaVenta.SKU.Equals(lineaDetalle.SKU))) { SkuParaVentas.Remove(itemSkuParaVenta); break; } } UiVistaOrdenDeVentaDetalle.DataSource = OrdenDeVentaDetalles; UiVistaOrdenDeVentaDetalle.DataBind(); ((ASPxGridView)(sender)).JSProperties.Add("cpActualizarListaSkusParaVenta", "enable"); } catch (Exception ex) { EstablecerError(ex.Message, sender); } }