Ejemplo n.º 1
0
 private void FecharMesa()
 {
     try
     {
         if (CurrentItem.EntityRestaurante.Local == LocalPedidoRestaurante.Mesa)
         {
             CurrentItem.FecharPedido();
         }
         else
         {
             var numMesa = new NumeroView();
             numMesa.ShowDialog();
             if (numMesa.Value != 0)
             {
                 var mesa = GetMesa(numMesa.Value);
                 if (mesa == null)
                 {
                     MessageBox.Show("A mesa não está aberta no momento");
                     return;
                 }
                 CurrentItem = mesa;
                 if (CurrentItem.FecharPedido())
                 {
                     RemoveMesa(mesa);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 2
0
 private void Parcial()
 {
     try
     {
         var numMesa = new NumeroView();
         numMesa.ShowDialog();
         if (numMesa.Value != 0)
         {
             var mesa = GetMesa(numMesa.Value);
             if (mesa != null)
             {
                 Mapper.CreateMap(typeof(PedidoRestauranteModel), typeof(PedidoRestaurante));
                 Mapper.Map(mesa, mesa.EntityRestaurante);
                 Utils.ParcialMesa(mesa.EntityRestaurante);
             }
             else
             {
                 CustomMessageBox.MensagemInformativa("A mesa não está aberta ou não foi confirmada ainda.");
             }
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 3
0
        private void TxtValorIpi_OnKeyUp(object sender, KeyEventArgs e)
        {
            try
            {
                const string msgProdNaoEncontrado = "Produto não encontrado";
                if (Model.ProdutoAtual.Produto == null)
                {
                    CustomMessageBox.MensagemInformativa(msgProdNaoEncontrado);
                    TxtProduto.Focus();
                    return;
                }
                if (Model.ProdutoAtual.Produto.Id == 0)
                {
                    CustomMessageBox.MensagemInformativa(msgProdNaoEncontrado);
                    TxtProduto.Focus();
                    return;
                }
                if (Model.ProdutoAtual != null)
                {
                    var result = DataValidation.ValidateEntity(Model.ProdutoAtual);
                    if (result.HasError)
                    {
                        throw new Exception(result.MensagemErro());
                    }

                    Model.SalvarProduto();
                }
                TxtProduto.Focus();
            }
            catch (Exception ex)
            {
                CustomMessageBox.MensagemErro(ex.Message);
                throw;
            }
        }
Ejemplo n.º 4
0
 private void ProcurarMesa()
 {
     try
     {
         var numMesa = new NumeroView();
         numMesa.Title = "Informe o número da mesa";
         numMesa.ShowDialog();
         var mesa = GetMesa(numMesa.Value);
         if (mesa != null)
         {
             CurrentItem = mesa;
         }
         else
         {
             if (numMesa.Value != 0)
             {
                 MessageBox.Show("A mesa não está aberta no momento");
             }
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 5
0
 private void TrocarMesa()
 {
     try
     {
         var numOrigem  = new NumeroView();
         var numDestino = new NumeroView();
         numOrigem.ShowDialog();
         numDestino.ShowDialog();
         if (numDestino.Value == 0 || numOrigem.Value == 0)
         {
             return;
         }
         if (numOrigem.Value == numDestino.Value)
         {
             MessageBox.Show(string.Format("Mesa de destino é a mesma de origem"));
             return;
         }
         var entity = GetMesa(numOrigem.Value);
         if (entity == null)
         {
             MessageBox.Show(string.Format("A mesa {0} não está aberta", numOrigem.Value));
             return;
         }
         entity.EntityRestaurante.Mesa = numDestino.Value;
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 6
0
        private void CancelarPedido()
        {
            try
            {
                if (CurrentItem == null)
                {
                    return;
                }

                if (CurrentItem.EntityRestaurante.Local == LocalPedidoRestaurante.Mesa)
                {
                    var result = MessageBox.Show("Deseja realmente cancelar esta mesa", "Cancelar mesa", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button2);
                    if (result == DialogResult.Yes)
                    {
                        RemoveMesa(CurrentItem);
                    }
                }
                else
                {
                    var result = MessageBox.Show("Deseja realmente cancelar esta entrega", "Cancelar entrega", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button2);
                    if (result == DialogResult.Yes)
                    {
                        RemoveEntrega(CurrentItem);
                    }
                }
            }
            catch (Exception ex)
            {
                CustomMessageBox.MensagemErro(ex.Message);
                Erp.Business.Utils.GerarLog(ex);
            }
        }
Ejemplo n.º 7
0
        private void ConfirmarPedido()
        {
            try
            {
                if (CurrentItem == null)
                {
                    return;
                }
                if (CurrentItem.EntityRestaurante == null)
                {
                    return;
                }
                if (!CurrentItem.EntityRestaurante.Confirmado)
                {
                    switch (CurrentItem.EntityRestaurante.Local)
                    {
                    case LocalPedidoRestaurante.Mesa:
                        var mesaAberta = GetMesa(CurrentItem.EntityRestaurante.Mesa);
                        if (mesaAberta != null)
                        {
                            foreach (var prod in CurrentItem.Produtos)
                            {
                                mesaAberta.AddProduto(prod);
                            }
                        }
                        else
                        {
                            Collection.Add(CurrentItem);
                        }
                        break;

                    default:
                        switch (CurrentItem.EntityRestaurante.Local)
                        {
                        case LocalPedidoRestaurante.Balcao:
                            FilaSalao.Add(CurrentItem);
                            break;

                        case LocalPedidoRestaurante.Entrega:
                            FilaEntrega.Add(CurrentItem);
                            break;
                        }
                        break;
                    }
                    CurrentItem.ConfirmarPedido();
                    CurrentItem = null;
                }
            }
            catch (Exception ex)
            {
                CustomMessageBox.MensagemErro(ex.Message);
                Erp.Business.Utils.GerarLog(ex);
            }
        }
Ejemplo n.º 8
0
 private void NovoBalcao()
 {
     try
     {
         CurrentItem = new PedidoRestauranteModel();
         CurrentItem.NovoPedidoBalcao();
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 9
0
 public PedidoModel()
 {
     IdGuid          = Guid.NewGuid();
     QuantidadeAtual = 1;
     try
     {
         FormasPagamento    = new ObservableCollection <FormaPagamento>(FormaPagamentoRepository.GetList());
         CondicoesPagamento = new ObservableCollection <CondicaoPagamento>(CondicaoPagamentoRepository.GetList());
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
     }
 }
Ejemplo n.º 10
0
 private void NovaMesa()
 {
     try
     {
         var novaMesa = new PedidoRestauranteModel();
         if (novaMesa.NovoPedidoMesa())
         {
             CurrentItem = novaMesa;
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 11
0
 private void RemoveEntrega(PedidoRestauranteModel entrega)
 {
     try
     {
         FilaEntrega.Remove(entrega);
         if (CurrentItem != null && CurrentItem.IdGuid == entrega.IdGuid)
         {
             CurrentItem = null;
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 12
0
 private void TxtProduto_OnPreviewKeyUp(object sender, KeyEventArgs e)
 {
     try
     {
         if (e.Key == Key.Enter)
         {
             if (!string.IsNullOrEmpty(TxtProduto.Text))
             {
                 var modProds = new ProdutosEncontradosGridModel();
                 modProds.Filter = TxtProduto.Text;
                 if (modProds.Collection.IsNotEmpty())
                 {
                     if (modProds.Collection.Count > 1)
                     {
                         modProds.WindowSelect.ShowDialog();
                         if (modProds.CurrentItem != null)
                         {
                             Model.ProdutoAtual.Produto = modProds.CurrentItem;
                         }
                         else
                         {
                             TxtProduto.Focus();
                         }
                     }
                     else
                     {
                         Model.ProdutoAtual.Produto = modProds.Collection[0];
                     }
                 }
                 else
                 {
                     TxtProduto.Focus();
                     CustomMessageBox.MensagemInformativa("Não foram encontrados produtos correspondentes à pesquisa");
                 }
             }
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
     }
 }
Ejemplo n.º 13
0
 private void RemoveMesa(PedidoRestauranteModel mesa)
 {
     try
     {
         if (mesa.EntityRestaurante.Confirmado)
         {
             Collection.Remove(mesa);
         }
         if (CurrentItem != null && CurrentItem.EntityRestaurante.Mesa == mesa.EntityRestaurante.Mesa)
         {
             CurrentItem = null;
         }
         FilaSalao.Remove(mesa);
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 14
0
 private void FecharPedido()
 {
     try
     {
         if (CurrentItem == null)
         {
             return;
         }
         if (CurrentItem.EntityRestaurante.Local == LocalPedidoRestaurante.Mesa)
         {
             var ped = GetMesa(CurrentItem.EntityRestaurante.Mesa);
             FecharMesa();
             if (ped == null)
             {
                 return;
             }
             if (!ped.IsPagamentoCancelado)
             {
                 Collection.Remove(ped);
                 FilaSalao.Remove(ped);
                 CurrentItem = null;
             }
         }
         else
         {
             var ped = GetEntrega(CurrentItem.EntityRestaurante.Controle.Controle);
             FecharEntrega();
             if (!ped.IsPagamentoCancelado)
             {
                 FilaEntrega.Remove(ped);
                 CurrentItem = null;
             }
         }
         OnAcaoConcluida();
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 15
0
        public static bool FecharPedidoRestaurante(PedidoRestaurante pedido)
        {
            try
            {
                if (pedido.Produtos.Count == 0)
                {
                    throw new Exception("Informe ao menos um produto para poder fechar o pedido.");
                }


                foreach (var pag in pedido.Pagamento)
                {
                    pag.Pedido = pedido;
                }
                try
                {
                    if (!FecharPedidoRestaurante(pedido, GetProdutosDeComposicao(pedido), pedido.Pagamento))
                    {
                        return(false);
                    }
                    pedido.Coo = EcfHelper.Ecf.UltimoCupomEmitido();
                }
                catch (Exception ex)
                {
                    CustomMessageBox.MensagemErro(ex.Message + "\n O cupom fiscal será cancelado");

                    EcfHelper.Ecf.CancelarCupom();
                    throw;
                }
                //CustomMessageBox.MensagemInformativa("A impressão de cupom fiscal está desabilitada.");
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro ao gravar pedido.\n" + ex.Message + "\n" +
                                "Mensagem do erro: " + ex.InnerException);
                return(false);
            }
            return(true);
        }
Ejemplo n.º 16
0
 private void FecharEntrega()
 {
     try
     {
         var numControle = new NumeroView();
         numControle.ShowDialog();
         if (numControle.Value != 0)
         {
             var entrega = GetEntrega(numControle.Value);
             if (entrega != null)
             {
                 if (entrega.FecharPedido())
                 {
                     RemoveEntrega(entrega);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         CustomMessageBox.MensagemErro(ex.Message);
         Erp.Business.Utils.GerarLog(ex);
     }
 }
Ejemplo n.º 17
0
 public static void MensagemErro(string mensagem)
 {
     CustomMessageBox.MensagemErro(mensagem);
 }