public void Remove(int id) { ExtraPedido p = Find(id); nowBDEntities.ExtraPedido.Remove(p); nowBDEntities.SaveChanges(); }
public ExtraPedido Add(ExtraPedido p) { ExtraPedido obj = nowBDEntities.ExtraPedido.Add(p); nowBDEntities.SaveChanges(); return(obj); }
public ExtraPedido AddExtra(ExtraPedido extra) { //VerificarStock(extra); extra.IdExtraPedido = listadoExtras.Count > 0 ? listadoExtras.Last().IdExtraPedido + 1 : 1; listadoExtras.Add(extra); return(extra); }
protected void GridExtrasAgregados_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { GridViewRow row = e.Row; LinkButton btnAdd = (LinkButton)row.FindControl("btnPlus"); LinkButton btnSubstract = (LinkButton)row.FindControl("btnMinus"); int idIngrediente = Convert.ToInt32((row.FindControl("lblCodigo") as Label).Text); Label lblElementoPedido = e.Row.Parent.Parent.Parent.FindControl("lblCodigoElementoPedido") as Label; Label lblIdAlimento = e.Row.Parent.Parent.Parent.FindControl("lblCodigo") as Label; Ingrediente ingrediente = iDAL.Find(idIngrediente); ExtraPedido extraPedido = carrito.GetListExtra().FirstOrDefault(x => x.IdIngrediente == idIngrediente && x.IdAlimentoPedido == int.Parse(lblElementoPedido.Text)); ExtraDisponible extraDisponible = eDDAL.FindByAlimentoAndIngrediente(int.Parse(lblIdAlimento.Text), idIngrediente); Label lblIngrediente = row.FindControl("lblIngrediente") as Label; Label lblCantidad = row.FindControl("lblCantidad") as Label; Label lblValor = row.FindControl("lblValor") as Label; lblIngrediente.Text = ingrediente.Nombre; lblCantidad.Text = $"{ingrediente.Porción * extraPedido.CantidadExtra} {tMDAL.Find(ingrediente.IdTipoMedicionPorcion.Value).Descripcion}"; int valor = extraDisponible.Valor.HasValue ? extraPedido.CantidadExtra.Value * extraDisponible.Valor.Value : 0; lblValor.Text = $"{ valor }"; btnAdd.Enabled = extraPedido == null || extraPedido.CantidadExtra != extraDisponible.CantidadMaxima; btnSubstract.Enabled = extraPedido != null; } }
public void Edit(ExtraPedido p) { ExtraPedido extra = nowBDEntities.ExtraPedido.FirstOrDefault(obj => obj.IdExtraPedido == p.IdExtraPedido); extra = p; nowBDEntities.SaveChanges(); }
private string LlenarAlimentos(int id) { string alimentos = ""; alimentos += "<tr class='thead-light'><th colspan='2'> Preparaciones </th></tr>"; foreach (AlimentoPedido item in aPDAL.GetAlimentos(id)) { List <ExtraPedido> extras = exPDAL.GetAll().Where(x => x.IdAlimentoPedido == item.IdAlimentoPedido).ToList(); int cantidadExtras = extras.Count; alimentos += "<tr>"; if (cantidadExtras < 2) { alimentos += $"<td>{aDAL.Find((int)item.IdAlimento).Nombre}</td>"; if (cantidadExtras == 0) { alimentos += $"<td>No tiene Extras</td>"; } else { ExtraPedido extra = exPDAL.GetAll().FirstOrDefault(x => x.IdAlimentoPedido == item.IdAlimentoPedido); Ingrediente ingrediente = iDAL.Find((int)extra.IdIngrediente); if (extra.CantidadExtra < 2)//Cantidad de porciones { alimentos += $"<td>Extra {ingrediente.Nombre}</td>"; } else { alimentos += $"<td>Extra {ingrediente.Nombre} x{extra.CantidadExtra}</td>"; } } } else { alimentos += $"<td rowspan='{cantidadExtras}' class='align-middle'>{aDAL.Find((int)item.IdAlimento).Nombre}</td>"; foreach (ExtraPedido extra in extras) { if (extra.CantidadExtra < 2)//Cantidad de porciones { alimentos += $"<td>Extra {iDAL.Find((int)extra.IdIngrediente).Nombre}</td>"; } else { alimentos += $"<td>Extra {iDAL.Find((int)extra.IdIngrediente).Nombre} x{extra.CantidadExtra}</td>"; } if ((cantidadExtras % 2 == 0) || (extras.IndexOf(extra) != extras.IndexOf(extras.Last()))) //Evita que se haga una nueva row al final de la tabla, { alimentos += "</tr><tr>"; } } } alimentos += "</tr>"; } return(alimentos); }
private void SubstractExtra(ExtraDisponible extraDisp) { int idAlimentoPedido = Convert.ToInt32(ViewState["AlimentoPedido"]); ExtraPedido extraPedido = carrito.GetListExtra().FirstOrDefault(x => x.IdIngrediente == extraDisp.IdIngrediente && x.IdAlimentoPedido == idAlimentoPedido); if (extraPedido.CantidadExtra == 1) { carrito.RemoveExtra(extraPedido); } else { extraPedido.CantidadExtra--; extraPedido.ValorExtra = extraPedido.CantidadExtra * extraDisp.Valor; } }
private void LlenarExtraFields(ExtraPedido extra) { //LoadCboModalIngrediente(); ExtraDisponible extraDisponible = eDDAL.FindByAlimentoAndIngrediente(Convert.ToInt32(lblModalIdAlimento.Text), extra.IdIngrediente.Value); Ingrediente ingrediente = iDAL.Find(extra.IdIngrediente.Value); cboModalIngrediente.Items.FindByValue(extra.IdIngrediente.Value.ToString()).Enabled = true; cboModalIngrediente.SelectedValue = extra.IdIngrediente.Value.ToString(); ViewState["IdIngrediente"] = ingrediente.IdIngrediente; txtCantidadPorcion.Text = extra.CantidadExtra.ToString(); txtValorPorPorcion.Text = $"{ingrediente.Porción} {tMDAL.Find(ingrediente.IdTipoMedicion.Value).Descripcion}"; txtModalValorExtra.Text = extra.ValorExtra.HasValue ? extra.ValorExtra.Value.ToString() : ""; }
protected void GridViewExtras_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { try { GridViewRow row = e.Row; List <ExtraPedido> extrasOnCart = new List <ExtraPedido>(); LinkButton btnAdd = (LinkButton)row.FindControl("btnPlus"); LinkButton btnSubstract = (LinkButton)row.FindControl("btnMinus"); int idAlimentoPedido = Convert.ToInt32(lblModalCodigo.Text); int idAlimento = carrito.GetListAlimentos().FirstOrDefault(x => x.IdAlimentoPedido == idAlimentoPedido).IdAlimento.Value; int idIngrediente = Convert.ToInt32((row.FindControl("lblCodigo") as Label).Text); ExtraPedido extraPedido = carrito.GetListExtra().FirstOrDefault(x => x.IdIngrediente == idIngrediente && x.IdAlimentoPedido == idAlimentoPedido); Ingrediente ingrediente = iDAL.Find(idIngrediente); ExtraDisponible extraDisp = eDDAL.FindByAlimentoAndIngrediente(idAlimento, idIngrediente); Label lblIngrediente = row.FindControl("lblIngrediente") as Label; lblIngrediente.Text = ingrediente.Descripcion; Label lblCantidad = row.FindControl("lblCantidad") as Label; lblCantidad.Text = extraPedido != null?extraPedido.CantidadExtra.ToString() : "0"; Label lblValor = row.FindControl("lblValor") as Label; lblValor.Text = extraDisp.Valor.ToString(); Label lblTotal = row.FindControl("lblTotal") as Label; lblTotal.Text = extraPedido != null ? (extraDisp.Valor * extraPedido.CantidadExtra).ToString() : "0"; btnAdd.Enabled = extraPedido == null || extraPedido.CantidadExtra != extraDisp.CantidadMaxima; btnSubstract.Enabled = extraPedido != null; } catch (Exception ex) { UserMessage(ex.Message, "danger"); } } }
protected void btnAgregarExtra_Click(object sender, EventArgs e) { try { int idIngrediente = Convert.ToInt32(cboModalIngrediente.SelectedValue); int idAlimentoPedido = Convert.ToInt32(txtIdAlimentoPedido.Text); ValidateExtraFields(idIngrediente, idAlimentoPedido); cboModalIngrediente.Items.FindByValue(idIngrediente.ToString()).Enabled = false; //Se bloquea la opción de elegir el mismo ingrediente ExtraPedido extra = new ExtraPedido() { IdIngrediente = idIngrediente, CantidadExtra = Convert.ToInt32(txtCantidadPorcion.Text), IdAlimentoPedido = idAlimentoPedido, ValorExtra = string.IsNullOrEmpty(txtModalValorExtra.Text) ? (int?)null : Convert.ToInt32(txtModalValorExtra.Text) }; List <ExtraPedido> listaExtras = carrito.GetListExtra().Where(x => x.IdAlimentoPedido == idAlimentoPedido).ToList(); ExtraPedido item = listaExtras.FirstOrDefault(x => x.IdIngrediente == idIngrediente); if (item != null) { int index = carrito.GetListExtra().IndexOf(item); carrito.UpdateExtra(index, extra); } else { carrito.AddExtra(extra); } CargarGridExtras(idAlimentoPedido); LimpiarModal(); SwitchTextBox(true); } catch (Exception ex) { UserMessageExtra(ex.Message, "danger"); } }
private void AddExtra(ExtraDisponible extraDisp) { int idAlimentoPedido = Convert.ToInt32(ViewState["AlimentoPedido"]); ExtraPedido extraPedido = carrito.GetListExtra().FirstOrDefault(x => x.IdIngrediente == extraDisp.IdIngrediente && x.IdAlimentoPedido == idAlimentoPedido); if (extraPedido == null) { extraPedido = carrito.AddExtra(new ExtraPedido() { IdAlimentoPedido = idAlimentoPedido, IdIngrediente = extraDisp.IdIngrediente, ValorExtra = extraDisp.Valor, CantidadExtra = 1 }); } else { extraPedido.CantidadExtra++; extraPedido.ValorExtra = extraPedido.CantidadExtra * extraDisp.Valor; } }
protected void GridViewExtras_RowCommand(object sender, GridViewCommandEventArgs e) { GridViewRow row = GridViewExtras.Rows[Convert.ToInt32(e.CommandArgument)]; int idExtra = Convert.ToInt32((row.FindControl("lblIdExtra") as Label).Text); ExtraPedido extra = carrito.FindExtra(idExtra); switch (e.CommandName) { case "Modificar": EliminarCbo(); ViewState["IdExtra"] = idExtra; LlenarExtraFields(extra); SwitchTextBox(false); break; case "Eliminar": carrito.RemoveExtra(extra); CargarGridExtras(extra.IdAlimentoPedido.Value); LoadCboModalIngrediente(carrito.FindAlimento(extra.IdAlimentoPedido.Value)); break; } }
public void UpdateExtra(int index, ExtraPedido extra) { carritoExtras.Update(index, extra); }
public void RemoveExtra(ExtraPedido eP) { listadoExtras.Remove(eP); }
public void Update(int index, ExtraPedido extra) { listadoExtras[index] = extra; }
public void RemoveExtra(ExtraPedido extra) { carritoExtras.RemoveExtra(extra); }
public ExtraPedido AddExtra(ExtraPedido extra) { return(carritoExtras.AddExtra(extra)); }
public ExtraPedido Find(int id) { ExtraPedido m = nowBDEntities.ExtraPedido.FirstOrDefault(obj => obj.IdExtraPedido == id); return(m); }