Пример #1
0
        public IActionResult _EditarLivroPartial(string cod)
        {
            ViewBag.Operacao = "edit";

            Livro l = _facade.GetAllInclude(new Livro {
                CodigoBarras = cod
            });

            _vh = new AdminLivroViewHelper
            {
                Entidades = new Dictionary <string, object>
                {
                    [typeof(Livro).Name] = l
                }
            };

            AdminLivroModel vm = (AdminLivroModel)_vh.ViewModel;

            vm.SelectCategorias  = _facade.Listar <CategoriaLivro>();
            vm.SelectGrupoPrecos = _facade.Listar <GrupoPreco>();

            foreach (var item in vm.SelectGrupoPrecos)
            {
                item.Nome += $" (Margem de {item.MargemLucro}%)";
            }

            return(PartialView("../Admin/PartialViews/_ConfigLivroPartial", vm));
        }
Пример #2
0
        public IActionResult AdicionarLivro(AdminLivroModel livro)
        {
            _vh = new AdminLivroViewHelper {
                ViewModel = livro
            };

            Livro   livroNovo = (Livro)_vh.Entidades[typeof(Livro).Name];
            Editora editora   = _facade.Query <Editora>(e => e.Nome == livroNovo.Editora.Nome,
                                                        e => e).FirstOrDefault();

            if (editora != null)
            {
                livroNovo.Editora = editora;
            }
            GrupoPreco grp = _facade.GetEntidade(new GrupoPreco {
                Id = livroNovo.GrupoPrecoId
            });

            livroNovo.CodigoBarras = GeraCodigoLivro();
            if (livroNovo.Capa == null)
            {
                livroNovo.Capa = new byte[0];
            }

            livroNovo.Inativo = true;

            string msg = _facade.Cadastrar(livroNovo);

            if (!String.IsNullOrEmpty(msg))
            {
                TempData["Alert"] = msg;
            }

            return(RedirectToAction(nameof(ConfigLoja)));
        }
Пример #3
0
        public IActionResult EditarLivro(AdminLivroModel livro)
        {
            _vh = new AdminLivroViewHelper {
                ViewModel = livro
            };

            Livro   ln      = (Livro)_vh.Entidades[typeof(Livro).Name];
            Livro   l       = _facade.GetAllInclude(ln);
            Editora editora = _facade.Query <Editora>(e => e.Nome == ln.Editora.Nome,
                                                      e => e).FirstOrDefault();

            if (editora == null)
            {
                ln.Editora = editora;
            }

            l.Altura                = ln.Altura;
            l.Autor                 = ln.Autor;
            l.Comprimento           = ln.Comprimento;
            l.DtLancamento          = ln.DtLancamento;
            l.Edicao                = ln.Edicao;
            l.Editora               = ln.Editora;
            l.GrupoPrecoId          = ln.GrupoPrecoId;
            l.Isbn                  = ln.Isbn;
            l.Largura               = ln.Largura;
            l.Paginas               = ln.Paginas;
            l.Peso                  = ln.Peso;
            l.Sinopse               = ln.Sinopse;
            l.Titulo                = ln.Titulo;
            l.Valor                 = ln.Valor;
            l.LivrosCategoriaLivros = ln.LivrosCategoriaLivros;
            GrupoPreco grp = _facade.GetEntidade(new GrupoPreco {
                Id = ln.GrupoPrecoId
            });

            if (l.Valor < l.MaiorCusto + (l.MaiorCusto * (grp.MargemLucro / 100)) &&
                !HttpContext.User.IsInRole("2"))
            {
                var valMin = l.MaiorCusto + l.MaiorCusto * (grp.MargemLucro / 100);
                TempData["Alert"] = "Você tentou inserir um valor inferior a margem de lucro desse livro. A margem de lucro" +
                                    $" do grupo de preço {grp.Nome} é {grp.MargemLucro}%, logo o preço mínimo deste livro é {valMin}. Tente novamente.";
                return(RedirectToAction(nameof(ConfigLoja)));
            }

            string msg = _facade.Editar(l);

            if (!String.IsNullOrEmpty(msg))
            {
                TempData["Alert"] = msg;
            }
            return(RedirectToAction(nameof(ConfigLoja)));
        }
Пример #4
0
        protected override void ToViewModel()
        {
            Pedido pedido = (Pedido)Entidades[typeof(Pedido).Name];

            PedidoModel vm = new PedidoModel()
            {
                DtPedido   = pedido.DtCadastro,
                Id         = pedido.Id.ToString(),
                PreçoTotal = pedido.CalcularValorTotal(),
                Status     = pedido.Status
            };

            AdminLivroViewHelper livroVh = new AdminLivroViewHelper();

            foreach (var livro in pedido.LivrosPedidos)
            {
                livroVh.Entidades = new Dictionary <string, object>
                {
                    [typeof(Livro).Name] = livro.Livro
                };
                vm.Livros[livro.Id] = (AdminLivroModel)livroVh.ViewModel;
            }

            DetalhesCartaoViewHelper cartaoVh = new DetalhesCartaoViewHelper();

            if (pedido.CartaoPedidos != null)
            {
                foreach (var cartao in pedido.CartaoPedidos)
                {
                    cartaoVh.Entidades = new Dictionary <string, object>
                    {
                        [typeof(CartaoCredito).Name] = cartao.Cartao
                    };
                    vm.Cartoes[(CartaoBaseModel)cartaoVh.ViewModel] = cartao.Valor;
                }
            }

            if (pedido.Cupom != null)
            {
                CupomViewHelper cupomVh = new CupomViewHelper
                {
                    Entidades = new Dictionary <string, object>
                    {
                        [typeof(Cupom).Name] = pedido.Cupom
                    }
                };
                vm.Cupom = (CupomModel)cupomVh.ViewModel;
            }

            _viewModel = vm;
        }
Пример #5
0
        public IActionResult _VisualizarLivroPartial(string cod)
        {
            Livro l = _facade.GetAllInclude(new Livro {
                CodigoBarras = cod
            });

            _vh = new AdminLivroViewHelper
            {
                Entidades = new Dictionary <string, object>
                {
                    [typeof(Livro).Name] = l
                }
            };

            return(PartialView("../Admin/PartialViews/_VisualizarLivroPartial", _vh.ViewModel));
        }
Пример #6
0
        protected override void ToViewModel()
        {
            Troca t = (Troca)Entidades[typeof(Troca).Name];

            TrocaModel vm = new TrocaModel
            {
                Status        = t.StatusTroca,
                LivroPedidoId = t.LivroPedido.Id,
                Id            = t.Id,
                DtTroca       = t.DtCadastro
            };

            AdminLivroViewHelper livroVh = new AdminLivroViewHelper
            {
                Entidades = new Dictionary <string, object>
                {
                    [typeof(Livro).Name] = t.LivroPedido.Livro
                }
            };

            vm.Livro = (AdminLivroModel)livroVh.ViewModel;

            _viewModel = vm;
        }