private void TopicAsociarTarea_OnMensajeRecibido(object sender, Entidades.Eventos.MqttMensajeRecibidoEventArgs e) { try { } catch (Exception ex) { new Log().Escribir(ex); } }
private void TopicCalentar_OnMensajeRecibido(object sender, Entidades.Eventos.MqttMensajeRecibidoEventArgs e) { try { ConsumoPrensa consumo = JsonConvert.DeserializeObject <ConsumoPrensa>(e.Cuerpo); if (consumo.Prensa == this.Maquina.Posicion) { timerCalentamiento.Start(); } } catch (Exception ex) { new Log().Escribir(ex); } }
private void TopicNormal_OnMensajeRecibido(object sender, Entidades.Eventos.MqttMensajeRecibidoEventArgs e) { timerCalentamiento.Stop(); try { ConsumoPrensa consumo = JsonConvert.DeserializeObject <ConsumoPrensa>(e.Cuerpo); if (consumo == null) { new Log().Escribir("consumo nulo"); } if (consumo.Prensa != this.Maquina.Posicion) { return; } if (this.Maquina.Modo != Entidades.Enum.ModoMaquina.Normal) { this.Maquina.CambiarModo(Entidades.Enum.ModoMaquina.Normal); } this.Maquina.CargarInformacion(consumo); if (this.Maquina.TrabajoEjecucion != null) { this.Maquina.Pulsos.Add(new PulsoMaquina { PiezaIntroducida = consumo.PiezaIntroducida == 1, CodigoEtiqueta = this.Maquina.TrabajoEjecucion.CodigoEtiquetaFichada, Control = new OperacionesControles { IdTipoMaquina = 1, TiempoBaseEjecucion = 0.01, TiempoCambioBarquilla = 0.3, TiempoInicio = 0, TiempoUtillajeEjecucion = 0.1, }, Ciclo = consumo.SgCiclo, Fecha = DateTime.Now, IdOperario = Maquina.OperarioACargo.Id, PosicionGlobal = Maquina.PosicionGlobal ?? 0, Pares = (consumo.ParesUtillaje == 0?1:consumo.ParesUtillaje) * consumo.NumMoldes, }); if (consumo.PiezaIntroducida == 1) { this.Maquina.InsertarPares(this.Maquina.TrabajoEjecucion, consumo.NumMoldes * (consumo.ParesUtillaje == 0 ? 1 : consumo.ParesUtillaje)); } Notifica("Maquina"); } else { BackgroundWorker bw = new BackgroundWorker(); List <MaquinasColasTrabajo> colaTrabajo = new List <MaquinasColasTrabajo>(); bw.DoWork += (se, ev) => { colaTrabajo = daoPuesto.ObtenerColaTrabajoMaquina(this.Maquina.ID); }; bw.RunWorkerCompleted += (se, ev) => { if (colaTrabajo.Count == 0) { ClienteMqtt.Publicar(string.Format("/{0}/fallo/{1}", Maquina.Tipo, this.Maquina.IpAutomata.PadLeft(3)), string.Format("El automata {0} con maquina {1} no tiene cola de trabajo", Maquina.IpAutomata, Maquina.Posicion), 1); } Maquina.AsignarColaTrabajo(colaTrabajo); }; bw.RunWorkerAsync(); } }catch (Exception ex) { new Log().Escribir(ex); } }