예제 #1
0
        public void fillInputs()
        {
            DbComunicator db = new DbComunicator();
            if (dniComboBox.SelectedValue != null)
            {
                db.EjecutarQuery("SELECT Cli_Cod, Cli_Nombre, Cli_Direccion, Cli_Tel, Cli_Mail, Cli_Fecha_Nacimiento FROM TS.Cliente WHERE Cli_Cod = '" + dniComboBox.SelectedValue + "'");
                db.getLector().Read();
                fullNameTextBox.Text = db.getLector()["Cli_Nombre"].ToString();
                addressTextBox.Text = db.getLector()["Cli_Direccion"].ToString();
                phoneTextBox.Text = db.getLector()["Cli_Tel"].ToString();
                bornDateTimePicker.Value = Convert.ToDateTime(db.getLector()["Cli_Fecha_Nacimiento"].ToString());
                mailTextBox.Text = db.getLector()["Cli_Mail"].ToString();
                cliCod = db.getLector()["Cli_Cod"].ToString();
                editClientButton.Enabled = true;
                this.foundCliCod(this.cliCod);
            }
            else
            {
                editClientButton.Enabled = false;
                fullNameTextBox.Text = "";
                addressTextBox.Text = "";
                phoneTextBox.Text = "";
                mailTextBox.Text = "";
                this.notFoundCliCod();
            }

            db.CerrarConexion();
        }
예제 #2
0
 private void acceptButton_Click(object sender, EventArgs e)
 {
     if (String.IsNullOrEmpty(kgsTextBox.Text)) {
         MessageBox.Show("Debe ingresar un peso en la casilla Kgs.");
     }
     else if (Convert.ToInt16(kgsTextBox.Text) <= 0) {
         MessageBox.Show("El kg de la encomienda debe ser más de 0.");
     }
     else if (Convert.ToInt16(kgsTextBox.Text) > maxKgs)
     {
         MessageBox.Show("No puede superar más de los " + maxKgs.ToString() + " kilos");
     }
     else
     {
         string cliDni = "";
         DbComunicator db = new DbComunicator();
         db.EjecutarQuery("SELECT Cli_DNI FROM TS.Cliente WHERE Cli_Cod = " + this.cliCod);
         db.getLector().Read();
         cliDni = db.getLector()["Cli_DNI"].ToString();
         db.CerrarConexion();
         this.encomiendaGridView.Rows.Insert(0, this.cliCod, cliDni, fullNameTextBox.Text, addressTextBox.Text, kgsTextBox.Text, precioTextBox.Text);
         this.Close();
     }
 }
예제 #3
0
 private void RemplazoDeAeronaveDesdeHasta(string aeronum, string fecha1, string fecha2)
 {
     DialogResult dialogResult = MessageBox.Show("Esta aeronave tiene viajes pendientes de realizar ¿quiere buscar un remplazo de la aeronave?", "Confirmación", MessageBoxButtons.YesNo);
     if (dialogResult == DialogResult.Yes)
     {
         db = new DbComunicator();
         db.EjecutarQuery("SELECT TS.fnAeronavesParaRemplazarA(" + aeronum + ") as Cantidad");
         db.getLector().Read();
         if (Convert.ToInt16(db.getLector()["Cantidad"].ToString()) > 0) RemplazarEnViajesDesdeHasta(aeronum, fecha1, fecha2);
         else
         {
             MessageBox.Show("No existe aeronave que pueda remplazar la aeronave actual");
             AgregarAeronaveRemplazo form = new AgregarAeronaveRemplazo(DGV_aeronave.SelectedRows[0]);
             form.ShowDialog();
             this.RemplazoDeAeronaveDesdeHasta(aeronum, fecha1, fecha2);
         }
     }
     if (dialogResult == DialogResult.No){
         DialogResult dialogResult2 = MessageBox.Show("¿Desea cancelar los vuelos pendientes?", "Confirmación", MessageBoxButtons.YesNo);
         if (dialogResult2 == DialogResult.Yes){
             DbComunicator db5 = new DbComunicator();
             SqlCommand spCancelacionViajes = db5.GetStoreProcedure("TS.spCancelacionViajesDesdeHasta");
             spCancelacionViajes.Parameters.Add(new SqlParameter("@Aero", aeronum));
             spCancelacionViajes.Parameters.Add(new SqlParameter("@Desde", Convert.ToDateTime(fecha1)));
             spCancelacionViajes.Parameters.Add(new SqlParameter("@Hasta", Convert.ToDateTime(fecha2)));
             spCancelacionViajes.Parameters.Add(new SqlParameter("@HOY", Convert.ToDateTime(AerolineaFrba.Properties.Settings.Default.FechaSistema)));
             spCancelacionViajes.ExecuteNonQuery();
             MessageBox.Show("Ya se cancelaron los viajes pendientes de la aeronave: " + aeronum);
         }
     }
 }
예제 #4
0
 private void RemplazarEnViajesDesdeHasta(string aeronum, string fecha1, string fecha2)
 {
     db = new DbComunicator();
     db.EjecutarQuery("SELECT Viaj_Cod as Viaje FROM TS.Viaje WHERE Aero_Num=" + aeronum + " AND DATEDIFF(minute, convert(datetime, '" + fecha1 + "'), Fecha_Salida)>0 AND DATEDIFF(minute, convert(datetime, '" + fecha2 + "'), Fecha_Salida)<0 AND Fecha_Llegada IS NULL");
     while (db.getLector().Read())
         this.RemplazarEnViajeDesdeHasta(aeronum, fecha1, fecha2, db.getLector()["Viaje"].ToString());
     db.CerrarConexion();
 }
예제 #5
0
 private void RemplazarEnViajeDesdeHasta(string aeronum, string fecha1, string fecha2, string viaje)
 {
     DbComunicator db2 = new DbComunicator();
     db2.EjecutarQuery("SELECT TS.fnAeronavesParaRemplazarAEn(" + aeronum + "," + viaje + ") as Cantidad");
     db2.getLector().Read();
     if (Convert.ToInt16(db2.getLector()["Cantidad"].ToString()) > 0)
     {
         DbComunicator db3 = new DbComunicator();
         db3.EjecutarQuery("SELECT TOP 1 A2.Aero_Num as AeroFutura FROM TS.Aeronave AS A, TS.Aeronave AS A2 WHERE A.Aero_Num=" + aeronum.ToString() + " AND A.Aero_Num!=A2.Aero_Num AND A2.Aero_Fabricante=A.Aero_Fabricante AND A.Aero_Servicio=A2.Aero_Servicio AND A2.Aero_Baja_Fuera_De_Servicio=0 and A2.Aero_Baja_Vida_Util=0 AND A2.Aero_Borrado=0");
         db3.getLector().Read();
         string aerofutura = db3.getLector()["AeroFutura"].ToString();
         DbComunicator db4 = new DbComunicator();
         SqlCommand spRemplazarAeroEn = db4.GetStoreProcedure("TS.spRemplazarAeroEnDesdeHasta");
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@Aero", aeronum));
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@Desde", Convert.ToDateTime(fecha1)));
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@Hasta", Convert.ToDateTime(fecha2)));
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@AeroFutura", aerofutura));
         spRemplazarAeroEn.ExecuteNonQuery();
         MessageBox.Show("Ya se remplazo la aeronave " + aeronum + " por la aeronave " + aerofutura + " en el viaje " + viaje);
     }
     else
     {
         MessageBox.Show("No existe aeronave que pueda remplazar la aeronave actual en el viaje: " + viaje);
         AgregarAeronaveRemplazo form = new AgregarAeronaveRemplazo(DGV_aeronave.SelectedRows[0]);
         form.ShowDialog();
         this.RemplazarEnViajeDesdeHasta(aeronum, fecha1, fecha2, viaje);
     }
 }
예제 #6
0
 private void CambiosAeronaveDesdeHasta(DateTime desde, DateTime hasta)
 {
     DbComunicator db = new DbComunicator();
     string fecha1 = Convert.ToString(desde);
     string fecha2 = Convert.ToString(hasta);
     string aeronum = DGV_aeronave.SelectedRows[0].Cells["Numero"].Value.ToString();
     db.EjecutarQuery("SELECT TS.fnViajesPendientesDesdeHasta(" + aeronum + ", convert(datetime, '" + fecha1 + "'),convert(datetime, '" + fecha2 + "')) as Cantidad");
     db.getLector().Read();
     if (Convert.ToInt16(db.getLector()["Cantidad"].ToString()) > 0) this.RemplazoDeAeronaveDesdeHasta(aeronum, fecha1, fecha2);
     else MessageBox.Show("Esta aeronave no tiene viajes en el futuro");
 }
예제 #7
0
 private void CambiosAeronave(object sender, EventArgs e)
 {
     DbComunicator db = new DbComunicator();
     string fecha = Convert.ToString(AerolineaFrba.Properties.Settings.Default.FechaSistema);
     string aeronum = DGV_aeronave.SelectedRows[0].Cells["Numero"].Value.ToString();
     db.EjecutarQuery("SELECT TS.fnViajesPendientes(" + aeronum + ",convert(datetime, '" + fecha + "')) as Cantidad");
     db.getLector().Read();
     if (Convert.ToInt16(db.getLector()["Cantidad"].ToString()) > 0) this.RemplazoDeAeronave(aeronum, fecha);
     else MessageBox.Show("Esta aeronave no tiene viajes en el futuro");
 }
예제 #8
0
        private void fillCardInputs()
        {
            if (Convert.ToInt64(cardNumberTextBox.SelectedValue) != -1) {
                DbComunicator db = new DbComunicator();
                db.EjecutarQuery("SELECT Tar_Numero, Tar_Fecha_Vencimiento, Tar_Codigo_Seguridad, T.TipoTar_Cod, TipoTar_Nombre FROM TS.Tarjeta as T, TS.Tipo_Tarjeta as TT WHERE T.TipoTar_Cod = TT.TipoTar_cod AND Cli_Cod = " + this.cliCod + " AND Tar_Numero = " + cardNumberTextBox.SelectedValue);
                db.getLector().Read();
                cardNumberTextBox.Text = db.getLector()["Tar_Numero"].ToString();
                cardCodeTextBox.Text = db.getLector()["Tar_Codigo_Seguridad"].ToString();
                cardDateTextBox.Text = db.getLector()["Tar_Fecha_Vencimiento"].ToString();
                cardEmitterTextBox.Text = db.getLector()["TipoTar_Nombre"].ToString();
                editCreditCardButton.Enabled = true;
                acceptButton.Enabled = true;

                cardNumberDuesComboBox.Enabled = true;
                string tipoTarCod = db.getLector()["TipoTar_Cod"].ToString();
                this.cardTypeCode = Convert.ToInt32(tipoTarCod);
                db = new DbComunicator();
                db.EjecutarQuery("SELECT TipoTar_Cuotas FROM TS.Tipo_Tarjeta WHERE TipoTar_Cod = " + tipoTarCod);
                db.getLector().Read();
                Dictionary<object, object> duesDictionary = new Dictionary<object, object>();

                for (int i = 1; Convert.ToInt16(db.getLector()["TipoTar_Cuotas"]) >= i; i++)
                {
                    duesDictionary.Add(i, i);
                }

                cardNumberDuesComboBox.DataSource = new BindingSource(duesDictionary, null);
                cardNumberDuesComboBox.DisplayMember = "Value";
                cardNumberDuesComboBox.ValueMember = "Key";
                db.CerrarConexion();
                this.foundCard();
                acceptButton.Enabled = true;
            }
        }
예제 #9
0
        private void acceptButton_Click(object sender, EventArgs e)
        {
            bool clienteDuplicado = false;
            DbComunicator db = new DbComunicator();

            foreach (DataGridViewRow row in pasajeGridView.Rows)
            {
                clienteDuplicado = clienteDuplicado || (row.Cells[0].Value != null && (row.Cells[0].Value.ToString() == this.cliCod));
            }

            db.EjecutarQuery("SELECT COUNT(*) Cantidad FROM TS.Pasaje as P WHERE P.Can_Cod IS NULL AND P.Viaj_Cod = "+ viajCod + " AND P.Cli_Cod = " + this.cliCod);
            db.getLector().Read();

            clienteDuplicado = clienteDuplicado || (Convert.ToInt32(db.getLector()["Cantidad"]) >= 1);

            if (clienteDuplicado)
            {
                MessageBox.Show("Ya se ha sacado un pasaje para este cliente en este vuelo.");
            }
            else {
                db = new DbComunicator();
                SqlCommand storeProcedure = db.GetStoreProcedure("TS.fnValidarViajeCliente");
                SqlParameter returnParameter = storeProcedure.Parameters.Add("RetVal", SqlDbType.Int);
                returnParameter.Direction = ParameterDirection.ReturnValue;
                storeProcedure.Parameters.Add(new SqlParameter("@Cli_Cod", this.cliCod));
                storeProcedure.Parameters.Add(new SqlParameter("@Viaj_Cod", this.viajCod));
                storeProcedure.ExecuteNonQuery();
                db.CerrarConexion();

                if ((int)returnParameter.Value == 1)
                {
                    string cliDni = "";
                    DbComunicator db1 = new DbComunicator();
                    db1.EjecutarQuery("SELECT Cli_DNI FROM TS.Cliente WHERE Cli_Cod = " + this.cliCod);
                    db1.getLector().Read();
                    cliDni = db1.getLector()["Cli_DNI"].ToString();
                    this.pasajeGridView.Rows.Insert(0, this.cliCod, cliDni, fullNameTextBox.Text, addressTextBox.Text, butacaComboBox.SelectedValue, precioTextBox.Text);
                    this.butacaReservada = Convert.ToInt32(butacaComboBox.SelectedValue);
                    db1.CerrarConexion();
                    this.Close();
                }
                else {
                    MessageBox.Show("El cliente ya tiene un pasaje para un vuelo que sale el mismo dia que el viaje selccionado.");
                }

            }
        }
예제 #10
0
        private void fillRows()
        {
            acceptButton.Enabled = false;
            if (!String.IsNullOrEmpty(pnrTextBox.Text)) {
                DbComunicator db = new DbComunicator();
                db.EjecutarQuery("SELECT COUNT(*) Cantidad FROM TS.Encomienda WHERE Com_PNR = " + pnrTextBox.Text);
                db.getLector().Read();

                if (Convert.ToInt16(db.getLector()["Cantidad"].ToString()) > 0)
                {
                    string queryEncomieda = "SELECT E.Enc_Cod, C.Com_Fecha, E.Enc_Kg";
                    queryEncomieda += " FROM TS.Encomienda AS E, TS.Compra AS C, TS.Viaje AS V";
                    queryEncomieda += " WHERE E.Com_PNR = " + pnrTextBox.Text + " AND E.Com_PNR = C.Com_PNR AND E.Can_Cod IS NULL AND V.Viaj_Cod = E.Viaj_Cod AND V.Fecha_Llegada IS NULL";
                    encomiendaGridView.DataSource = db.GetDataAdapter(queryEncomieda).Tables[0];
                    encomiendaGridView.ClearSelection();
                    encomiendaGroupBox.Enabled = true;
                }
                else
                {
                    DbComunicator dbC = new DbComunicator();
                    string queryEncomieda = "SELECT E.Enc_Cod, NULL Com_Fecha, E.Enc_Kg";
                    queryEncomieda += " FROM TS.Encomienda AS E, TS.Compra AS C";
                    queryEncomieda += " WHERE E.Enc_Cod= -1" ;
                    encomiendaGridView.DataSource = dbC.GetDataAdapter(queryEncomieda).Tables[0];
                    encomiendaGroupBox.Enabled = false;
                }

                db = new DbComunicator();
                db.EjecutarQuery("SELECT COUNT(*) Cantidad FROM TS.Pasaje WHERE Com_PNR = " + pnrTextBox.Text);
                db.getLector().Read();

                if (Convert.ToInt16(db.getLector()["Cantidad"].ToString()) > 0)
                {
                    string queryPasajes = "SELECT P.Pas_Cod, CM.Com_Fecha, P.Pas_Precio, C.Cli_Nombre";
                    queryPasajes += " FROM TS.Pasaje as P, TS.Cliente AS C, TS.Compra AS CM, TS.Viaje AS V";
                    queryPasajes += " WHERE P.Cli_Cod = C.Cli_Cod AND P.Com_PNR = " + pnrTextBox.Text + " AND P.Can_Cod IS NULL AND CM.Com_PNR = P.Com_PNR AND V.Viaj_Cod = P.Viaj_Cod AND V.Fecha_Llegada IS NULL";
                    pasajeGridView.DataSource = db.GetDataAdapter(queryPasajes).Tables[0];
                    pasajeGridView.ClearSelection();
                    pasajesGroupBox.Enabled = true;
                }
                else
                {
                    DbComunicator dbP = new DbComunicator();
                    string queryPasajes = "SELECT P.Pas_Cod, NULL Com_Fecha, P.Pas_Precio, '' Cli_Nombre";
                    queryPasajes += " FROM TS.Pasaje as P";
                    queryPasajes += " WHERE P.Pas_Cod = -1";
                    pasajeGridView.DataSource = dbP.GetDataAdapter(queryPasajes).Tables[0];
                    pasajesGroupBox.Enabled = false;
                }

                db.CerrarConexion();
            }
        }
예제 #11
0
 private void editClientButton_Click(object sender, EventArgs e)
 {
     string cliDni = "";
     DbComunicator db1 = new DbComunicator();
     db1.EjecutarQuery("SELECT Cli_DNI FROM TS.Cliente WHERE Cli_Cod = " + this.cliCod);
     db1.getLector().Read();
     cliDni = db1.getLector()["Cli_DNI"].ToString();
     db1.CerrarConexion();
     ClienteEditarForm ce = new ClienteEditarForm(cliCod, cliDni ,fullNameTextBox.Text, addressTextBox.Text, phoneTextBox.Text, mailTextBox.Text, bornDateTimePicker.Value);
     ce.ShowDialog();
     DbComunicator db = new DbComunicator();
     string queryClientes = "SELECT Cli_DNI + ' Nombre: ' + Cli_Nombre Cli_Detalle, Cli_Cod FROM TS.Cliente ";
     dniComboBox.DataSource = new BindingSource(db.GetQueryDictionary(queryClientes, "Cli_Detalle", "Cli_Cod"), null);
     db.CerrarConexion();
     fillInputs();
 }