Exemplo n.º 1
0
 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);
     }
 }
Exemplo n.º 2
0
 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);
     }
 }
Exemplo n.º 3
0
        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();
        }