Esempio n. 1
0
        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);
                    }
                }
            }
        }
Esempio n. 2
0
        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);
                        }
                    }
                }
            }
        }
Esempio n. 3
0
        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;
                    }
                }
            }
        }