コード例 #1
0
        private void CarregarDropDown(PedidoClienteViewModel model)
        {
            ViewBag.Produtos = produtoRepository.ObterTodos().Where(p => p.Ativo == true).ToList();
            ViewBag.Clientes = clienteRepository.ObterTodos().Where(c => c.Ativo == true).ToList();

            if (model != null)
            {
                ViewBag.Enderecos     = enderecoRepository.ObterTodos().Where(p => p.ClienteId == model.Cliente).ToList();
                ViewBag.TipoEntrega   = new SelectList(tipoEntregaRepository.ObterTodos(), "Id", "Nome", model.TipoEntrega);
                ViewBag.TipoPagamento = new SelectList(tipoPagamentoRepository.ObterTodos(), "Id", "Nome", model.TipoPagamento);
            }
            else
            {
                ViewBag.TipoEntrega   = new SelectList(tipoEntregaRepository.ObterTodos(), "Id", "Nome");
                ViewBag.TipoPagamento = new SelectList(tipoPagamentoRepository.ObterTodos(), "Id", "Nome");
            }
        }
コード例 #2
0
 public void AtualizarPedidos(PedidoClienteViewModel pedidos)
 {
     Clients.All.AtualizarPedidosCozinha(pedidos);
 }
コード例 #3
0
        public ActionResult Create(PedidoClienteViewModel model)
        {
            if (model.Cliente <= 0)
            {
                ModelState.AddModelError("Cliente", "O campo Cliente é obrigatório.");
            }

            if (model.Endereco <= 0)
            {
                ModelState.AddModelError("Endereco", "O campo Endereço é obrigatório.");
            }

            if (!model.ItensPedido.Any(p => p.Quantidade > 0))
            {
                ModelState.AddModelError("ItensPedido", "A Quantidade dos itens do pedido deve ser maior que zero!");
            }

            if (ModelState.IsValid)
            {
                IPedidoRepository     pedidoRepository     = new PedidoRepository();
                IItemPedidoRepository itemPedidoRepository = new ItemPedidoRepository();

                PedidoSet pedido = new PedidoSet();
                pedido.ClienteId       = model.Cliente;
                pedido.DataPedido      = DateTime.Now;
                pedido.Endereco_Id     = model.Endereco;
                pedido.TipoEntregaId   = model.TipoEntrega;
                pedido.TipoPagamentoId = model.TipoPagamento;
                pedido.Status          = StatusPedidoEnum.Aberto;
                pedido.Obs             = model.Obs;
                pedido.UsuarioId       = usuarioRepository.ObterPorLogin(FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name).Id;


                List <ItemPedidoSet> itensPedido = new List <ItemPedidoSet>();
                foreach (var item in model.ItensPedido)
                {
                    if (item.Quantidade == 0)
                    {
                        continue;
                    }

                    ItemPedidoSet itemPedido = new ItemPedidoSet();
                    itemPedido.PedidoId   = pedido.Id;
                    itemPedido.ProdutoId  = item.Produto;
                    itemPedido.Quantidade = item.Quantidade;
                    itensPedido.Add(itemPedido);
                }

                pedido.ItemPedidoSet = itensPedido;
                pedidoRepository.Inserir(pedido);

                //Imprimindo cupom não fiscal
                //ImpressaoCupom imprimir = new ImpressaoCupom();
                //imprimir.EscreverNoDispositivo(pedido.Obs);

                return(RedirectToAction("Create"));
            }

            CarregarDropDown(model);
            return(View(model));
        }