public void realizaToppings(Pedido pedido, bool macarraoEstaPronto) { //Checa se o macarrao pronto, indicando se os toppins devem ser aquecidos ou misturados ao macarrao if (macarraoEstaPronto == false) { Console.WriteLine(); Console.WriteLine("---------------- Chamando Toppings ------------------------------"); Console.WriteLine("Ligando resistencia para aquecimento ..."); //Liga a resistencia para aquecimento LigaResistenciaParaAquecimento(true); Console.WriteLine("Resistencia ligada "); Console.WriteLine("Ligando sensor de temperatura ..."); //Liga o sensor de temperatura para verificar a temperatura ideal LigarSensorDeTemperatura(true); Console.WriteLine("Sensor de temperatura ligado "); Console.WriteLine("Ligando aquecimento por indução ... "); //Liga a inducao para realizar o aquecimento por inducao LigaAquecimentoPorInducao(true); Console.WriteLine("Monitoramento de temperatura do aquecimento por sensor de temperatura ... "); //Realiza o monitoramento para controle de temperatura MonitoraSensorDeTemperatura(); Console.WriteLine("---------------- Aquecendo Toppings ... -------------------------"); } else //Nesse caso o macarrao ja esta pronto e sera enviado { //Liga o motor de rotaçao que ira receber o macarrar e misturar com os toppins LigaMotorDeRotacaoPneumatico(true); //Verifica a quantidade de toppins selecionado liberando-os para a mistura com a massa ToopingsPorSensoresDeNivel(); Console.WriteLine(); Console.WriteLine("-----------------Preparando Toppings ... -------------------------"); Console.WriteLine(); Console.WriteLine("Ligando sensores de niveis"); Console.WriteLine("Sensores de niveis ligados"); Console.WriteLine("Separação dos toppings"); Console.WriteLine("Toppings monitorados por sensores de niveis "); Console.WriteLine("---------------- Toppings Aquecidos! -----------------------------"); Console.WriteLine(); Console.WriteLine("Ligando motores de rotação pneumaticos ... "); Console.WriteLine("Motores de rotação pneumaticos ligados. "); Console.WriteLine("Retirando pote para pedido"); Console.WriteLine("Girando eixo da frigideira para mistura com toppins"); Console.WriteLine("Ligando motores de rotação das panelas"); //Gira o eixo da frigideira para mistura com toppins GiraOEixoDaFrigideira(); Console.WriteLine("Entregando pedido "); Console.WriteLine("---------------- Preparando a entrega de pedido -----------------"); Console.WriteLine("---------------- Pedido Entregue ---------------------------------"); Console.WriteLine(); Console.WriteLine("Chamando Controle de limpeza"); Console.WriteLine(); //Envia o prato preparado para o controle de entrega e assim disponibilizar para o cliente ControleDeEntrega.AutomationCore.ControleDeEntrega enviaParaEntrega = new ControleDeEntrega.AutomationCore.ControleDeEntrega(); enviaParaEntrega.DisponibilizaPratoAoCliente(ObjectExtensions.ToJson(pedido)); //Chama o controle de limpeza para limpar as frigideiras utilizadas ChamaLimpeza(); } }
public void realizaToppings(string jsonPedido, bool macarraoEstaPronto) { //Checa se o macarrao pronto, indicando se os toppins devem ser aquecidos ou misturados ao macarrao if (macarraoEstaPronto == false) { Console.WriteLine(); Console.WriteLine("---------------- Chamando Toppings ------------------------------"); Console.WriteLine("Ligando resistencia para aquecimento ..."); //Liga a resistencia para aquecimento LigaResistenciaParaAquecimento(true); Console.WriteLine("Resistencia ligada "); Console.WriteLine("Ligando sensor de temperatura ..."); //Liga o sensor de temperatura para verificar a temperatura ideal LigarSensorDeTemperatura(true); Console.WriteLine("Sensor de temperatura ligado "); Console.WriteLine("Ligando aquecimento por indução ... "); //Liga a inducao para realizar o aquecimento por inducao LigaAquecimentoPorInducao(true); Console.WriteLine("Monitoramento de temperatura do aquecimento por sensor de temperatura ... "); //Realiza o monitoramento para controle de temperatura MonitoraSensorDeTemperatura(); Console.WriteLine("---------------- Aquecendo Toppings ... -------------------------"); } else //Nesse caso o macarrao ja esta pronto e sera enviado { //Liga o motor de rotaçao que ira receber o macarrar e misturar com os toppins LigaMotorDeRotacaoPneumatico(true); //Verifica a quantidade de toppins selecionado liberando-os para a mistura com a massa ToopingsPorSensoresDeNivel(); Console.WriteLine(); Console.WriteLine("-----------------Preparando Toppings ... -------------------------"); Console.WriteLine(); Console.WriteLine("Ligando sensores de niveis"); Console.WriteLine("Sensores de niveis ligados"); Console.WriteLine("Separação dos toppings"); Console.WriteLine("Toppings monitorados por sensores de niveis "); Console.WriteLine("---------------- Toppings Aquecidos! -----------------------------"); Console.WriteLine(); Console.WriteLine("Ligando motores de rotação pneumaticos ... "); Console.WriteLine("Motores de rotação pneumaticos ligados. "); Console.WriteLine("Retirando pote para pedido"); Console.WriteLine("Girando a panela em 90 graus"); Console.WriteLine("Ligando motores de rotação das panelas"); //Gira o eixo da frigideira para mistura com toppins GiraOEixoDaFrigideira(); Console.WriteLine("Entregando pedido "); Console.WriteLine("---------------- Preparando a entrega de pedido -----------------"); Console.WriteLine("---------------- Pedido Entregue ---------------------------------"); Console.WriteLine(); Console.WriteLine("Chamando Controle de limpeza"); Console.WriteLine(); //Envia o prato preparado para o controle de entrega e assim disponibilizar para o cliente ControleDeEntrega.AutomationCore.ControleDeEntrega enviaParaEntrega = new ControleDeEntrega.AutomationCore.ControleDeEntrega(); enviaParaEntrega.DisponibilizaPratoAoCliente(jsonPedido); //Chama o controle de limpeza para limpar as frigideiras utilizadas ChamaLimpeza(); } }
static void Main(string[] args) { Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); ToppingsDTO toppings = new ToppingsDTO(); var pedidoFeito = PedidoJson(); toppings.realizaToppings(pedidoFeito, true); Thread.Sleep(200); stopWatch.Stop(); TimeSpan ts = stopWatch.Elapsed; string elapsedTime = String.Format("{0:00}:{1:00}:{2:00}.{3:00}", ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds / 10); Console.WriteLine("Pedido realizado com latencia de " + elapsedTime); ControleDeEntrega.AutomationCore.ControleDeEntrega enviaParaEntrega = new ControleDeEntrega.AutomationCore.ControleDeEntrega(); enviaParaEntrega.DisponibilizaPratoAoCliente(ObjectExtensions.ToJson((Pedido)pedidoFeito)); }