/// <summary> /// a. Colocar una demora de 10 segundos. /// b. Pasar al siguiente estado. /// c. Informar el estado a través de InformarEstado. EventArgs no tendrá ningún dato extra. /// d. Repetir las acciones desde el punto A hasta que el estado sea Entregado. /// e. Finalmente guardar los datos del paquete en la base de datos. /// </summary> public void MockCicloDeVida() { for (this.estado = 0; this.estado <= EEstado.Entregado; this.estado++) { this.InformarEstado.Invoke(this, new EventArgs()); Thread.Sleep(2000); } PaqueteDAO.Insertar(this); }
/// <summary> /// a. Colocar una demora de 10 segundos. /// b. Pasar al siguiente estado. /// c. Informar el estado a través de InformarEstado. EventArgs no tendrá ningún dato extra. /// d. Repetir las acciones desde el punto A hasta que el estado sea Entregado. /// e. Finalmente guardar los datos del paquete en la base de datos. /// </summary> public void MockCicloDeVida() { while (this.Estado != EEstado.Entregado) { Thread.Sleep(10000); this.Estado++; InformaEstado(this, EventArgs.Empty); } PaqueteDAO.Insertar(this); }
/// <summary> /// a. Colocar una demora de 10 segundos. /// b. Pasar al siguiente estado. /// c. Informar el estado a través de InformarEstado. EventArgs no tendrá ningún dato extra. /// d. Repetir las acciones desde el punto A hasta que el estado sea Entregado. /// e. Finalmente guardar los datos del paquete en la base de datos. /// </summary> public void MockCicloDeVida() { if (this.Estado == EEstado.Ingresado) { Thread.Sleep(10000); this.Estado = EEstado.EnViaje; } if (this.Estado == EEstado.EnViaje) { Thread.Sleep(10000); this.Estado = EEstado.Entregado; } InformaEstado((Paquete)this, null); PaqueteDAO.Insertar(this); }
/// <summary> /// a. Colocar una demora de 10 segundos. /// b. Pasar al siguiente estado. /// c. Informar el estado a través de InformarEstado. EventArgs no tendrá ningún dato extra. /// d. Repetir las acciones desde el punto A hasta que el estado sea Entregado. /// e. Finalmente guardar los datos del paquete en la base de datos. /// </summary> public void MockCicloDeVida() { while (this.Estado != EEstado.Entregado) { Thread.Sleep(10000); this.Estado += 1; InformarEstado(this.Estado, EventArgs.Empty); } try { PaqueteDAO.Insertar(this); } catch (SqlException) { ErrorBD("Se ha producido un error al manipular la base de datos"); } }
public void MockCicloDeVida() { do { System.Threading.Thread.Sleep(1000); this.estado++; InformaEstado(this, new EventArgs()); } while (this.estado != EEstado.Entregado); // Guardo en la base try { PaqueteDAO.Insertar(this); } catch (Exception) { } }
/// <summary> /// Cambia el estado de los paquetes hasta que cumple es recorrido y guarda en la base de datos /// </summary> public void MockCicloDeVida() { do { System.Threading.Thread.Sleep(1000); this.Estado++; // Informar el estado a través de InformarEstado. EventArgs InformarEstado(this.Estado, null); } while (this.Estado != EEstado.Entregado); try { PaqueteDAO.Insertar(this); } catch (Exception e) { InformarConexion(this, e); } }
/// <summary> /// Método que se encarga de: /// /// Primero: Verificar que el Turno no sea null. /// /// Segundo: Ejecutar un bucle while hasta que el estado del paquete no sea "Entregado". /// /// Tercero: Mientras tanto, adentro del bucle va dormir la ejecución del programa (Simulando el cambio de estado del paquete). /// Cambiará el estado del paquete. /// /// Cuarto: Si el estado del paquete es igual a "Entregado", lo inserto en la tabla Paquetes. /// /// </summary> /// public void MockCicloDeVida() { if (!(this is null)) { this.InformaEstado(this, null); while (this.Estado != EEstado.Entregado) { Thread.Sleep(4000); this.Estado++; this.InformaEstado(this, null); } if (this.Estado == EEstado.Entregado) { PaqueteDAO.Insertar(this); } } }
/// <summary> /// Método estático que inserta un paquete en la tabla Paquetes. /// </summary> /// <param name="p">El paquete a insertar</param> /// <returns></returns> public static bool Insertar(Paquete p) { bool pudoInsertar = false; string queryInsertarP = $"INSERT INTO Paquetes (direccionEntrega, trackingID, alumno) " + $"VALUES(@drEntrega, @trID, @alumno)"; string datosAlumno = "Rodi Yago"; try { if (connectionDB.State != System.Data.ConnectionState.Open) { connectionDB.Open(); } commandDB.CommandText = queryInsertarP; commandDB.Parameters.Clear(); commandDB.Parameters.AddWithValue("@drEntrega", p.DireccionEntrega); commandDB.Parameters.AddWithValue("@trID", p.TrackingID); commandDB.Parameters.AddWithValue("@alumno", datosAlumno); commandDB.ExecuteNonQuery(); pudoInsertar = true; } catch (Exception e) { PaqueteDAO.EventoErrorDAO(e.Message); } finally { if (connectionDB.State != System.Data.ConnectionState.Closed) { connectionDB.Close(); } } return(pudoInsertar); }