} //constructor

        public ItemPedidoViewModel AddItemPedido(ItemPedidoViewModel itemPedido)
        {
            var itemPedidoDomain = _mapper.Map <ItemPedido>(itemPedido);

            itemPedidoDomain = _serviceItemPedido.AddItemPedido(itemPedidoDomain);
            return(_mapper.Map <ItemPedidoViewModel>(itemPedidoDomain));
        } //AddItemPedido
 public static void AtualizarItensPedidoMembro(this ItemPedido ip, ItemPedidoViewModel itemVM, Usuario usuario)
 {
     ip.UsuarioAlteracao  = usuario;
     ip.DtAlteracao       = DateTime.Now;
     ip.DataEntregaMembro = itemVM.DataEntregaMembro;
     ip.EntregaId         = itemVM.EntregaId;
 }
예제 #3
0
        public void Remove(ItemPedidoViewModel modelViewModel)
        {
            var model = Mapper.Map <ItemPedidoViewModel, ItemPedido>(modelViewModel);

            BeginTransaction();
            _modelService.Remove(model);
            Commit();
        }
예제 #4
0
        public ItemPedidoViewModel Atualizar(ItemPedidoViewModel itemPedido)
        {
            var itemPedidoRetorno = Mapper.Map <ItemPedidoViewModel>
                                        (_itemPedidoService.Atualizar(Mapper.Map <ItemPedido>(itemPedido)));

            if (itemPedidoRetorno.EhValido())
            {
                Commit();
            }

            return(itemPedidoRetorno);
        }
예제 #5
0
        public ValidationAppResult CancelarItemPedido(ItemPedidoViewModel modelViewModel, Guid IdUsuarioAlteracao)
        {
            var model = Mapper.Map <ItemPedidoViewModel, ItemPedido>(modelViewModel);

            BeginTransaction();

            var result = _modelService.CancelarItemPedido(model, IdUsuarioAlteracao);

            if (!result.IsValid)
            {
                return(DomainToApplicationResult(result));
            }

            Commit();

            return(DomainToApplicationResult(result));
        }
예제 #6
0
        public ValidationAppResult Add(ItemPedidoViewModel modelViewModel)
        {
            var model = Mapper.Map <ItemPedidoViewModel, ItemPedido>(modelViewModel);

            BeginTransaction();

            var result = _modelService.AdicionarItemPedido(model);

            if (!result.IsValid)
            {
                return(DomainToApplicationResult(result));
            }

            Commit();

            return(DomainToApplicationResult(result));
        }
예제 #7
0
        public async Task <ItemPedidoViewModel> GetComprasCliente(int idCliente)
        {
            var itensPedidos = await _context.produto
                               .Join(
                _context.item,
                produto => produto.id,
                item => item.produtoId,
                (produto, item) => new { produto, item }
                )
                               .Join(
                _context.pedido,
                combineEntry => combineEntry.item.pedidoId,
                pedido => pedido.id,
                (combineEntry, pedido) => new { combineEntry, pedido }
                )
                               .Join(
                _context.cliente,
                combineEntry_2 => combineEntry_2.pedido.clienteId,
                cliente => cliente.id,
                (combineEntry_2, cliente) => new PedidosClienteViewModel
            {
                cliente    = cliente,
                dataPedido = combineEntry_2.pedido.dataPedido,
                produto    = combineEntry_2.combineEntry.produto,
                quantidade = combineEntry_2.combineEntry.item.quantidade
            }
                ).Where(x => x.cliente.id == idCliente).ToListAsync();

            ItemPedidoViewModel pedido = new ItemPedidoViewModel();

            pedido.pedido = new Pedido();
            pedido.itens  = new List <ItemViewModel>();

            pedido.pedido.cliente    = itensPedidos.Select(x => x.cliente).FirstOrDefault();
            pedido.pedido.dataPedido = itensPedidos.Select(x => x.dataPedido).FirstOrDefault();
            foreach (PedidosClienteViewModel item in itensPedidos)
            {
                ItemViewModel itemViewModel = new ItemViewModel();
                itemViewModel.produto    = item.produto;
                itemViewModel.quantidade = item.quantidade;

                pedido.itens.Add(itemViewModel);
            }

            return(pedido);
        }
예제 #8
0
        private PedidoViewModel MontaPedidoTeste()
        {
            PedidoViewModel ped = new PedidoViewModel();

            ped.CodPedido = 1234;
            ped.Itens     = new List <ItemPedidoViewModel>();

            ItemPedidoViewModel item = new ItemPedidoViewModel();

            item.CodItem       = 1;
            item.DescricaoItem = "Roberto Carlos";
            item.Quantidade    = 2;
            item.Obs           = new List <ObservacaoItemPedidoViewModel>();
            ObservacaoItemPedidoViewModel obs = new ObservacaoItemPedidoViewModel();

            obs.CodObservacao       = 1;
            obs.DescricaoObservacao = "Ponto da casa";
            item.Obs.Add(obs);
            obs = new ObservacaoItemPedidoViewModel();
            obs.CodObservacao       = 2;
            obs.DescricaoObservacao = "Mal passado mesmo";
            item.Obs.Add(obs);
            item.extras = new List <ExtraItemPedidoViewModel>();
            ExtraItemPedidoViewModel extra = new ExtraItemPedidoViewModel();

            extra.CodOpcaoExtra       = 1;
            extra.DescricaoOpcaoExtra = "Bacon extra";
            item.extras.Add(extra);
            ped.Itens.Add(item);

            item               = new ItemPedidoViewModel();
            item.CodItem       = 2;
            item.DescricaoItem = "Coca cola lata";
            item.Quantidade    = 1;
            ped.Itens.Add(item);

            return(ped);
        }
 public ItemPedidoViewModel Delete(ItemPedidoViewModel itemPedido)
 {
     return(this._mapper.Map <ItemPedidoViewModel>(this._itemPedidoService.Delete(this._mapper.Map <ItemPedido>(itemPedido))));
 }
        //public ViewResult FecharPedido(PedidoViewModel pedidoModel)
        public ActionResult ConfirmaFecharPedido()
        {
            Carrinho carrinho = ObterCarrinho();

            //EmailConfiguracoes email = new EmailConfiguracoes
            //{
            //    EscreverArquivo = bool.Parse(ConfigurationManager.AppSettings["Email.EscreverArquivo"] ?? "false")
            //};

            //EmailPedido emailPedido = new EmailPedido(email);

            if (!carrinho.ItensCarrinho.Any())
            {
                ModelState.AddModelError("", "Não foi possível concluir o pedido, seu carrinho está vazio!");
            }

            if (ModelState.IsValid)
            {
                //Guid guid = (Guid) Membership.GetUser().ProviderUserKey;

                var pedidoModel = new PedidoViewModel();
                pedidoModel.IdPedido       = Guid.NewGuid();
                pedidoModel.DataPedido     = DateTime.Now;
                pedidoModel.DtCadastro     = DateTime.Now;
                pedidoModel.HoraPedido     = DateTime.Now;
                pedidoModel.IdCliente      = Guid.Parse(User.Identity.GetUserId());
                pedidoModel.IdStatusPedido = 3;
                pedidoModel.ValorTotal     = carrinho.ObterValorTotal();

                foreach (var item in carrinho.ItensCarrinho)
                {
                    var itemModel = new ItemPedidoViewModel();
                    itemModel.IdItemPedido      = Guid.NewGuid();
                    itemModel.IdPedido          = pedidoModel.IdPedido;
                    itemModel.IdProduto         = item.Produto.IdProduto;
                    itemModel.IdProdutoPreco    = item.ProdutoPreco.IdProdutoPreco;
                    itemModel.QtdProduto        = item.Quantidade;
                    itemModel.ValorUnitario     = item.ProdutoPreco.ValorUnitario;
                    itemModel.DtCadastro        = pedidoModel.DtCadastro;
                    itemModel.IdUsuarioCadastro = Guid.NewGuid();

                    pedidoModel.ItensPedido.Add(itemModel);
                }

                Session["Pedido"] = pedidoModel;
                //Session["ItensPedido"] = pedidoModel.ItensPedido;

                return(RedirectToAction("Pagamento", "Pedido"));

                //var result = _pedidoApp.Add(pedidoModel);

                //if (!result.IsValid)
                //{
                //    foreach (var validationAppError in result.Erros)
                //    {
                //        ModelState.AddModelError(string.Empty, validationAppError.Message);
                //    }
                //    return View(pedidoModel);
                //}

                //emailPedido.ProcessarPedido(carrinho, pedido);
                //carrinho.LimparCarrinho();
                //return View("PedidoConcluido");
            }
            else
            {
                return(View());
                //return View(pedidoModel);
            }
        }
예제 #11
0
 public ItemPedidoViewModel RemoverItensPedidos(ItemPedidoViewModel item)
 {
     return(mapper.Map <ItemPedidoViewModel>(serviceitenspedidos.RemoverItemPedido(mapper.Map <ItemPedido>(item))));
 }
예제 #12
0
 public ItemPedidoViewModel AtulizarItensPedidos(ItemPedidoViewModel item)
 {
     return(mapper.Map <ItemPedidoViewModel>(serviceitenspedidos.AtualizarItemPedido(mapper.Map <ItemPedido>(item))));
 }
예제 #13
0
 public ValidationAppResult AdicionarItemPedido(ItemPedidoViewModel modelViewModel)
 {
     throw new NotImplementedException();
 }