Beispiel #1
0
        public void CheckQueryAircraftFlight()
        {
            var enviroment = GetEnviroment();

            enviroment.NewLoader.FirstLoad();
            var aircraftCore = new AircraftsCore(enviroment.Loader, enviroment.NewKeeper, enviroment.NewLoader);

            aircraftCore.LoadAllAircrafts();
            var itemsRelationsDataAccess = new ItemsRelationsDataAccess(enviroment);
            var componentCore            = new ComponentCore(enviroment, enviroment.Loader, enviroment.NewLoader, enviroment.NewKeeper, aircraftCore, itemsRelationsDataAccess);
            var aircraftFlightCore       = new AircraftFlightCore(enviroment, enviroment.Loader, enviroment.NewLoader, null, null, componentCore, null, aircraftCore);

            aircraftFlightCore.LoadAircraftFlights(2316);
            //aircraftFlightCore.LoadAllFlights();
        }
Beispiel #2
0
        public void FindFlights()
        {
            var env                = GetEnviroment();
            var aircraftCore       = new AircraftsCore(env.Loader, env.NewKeeper, env.NewLoader);
            var itemRelationCore   = new ItemsRelationsDataAccess(env);
            var directiveCore      = new DirectiveCore(env.NewKeeper, env.NewLoader, env.Keeper, env.Loader, itemRelationCore);
            var componentCore      = new ComponentCore(env, env.Loader, env.NewLoader, env.NewKeeper, aircraftCore, itemRelationCore);
            var aircraftFlightCore = new AircraftFlightCore(env, env.Loader, env.NewLoader, directiveCore, env.Manipulator, componentCore, env.NewKeeper, aircraftCore);

            aircraftFlightCore.LoadAircraftFlights(2344);
            var flights    = aircraftFlightCore.GetAircraftFlightsByAircraftId(2343);
            var codes      = env.GetDictionary <AirportsCodes>().ToArray().Cast <AirportsCodes>();
            var flightNums = env.GetDictionary <FlightNum>().Cast <FlightNum>().ToList();

            //Экспортируем полеты в Dataset из Excel файла
            var ds = ExcelToDataTableUsingExcelDataReader(@"H:\007.xlsx", false);


            int time = 0;

            foreach (DataTable table in ds.Tables)
            {
                foreach (DataRow row in table.Rows)
                {
                    var pageNo = row[0].ToString();


                    AirportsCodes stationFromId = AirportsCodes.Unknown;
                    AirportsCodes stationToId   = AirportsCodes.Unknown;

                    if (row[3] != null)
                    {
                        stationFromId = codes.FirstOrDefault(c => c.ShortName.ToUpper() == row[3].ToString().Trim().ToUpper());
                    }

                    if (row[4] != null)
                    {
                        stationToId = codes.FirstOrDefault(c => c.ShortName.ToUpper() == row[4].ToString().Trim().ToUpper());
                    }

                    var dateOut = DateTime.Parse(row[5].ToString());
                    var dateIn  = DateTime.Parse(row[6].ToString());

                    var outTime     = (int)dateOut.TimeOfDay.TotalMinutes;
                    var inTime      = (int)dateIn.TimeOfDay.TotalMinutes;
                    var takeOffTime = outTime;
                    var lDGTime     = inTime;

                    DateTime res;
                    if (!DateTime.TryParse(row[1].ToString(), out res))
                    {
                        Trace.WriteLine($"!!!!!!!!!Нету: {pageNo} | {row[1]} | {row[3]} - {row[4]} | ({outTime}-{inTime})");

                        if (outTime > inTime)
                        {
                            time += outTime - inTime;
                        }
                        else
                        {
                            time += inTime - outTime;
                        }
                        continue;
                    }


                    var flightDate = DateTime.Parse(row[1].ToString());
                    var find       = flights.Where(i => i.PageNo == pageNo);

                    if (!find.Any())
                    {
                        Trace.WriteLine($"Нету: {pageNo} | {flightDate} | {row[3]} - {row[4]} | ({outTime}-{inTime})");

                        time += inTime - outTime;
                    }
                }


                Trace.WriteLine(time);
            }
        }