public string Ensamblar_Piezas(Ensamblaje ensamblaje) { if ((ensamblaje.Hora >= 8) && (ensamblaje.Hora <= 18)) { if (ensamblaje.Interruptor == "OFF") { ensamblaje.Encendido_Maquina(ensamblaje.Nombre); } } else { if (ensamblaje.Interruptor == "ON") { ensamblaje.Apagado_Maquina(ensamblaje.Nombre, ensamblaje.Hora); } Console.WriteLine("Horario NO Laboral, Maquina " + ensamblaje.Nombre + " esta apagada, las piezas no han podido ser Ensambladas por esta Maquina"); } if (ensamblaje.Interruptor == "ON") { if (ensamblaje.Memoria + Piezas_Recibidas <= 100) { ensamblaje.Piezas_Ensambladas += ensamblaje.Piezas_Recibidas; ensamblaje.Piezas_Verificacion = ensamblaje.Piezas_Ensambladas; ensamblaje.Piezas_Ensambladas -= ensamblaje.Piezas_Verificacion; ensamblaje.Memoria += ensamblaje.Piezas_Verificacion; if (ensamblaje.Memoria == 100) { Console.WriteLine("La Maquina " + ensamblaje.Nombre + "No dispone de mas Memoria"); ensamblaje.Reinicio_Maquina(ensamblaje.Nombre); } //Console.WriteLine(""); Console.WriteLine("Se han ensamblado " + ensamblaje.Piezas_Verificacion + " Piezas"); //Console.WriteLine(""); Console.WriteLine("Piezas enviadas a Verificacion"); return(" "); } else { ensamblaje.Piezas_Ensambladas += ensamblaje.Piezas_Recibidas; ensamblaje.Piezas_Verificacion = (100 - ensamblaje.Memoria); ensamblaje.Piezas_Ensambladas -= ensamblaje.Piezas_Verificacion; Console.WriteLine("La Maquina " + ensamblaje.Nombre + "No dispone de mas Memoria"); ensamblaje.Reinicio_Maquina(ensamblaje.Nombre); ensamblaje.Piezas_Verificacion += ensamblaje.Piezas_Ensambladas; ensamblaje.Memoria += ensamblaje.Piezas_Ensambladas; ensamblaje.Piezas_Ensambladas = 0; //Console.WriteLine(""); Console.WriteLine("Se han ensamblado " + ensamblaje.Piezas_Verificacion + " Piezas"); //Console.WriteLine(""); Console.WriteLine("Piezas enviadas a Verificacion"); return(" "); } } else { Console.WriteLine("Maquina " + ensamblaje.Nombre + " esta Apagada, ha sido imposible enviar las piezas a Verificar"); return(" "); } }
public void Verificar_Piezas(Ensamblaje ensamblaje) { if ((ensamblaje.Hora >= 8) && (ensamblaje.Hora <= 18)) { Console.WriteLine("Piezas listas para empezar Ensamblaje"); } else { if (ensamblaje.Interruptor == "ON") { ensamblaje.Apagado_Maquina(ensamblaje.Nombre, ensamblaje.Hora); } Console.WriteLine("Horario NO Laboral, Maquina " + ensamblaje.Nombre + " esta apagada, las piezas no han podido ser recepcionadas por esta Maquina"); } }
static void Main(string[] args) { Recepcion recepciones = new Recepcion(); Almacenamiento almacenamientos = new Almacenamiento(); Ensamblaje ensamblajes = new Ensamblaje(); Verificacion verificaciones = new Verificacion(); Empaque empaques = new Empaque(); recepciones.Nombre = " de Recepcion "; almacenamientos.Nombre = " de Almacenamiento "; ensamblajes.Nombre = " de Ensamblaje "; verificaciones.Nombre = " de Verificacion "; empaques.Nombre = " de Empaque "; Random rnd = new Random(); bool Running = true; while (Running == true) { Console.WriteLine("Bienvenido!"); Console.WriteLine(""); Console.WriteLine("Esta es la Interfaz del Computador Central"); Console.WriteLine(""); Console.WriteLine("Como te gustaria operar? "); Console.WriteLine("Pulsa / 1 para control manual / 2 para control automatico / 3 para apagar"); Console.WriteLine(""); string Opcion_Inicial = Console.ReadLine(); if (Opcion_Inicial == "1") { recepciones.Automatico = false; almacenamientos.Automatico = false; ensamblajes.Automatico = false; verificaciones.Automatico = false; empaques.Automatico = false; } else if (Opcion_Inicial == "2") { recepciones.Automatico = true; almacenamientos.Automatico = true; ensamblajes.Automatico = true; verificaciones.Automatico = true; empaques.Automatico = true; } else if (Opcion_Inicial == "3") { break; } else { Console.WriteLine("Opcion Invalida!"); Console.WriteLine(""); Console.WriteLine("Redirigiendo..."); } //Conteo Horas dia for (int Contador_Hora = 0; Contador_Hora < 24; Contador_Hora++) { recepciones.Hora = Contador_Hora; almacenamientos.Hora = Contador_Hora; ensamblajes.Hora = Contador_Hora; verificaciones.Hora = Contador_Hora; empaques.Hora = Contador_Hora; Console.WriteLine("Hora --> [" + Contador_Hora + ":00]"); Console.WriteLine(""); Console.WriteLine(""); //llamado a metodos de Maquinas por cada hora del dia if ((Contador_Hora <= 8) || (Contador_Hora >= 18)) { recepciones.Interruptor = "OFF"; almacenamientos.Interruptor = "OFF"; ensamblajes.Interruptor = "OFF"; verificaciones.Interruptor = "OFF"; empaques.Interruptor = "OFF"; if (Contador_Hora == 19) { Console.WriteLine("###############################################"); Console.WriteLine("# #"); Console.WriteLine("# FIN HORARIO LABORAL #"); Console.WriteLine("# #"); Console.WriteLine("###############################################"); Console.WriteLine(""); recepciones.Apagado_Maquina(recepciones.Nombre, recepciones.Hora); almacenamientos.Apagado_Maquina(almacenamientos.Nombre, almacenamientos.Hora); ensamblajes.Apagado_Maquina(ensamblajes.Nombre, ensamblajes.Hora); verificaciones.Apagado_Maquina(verificaciones.Nombre, verificaciones.Hora); empaques.Apagado_Maquina(empaques.Nombre, empaques.Hora); Console.WriteLine(""); Console.WriteLine("###############################################"); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(""); } } if (Contador_Hora >= 8) { if (Contador_Hora <= 18) { recepciones.Interruptor = "ON"; almacenamientos.Interruptor = "ON"; ensamblajes.Interruptor = "ON"; verificaciones.Interruptor = "ON"; empaques.Interruptor = "ON"; if (Contador_Hora == 8) { Console.WriteLine("###############################################"); Console.WriteLine("# #"); Console.WriteLine("# INICIO HORARIO LABORAL #"); Console.WriteLine("# #"); Console.WriteLine("###############################################"); Console.WriteLine(""); recepciones.Encendido_Maquina(recepciones.Nombre); almacenamientos.Encendido_Maquina(almacenamientos.Nombre); ensamblajes.Encendido_Maquina(ensamblajes.Nombre); verificaciones.Encendido_Maquina(verificaciones.Nombre); empaques.Encendido_Maquina(empaques.Nombre); Console.WriteLine(""); } } } recepciones.Piezas_Recibidas = rnd.Next(0, 200); recepciones.Recibir_Piezas(recepciones); recepciones.Enviar_a_Almacenamiento(recepciones); Console.WriteLine(""); almacenamientos.Piezas_Recibidas = recepciones.Piezas_Almacenamiento; almacenamientos.Almacenar_Piezas(almacenamientos); almacenamientos.Enviar_a_Ensamblaje(almacenamientos); Console.WriteLine(""); ensamblajes.Piezas_Recibidas = almacenamientos.Piezas_Ensamblaje; ensamblajes.Verificar_Piezas(ensamblajes); ensamblajes.Ensamblar_Piezas(ensamblajes); Console.WriteLine(""); verificaciones.Piezas_Recibidas = ensamblajes.Piezas_Verificacion; verificaciones.Verificar_Pieza(verificaciones); verificaciones.Enviar_a_Empaque(verificaciones); Console.WriteLine(""); empaques.Piezas_Empaquetadas = verificaciones.Piezas_Empaque; empaques.Empaquetar_Pieza(empaques); empaques.Enviar_Empaque(empaques); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(""); } } }