コード例 #1
0
ファイル: FormTemplate.cs プロジェクト: Gektorgit/Bus-Station
        private void EditBus()
        {
            listSeats.Clear();
            Buses                  bus           = binSourceBusStation.Current as Buses;
            BusRepository          busrep        = new BusRepository();
            List <TempFlightId>    listFlightId2 = new List <TempFlightId>();
            List <TempSeatId>      listSeatId    = new List <TempSeatId>();
            List <BusinessTickets> busTicketsB   = DeleteTicketsFlightsSeats(bus, ref listbusFlights, ref listSeats);

            busrep.Delete(bus);

            Buses newbus = new Buses();

            newbus.BusName     = bus.BusName;
            newbus.CountSeats  = bus.CountSeats;
            newbus.Information = bus.Information;
            busrep.Create(newbus);

            if (listbusFlights.Count > 0)
            {
                BusinessFlights           busFlight;
                BusinessFlightsRepository busFlightrep = new BusinessFlightsRepository();
                TempFlightId ekz;
                for (int i = 0; i < listbusFlights.Count; i++)
                {
                    busFlight = new BusinessFlights();
                    ekz       = new TempFlightId();
                    busFlight.FlightNumber  = listbusFlights[i].FlightNumber;
                    busFlight.CityIdStart   = listbusFlights[i].CityIdStart;
                    busFlight.CityIdEnd     = listbusFlights[i].CityIdEnd;
                    busFlight.DepartureDate = listbusFlights[i].DepartureDate;
                    busFlight.DepartureTime = listbusFlights[i].DepartureTime;
                    busFlight.ArrivalDate   = listbusFlights[i].ArrivalDate;
                    busFlight.ArrivaTime    = listbusFlights[i].ArrivaTime;
                    busFlight.BusId         = listbusFlights[i].BusId == bus.BusId ? newbus.BusId : listbusFlights[i].BusId;
                    busFlight.Price         = listbusFlights[i].Price;
                    busFlightrep.Create(busFlight);

                    FlightRepository newflight = new FlightRepository();
                    ekz.oldId = listbusFlights[i].FlightId;
                    ekz.newId = newflight.GetAll().Select(p => p.FlightId).Last();
                    listFlightId2.Add(ekz);
                }
            }


            SeatsRepository seatrep = new SeatsRepository();
            TempSeatId      ekzseat;

            for (int i = 0; i < newbus.CountSeats; i++)
            {
                Seats seat = new Seats();
                ekzseat         = new TempSeatId();
                seat.BusId      = newbus.BusId;
                seat.NumberSeat = i + 1;
                seatrep.Create(seat);

                SeatsRepository newSeat = new SeatsRepository();
                ekzseat.oldId = i < listSeats.Count ? listSeats[i].SeatId : 0;
                ekzseat.newId = newSeat.GetAll().Select(p => p.SeatId).Last();
                listSeatId.Add(ekzseat);
            }

            if (busTicketsB.Count > 0)
            {
                BusinessTickets           bustick;
                BusinessTicketsRepository bustickrep = new BusinessTicketsRepository();
                for (int i = 0; i < busTicketsB.Count; i++)
                {
                    bustick = new BusinessTickets();
                    for (int j = 0; j < listFlightId2.Count; j++)
                    {
                        if (busTicketsB[i].FlightId == listFlightId2[j].oldId)
                        {
                            bustick.FlightId = listFlightId2[j].newId;
                            break;
                        }
                    }
                    for (int k = 0; k < listSeatId.Count; k++)
                    {
                        if (busTicketsB[i].SeatId == listSeatId[k].oldId)
                        {
                            bustick.SeatId = listSeatId[k].newId;
                            break;
                        }
                    }
                    bustick.ReleaseDate = busTicketsB[i].ReleaseDate;
                    bustick.DiscountId  = busTicketsB[i].DiscountId;
                    bustick.Sold        = busTicketsB[i].Sold;
                    bustick.Reserve     = busTicketsB[i].Reserve;
                    bustick.Canceled    = busTicketsB[i].Canceled;

                    bustickrep.Create(bustick);
                }
            }

            MessageBox.Show("Bus Edit");
        }
コード例 #2
0
ファイル: FormTemplate.cs プロジェクト: Gektorgit/Bus-Station
        private void EditCity()
        {
            listbusFlights.Clear();
            Cities                 city         = binSourceBusStation.Current as Cities;
            CitiRepository         cityrep      = new CitiRepository();
            List <TempFlightId>    listFlightId = new List <TempFlightId>();
            List <BusinessTickets> busTicketsC  = DeleteTicketsANDFlights(city, ref listbusFlights);

            cityrep.Delete(city);

            Cities newcity = new Cities();

            newcity.CityName    = city.CityName;
            newcity.Information = city.Information;
            cityrep.Create(newcity);

            if (listbusFlights.Count > 0)
            {
                BusinessFlights           busFlight;
                BusinessFlightsRepository busFlightrep = new BusinessFlightsRepository();
                TempFlightId ekz;
                for (int i = 0; i < listbusFlights.Count; i++)
                {
                    busFlight = new BusinessFlights();
                    ekz       = new TempFlightId();
                    busFlight.FlightNumber  = listbusFlights[i].FlightNumber;
                    busFlight.CityIdStart   = listbusFlights[i].CityIdStart == city.CityId ? newcity.CityId : listbusFlights[i].CityIdStart;
                    busFlight.CityIdEnd     = listbusFlights[i].CityIdEnd == city.CityId ? newcity.CityId : listbusFlights[i].CityIdEnd;
                    busFlight.DepartureDate = listbusFlights[i].DepartureDate;
                    busFlight.DepartureTime = listbusFlights[i].DepartureTime;
                    busFlight.ArrivalDate   = listbusFlights[i].ArrivalDate;
                    busFlight.ArrivaTime    = listbusFlights[i].ArrivaTime;
                    busFlight.BusId         = listbusFlights[i].BusId;
                    busFlight.Price         = listbusFlights[i].Price;
                    busFlightrep.Create(busFlight);

                    FlightRepository newflight = new FlightRepository();
                    ekz.oldId = listbusFlights[i].FlightId;
                    ekz.newId = newflight.GetAll().Select(p => p.FlightId).Last();
                    listFlightId.Add(ekz);
                }
            }
            if (busTicketsC.Count > 0)
            {
                BusinessTickets           bustick;
                BusinessTicketsRepository bustickrep = new BusinessTicketsRepository();
                for (int i = 0; i < busTicketsC.Count; i++)
                {
                    bustick = new BusinessTickets();
                    for (int j = 0; j < listFlightId.Count; j++)
                    {
                        if (busTicketsC[i].FlightId == listFlightId[j].oldId)
                        {
                            bustick.FlightId = listFlightId[j].newId;
                            break;
                        }
                    }
                    bustick.ReleaseDate = busTicketsC[i].ReleaseDate;
                    bustick.SeatId      = busTicketsC[i].SeatId;
                    bustick.DiscountId  = busTicketsC[i].DiscountId;
                    bustick.Sold        = busTicketsC[i].Sold;
                    bustick.Reserve     = busTicketsC[i].Reserve;
                    bustick.Canceled    = busTicketsC[i].Canceled;

                    bustickrep.Create(bustick);
                }
            }

            MessageBox.Show("City Edit");
        }