public async Task Salvar(long idPedidoVenda, long idPedidoVendaVolume, PedidoItemViewModel pedidoItem)
        {
            try
            {
                _uow.PedidoVendaProdutoRepository.Add(new PedidoVendaProduto()
                {
                    IdPedidoVenda           = idPedidoVenda,
                    IdPedidoVendaVolume     = idPedidoVendaVolume,
                    IdProduto               = pedidoItem.Produto.IdProduto,
                    IdEnderecoArmazenagem   = pedidoItem.EnderecoSeparacao.IdEnderecoArmazenagem.Value,
                    IdPedidoVendaStatus     = PedidoVendaStatusEnum.EnviadoSeparacao,
                    QtdSeparar              = pedidoItem.Quantidade,
                    QtdSeparada             = null,
                    CubagemProduto          = pedidoItem.Produto.CubagemProduto.Value,
                    PesoProduto             = pedidoItem.Produto.PesoBruto,
                    DataHoraInicioSeparacao = null,
                    DataHoraFimSeparacao    = null,
                    IdLote = pedidoItem.IdLote
                });

                await _uow.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _log.Error(String.Format("Erro ao salvar produto do pedido de venda {0}.", idPedidoVenda), ex);
            }
        }
        public ActionResult Edit(PedidoItemViewModel pedido, string botao, int idProduto)
        {
            try
            {
                //ViewBag.PessoaId = new SelectList(db.Pessoas, "Id", "NomeCompleto", pedido.Pedido.PessoaId);
                //return View();
                if (botao == "removerProduto")
                {
                    Produto produto = db.Produtos.Find(idProduto);
                    CarrinhoViewModel.RemoveLine(produto);
                }



                ViewBag.PessoaId = new SelectList(db.Pessoas.Where(p => p.PapelPessoaId == 1)
                                                  .Where(p => p.TipoPessoaId == 1)
                                                  .Where(x => x.Status == true)
                                                  .OrderBy(x => x.NomeCompleto), "Id", "NomeCompleto", pedido.idPessoa);
                ViewBag.ProdutoId = new SelectList(db.Produtos.Where(x => x.Status == true).OrderBy(x => x.Nome), "Id", "Nome");
                return(View(pedido));
            }
            catch (Exception ex)
            {
                TempData["Error"] = "Ocorreu um erro,entre em contato com o administrador do sistema!";
                return(RedirectToAction("Index"));

                throw ex;
            }
        }
Exemple #3
0
        public ActionResult AdicionarItem(PedidoItemViewModel pedidoItem)
        {
            var pedidoDomain = _mapper.Map <PedidoItemViewModel, PedidoItem>(pedidoItem);

            _pedidoItemApp.Add(pedidoDomain);

            return(View());
        }
        // GET: Pedido/Details/5

        public ActionResult Details(int?id)
        {
            try
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                Pedido pedido = db.Pedidos.Find(id);
                var    result = (from p in db.Pedidos
                                 from pr in p.Produtos
                                 join ppr in db.Produtos on pr.Id equals ppr.Id
                                 where p.Id == id
                                 select new FilaCarrinho
                {
                    ID = pr.Id,
                    Produto = pr
                }).ToList();
                PedidoItemViewModel pedidoViewModel = new PedidoItemViewModel();
                pedidoViewModel.Pessoa   = pedido.Pessoa;
                pedidoViewModel.Produtos = result;
                pedidoViewModel.idPessoa = pedido.PessoaId;
                pedidoViewModel.Pedido   = pedido;
                pedidoViewModel.Total    = (decimal)pedido.Total;

                foreach (var item in result)
                {
                    CarrinhoViewModel.AddItem(item.Produto);
                }

                ViewBag.PessoaId = new SelectList(db.Pessoas.Where(p => p.PapelPessoaId == 1)
                                                  .Where(p => p.TipoPessoaId == 1)
                                                  .Where(x => x.Status == true)
                                                  .OrderBy(x => x.NomeCompleto), "Id", "NomeCompleto", pedido.PessoaId);
                ViewBag.ProdutoId = new SelectList(db.Produtos.Where(x => x.Status == true).OrderBy(x => x.Nome), "Id", "Nome");
                return(View(pedidoViewModel));



                //  if (id == null)
                //  {
                //    return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
                //  }
                //  Pedido pedido = db.Pedidos.Find(id);
                //  if (pedido == null)
                //  {
                //    return HttpNotFound();
                //  }
                //  return View(pedido);
            }
            catch (Exception ex)
            {
                TempData["Error"] = "Ocorreu um erro,entre em contato com o administrador do sistema!";
                return(RedirectToAction("Index"));

                throw ex;
            }
        }
        public static PedidoItem ToPedidoItem(PedidoItemViewModel pedidoItemViewModel)
        {
            var pedidoItem = PedidoItem.PedidoItemFactory.NovoPedido(
                pedidoItemViewModel.PedidoItemId,
                pedidoItemViewModel.CursoId,
                pedidoItemViewModel.Descricao,
                pedidoItemViewModel.Quantidade,
                pedidoItemViewModel.Valor,
                pedidoItemViewModel.PedidoId);

            return(pedidoItem);
        }
        public static PedidoItemViewModel ToPedidoItemViewModel(PedidoItem pedidoItem)
        {
            var pedidoViewModel = new PedidoItemViewModel()
            {
                CursoId    = pedidoItem.CursoId,
                Descricao  = pedidoItem.Descricao,
                Quantidade = pedidoItem.Quantidade,
                Valor      = pedidoItem.Valor
            };

            return(pedidoViewModel);
        }
Exemple #7
0
        public async Task <HistoricoViewModel> GetHistorico(int clienteId)
        {
            var resultado = await _pedidoRepositorio.GetHistorico(clienteId);

            var HistoricoViewModel = new HistoricoViewModel();

            if (resultado.Count == 0)
            {
                return(HistoricoViewModel);
            }

            HistoricoViewModel.NomeCliente     = resultado[0].Cliente.NomeCliente;
            HistoricoViewModel.TelefoneCliente = resultado[0].Cliente.Telefone;

            HistoricoViewModel.Pedido = new List <PedidoViewModel>();

            foreach (var item in resultado)
            {
                PedidoViewModel pedidoView = new PedidoViewModel();

                pedidoView.Logradouro  = item.Endereco.Logradouro;
                pedidoView.Numero      = item.Endereco.Numero;
                pedidoView.Estado      = item.Endereco.Estado;
                pedidoView.Complemento = item.Endereco.Complemento;
                pedidoView.Cep         = item.Endereco.Cep;
                pedidoView.Bairro      = item.Endereco.Bairro;
                pedidoView.Cidade      = item.Endereco.Cidade;

                pedidoView.ValorTotalPedido = item.ValorTotalPedido;


                foreach (var itemPedido in item.PedidoItem)
                {
                    PedidoItemViewModel pedidoItemViewModel = new PedidoItemViewModel();

                    pedidoItemViewModel.ProdutoId        = itemPedido.ProdutoId;
                    pedidoItemViewModel.DescricaoProduto = itemPedido.Produto.Descricao;

                    pedidoItemViewModel.Quantidade    = itemPedido.Quantidade;
                    pedidoItemViewModel.ValorUnitario = itemPedido.ValorUnitario;

                    pedidoView.PedidoItem.Add(pedidoItemViewModel);
                }

                HistoricoViewModel.Pedido.Add(pedidoView);
            }

            return(HistoricoViewModel);
        }
Exemple #8
0
        public PedidoViewModel AdicionarPedidoItem(PedidoItemViewModel pedidoItemViewModel, Guid alunoId)
        {
            var pedidoReturn = _pedidoService.AdicionarPedidoItem(PedidoAdapter.ToPedidoItem(pedidoItemViewModel), alunoId);

            if (Commit())
            {
                //DomainEvent.Raise(new AlunoCadastradoEvent(aluno));
            }
            else
            {
                //
            }

            return(PedidoAdapter.ToPedidoViewModel(pedidoReturn));
        }
Exemple #9
0
        public async Task <IHttpActionResult> UpdateAsync([FromBody] PedidoItemViewModel entity, [FromUri] int id)
        {
            var retClient = await _IPedidoItemAppService.GetByIdAsync(id);

            if (retClient == null)
            {
                return(NotFound());
            }
            else
            {
                await _IPedidoItemAppService.UpdateAsync(entity, id);

                return(Ok(entity));
            }
        }
Exemple #10
0
        public ActionResult AdicionarCurso(Guid id)
        {
            var curso = _cursoAppService.ObterCurso(id);

            var item = new PedidoItemViewModel()
            {
                CursoId    = curso.CursoId,
                Valor      = curso.Valor,
                Descricao  = curso.Nome,
                Quantidade = 1
            };

            var pedido = _pedidoAppService.AdicionarPedidoItem(item, AlunoId);

            if (ValidarErrosDominio())
            {
                return(View("Carrinho", pedido));
            }

            return(RedirectToAction("Index"));
        }
 public IActionResult EfetuarPedido()
 {//VERIFICAR TODA ESSA JOÇA
     using (var transacao = new System.Transactions.TransactionScope())
     {
         PedidoViewModel pedido = new PedidoViewModel();
         pedido.Data = DateTime.Now;
         PedidoDAO     pedidoDAO = new PedidoDAO();
         int           idPedido  = pedidoDAO.Inserir(pedido);
         PedidoItemDAO itemDAO   = new PedidoItemDAO();
         var           carrinho  = ViewBag.CarrinhoNaSession;
         foreach (var elemento in carrinho)
         {
             PedidoItemViewModel item = new PedidoItemViewModel();
             item.PedidoId   = idPedido;
             item.CidadeId   = elemento.Id;
             item.Quantidade = elemento.Quantidade;
             itemDAO.Inserir(item);
         }
         transacao.Complete();
     }
     return(RedirectToAction("Index", "Home"));
 }
        //[ValidateAntiForgeryToken]
        public ActionResult Create(int?idPessoa, int?idProduto, int?Quantidade = 1)
        {
            try
            {
                PedidoItemViewModel pedidoviewmodel = new PedidoItemViewModel();
                Produto             produto         = db.Produtos.Find(idProduto);
                Pessoa pessoa = db.Pessoas.Find(idPessoa);
                ViewBag.PessoaId  = new SelectList(db.Pessoas.Where(p => p.PapelPessoaId == 1).Where(p => p.TipoPessoaId == 1).Where(x => x.Status == true).OrderBy(x => x.NomeCompleto), "Id", "NomeCompleto");
                ViewBag.ProdutoId = new SelectList(db.Produtos.Where(x => x.Status == true).OrderBy(x => x.Nome), "Id", "Nome");
                if (idPessoa != null && idProduto != null)
                {
                    if (produto != null && produto.Quantidade >= Quantidade)
                    {
                        CarrinhoViewModel.AddItem(produto, (int)Quantidade);
                        pedidoviewmodel.Pessoa = pessoa;
                        if (pedidoviewmodel.Produtos == null)
                        {
                            pedidoviewmodel.Produtos = new List <FilaCarrinho>();
                        }
                        pedidoviewmodel.Produtos.AddRange(CarrinhoViewModel.Lines);
                        if (pedidoviewmodel.Pedido == null)
                        {
                            pedidoviewmodel.Pedido = new Pedido();
                        }
                        pedidoviewmodel.idProduto = 0;
                        pedidoviewmodel.Total     = CarrinhoViewModel.ComputeTotalValue();
                        return(View(pedidoviewmodel));
                        //return Json(String.Format("{0:c}", CarrinhoViewModel.ComputeTotalValue()), JsonRequestBehavior.AllowGet);
                    }
                    else
                    {
                        pedidoviewmodel.Pessoa = pessoa;
                        if (pedidoviewmodel.Produtos == null)
                        {
                            pedidoviewmodel.Produtos = new List <FilaCarrinho>();
                        }
                        pedidoviewmodel.Produtos.AddRange(CarrinhoViewModel.Lines);
                        if (pedidoviewmodel.Pedido == null)
                        {
                            pedidoviewmodel.Pedido = new Pedido();
                        }
                        pedidoviewmodel.idProduto = 0;
                        pedidoviewmodel.Total     = CarrinhoViewModel.ComputeTotalValue();
                        return(View(pedidoviewmodel));
                        //var soma = idProduto + Quantidade;
                        //return Json("Falha ao adicionar!", JsonRequestBehavior.AllowGet);
                    }
                    // return RedirectToAction("Index");
                }
                pedidoviewmodel.Pessoa = pessoa;
                if (pedidoviewmodel.Produtos == null)
                {
                    pedidoviewmodel.Produtos = new List <FilaCarrinho>();
                }
                pedidoviewmodel.Produtos.AddRange(CarrinhoViewModel.Lines);
                if (pedidoviewmodel.Pedido == null)
                {
                    pedidoviewmodel.Pedido = new Pedido();
                }
                pedidoviewmodel.idProduto = 0;
                pedidoviewmodel.Total     = CarrinhoViewModel.ComputeTotalValue();
                return(View(pedidoviewmodel));
                //ViewBag.PessoaId = new SelectList(db.Pessoas, "Id", "NomeCompleto", pedido.Pedido.PessoaId);
                //return View();
            }
            catch (Exception ex)
            {
                TempData["Error"] = "Ocorreu um erro,entre em contato com o administrador do sistema!";
                return(RedirectToAction("Index"));

                throw ex;
            }
        }
Exemple #13
0
        public async Task <IHttpActionResult> AddAsync([FromBody] PedidoItemViewModel entity)
        {
            await _IPedidoItemAppService.AddAsync(entity);

            return(Created(Request.RequestUri, entity));
        }
Exemple #14
0
        public async Task <IHttpActionResult> Put(int id, [FromBody] PedidoItemViewModel input)
        {
            await _serviceBase.UpdateAsync(input, id);

            return(Ok(input));
        }