public static int EscolhaFormatoExibicaoCardapio() { Console.WriteLine(); ViewPrinter.Println("\tAntes de ir ao menu principal, gostaríamos de "); ViewPrinter.Println("\tsaber se você prefere ver o cardápio com: "); Console.WriteLine(); ViewPrinter.Print("\t [1] ", ConsoleColor.DarkCyan); ViewPrinter.Print("Produtos separados por categoria; "); ViewPrinter.Println("[BETA]", ConsoleColor.DarkYellow); ViewPrinter.Print("\t [2] ", ConsoleColor.DarkCyan); ViewPrinter.Println("Listagem de todos os produtos;"); Console.WriteLine(); ViewPrinter.Print("\t Obs.: ", ConsoleColor.Black, ConsoleColor.Yellow); ViewPrinter.Println(" Qualquer outro valor listará todos os produtos.", ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Print("\tSua escolha: "); return(int.Parse(Console.ReadLine())); }
public static void MostrarCardapio(int comandaId, int tipoExibicao) { bool novoPedido = true; // var listaPedidos = new List<PedidoFormularioModel>(); while (novoPedido) { Console.WriteLine(); ViewProduto.MostrarListaProdutos(ExibirMenuPorTipoExibicao(tipoExibicao)); var pedido = FazerPedido(comandaId); if (pedido == null) { ViewPrinter.Println("\t Pedido cancelado! ", ConsoleColor.White, ConsoleColor.Red); } else { ViewPrinter.Println("\t Pedido registrado! ", ConsoleColor.White, ConsoleColor.DarkGreen); PedidoService.RegistrarNovoPedido(pedido); } ViewProduto.DivisorListaProdutos(); ViewPrinter.Print("\tDeseja fazer outro pedido? (s/n) "); novoPedido = char.Parse(Console.ReadLine()) == 's'; } Console.WriteLine(); }
public static void ShowSucesso() { Console.WriteLine(); ViewPrinter.Print("\t > Sucesso! ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); Console.WriteLine(); }
public static void MostrarComandaResumida(int comandaId) { Console.WriteLine(); ViewPrinter.Println("\t DESCRICAO RESUMIDA DA COMANDA ", ConsoleColor.White, ConsoleColor.DarkGreen); var comanda = ComandaService.ObterComandaResumida(comandaId); ViewPrinter.Println("\t------------------------------------------------------"); ViewPrinter.Print("\tComanda: "); ViewPrinter.Print(comandaId.ToString(), ConsoleColor.Cyan); ViewPrinter.Print("\t\t\t\tMesa: "); ViewPrinter.Println($" [{ comanda.MesaId }] ", ConsoleColor.Blue, ConsoleColor.White); ViewPrinter.Println("\t------------------------------------------------------"); ViewPrinter.Print("\tValor atual: "); ViewPrinter.Print($" R$ { comanda.Valor.ToString("F2", CultureInfo.InvariantCulture) } ", ConsoleColor.DarkBlue, ConsoleColor.White); ViewPrinter.Print("\t Entrada: "); ViewPrinter.Println(comanda.DataHoraEntrada.ToString()); Console.WriteLine(); }
public static List <ProdutoMenuModel> ExibirMenuPorTipoExibicao(int tipoExibicao) { List <ProdutoMenuModel> listaProdutos; if (tipoExibicao == 1) { Console.Clear(); int categoria = SolicitarCategoria(); listaProdutos = ProdutoService.ObterProdutosPorTipo(categoria); var tipo = TipoProdutoService.ObterTipoProduto(categoria); Console.Clear(); Console.WriteLine(); ViewPrinter.Println($"\t Listando: [{ tipo.Tipo }] { tipo.Descricao } ", ConsoleColor.White, ConsoleColor.Blue); Console.WriteLine(); } else { listaProdutos = ProdutoService.ObterProdutos(true); Console.Clear(); Console.WriteLine(); ViewPrinter.Println("\t Listando todos os produtos ", ConsoleColor.White, ConsoleColor.Blue); Console.WriteLine(); } return(listaProdutos); }
public static int ObterMesaDisponivel(int mesaId) { bool mesaDisponivel = false; while (!mesaDisponivel) { Console.Clear(); ViewPrograma.CabecalhoDadosIniciais(); if (!MesaService.ValidarMesa(mesaId)) { ViewPrinter.Println("\t A mesa escolhida não existe! ", ConsoleColor.White, ConsoleColor.Red); } else { ViewPrinter.Println("\t A mesa escolhida não está disponível! ", ConsoleColor.White, ConsoleColor.Red); } Console.WriteLine(); LabelObterDadosMesa(); mesaId = int.Parse(Console.ReadLine()); if (MesaService.ValidarMesa(mesaId) && !MesaService.MesaOcupada(mesaId)) { mesaDisponivel = true; } } return(mesaId); }
public static void Welcome() { Console.WriteLine(); ViewPrinter.Println("\tOlá, seja bem vindo ao"); Console.WriteLine(); ViewPrinter.Println("\t RESTAURANTE SUTEKINA RANCH ", ConsoleColor.Black, ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Println("\tEstamos no ramo há aproximadamente 10 anos!"); ViewPrinter.Println("\tTrabalhamos apenas com rodizio de comida japonesa."); Console.WriteLine(); ViewPrinter.Print("\tNosso espaço conta com "); ViewPrinter.Print("16 mesas", ConsoleColor.Yellow); ViewPrinter.Print(", sendo "); ViewPrinter.Println("4 pessoas por mesa.", ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Println("\tConfira nosso menu!"); Console.WriteLine(); ViewPrinter.Print("\t Pressione ", ConsoleColor.Blue, ConsoleColor.White); ViewPrinter.Print("'Enter'", ConsoleColor.DarkGreen, ConsoleColor.White); ViewPrinter.Print(" tecla para iniciar seu atendimento! ", ConsoleColor.Blue, ConsoleColor.White); Console.ReadLine(); }
public static void MostrarMenu(int comandaId, int tipoExibicaoCardapio) { bool mostrarMenuNovamente = true; while (mostrarMenuNovamente) { ViewComanda.MostrarComandaResumida(comandaId); ViewPrinter.Println("\t MENU PRINCIPAL ", ConsoleColor.White, ConsoleColor.DarkBlue); Console.WriteLine(); MostrarOpcaoMenu(1, "Fazer novo pedido"); MostrarOpcaoMenu(2, "Cancelar um pedido", false); MostrarOpcaoMenu(3, "Acompanhamento da comanda"); MostrarOpcaoMenu(4, "Encerrar minha comanda"); Console.WriteLine(); ViewPrinter.Print("\tEscolha: "); int escolha = int.Parse(Console.ReadLine()); if (!ChamarOpcaoEscolhida(comandaId, escolha, tipoExibicaoCardapio)) { mostrarMenuNovamente = false; } } }
public static void LabelObterDadosComanda() { ViewPrinter.Println("\tObtendo dados da comanda \t", ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Print("\tNº Comanda: "); }
public static void MensagemContinuarAtendimento() { ViewPrinter.Print("\tPressione ", ConsoleColor.Black, ConsoleColor.White); ViewPrinter.Print("Enter", ConsoleColor.Blue, ConsoleColor.White); ViewPrinter.Print(" para continuar seu atendimento...", ConsoleColor.Black, ConsoleColor.White); Console.ReadLine(); Console.Clear(); }
public static PedidoFormularioModel FazerPedido(int comandaId) { ViewPrinter.Println("\t NOVO PEDIDO ", ConsoleColor.White, ConsoleColor.Blue); Console.WriteLine(); ViewPrinter.Print("\tProduto: "); int produtoId = int.Parse(Console.ReadLine()); if (!ProdutoService.ProdutoValido(produtoId)) { ViewPrinter.Println("\t O produto selecionado não está contido no cardápio! \n", ConsoleColor.White, ConsoleColor.Red); return(null); } int quantidadeMaxima = ProdutoService.ObterQuantidadePermitida(produtoId); if (quantidadeMaxima != 0) { Console.WriteLine(); ViewPrinter.Println($"\t Quantidade máxima permitida por pedido: { quantidadeMaxima } itens", ConsoleColor.Black, ConsoleColor.Yellow); Console.WriteLine(); } ViewPrinter.Print("\tQuantidade: "); int quantidade = int.Parse(Console.ReadLine()); if (quantidade <= 0) { ViewPrinter.Println("\t Quantidade informada inválida! \n", ConsoleColor.White, ConsoleColor.Red); return(null); } if (quantidadeMaxima != 0) { if (!ProdutoService.ValidarQuantidade(produtoId, quantidade)) { ViewPrinter.Println("\t Quantidade solicitada além do permitido para este produto! \n", ConsoleColor.White, ConsoleColor.Red); return(null); } } Console.WriteLine(); ViewPrinter.Print("\tConfirma este pedido? (s/n) "); bool confirmarPedido = char.Parse(Console.ReadLine()) == 's'; if (!confirmarPedido) { return(null); } return(new PedidoFormularioModel() { ComandaId = comandaId, ProdutoId = produtoId, Quantidade = quantidade }); }
public static void PressioneEnterParaContinuar(string message) { Console.WriteLine(); ViewPrinter.Print("\t Pressione ", ConsoleColor.Blue, ConsoleColor.White); ViewPrinter.Print("'Enter'", ConsoleColor.Green, ConsoleColor.White); ViewPrinter.Print(" para " + message + "... ", ConsoleColor.Blue, ConsoleColor.White); Console.ReadLine(); Console.Clear(); }
public static void MostrarComandaSelecionada(int comandaId) { // Console.Clear(); ViewPrograma.ShowSucesso(); ViewPrinter.Print("\tCODIGO COMANDA: "); ViewPrinter.Println($" { comandaId } ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); ViewPrograma.MensagemContinuarAtendimento(); }
public static void MostrarTiposProduto() { var listaTipos = TipoProdutoService.ObterTipoProduto(); foreach (var tipoProduto in listaTipos) { ViewPrinter.Print($"\t[{ tipoProduto.Tipo }]", ConsoleColor.Cyan); ViewPrinter.Println($" { tipoProduto.Descricao }"); // DivisorListaProdutos(); } }
public static void MostrarMesaSelecionada(int mesaId) { // Console.Clear(); ViewPrograma.ShowSucesso(); ViewPrinter.Print("\tSELECIONADA: "); ViewPrinter.Println($" MESA [ { mesaId } ] ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); ViewPrograma.MensagemContinuarAtendimento(); }
public static void MostrarQuantidadeClientesSelecionada(int quantidadeClientes) { // Console.Clear(); ViewPrograma.ShowSucesso(); ViewPrinter.Print("\tQUANTIDADE DE CLIENTES: "); ViewPrinter.Println($" { quantidadeClientes } ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); ViewPrograma.MensagemContinuarAtendimento(); }
public static void LabelObterDadosMesa() { ViewPrinter.Println("\tObtendo dados da mesa \t", ConsoleColor.Yellow); Console.WriteLine(); MostrarMesasDisponiveis(); Console.WriteLine(); ViewPrinter.Print("\tMesa: "); }
public static bool EncerramentoComanda(int comandaId) { bool pedidosEmAberto = PedidoService.VerificarPedidosEmAberto(comandaId); Console.WriteLine(); if (pedidosEmAberto) { ViewPrinter.Println("\tAinda há pedidos em aberto relacionados a esta comanda.", ConsoleColor.Black, ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Println("\tSe você continuar, estes pedidos serão incluídos no valor total!", ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Print("\tDeseja continuar o encerramento? (s/n) "); char continuar = char.Parse(Console.ReadLine()); if (continuar == 'n') { return(false); } Console.WriteLine(); ViewPrinter.Print("\tPressione 'Enter' para visualizar o valor total a ser pago..."); Console.ReadLine(); Console.Clear(); } else { ViewPrinter.Println("\t ENCERRAMENTO DA COMANDA ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); ViewPrinter.Print("\tDeseja continuar com o encerramento? (s/n) "); char continuar = char.Parse(Console.ReadLine()); if (continuar == 'n') { return(false); } Console.WriteLine(); ViewPrinter.Print("\tPressione 'Enter' para visualizar o valor total a ser pago..."); Console.ReadLine(); Console.Clear(); } Console.WriteLine(); MostrarComandaCompleta(comandaId); Console.WriteLine(); ViewPrinter.Print("\tPressione 'Enter' para confirmar o pagamento! ", ConsoleColor.DarkGreen); Console.ReadLine(); return(true); }
public static void MostrarComandaCompleta(int comandaId) { MostrarAcompanhamento(comandaId, true); ViewPrinter.Println("\t--------------------------------------------------------", ConsoleColor.Cyan); ViewPrinter.Print("\tValor Final: "); ViewPrinter.Print($" R$ { ComandaService.CalcularValorComanda(comandaId, true).ToString("F2", CultureInfo.InvariantCulture) } ", ConsoleColor.White, ConsoleColor.Green); ViewPrinter.Print("\t * Incluído 10% garçom", ConsoleColor.Yellow); Console.WriteLine(); }
public static void MostrarOpcaoMenu(int opcaoId, string descricao, bool operando = true) { ViewPrinter.Print($"\t[{ opcaoId }] ", ConsoleColor.Yellow); ViewPrinter.Print(descricao); if (!operando) { ViewPrinter.Println(" [Em breve]", ConsoleColor.Green); } else { ViewPrinter.Println(" "); } }
public static void LabelObterQuantidadeClientes(int mesaId) { ViewPrinter.Println("\tObtendo quantidade de clientes \t", ConsoleColor.Yellow); Console.WriteLine(); int quantidadeClientes = MesaService.ObterQuantidadeClientes(mesaId); ViewPrinter.Println($"\t * A mesa [{ mesaId }] comporta, no máximo, { quantidadeClientes } pessoas ", ConsoleColor.Black, ConsoleColor.Yellow); Console.WriteLine(); ViewPrinter.Print("\tQuantidade de clientes: "); }
public static bool ChamarOpcaoEscolhida(int comandaId, int opcaoEscolhida, int tipoExibicaoCardapio) { ViewPrinter.Print("\tOPCAO ESCOLHIDA: "); switch (opcaoEscolhida) { case 1: ViewPrinter.Println(" Fazer novo pedido ", ConsoleColor.White, ConsoleColor.DarkGreen); PressioneEnterParaContinuar("ir ao cardápio"); ViewPedido.MostrarCardapio(comandaId, tipoExibicaoCardapio); break; case 2: ViewPrinter.Println(" Cancelar um pedido ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); ViewPrinter.Println("\t Esta funcionalidade ainda não está operando ", ConsoleColor.Black, ConsoleColor.Yellow); break; case 3: ViewPrinter.Println(" Acompanhamento da comanda ", ConsoleColor.White, ConsoleColor.DarkGreen); PressioneEnterParaContinuar("visualizar o acompanhamento da comanda"); ViewComanda.MostrarAcompanhamento(comandaId); break; case 4: ViewPrinter.Println(" Encerrar comanda ", ConsoleColor.White, ConsoleColor.DarkGreen); PressioneEnterParaContinuar("prosseguir com encerramento da comanda"); bool encerrar = ViewComanda.EncerramentoComanda(comandaId); if (encerrar) { ComandaService.EncerrarComanda(comandaId); ViewPrinter.Println("\n\t COMANDA FINALIZADA COM SUCESSO! ", ConsoleColor.White, ConsoleColor.Green); PressioneEnterParaContinuar("encerrar o atendimento"); return(false); } break; default: ViewPrinter.Println(" Opcao escolhida invalida! ", ConsoleColor.White, ConsoleColor.Red); break; } Console.WriteLine(); MensagemContinuarAtendimento(); return(true); }
public static void MostrarListaProdutos(List <ProdutoMenuModel> listaProdutos) { listaProdutos.ForEach(produto => { ViewPrinter.Print($"\t[ { produto.ProdutoId } ] { produto.Nome }"); if (produto.Valor == 0) { ViewPrinter.Println($" * INCLUSO * ", ConsoleColor.DarkGreen); } else { ViewPrinter.Println($" R$ { produto.Valor } ", ConsoleColor.DarkCyan); } DivisorListaProdutos(); }); }
public static void MostrarMesasDisponiveis() { var listaMesas = MesaService.ObterMesas(true); ViewPrinter.Print("\tMesas disponiveis: \n\t"); ViewPrinter.Print(" # ", ConsoleColor.White, ConsoleColor.DarkGreen); foreach (MesaListagemModel mesa in listaMesas) { ViewPrinter.Print($"[{ mesa.MesaId }] ", ConsoleColor.White, ConsoleColor.DarkGreen); } ViewPrinter.Print("# ", ConsoleColor.White, ConsoleColor.DarkGreen); Console.WriteLine(); // ViewPrinter.Print("] ", ConsoleColor.White, ConsoleColor.DarkGreen); }
public static int SolicitarCategoria() { Console.WriteLine(); ViewPrinter.Print("\tEscolha uma categoria: ", ConsoleColor.Green); Console.WriteLine(); // Selecionar categoria de produto ViewProduto.DivisorListaProdutos(); ViewProduto.MostrarTiposProduto(); Console.WriteLine(); ViewPrinter.Print("\tCategoria desejada: "); int categoria = int.Parse(Console.ReadLine()); if (!TipoProdutoService.TipoProdutoValido(categoria)) { bool categoriaValida = false; while (!categoriaValida) { Console.Clear(); Console.WriteLine(); ViewPrinter.Println("\tCategoria selecionada inválida! ", ConsoleColor.White, ConsoleColor.Red); Console.WriteLine(); ViewPrinter.Print("\tEscolha uma categoria: ", ConsoleColor.Green); Console.WriteLine(); // Selecionar categoria de produto ViewProduto.DivisorListaProdutos(); ViewProduto.MostrarTiposProduto(); Console.WriteLine(); ViewPrinter.Print("\tCategoria desejada: "); categoria = int.Parse(Console.ReadLine()); categoriaValida = TipoProdutoService.TipoProdutoValido(categoria); } } return(categoria); }
public static int ObterQuantidadeClientesValida(int mesaId, int quantidadeClientes) { bool quantidadeValida = false; while (!quantidadeValida) { Console.Clear(); ViewPrograma.CabecalhoDadosIniciais(); if (quantidadeClientes <= 0) { ViewPrinter.Println("\t Quantidade de clientes inválida! ", ConsoleColor.White, ConsoleColor.Red); } else if (quantidadeClientes > MesaService.ObterQuantidadeClientes(mesaId)) { ViewPrinter.Println("\t Esta mesa não comporta esta quantidade de pessoas! ", ConsoleColor.White, ConsoleColor.Red); } else { ViewPrinter.Println("\t Valor informado inválido! ", ConsoleColor.White, ConsoleColor.Red); } Console.WriteLine(); LabelObterQuantidadeClientes(mesaId); quantidadeClientes = int.Parse(Console.ReadLine()); if (quantidadeClientes <= MesaService.ObterQuantidadeClientes(mesaId) && quantidadeClientes > 0) { quantidadeValida = true; } } return(quantidadeClientes); }
public static void CabecalhoDadosIniciais() { Console.WriteLine(); ViewPrinter.Println("\tPor favor, informe os dados solicitados a seguir:"); Console.WriteLine(); }
public static void MostrarAcompanhamento(int comandaId, bool comandaCompleta = false) { Console.WriteLine(); if (comandaCompleta) { ViewPrinter.Println("\t COMANDA DETALHADA ", ConsoleColor.White, ConsoleColor.DarkGreen); } else { ViewPrinter.Println("\t ACOMPANHAMENTO DA COMANDA ", ConsoleColor.White, ConsoleColor.DarkGreen); } var comanda = ComandaService.ObterComandaResumida(comandaId); ViewPrinter.Println("\t------------------------------------------------------"); ViewPrinter.Print("\tNº Comanda: "); ViewPrinter.Println(comandaId.ToString(), ConsoleColor.Cyan); ViewPrinter.Print("\tMesa: "); ViewPrinter.Println($" [{ comanda.MesaId }] ", ConsoleColor.Blue, ConsoleColor.White); ViewPrinter.Print("\tQuantidade de pessoas: "); ViewPrinter.Print(comanda.QuantidadeClientes.ToString(), ConsoleColor.Cyan); if (comanda.QuantidadeClientes == 1) { ViewPrinter.Println(" pessoa"); } else { ViewPrinter.Println(" pessoas"); } /*ViewPrinter.Print("\tTempo em atividade: "); * TimeSpan tempo = ComandaService.CalcularTempoAtividade(comandaId); * string strTempo = string.Join(':', tempo.Hours, tempo.Minutes, tempo.Seconds); * ViewPrinter.Println(strTempo, ConsoleColor.Cyan); */ ViewPrinter.Print("\tData/hora entrada: "); ViewPrinter.Println(comanda.DataHoraEntrada.ToString(), ConsoleColor.Cyan); ViewPrinter.Println("\t----------------------------------------------------------------"); ViewPrinter.Println("\tPedidos relacionados a esta comanda: "); var listaPedidos = PedidoService.ObterPedidosPorComanda(comandaId); Console.WriteLine(); ViewPrinter.Println("\t #ID - Qtde x Produto - Valor --- Status "); ViewPrinter.Println("\t----------------------------------------------------------------"); // Imprimindo os rodizios como pedidos ViewPrinter.Print($"\t # - "); ViewPrinter.Print($"{ comanda.QuantidadeClientes } x Rodízio - R$ { MesaService.ValorRodizio.ToString("F2", CultureInfo.InvariantCulture) } --- "); ViewPrinter.Println(" Ativo ", ConsoleColor.White, ConsoleColor.Green); if (listaPedidos.Count == 0) { Console.WriteLine(); ViewPrinter.Println("\t Ainda não há pedidos relacionados a esta comanda ", ConsoleColor.Black, ConsoleColor.Yellow); } else { listaPedidos.ForEach(pedido => { var produto = ProdutoService.ObterProduto(pedido.ProdutoId, false); var status = StatusService.ObterStatus(pedido.Status); ViewPrinter.Print($"\t { pedido.PedidoId } - "); ViewPrinter.Print($"{ pedido.Quantidade } x { produto.Nome } - "); if (produto.Valor == 0) { ViewPrinter.Print("INCLUSO"); } else { ViewPrinter.Print($"R$ { produto.Valor.ToString("F2", CultureInfo.InvariantCulture) }"); } ViewPrinter.Print(" --- "); switch (pedido.Status) { case 1: ViewPrinter.Print($" { status.Descricao } ", ConsoleColor.Black, ConsoleColor.Yellow); break; case 2: ViewPrinter.Print($" { status.Descricao } ", ConsoleColor.White, ConsoleColor.Red); break; case 3: ViewPrinter.Print($" { status.Descricao } ", ConsoleColor.White, ConsoleColor.Green); break; default: ViewPrinter.Print($" { status.Descricao } ", ConsoleColor.Black, ConsoleColor.Gray); break; } Console.WriteLine(); }); } ViewPrinter.Println("\t------------------------------------------------------", ConsoleColor.Cyan); ViewPrinter.Print("\tValor parcial da comanda: "); ViewPrinter.Print($" R$ { comanda.Valor.ToString("F2", CultureInfo.InvariantCulture) } ", ConsoleColor.DarkBlue, ConsoleColor.White); Console.WriteLine(); }
public static void DivisorListaProdutos() { ViewPrinter.Println("\t----------------------------------------------------"); }