public bool ActualizaRenovacionSiExiste(int idAnuncio, string nombreAnuncio, PaginaPaqueteViewModel paqueteNuevo, bool ofertaDelDia, out PaqueteCarrito outPaquete)
        {
            var paquete = Paquetes.Where(p => p.IdAnuncio == idAnuncio && string.Compare(nombreAnuncio, p.NombreAnuncio, StringComparison.CurrentCulture) == 0).FirstOrDefault();

            if (paquete == null)
            {
                outPaquete = null;
                return(false);
            }

            if (!ofertaDelDia)
            {
                var copia = paquete.Beneficios.Where(b => b.Tipo == (int)BeneficiosExtraTipo.OfertaDelDia).FirstOrDefault();
                if (copia != null)
                {
                    paquete.borraBeneficioDePaquete(copia.Id);
                }
            }

            paquete.Nombre          = paqueteNuevo.Nombre;
            paquete.Precio          = paqueteNuevo.Precio;
            paquete.Id              = paqueteNuevo.Id;
            paquete.Meses           = paqueteNuevo.Meses;
            Paquetes[paquete.Index] = paquete;
            outPaquete              = paquete;
            return(true);
        }
示例#2
0
        public bool ActualizaRenovacionSiExiste(int idAnuncio, string nombreAnuncio, PaginaPaqueteViewModel paqueteNuevo, out PaqueteCarrito outPaquete)
        {
            var paquete = Paquetes.Where(p => p.IdAnuncio == idAnuncio && string.Compare(nombreAnuncio, p.NombreAnuncio, StringComparison.CurrentCulture) == 0).FirstOrDefault();

            if (paquete == null)
            {
                outPaquete = null;
                return(false);
            }

            paquete.Nombre = paqueteNuevo.Nombre;
            paquete.Precio = paqueteNuevo.Precio;
            paquete.Id     = paqueteNuevo.Id;
            paquete.Meses  = paqueteNuevo.Meses;
            paquete.Beneficios.Clear();
            Paquetes[paquete.Index] = paquete;
            outPaquete = paquete;
            return(true);
        }
示例#3
0
        public async Task <PaginaPaqueteViewModel> ObtenerPaquete(int?id)
        {
            return(await Task.Run(() =>
            {
                if (id == null)
                {
                    return null;
                }
                using (var _dbContext = new MercampoEntities())
                {
                    Startup.OpenDatabaseConnection(_dbContext);
                    if (_dbContext.Database.Connection.State != ConnectionState.Open)
                    {
                        return null;
                    }

                    var paquete = _dbContext.Paquetes.Where(p => p.id == id).FirstOrDefault();
                    PaginaPaqueteViewModel paqueteModel = new PaginaPaqueteViewModel(paquete.id, paquete.nombre, paquete.meses, paquete.precio, paquete.descripcion, paquete.porcentajeAhorro);

                    _dbContext.Database.Connection.Close();
                    return paqueteModel;
                }
            }));
        }