public Configurar() { InitializeComponent(); this.DataContext = this; try { var config = BDConfiguracion.Leer(); Contenido = JsonConvert.SerializeObject(config); this.Closing += Configurar_Closing; } catch (Exception ex) { Logs.Log.Write(ex); } }
private void Configurar_Closing(object sender, System.ComponentModel.CancelEventArgs e) { try { if (this.guardar) { Configuracion config = JsonConvert.DeserializeObject <Configuracion>(Contenido); BDConfiguracion.Guardar(config); System.Windows.Forms.Application.Restart(); System.Windows.Application.Current.Shutdown(); } } catch (Exception ex) { Logs.Log.Write(ex); } }
private void CargarConfiguracion() { Cargando loading = new Cargando(); if (!System.Security.Principal.WindowsIdentity.GetCurrent().Name.Contains("omartinez")) { loading.Topmost = true; loading.WindowStyle = WindowStyle.None; } loading.Show(); BackgroundWorker bw = new BackgroundWorker(); bw.DoWork += (s, e) => { try { this.config = BDConfiguracion.Leer(); Store.Bancada = BDSQL.Select.ObtenerBancadaPorId(this.config.IdBancada); if (Store.Bancada != null && Store.Bancada.EsMaster && Store.Bancada.IdHermano.HasValue) { Store.BancadaEsclavo = BDSQL.Select.ObtenerBancadaPorId(Store.Bancada.IdHermano.Value); } else if (Store.Bancada != null && !Store.Bancada.EsMaster && Store.Bancada.IdHermano.HasValue) { Store.BancadaMaster = BDSQL.Select.ObtenerBancadaPorId(Store.Bancada.IdHermano.Value); } DateTime ahora = DateTime.Now; Turno turno = Horario.CalcularTurnoAFecha(ahora); DateTime fechaInicio; DateTime fechaFin; Horario.CalcularHorarioTurno(turno, ahora, out fechaInicio, out fechaFin); var paquetes = new List <MaquinasRegistrosDatos>(); foreach (var maquina in Store.Bancada.Maquinas) { paquetes.AddRange(Select.HistoricoPaquetesOperario(maquina.IpAutomata, maquina.Posicion, fechaInicio, fechaFin)); } foreach (var paquete in paquetes.Where(x => x.PiezaIntroducida)) { var maq = Store.Bancada.Maquinas.FirstOrDefault(x => x.IpAutomata == paquete.IpAutomata && x.Posicion == paquete.PosicionMaquina); if (maq != null) { maq.Pulsos.Add(new PulsoMaquina { IdTarea = paquete.IdTarea, CodigoEtiqueta = paquete.CodigoEtiqueta, Control = BuscarControl(paquete.IdOperacion, maq), Fecha = paquete.FechaCreacion, Pares = paquete.Pares, IdOperario = paquete.IdOperario, CodigoOrden = paquete.CodigoOrden, Talla = paquete.Talla, }); } } } catch (Exception ex) { Log.Write(ex); } }; bw.RunWorkerCompleted += (s, e) => { try { if (Store.Bancada != null && Store.Bancada.Maquinas.Any()) { if (Store.Bancada.EsMaster) { var maquinasUart = Store.Bancada.Maquinas.ToList(); if (Store.BancadaEsclavo != null) { maquinasUart.AddRange(Store.BancadaEsclavo.Maquinas.ToList()); } uart = new Uart(maquinasUart); uart.OnPulsoGenerado += this.Uart_OnPulsoGenerado; } this.IniciarMQTT(); } else { MessageBox.Show("Bancada no configurada", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } loading.Close(); } catch (Exception ex) { Log.Write(ex); loading.Close(); } Notifica(); }; bw.RunWorkerAsync(); }