Esempio n. 1
0
        private void button1_Click(object sender, EventArgs e)
        {
            var    contex  = new AvioaneDataContext();
            string optiuni = "";
            var    calator = (from c in contex.Calatoris
                              where c.ID_Calator.Equals(this.ClientId)
                              select c).First();

            calator.Adresa          = this.textBox1.Text;
            calator.Telefon         = this.textBox2.Text;
            calator.Detalii_Buletin = this.textBox3.Text;
            var bilete = from c in contex.Biletes
                         where c.ID_Calator.Equals(this.ClientId)
                         select c;

            foreach (var item in bilete)
            {
                item.Checkin = 1;
                foreach (var itemChecked in checkedListBox1.CheckedItems)
                {
                    optiuni += itemChecked.ToString();
                    optiuni += " ";
                }
                item.Optiuni = optiuni;
                var id_avion = (from c in contex.Biletes
                                where c.ID_Bilet.Equals(item.ID_Bilet)
                                select c.ID_Avion).First();
                item.Loc = get_loc(Convert.ToInt32(id_avion), item.Data.ToString());
                contex.SubmitChanges();
            }
            this.Close();
        }
Esempio n. 2
0
        private void button1_Click(object sender, EventArgs e)
        {
            Utility.Adauga_Bilete(grafF2.StatiiFinale, Data, this.textBox1.Text, this.textBox3.Text, this.textBox2.Text);
            var contex = new AvioaneDataContext();
            var bilete = from c in contex.Calatoris
                         join v in contex.Biletes on c.ID_Calator equals v.ID_Calator
                         where c.CNP.Equals(this.textBox2.Text)
                         select v;
            int i = 0;

            foreach (var item in bilete)
            {
                item.Pret = preturi.ElementAt(i);
                item.Loc  = 0;
                contex.SubmitChanges();
                i++;
            }
            this.Close();
        }
Esempio n. 3
0
        public static void Adauga_Bilete(List <Tuple <int, int, int, TimeSpan> > statii, string data, string NumeClient, string Prenume, string CNPclient)
        {
            statii.Reverse();
            var context = new AvioaneDataContext();
            int OkBilet = 1;

            for (int j = 0; j < statii.Count; j++)
            {
                if (Verif_data_reciclare(data, statii.ElementAt(j).Item3) == 0)
                {
                    OkBilet = 0;
                    break;
                }
            }

            if (OkBilet == 1)
            {
                //fac un client nou cu numele si prenumele
                //daca acesta nu si-a cumparad deja bilete pentru o a alta data
                var Cnp_De_Cautat = from c in context.Calatoris
                                    where c.CNP.Equals(CNPclient)
                                    select c.CNP;
                if (Cnp_De_Cautat.ToList().Count == 0)
                {
                    var client1 = new Calatori
                    {
                        Nume    = NumeClient,
                        Prenume = Prenume,
                        CNP     = CNPclient
                    };
                    context.Calatoris.InsertOnSubmit(client1);
                    context.SubmitChanges();
                }
                var IDulCalatorIntrodus = from c in context.Calatoris
                                          where c.CNP.Equals(CNPclient)
                                          select c.ID_Calator;
                using (var scope = new TransactionScope())
                {
                    try
                    {
                        int i   = 0;
                        int sc1 = 0;
                        int sc2 = 0;
                        while (i < statii.Count - 1)
                        {
                            if (statii.ElementAt(i).Item3 != statii.ElementAt(i + 1).Item3&&i != 0)
                            {
                                sc2 = i;
                                //fac bilet
                                var bilet1 = new Bilete
                                {
                                    ID_Avion      = statii.ElementAt(sc2).Item3,
                                    Data          = Convert.ToDateTime(data),
                                    Cod           = Utility.GetRandomNumber(),
                                    Destinatie_1  = Utility.GetStatieName(statii.ElementAt(sc1).Item1),
                                    Destinatie_2  = Utility.GetStatieName(statii.ElementAt(sc2).Item1),
                                    Ora_Decolare  = statii.ElementAt(sc1).Item4,
                                    Ora_Aterizare = statii.ElementAt(sc2).Item4,
                                    ID_Calator    = Convert.ToInt32(IDulCalatorIntrodus.First())
                                };
                                context.Biletes.InsertOnSubmit(bilet1);
                                sc1 = sc2;
                            }

                            if (i == statii.Count - 2)
                            { //fac bilet
                                var bilet1 = new Bilete
                                {
                                    ID_Avion      = statii.ElementAt(i + 1).Item3,
                                    Data          = Convert.ToDateTime(data),
                                    Cod           = Utility.GetRandomNumber(),
                                    Destinatie_1  = Utility.GetStatieName(statii.ElementAt(sc1).Item1),
                                    Destinatie_2  = Utility.GetStatieName(statii.ElementAt(i + 1).Item1),
                                    Ora_Decolare  = statii.ElementAt(sc1).Item4,
                                    Ora_Aterizare = statii.ElementAt(i + 1).Item4,
                                    ID_Calator    = Convert.ToInt32(IDulCalatorIntrodus.First())
                                };
                                context.Biletes.InsertOnSubmit(bilet1);
                                //context.SubmitChanges();
                            }
                            i++;
                        }
                        context.SubmitChanges();
                        scope.Complete();
                    }
                    catch
                    {
                        scope.Dispose();
                        var client = from c in context.Calatoris
                                     where c.CNP.Equals(CNPclient)
                                     select c;
                        context.Calatoris.DeleteOnSubmit(client.First());
                        context.SubmitChanges();
                    }
                }
            }

            statii.Reverse();
            //daca a m ok la bilete fac un client cu numele si prenumele
            //asignez la bilete clientul acela
            //dau submit
            // altfel dau rollbak
        }