public List <BookTicket> GetTicket(int ticketId)
        {
            string             query = "SELECT * from BookTicket WHERE BTId  = " + ticketId + "";
            BookTicket         b     = null;
            List <BookTicket>  blist = new List <BookTicket>();
            DatabaseConnection dcc   = new DatabaseConnection();

            dcc.ConnectWithDB();
            SqlDataReader sdr = dcc.GetData(query);

            if (sdr.Read())
            {
                b = new BookTicket();
                b.BookTicketId      = Convert.ToInt32(sdr["BTId"]);
                b.PassengerId       = Convert.ToInt32(sdr["PassengerId"]);
                b.FlightId          = Convert.ToInt32(sdr["FlightId"]);
                b.PassengerUsername = sdr["PassengerUsername"].ToString();
                b.PassengerFullName = sdr["PassengerFullname"].ToString();
                b.Airplane          = sdr["Airplane"].ToString();
                b.Source            = sdr["Source"].ToString();
                b.Destination       = sdr["Destination"].ToString();
                b.Departure         = sdr["Departure"].ToString();
                b.Seats             = sdr["Seats"].ToString();
                b.Cost = Convert.ToInt32(sdr["Cost"]);

                blist.Add(b);
            }
            dcc.CloseConnection();
            return(blist);
        }
 public bool Insert(BookTicket bTicket)
 {
     try
     {
         string             query = "INSERT into BookTicket VALUES ( " + bTicket.BookTicketId + ", " + bTicket.PassengerId + ", " + bTicket.FlightId + " , '" + bTicket.PassengerFullName + "', '" + bTicket.PassengerUsername + "', '" + bTicket.Airplane + "', '" + bTicket.Source + "', '" + bTicket.Destination + "', '" + bTicket.Departure + "', " + bTicket.Cost + " , '" + bTicket.Seats + "')";
         DatabaseConnection dcc   = new DatabaseConnection();
         dcc.ConnectWithDB();
         int x = dcc.ExecuteSQL(query);
         dcc.CloseConnection();
         return(true);
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         return(false);
     }
 }
        private void loadBookedFilghts_Click(object sender, EventArgs e)
        {
            Repository.BookTicket bt     = new Repository.BookTicket();
            BookTicketRepository  btRepo = new BookTicketRepository();

            List <Repository.BookTicket> btList = btRepo.GetTicket(userId);

            Console.WriteLine(btList.Count);

            if (btList.Count == 0)
            {
                MessageBox.Show("You Have Not Booked Any Ticket. \nPlease Book a Ticket First.");
            }
            else
            {
                dataGridView2.DataSource = btList;
            }
        }
        private void submitBookTicketBtn_Click(object sender, EventArgs e)
        {
            Repository.BookTicket bt       = new Repository.BookTicket();
            BookTicketRepository  bookRepo = new BookTicketRepository();
            BookedSeatRepository  bsRepo   = new BookedSeatRepository();
            BookedSeats           bs       = new BookedSeats();

            bs.BookTicketId = Convert.ToInt32(ticketIdLabel.Text);
            bs.FlightId     = Convert.ToInt32(flightIdLabel.Text);
            bs.Seats        = seatLabel.Text;



            bt.FlightId     = Convert.ToInt32(flightIdLabel.Text);
            bt.PassengerId  = Convert.ToInt32(passengerIdLabel.Text);
            bt.BookTicketId = Convert.ToInt32(ticketIdLabel.Text);

            bt.PassengerUsername = usernameLabel.Text;
            bt.PassengerFullName = passengerFullNameLabel.Text;
            bt.Airplane          = airplaneLabel.Text;
            bt.Source            = sourceLabel.Text;
            bt.Destination       = destinationLabel.Text;
            bt.Departure         = departureLabel.Text;
            bt.Cost  = Convert.ToInt32(costLabel.Text);
            bt.Seats = seatLabel.Text;


            if (bookRepo.Insert(bt) && bsRepo.Insert(bs))
            {
                MessageBox.Show("Ticket Booked");
                this.bookTicketTabs.SelectTab(0);
                Clear();
            }
            else
            {
                MessageBox.Show("Error adding ticket");
            }
        }
        private void passengerSearchBtn_Click(object sender, EventArgs e)
        {
            try
            {
                if (passengerComboBox.SelectedItem.ToString().Equals("Flight"))
                {
                    string             text   = this.passengerSearchTextBox.Text;
                    string             query2 = "SELECT * FROM Flight WHERE FlightID = " + text + "";
                    string             query  = "SELECT * FROM Flight WHERE AirlineName LIKE '%" + text + "%' " + " OR Source LIKE '%" + text + "%' " + " OR Destination LIKE '%" + text + "%' " + " OR Cost LIKE '%" + text + "%' ";
                    DatabaseConnection dcc    = new DatabaseConnection();
                    dcc.ConnectWithDB();

                    Flight f;

                    float y;

                    try
                    {
                        y = Convert.ToInt32(this.passengerSearchTextBox.Text) / 2;
                        y = 1;
                    }
                    catch (Exception er) { y = -10; }

                    if (y + 1 >= 1)
                    {
                        SqlDataReader sdr2   = dcc.GetData(query2);
                        List <Flight> fList2 = new List <Flight>();
                        //id
                        if (sdr2.Read())
                        {
                            f             = new Flight();
                            f.FlightId    = Convert.ToInt32(sdr2["FlightID"]);
                            f.AirlineName = sdr2["AirlineName"].ToString();
                            f.Source      = sdr2["Source"].ToString();
                            f.Destination = sdr2["Destination"].ToString();

                            f.Departure = Convert.ToString(sdr2["Departure"]);
                            f.Cost      = Convert.ToInt32(sdr2["Cost"]);

                            fList2.Add(f);
                        }
                        this.dataGridView2.DataSource = fList2;
                    }
                    else
                    {
                        SqlDataReader sdr   = dcc.GetData(query);
                        List <Flight> fList = new List <Flight>();
                        if (sdr.Read())
                        {
                            f             = new Flight();
                            f.FlightId    = Convert.ToInt32(sdr["FlightID"]);
                            f.AirlineName = sdr["AirlineName"].ToString();
                            f.Source      = sdr["Source"].ToString();
                            f.Destination = sdr["Destination"].ToString();

                            f.Departure = Convert.ToString(sdr["Departure"]);
                            f.Cost      = Convert.ToInt32(sdr["Cost"]);

                            fList.Add(f);
                            //Console.WriteLine("s");
                        }

                        this.dataGridView2.DataSource = fList;
                    }
                }
                else if (passengerComboBox.SelectedItem.ToString().Equals("Airplane"))
                {
                    string             text   = this.passengerSearchTextBox.Text;
                    string             query  = "SELECT * FROM Airplane WHERE  Name LIKE '%" + text + "%' ";
                    string             query2 = "SELECT * FROM Airplane WHERE AiplaneId = " + text + "";
                    DatabaseConnection dcc    = new DatabaseConnection();
                    dcc.ConnectWithDB();

                    Airplane air;

                    float y;

                    try
                    {
                        y = Convert.ToInt32(this.passengerSearchTextBox.Text) / 2;
                        y = 1;
                    }
                    catch (Exception er) { y = -10; }

                    if (y + 1 >= 1)
                    {
                        SqlDataReader   sdr2    = dcc.GetData(query2);
                        List <Airplane> airList = new List <Airplane>();
                        //id
                        if (sdr2.Read())
                        {
                            air              = new Airplane();
                            air.AirplaneId   = Convert.ToInt32(sdr2["AiplaneId"]);
                            air.AirplaneName = sdr2["Name"].ToString();
                            air.Capacity     = Convert.ToInt32(sdr2["Capacity"]);

                            airList.Add(air);
                        }
                    }
                    else
                    {
                        SqlDataReader   sdr     = dcc.GetData(query);
                        List <Airplane> airList = new List <Airplane>();
                        if (sdr.Read())
                        {
                            air              = new Airplane();
                            air.AirplaneId   = Convert.ToInt32(sdr["AiplaneId"]);
                            air.AirplaneName = sdr["Name"].ToString();
                            air.Capacity     = Convert.ToInt32(sdr["Capacity"]);

                            airList.Add(air);
                        }
                        this.dataGridView2.DataSource = airList;
                    }
                }
                else if (passengerComboBox.SelectedItem.ToString().Equals("Airport"))
                {
                    string             text   = this.passengerSearchTextBox.Text;
                    string             query  = "SELECT * FROM Airport WHERE AirportName LIKE '%" + text + "%' OR City LIKE '%" + text + "%'";
                    string             query2 = "SELECT * FROM Airport WHERE AirportId = " + text + "";
                    DatabaseConnection dcc    = new DatabaseConnection();
                    dcc.ConnectWithDB();

                    Airport air1;


                    float y;

                    try
                    {
                        y = Convert.ToInt32(this.passengerSearchTextBox.Text) / 2;
                        y = 1;
                    }
                    catch (Exception er) { y = -10; }

                    if (y + 1 >= 1)
                    {
                        SqlDataReader  sdr2     = dcc.GetData(query2);
                        List <Airport> air1List = new List <Airport>();
                        //id
                        if (sdr2.Read())
                        {
                            air1 = new Airport();

                            air1.AirportId   = Convert.ToInt32(sdr2["AirportID"]);
                            air1.AirportName = sdr2["AirportName"].ToString();
                            air1.City        = sdr2["City"].ToString();

                            air1List.Add(air1);
                        }

                        this.dataGridView2.DataSource = air1List;
                    }
                    else
                    {
                        SqlDataReader  sdr      = dcc.GetData(query);
                        List <Airport> air1List = new List <Airport>();
                        if (sdr.Read())
                        {
                            air1 = new Airport();

                            air1.AirportId   = Convert.ToInt32(sdr["AirportID"]);
                            air1.AirportName = sdr["AirportName"].ToString();
                            air1.City        = sdr["City"].ToString();

                            air1List.Add(air1);
                        }
                        this.dataGridView2.DataSource = air1List;
                    }
                }
                else if (passengerComboBox.SelectedItem.ToString().Equals("Booked Flight"))
                {
                    string             text   = this.passengerSearchTextBox.Text;
                    string             query  = "SELECT * FROM BookTicket WHERE PassengerUsername LIKE '%" + text + "%' OR Seats LIKE '%" + text + "%' OR PassengerFullName LIKE '%" + text + "%' ";
                    string             query2 = "SELECT * FROM BookTicket WHERE BookTicketId = " + userId + " OR PassengerId LIKE " + text + " OR FlightId LIKE " + text + "";
                    DatabaseConnection dcc    = new DatabaseConnection();
                    dcc.ConnectWithDB();

                    Repository.BookTicket b;


                    float y;

                    try
                    {
                        y = Convert.ToInt32(this.passengerSearchTextBox.Text) / 2;
                        y = 1;
                    }
                    catch (Exception er) { y = -10; }


                    if (y + 1 >= 1)
                    {
                        SqlDataReader sdr2 = dcc.GetData(query2);
                        List <Repository.BookTicket> bList = new List <Repository.BookTicket>();
                        //id
                        if (sdr2.Read())
                        {
                            b = new Repository.BookTicket();


                            b.BookTicketId      = Convert.ToInt32(sdr2["BookTicketId"]);
                            b.PassengerId       = Convert.ToInt32(sdr2["PassengerId"]);
                            b.FlightId          = Convert.ToInt32(sdr2["FlightId"]);
                            b.PassengerUsername = sdr2["PassengerUsername"].ToString();
                            b.PassengerUsername = sdr2["PassengerFullName"].ToString();
                            b.Airplane          = sdr2["Airplane"].ToString();
                            b.Source            = sdr2["Source"].ToString();
                            b.Destination       = sdr2["Destination"].ToString();
                            b.Departure         = sdr2["Departure"].ToString();
                            b.Seats             = sdr2["Seats"].ToString();
                            b.Cost = Convert.ToInt32(sdr2["Cost"]);

                            bList.Add(b);
                        }
                        this.dataGridView2.DataSource = bList;
                    }
                    else
                    {
                        SqlDataReader sdr = dcc.GetData(query);
                        List <Repository.BookTicket> bList = new List <Repository.BookTicket>();
                        if (sdr.Read())
                        {
                            b = new Repository.BookTicket();


                            b.BookTicketId      = Convert.ToInt32(sdr["BookTicketId"]);
                            b.PassengerId       = Convert.ToInt32(sdr["PassengerId"]);
                            b.FlightId          = Convert.ToInt32(sdr["FlightId"]);
                            b.PassengerUsername = sdr["PassengerUsername"].ToString();
                            b.PassengerUsername = sdr["PassengerFullName"].ToString();
                            b.Airplane          = sdr["Airplane"].ToString();
                            b.Source            = sdr["Source"].ToString();
                            b.Destination       = sdr["Destination"].ToString();
                            b.Departure         = sdr["Departure"].ToString();
                            b.Seats             = sdr["Seats"].ToString();
                            b.Cost = Convert.ToInt32(sdr["Cost"]);

                            bList.Add(b);
                        }
                        this.dataGridView2.DataSource = bList;
                    }
                }
                else
                {
                    MessageBox.Show("Search error");
                }
            }catch (Exception er)
            {
                MessageBox.Show("Nothing to search. Write something in Search Box");
            }
        }