private void btnAgregar_Click(object sender, EventArgs e) { try { //Intenta agregar los datos ingresados en la forma a un nuevo paquete solo para verificar que los datos fueron escritos correctamente. pq = new Paquete(idActual, Convert.ToDouble(rec_peso.Text), rec_remitente.Text, rec_destinatario.Text, rec_direccionR.Text, rec_direccionD.Text, Convert.ToDateTime(rec_fechaE.Text), -1); //Agrega los datos al dgv dgv_recepcion.Rows.Add(idActual, rec_peso.Text, rec_remitente.Text, rec_destinatario.Text, rec_direccionR.Text, rec_direccionD.Text, rec_fechaE.Text, "-1", "-1"); idActual++; //incrementa idactual ////Limpia controles de agregar paquete. //rec_destinatario.Clear(); //rec_direccionD.Clear(); //rec_direccionR .Clear(); //rec_fechaE.Clear(); //rec_peso.Clear(); //rec_remitente.Clear(); } catch (Exception ex) { //Cambia colores CloseButton.BackColor = MinimizeButton.BackColor = TituloForma.BackColor = TopBar.BackColor = Color.FromArgb(229, 115, 104); //TituloForma.ForeColor = Color.White; //Muestra mensaje error. CustomMsgBox.Mostrar(ex.Message); //Regresa colores. CloseButton.BackColor = MinimizeButton.BackColor = TituloForma.BackColor = TopBar.BackColor = Color.FromArgb(16, 157, 89); //TituloForma.ForeColor = Color.FromArgb(181, 181, 181); } finally { rec_id.Text = idActual.ToString(); //Vuelve a mostrar id en forma. rec_peso.Focus(); } }
private void dgv_cola_SelectionChanged(object sender, EventArgs e) { try { Paquete pq = new Paquete(); int row = Convert.ToInt32(dgv_cola.CurrentRow.Index); int id = Convert.ToInt32(dgv_cola[2, row].Value); pq = Master.PaquetesFueraAlmacen[BusquedaYasignacion.Binaria(id)]; rec_id.Text = pq.ID.ToString();; rec_destinatario.Text = pq.Destinatario; rec_direccionD.Text = pq.DireccionDestinatario; rec_direccionR.Text = pq.DireccionRemitente; rec_fechaE.Text = pq.FechaEnvio.ToShortDateString(); rec_peso.Text = pq.Peso.ToString(); rec_remitente.Text = pq.Remitente; } catch (Exception) { //throw; } }
private void btnBuscar_hist_Click(object sender, EventArgs e) { //Limpia forma //id_hist.Clear(); peso_hist.Clear(); remitente_hist.Clear(); destinatario_hist.Clear(); direccionD_hist.Clear(); direccionR_hist.Clear(); fechaE_hist.Clear(); LbShowStatus_hist.Visible = false; lbError_hist.Visible = false; lbCheck1_hist.Visible = lbCheck2_hist.Visible = lbCheck3_hist.Visible = lbCheck4_hist.Visible = lbCheck5_hist.Visible = false; Step1.Visible = Step2.Visible = Step3.Visible = Step4.Visible = Step5.Visible = false; Porcentaje_hist.Size = new Size(0, 0); //Paquete auxiliar pq = new Paquete(); Encontrado = false; EncontradoEnAlmacen = EncontradoEnCola = false; cords = new int[] { -1, -1 }; cordEnLista = -1; cordEnAntiguos = -1; try { //Busca el paquete en almacen y regresa Estante y nivel cords = hs.MostrarHash(int.Parse(id_hist.Text)); Encontrado = true; EncontradoEnAlmacen = true; } catch (Exception) { try { //Si no lo encontró en estantes busca en cola para camion cordEnLista = BusquedaYasignacion.Binaria(int.Parse(id_hist.Text)); Encontrado = true; EncontradoEnCola = true; } catch (Exception ex) { //Si no lo encontró en cola busca en antiguos try { cordEnAntiguos = BusquedaYasignacion.Binaria(int.Parse(id_hist.Text), Master.PaquetesAntiguos); EncontradoEnAntiguos = Encontrado = true; } catch (Exception) { CustomMsgBox.Mostrar(ex.Message); lbError_hist.Visible = true; //throw; } } } if (Encontrado) { //Si lo encontró copia el paquete al aux if (EncontradoEnAlmacen) { pq = Master.Paquetes[cords[0], cords[1]]; } else if (EncontradoEnCola) { pq = Master.PaquetesFueraAlmacen[cordEnLista]; } else if (EncontradoEnAntiguos) { pq = Master.PaquetesAntiguos[cordEnAntiguos]; } //Actualiza campos para mostrar información. id_hist.Text = pq.ID.ToString(); peso_hist.Text = pq.Peso.ToString(); remitente_hist.Text = pq.Remitente; destinatario_hist.Text = pq.Destinatario; direccionR_hist.Text = pq.DireccionRemitente; direccionD_hist.Text = pq.DireccionDestinatario; fechaE_hist.Text = pq.FechaEnvio.ToShortDateString(); LbShowStatus_hist.Visible = true; string MostrarEstado = ""; //Variable usada para mostrar el texto en pantalla switch (pq.Status) //Dependiendo del status del paquete cambia el tamaño de la barra y muestra las etapas. { case 0: cbStatus_hist.Text = MostrarEstado = "Recibido"; Step1.Visible = lbCheck1_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(56, 18); break; case 1: cbStatus_hist.Text = MostrarEstado = "Asignado"; Step1.Visible = lbCheck1_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(56, 18); break; case 2: cbStatus_hist.Text = MostrarEstado = "Programado"; Step1.Visible = lbCheck1_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(56, 18); break; case 3: cbStatus_hist.Text = MostrarEstado = "Enviado"; Step1.Visible = lbCheck1_hist.Visible = true; Step2.Visible = lbCheck2_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(179, 18); break; case 4: cbStatus_hist.Text = MostrarEstado = "En ciudad"; Step1.Visible = lbCheck1_hist.Visible = true; Step2.Visible = lbCheck2_hist.Visible = true; Step3.Visible = lbCheck3_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(287, 18); break; case 5: cbStatus_hist.Text = MostrarEstado = "Reparto"; Step1.Visible = lbCheck1_hist.Visible = true; Step2.Visible = lbCheck2_hist.Visible = true; Step3.Visible = lbCheck3_hist.Visible = true; Step4.Visible = lbCheck4_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(403, 18); break; case 6: cbStatus_hist.Text = MostrarEstado = "Entregado"; Step1.Visible = lbCheck1_hist.Visible = true; Step2.Visible = lbCheck2_hist.Visible = true; Step3.Visible = lbCheck3_hist.Visible = true; Step4.Visible = lbCheck4_hist.Visible = true; Step5.Visible = lbCheck5_hist.Visible = true; Porcentaje_hist.Visible = true; Porcentaje_hist.Size = new Size(519, 18); break; case -1: LbShowStatus_hist.Visible = false; cbStatus_hist.Text = "Error"; lbError_hist.Text = "Error entrega"; lbError_hist.Visible = true; break; default: break; } LbShowStatus_hist.Text = MostrarEstado; //Muestra el estado en pantalla. Stack <String> auxPila = pq.Historial; //Copia la pila del historial a una lista. LbHistorial_hist.DataSource = auxPila.ToList <string>(); //Muestra el historial en ListBox } }
private void btnFinalizar_Click(object sender, EventArgs e) //Boton que carga los datos del dgv en el arreglo de paquetes { bool error = false; //Variable que =true cuando hay error en operacion string descripcionError = ""; //Descripciond el error //Limpiar campos rec_destinatario.Clear(); rec_direccionD.Clear(); rec_direccionR.Clear(); rec_fechaE.Clear(); rec_peso.Clear(); rec_remitente.Clear(); rec_remitente.ReadOnly = true; //Modificar atributos campos rec_destinatario.ReadOnly = true; rec_direccionD.ReadOnly = true; rec_direccionR.ReadOnly = true; rec_fechaE.ReadOnly = true; rec_peso.ReadOnly = true; rec_remitente.ReadOnly = true; dgv_recepcion.ReadOnly = true; btnFinalizarL.Enabled = btnFinalizar.Enabled = false; //Progressbar try //Si no se tiene ningun valor y se presiona finalizar el maximum de progressbar = 10 { pb_rec.Maximum = dgv_recepcion.RowCount; } catch (Exception) { pb_rec.Maximum = 10; } if (dgv_recepcion.RowCount == 0) //Verifica que haya datos en dgv { descripcionError = "Oh! Creo que olvidaste agregar infomación! Presina el boton 'nuevo', esta vez agrega al menos un paquete antes de presionarme de nuevo."; error = true; } for (int i = 0; i < dgv_recepcion.RowCount; i++) { //Carga los dato en pq para despues agtregarlo al arreglo pq = new ProyectoFinalv2.Paquete(int.Parse(dgv_recepcion [0, i].Value.ToString()), Convert.ToDouble(dgv_recepcion [1, i].Value.ToString()), dgv_recepcion [2, i].Value.ToString(), dgv_recepcion [3, i].Value.ToString(), dgv_recepcion [4, i].Value.ToString(), dgv_recepcion [5, i].Value.ToString(), Convert.ToDateTime(dgv_recepcion [6, i].Value.ToString())); pq.Historial.Push(DateTime.Now.ToString() + " : Paquete recibido en instalaciones para envío."); //Agrega evento al historial del paquete try { hs.InsertarHash(pq); dgv_recepcion[7, i].Value = hs.Ui; //Si logró insertar actualiza el "estante" del dgv dgv_recepcion[8, i].Value = hs.Uj; //Si logró insertar actualiza el "nivel" del dgv pb_rec.PerformStep(); } catch (Exception ex) { descripcionError = ex.Message; error = true; dgv_recepcion[7, i].Value = "x"; dgv_recepcion[8, i].Value = "x"; idActual--; //Reduce el ID, ya que no fue posible insertar } } if (error) //Si alguna operacion resultó en error muestra el mensaje { //Cambia colores CloseButton.BackColor = MinimizeButton.BackColor = TituloForma.BackColor = TopBar.BackColor = Color.FromArgb(229, 115, 104); //TituloForma.ForeColor = Color.White; //Muestra mensaje CustomMsgBox.Mostrar(descripcionError); //Regresa colores CloseButton.BackColor = MinimizeButton.BackColor = TituloForma.BackColor = TopBar.BackColor = Color.FromArgb(16, 157, 89); //TituloForma.ForeColor = Color.FromArgb(181, 181, 181); error = false; } }