예제 #1
0
        private void dgvAeronaves_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex == -1)
                return;

            Aeronave aeronaveSeleccionada = new Aeronave().obtenerAeronavePorId((int)dgvAeronaves.Rows[e.RowIndex].Cells[0].Value);
            if (aeronaveSeleccionada != null)
            {
                if (e.ColumnIndex == 8)
                {
                    //Modificar
                    if (aeronaveSeleccionada.tieneViajes(aeronaveSeleccionada.idAeronave))
                    {
                        MessageBox.Show("La aeronave no puede ser modificada ya que tiene viajes asignados.", "Atención");
                    }
                    else
                    {
                        frmAeronave fa = new frmAeronave(aeronaveSeleccionada);
                        fa.ShowDialog();
                        actualizar(new Aeronave().obtenerAeronavesDGV());
                    }
                }
                else if (e.ColumnIndex == 9)
                {
                    //Baja de servicio
                    if (aeronaveSeleccionada.bajaFueraServicioAeronave == true)
                    {
                        MessageBox.Show("La aeronave ya se encuentra fuera de servicio.", "Atención");
                        return;
                    }
                    frmBajaServicio fbs = new frmBajaServicio(aeronaveSeleccionada);
                    fbs.ShowDialog();
                    actualizar(new Aeronave().obtenerAeronavesDGV());
                }
                else if (e.ColumnIndex == 10)
                {
                    //Baja por vida util
                    var msg = MessageBox.Show("¿Esta seguro que quiere dar de baja por vida util a la aeronave?", "Atención",MessageBoxButtons.YesNo);
                    if (msg == DialogResult.Yes)
                    {
                        if (new Viaje().obtenerViajesVendidosAFuturo(aeronaveSeleccionada.idAeronave, ConfiguracionGlobal.FechaSistema).Rows.Count > 0)
                        {
                            frmCancelarOAero fca = new frmCancelarOAero(aeronaveSeleccionada, ConfiguracionGlobal.FechaSistema, DateTime.MinValue);
                            fca.ShowDialog();
                            if (fca.solucionado)
                            {
                                aeronaveSeleccionada.bajaPorVidaUtil(aeronaveSeleccionada.idAeronave, ConfiguracionGlobal.FechaSistema);
                                MessageBox.Show("La aeronave ha sido dada de baja por vida util.", "Atención");
                                actualizar(new Aeronave().obtenerAeronavesDGV());
                            }
                        }
                        else
                        {
                            aeronaveSeleccionada.bajaPorVidaUtil(aeronaveSeleccionada.idAeronave, ConfiguracionGlobal.FechaSistema);
                            MessageBox.Show("La aeronave ha sido dada de baja por vida util.", "Atención");
                            actualizar(new Aeronave().obtenerAeronavesDGV());
                        }
                    }
                }
            }
        }
예제 #2
0
 private void btnAgregar_Click(object sender, EventArgs e)
 {
     frmAeronave fa = new frmAeronave(null);
     fa.ShowDialog();
     actualizar(new Aeronave().obtenerAeronavesDGV());
 }
        private void btnReemplazar_Click(object sender, EventArgs e)
        {
            if (!bajaUtil)
            {
                Aeronave reemplazo = new Aeronave().obtenerAeronaveReemplazoFueraServicio(aero.idAeronave, baja, reinicio);

                if (reemplazo != null)
                {
                    var rsp = MessageBox.Show("¿Está seguro que quiere reemplazar todos los pasajes y encomiendas vendidos?", "Atención", MessageBoxButtons.YesNo);
                    if (rsp == DialogResult.Yes)
                    {
                        aero.reemplazarViajesPorFueraServicio(aero.idAeronave, reemplazo.idAeronave, baja, reinicio);

                        MessageBox.Show("Los pasajes y encomiendas afectados han sido reemplazados.", "Atención");
                        solucionado = true;
                        Close();
                    }
                }
                else
                {
                    MessageBox.Show("No hay ninguna aeronave disponible para reemplazar, deberá ingresar una nueva.", "Atención");
                    frmAeronave fr = new frmAeronave(aero, true);
                    fr.ShowDialog();
                    if (fr.terminado)
                    {
                        Aeronave nuevaAeroReemplazo = fr.aeronaveReemplazo;
                        aero.reemplazarViajesPorFueraServicio(aero.idAeronave, nuevaAeroReemplazo.idAeronave, baja, reinicio);
                        MessageBox.Show("Los pasajes y encomiendas afectados han sido reemplazados.", "Atención");
                        solucionado = true;
                        Close();
                    }
                }
            }
            else
            {
                Aeronave reemplazo = new Aeronave().obtenerAeronaveReemplazoBajaVidaUtil(aero.idAeronave, baja);
                if (reemplazo != null)
                {
                    var rsp = MessageBox.Show("¿Está seguro que quiere reemplazar todos los pasajes y encomiendas vendidos?", "Atención", MessageBoxButtons.YesNo);
                    if (rsp == DialogResult.Yes)
                    {
                        aero.reemplazarViajesPorBaja(aero.idAeronave, reemplazo.idAeronave, baja);

                        MessageBox.Show("Los pasajes y encomiendas afectados han sido reemplazados.", "Atención");
                        solucionado = true;
                        Close();
                    }
                }
                else
                {
                    MessageBox.Show("No hay ninguna aeronave disponible para reemplazar, deberá ingresar una nueva.", "Atención");
                    frmAeronave fr = new frmAeronave(aero, true);
                    fr.ShowDialog();
                    if (fr.terminado)
                    {
                        Aeronave nuevaAeroReemplazo = fr.aeronaveReemplazo;
                        aero.reemplazarViajesPorBaja(aero.idAeronave, nuevaAeroReemplazo.idAeronave, baja);
                        MessageBox.Show("Los pasajes y encomiendas afectados han sido reemplazados.", "Atención");
                        solucionado = true;
                        Close();
                    }
                }
            }
        }