public void SeleccionDeProducto(string UidProducto) { VMProducto Objeto = new VMProducto(); foreach (DataRow item in DatosProductos.ProductoConImagen(UidProducto).Rows) { Guid uidproducto = new Guid(item["UidProducto"].ToString()); string nombre = item["VchNombre"].ToString().ToUpper(); string ruta = item["NVchRuta"].ToString(); Objeto = new VMProducto() { UID = uidproducto, STRNOMBRE = nombre, STRRUTA = ruta }; if (ListaDeProductosSeleccionados == null) { if (!ListaDeProductosSeleccionados.Exists(Producto => Producto.UID.ToString() == UidProducto)) { ListaDeProductosSeleccionados.Add(Objeto); } } if (ListaDeProductosSeleccionados != null) { if (!ListaDeProductosSeleccionados.Exists(Producto => Producto.UID.ToString() == UidProducto)) { ListaDeProductosSeleccionados.Add(Objeto); } } } }
public void AgregaProductoSeleccionadoALista() { foreach (var Producto in ListaDelProductosSeleccionados) { foreach (DataRow item in DatosProductos.ProductoCarrito(Producto.UID, Producto.UidSucursal.ToString(), Producto.UidSeccion.ToString()).Rows) { Guid uidproducto = new Guid(item["UidProducto"].ToString()); Guid uidsucursal = new Guid(item["UidSucursal"].ToString()); Guid uiseccion = new Guid(item["UidSeccion"].ToString()); string nombre = item["VchNombre"].ToString(); DateTime Tiempo = DateTime.Parse(item["VchTiempoElaboracion"].ToString()); string tiempo = Tiempo.Hour.ToString() + "HH" + Tiempo.Minute.ToString() + "MM"; string costo = item["Mcosto"].ToString(); string sucursal = item["Identificador"].ToString(); string imagen = "../" + item["NVchRuta"].ToString(); var registro = new VMProducto() { STRTiemporElaboracion = tiempo, UidSeccion = uiseccion, UID = uidproducto, UidSucursal = uidsucursal, StrCosto = costo, STRNOMBRE = nombre, Empresa = sucursal, STRRUTA = imagen }; if (ListaDeGiro.Count > 0) { if (!ListaDeGiro.Exists(p => p.UID == uidproducto)) { ListaDeGiro.Add(registro); } } if (ListaDeCategorias.Count > 0) { if (!ListaDeCategorias.Exists(p => p.UID == uidproducto)) { ListaDeCategorias.Add(registro); } } if (ListaDeSubcategorias.Count > 0) { if (!ListaDeSubcategorias.Exists(p => p.UID == uidproducto)) { ListaDeSubcategorias.Add(registro); } } } } }
public void AgregaAlCarrito(Guid uidProducto, Guid UidSucursal, Guid UidSeccion, string cantidad, decimal CostoDeEnvio = 0.0m, Guid UidTarifario = new Guid(), string strNota = "", Guid RegistroProductoEnCarrito = new Guid(), string URLEmpresa = "", string dPropina = "") { //Agrega un registro sin nota //Agrega un registro con una nota string nota = ""; Guid uidNota = Guid.Empty; decimal dpropina = new decimal(); if (!string.IsNullOrEmpty(dPropina)) { dpropina = decimal.Parse(dPropina, System.Globalization.NumberStyles.Float); } if (RegistroProductoEnCarrito == Guid.Empty) { if (!string.IsNullOrEmpty(strNota)) { uidNota = Guid.NewGuid(); nota = strNota; } foreach (DataRow item in DatosProductos.ProductoCarrito(uidProducto, UidSucursal.ToString(), UidSeccion.ToString()).Rows) { dpropina = 0.00m; Guid uidproducto = new Guid(item["UidProducto"].ToString()); Guid uidsucursal = new Guid(item["UidSucursal"].ToString()); Guid UidSeccionpoducto = new Guid(item["UidSeccionProducto"].ToString()); string nombre = item["VchNombre"].ToString(); string costo = item["Mcosto"].ToString(); string sucursal = item["Identificador"].ToString(); //string imagen = "../" + item["NVchRuta"].ToString(); string imagen = "http://www.godeliverix.net/vista/" + item["NVchRuta"].ToString(); decimal SubTotal = decimal.Parse(costo) * int.Parse(cantidad); decimal Total = SubTotal + CostoDeEnvio; dpropina = CostoDeEnvio * 0.1m; ListaDelCarrito.Add(new VMProducto() { UidRegistroProductoEnCarrito = Guid.NewGuid(), UidSeccionPoducto = UidSeccionpoducto, Total = Total, Subtotal = SubTotal, CostoEnvio = CostoDeEnvio, DPropina = dpropina, UID = uidproducto, UidSucursal = uidsucursal, STRNOMBRE = nombre, StrCosto = SubTotal.ToString(), Empresa = sucursal, STRRUTA = imagen, Cantidad = int.Parse(cantidad), UidNota = uidNota, StrNota = nota, ColorEstatusProducto = "" }); if (!ListaDelInformacionSucursales.Exists(suc => suc.UidSucursal == uidsucursal)) { ListaDelInformacionSucursales.Add(new VMProducto() { STRRUTA = URLEmpresa, UidTarifario = UidTarifario, UidSucursal = uidsucursal, Empresa = sucursal, Total = Total, CostoEnvio = CostoDeEnvio, Subtotal = SubTotal, Cantidad = int.Parse(cantidad), DPropina = dpropina }); } else { if (ListaDelInformacionSucursales.Exists(suc => suc.UidSucursal == UidSucursal)) { var Sucursal = ListaDelInformacionSucursales.Find(suc => suc.UidSucursal == UidSucursal); Sucursal.Subtotal = (Sucursal.Subtotal + SubTotal); Sucursal.Cantidad = Sucursal.Cantidad + int.Parse(cantidad); Sucursal.Total = (Sucursal.Subtotal + Sucursal.CostoEnvio); Sucursal.DPropina = dpropina; } } } } else //Si existe el producto en la lista y no tiene un mensaje if (ListaDelCarrito.Exists(Objeto => Objeto.UidRegistroProductoEnCarrito == RegistroProductoEnCarrito)) { var Producto = new VMProducto(); Producto = ListaDelCarrito.Find(Objeto => Objeto.UidRegistroProductoEnCarrito == RegistroProductoEnCarrito); decimal precio = Producto.Subtotal / Producto.Cantidad; Producto.Cantidad = Producto.Cantidad + int.Parse(cantidad); Producto.Subtotal = (precio * Producto.Cantidad); Producto.Total = Producto.Subtotal + Producto.CostoEnvio; if (ListaDelInformacionSucursales.Exists(suc => suc.UidSucursal == Producto.UidSucursal)) { var sucursal = ListaDelInformacionSucursales.Find(suc => suc.UidSucursal == Producto.UidSucursal); decimal preciototal = 0.0m; var productos = ListaDelCarrito.Where(x => x.UidSucursal == sucursal.UidSucursal).ToList(); foreach (var item in productos) { preciototal = preciototal + item.Subtotal; } sucursal.Subtotal = preciototal; sucursal.Cantidad = sucursal.Cantidad + int.Parse(cantidad); if (CostoDeEnvio != 0) { sucursal.CostoEnvio = CostoDeEnvio; } sucursal.Total = sucursal.Subtotal + sucursal.CostoEnvio; if (UidTarifario != Guid.Empty) { sucursal.UidTarifario = UidTarifario; } } } }