예제 #1
0
 public async Task <string> _LinkBody([FromBody] LinkBody elemento)
 {
     try
     {
         if (elemento.Id == 0)
         {
             return(await RepositoryElemento.salvar(elemento));
         }
         else
         {
             return(await RepositoryElemento.Editar(elemento));
         }
     }
     catch (Exception ex) { return(ex.Message); }
 }
예제 #2
0
        public async Task <IActionResult> Create(string elemento, int pagina)
        {
            var site    = HttpHelper.GetPedidoId();
            var usuario = await UserManager.GetUserAsync(this.User);

            var email    = usuario.UserName;
            var condicao = "";

            ViewBag.elemento  = elemento;
            ViewBag.condicao  = _context.InfoVenda.FirstOrDefault(i => i.ClienteId == usuario.Id);
            ViewBag.condicao2 = _context.InfoEntrega.FirstOrDefault(i => i.ClienteId == usuario.Id);
            ViewBag.condicao3 = _context.ContaBancaria.FirstOrDefault(i => i.ClienteId == usuario.Id);

            var claims = User.Claims.ToList();
            var roles  = "";

            foreach (var v in claims)
            {
                roles += v.Value + ", ";
            }

            bool permissao2 = await UserHelper.VerificarPermissao2(site, email, condicao, elemento);

            bool permissao = await UserHelper.VerificarPermissao(site, roles, elemento);

            if (!permissao2)
            {
                return(PartialView("NoPermission"));
            }

            if (!permissao)
            {
                return(PartialView("NoPermission"));
            }

            Elemento ele = null;

            if (elemento == "Imagem")
            {
                ele = new Imagem();
            }
            if (elemento == "Show")
            {
                ele = new Show();
            }
            if (elemento == "Video")
            {
                ele = new Video();
            }
            if (elemento == "Texto")
            {
                ele = new Texto();
            }
            if (elemento == "Table")
            {
                ele = new Table();
            }
            if (elemento == "Roupa")
            {
                ele = new Roupa();
            }
            if (elemento == "Calcado")
            {
                ele = new Calcado();
            }
            if (elemento == "Alimenticio")
            {
                ele = new Alimenticio();
            }
            if (elemento == "Acessorio")
            {
                ele = new Acessorio();
            }
            if (elemento == "LinkBody")
            {
                ele = new LinkBody();
            }
            if (elemento == "Formulario")
            {
                ele = new Formulario();
            }
            if (elemento == "Dropdown")
            {
                ele = new Dropdown();
            }
            if (elemento == "CarouselPagina")
            {
                ele = new CarouselPagina();
            }
            if (elemento == "CarouselImg")
            {
                ele = new CarouselImg();
            }
            if (elemento == "Campo")
            {
                ele = new Campo();
            }

            var pedido = await _context.Pedido.Include(p => p.Paginas).Include(p => p.Pastas).FirstAsync(p => p.Id == site);

            var elementos = new List <Elemento>();
            var els       = await _context.Elemento.Where(elem => elem.Pagina_ == pagina).ToListAsync();

            List <Pagina> lista = new List <Pagina>();

            lista.Add(new Pagina {
                Id = 0, Titulo = "[[ Escolha uma pagina ]]"
            });
            var page = await _context.Pagina.Include(p => p.Story)
                       .ThenInclude(p => p.Pagina).FirstAsync(p => p.Id == pagina);

            lista.AddRange(page.Story.Pagina);
            ViewBag.PaginaEscolhida = new SelectList(lista, "Id", "Titulo");

            elementos.AddRange(els);

            ViewBag.condicao = !page.Layout;

            PreencherCombo(ele, pedido, elementos);

            return(PartialView(ele));
        }