private void btnEnviar_cola_Click(object sender, EventArgs e) { //Progressbar try //Si no se tiene ningun valor y se presiona finalizar el maximum de progressbar = 10 { pb_cola.Maximum = dgv_cola.RowCount; } catch (Exception) { pb_cola.Maximum = 10; } bool perfomstep = false; //Variable que verifica qe almenos se haya realizado una accion. for (int i = 0; i < dgv_cola.RowCount; i++) { if (Convert.ToBoolean(dgv_cola[0, i].Value)) { perfomstep = true; //Se ejecutó una acción. dgv_cola[1, i].Value = false; //Borra el check. int id = Convert.ToInt32(dgv_cola[2, i].Value); //Toma el id de paquete del dgv int LugarEncontrado = BusquedaYasignacion.Binaria(id); //Busca la posicion del id en la lista //Le asigna la ruta al paquete (propiedad). Master.PaquetesFueraAlmacen[LugarEncontrado].Status = 3; //Mandarlo a PaqutesAntiguos Master.PaquetesAntiguos.Add(Master.PaquetesFueraAlmacen[LugarEncontrado]); //Borrarlo de lista Fuera de almacen Master.PaquetesFueraAlmacen.RemoveAt(LugarEncontrado); } if (perfomstep) { pb_cola.PerformStep(); } } if (perfomstep) { pb_cola.Value = pb_cola.Maximum; Master.ColaACamiones = new Queue <Paquete>(); for (int i = Master.PaquetesFueraAlmacen.Count - 1; i >= 0; i--) { Master.ColaACamiones.Enqueue(Master.PaquetesFueraAlmacen[i]); } //Carga de nuevo info a gdv try { ToDgv(dgv_cola, Master.PaquetesFueraAlmacen); } catch (Exception) { } } }
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 } }