示例#1
0
 /// <summary>
 /// Creates a new repository of origins.
 /// </summary>
 /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
 public NotamService(NotamDataContext dataContext)
 {
     _dataContext = dataContext;
     _Notams = LoadNotams(dataContext);
     _ArchNotams = LoadArchiveNotams(dataContext);
     _HoldNotams = LoadHoldNotams(dataContext);
     _NotamArchives = LoadNotamArchives(dataContext);
 }
示例#2
0
 public SnowtamService(NotamDataContext dataContext)
 {
     this._dataContext = dataContext;
     this._Snowtams = this.LoadSnowtams(dataContext);
     this._ArchiveSnowtams = SnowtamService.LoadArchiveSnowtams(dataContext);
     this._AllSnowtams = new List<Snowtam>();
     this._AllSnowtams.AddRange(this._Snowtams);
     this._AllSnowtams.AddRange(this._ArchiveSnowtams);
 }
示例#3
0
        /// <summary>
        /// Creates a new repository of origins.
        /// </summary>
        /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
        public IntlNotamService(NotamDataContext dataContext)
        {
            _dataContext = dataContext;
            _Notams = LoadNotams(dataContext);
            _ArchNotams = LoadArchiveNotams(dataContext);
            _NotamArchives = LoadNotamArchives(dataContext);
            _AllNotams = new List<IntlNotam>();
            _AllNotams.AddRange(_Notams);
            _AllNotams.AddRange(_ArchNotams);

        }
示例#4
0
        public MainWindowViewModel(NotamDataContext  dataContext )
        {
            base.DisplayName = Entity.MainWindowViewModel_DisplayName;

            _originService = new OriginService(dataContext);
            _firService = new FIRService(dataContext);
            _notamService = new NotamService(dataContext);
            _aerodomService = new AerodomService(dataContext);
            _notamCodeService = new NotamCodeService(dataContext);
            _snowtamService = new SnowtamService(dataContext);
            _authService = new AuthenticationService(dataContext);
            _aftnService = new AftnService(dataContext);
            _intlNotamService = new IntlNotamService(dataContext);
            var workspace = new NotamSearchViewModel(_notamService, Workspaces);
            this.Workspaces.Add(workspace);
            this.SetActiveWorkspace(workspace);
            System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
            dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
            dispatcherTimer.Interval = new TimeSpan(0,1,0);
            dispatcherTimer.Start();


        }
示例#5
0
        static List<Origin> LoadOrigins(NotamDataContext  dataContext)
        {
            var result = new List<Origin>();
            if(dataContext!=null )
            {
                var origins = dataContext.Origins;
                result.AddRange(origins);
            }
            return result;

        }
示例#6
0
 /// <summary>
 /// Creates a new repository of origins.
 /// </summary>
 /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
 public NotamCodeService(NotamDataContext dataContext)
 {
     _dataContext = dataContext;
     _NotamCode = LoadNotamCodes(dataContext);
 }
示例#7
0
        public List<Notam> LoadHoldNotams(NotamDataContext dataContext)
        {
            var result = new List<Notam>();
            if (dataContext != null)
            {
                var notams = dataContext.Notams.Where(n => n.Status.Equals("H")).OrderBy(x=>x.Type).ThenByDescending(y=>y.Year).ThenByDescending(y=>y.Id);
                result.AddRange(notams);
            }
            return result;

        }
示例#8
0
        static List<Aftn> LoadAftnList(NotamDataContext dataContext)
        {
            var result = new List<Aftn>();
            if (dataContext != null)
            {
                var aftn = dataContext.Aftns;
                result.AddRange(aftn);
            }
            return result;

        }
示例#9
0
文件: FIRService.cs 项目: ali60/NOTAM
 /// <summary>
 /// Creates a new repository of origins.
 /// </summary>
 /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
 public FIRService(NotamDataContext dataContext)
 {
     _dataContext = dataContext;
     _FIRs = LoadFIRs(dataContext);
 }
示例#10
0
 public AuthenticationService(NotamDataContext dataContext)
 {
     _notamDataContext = dataContext;
     _users = LoadUsers(dataContext);
 }
示例#11
0
        static List<User> LoadUsers(NotamDataContext dataContext)
        {
            var result = new List<User>();
            if (dataContext != null)
            {
                var users = dataContext.Users;
                result.AddRange(users);
            }
            return result;

        }
示例#12
0
using System;
示例#13
0
        static List<IntlNotam> LoadHoldNotams(NotamDataContext dataContext)
        {
            var result = new List<IntlNotam>();
            if (dataContext != null)
            {
                var notams = dataContext.IntlNotams.Where(n => n.Status.Equals("H"));
                result.AddRange(notams);
            }
            return result;

        }
示例#14
0
        static List<IntlNotam> LoadArchiveNotams(NotamDataContext dataContext)
        {
            var result = new List<IntlNotam>();
            if (dataContext != null)
            {
                var notams = dataContext.IntlNotams.Where(n => n.Status.Equals("A"));
//                 foreach (var item in notams)
//                 {
//                     IntlNotam item1 = item;
//                     item.ArchiveReason =
//                         dataContext.NotamArchives.Where(n => n.Id == item1.Id).Select(n => n.Reason).SingleOrDefault();
//                 }


                result.AddRange(notams);
            }
            return result;

        }
示例#15
0
 /// <summary>
 /// Creates a new repository of origins.
 /// </summary>
 /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
 public OriginService(NotamDataContext dataContext)
 {
     _dataContext = dataContext;
     _origins = LoadOrigins(dataContext);
 }
示例#16
0
文件: FIRService.cs 项目: ali60/NOTAM
        static List<FIR> LoadFIRs(NotamDataContext  dataContext)
        {
            var result = new List<FIR>();
            if(dataContext!=null )
            {
                var firs = dataContext.FIRs;
                result.AddRange(firs);
            }
            return result;

        }
示例#17
0
 public MainWindowViewModel(NotamDataContext dataContext, Notam notam):this(dataContext)
 {
   NotamViewModel workspace = new NotamViewModel(notam, _notamService, Workspaces);
     this.Workspaces.Add(workspace);
     this.SetActiveWorkspace(workspace);
 }
示例#18
0
 /// <summary>
 /// Creates a new repository of origins.
 /// </summary>
 /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
 public AftnService(NotamDataContext dataContext)
 {
     _dataContext = dataContext;
     _AftnList = LoadAftnList(dataContext);
 }
示例#19
0
        static List<Aerodom> LoadAerodoms(NotamDataContext dataContext)
        {
            var result = new List<Aerodom>();
            if (dataContext != null)
            {
                var aerodom = dataContext.Aerodoms;
                result.AddRange(aerodom);
            }
            return result;

        }
示例#20
0
文件: App.xaml.cs 项目: ali60/NOTAM
        private void SendRQN(Dictionary<string, string> dic,NotamDataContext dcontext)
        {
            if (!dic.ContainsKey("FIR"))
            {
                MessageBox.Show("No FIR in RQN");
                return;
            }
            string strFir = dic["FIR"];
            if (strFir.Length != 4)
                return;
            Notam notam2=null;
            if (!strFir.Substring(0, 2).Equals("OI"))
            {
                FIR fir = dcontext.FIRs.Where(n => n.Code.Equals(strFir)).FirstOrDefault();
                IntlNotam innotam = (
                    from o in App._dataDC2.IntlNotams
                    where o.Number.Equals(dic["RQNN"]) && (o.Type.Equals(dic["RQNT"]) && o.Year.Equals(dic["RQNY"]) && o.FIR == fir)
                    select o).FirstOrDefault<IntlNotam>();
                if (innotam == null)
                {
                    innotam = new IntlNotam();
                    innotam.Type = dic["RQNT"];
                    innotam.Number = dic["RQNN"];
                    innotam.Year = dic["RQNY"];
                    innotam.FIR = dcontext.FIRs.Where(n => (n.Code.Length == 4) && n.Code.Substring(0, 2).Equals(strFir.Substring(0, 2))).FirstOrDefault();
                    innotam.SendTime = DateTime.Now.ToString("yyMMddHHmm");
                    innotam.Origin = (
                        from x in App._dataDC2.Origins
                        where x.Code.Equals("OIIIYNYX")
                        select x).FirstOrDefault<Origin>();
                    innotam.Status = "N";
                    IntlNotam notam3 = (
                        from o in App._dataDC2.IntlNotams
                        where o.Type.Equals(dic["RQNT"]) && o.Year.Equals(dic["RQNY"]) && o.FIR == fir
                        select o into x
                        orderby x.Number descending
                        select x).FirstOrDefault<IntlNotam>();
                    if (int.Parse(notam3.Number) > int.Parse(notam2.Number))
                    {
                        innotam.Status = "BL";
                    }
                }
                notam2 = IntlNotamService.ConvertToNotam(innotam);
            }
            else
            {
                notam2 = (
                    from o in App._dataDC2.Notams
                    where o.Number.Equals(dic["RQNN"]) && (o.Type.Equals(dic["RQNT"]) && o.Year.Equals(dic["RQNY"]))
                    select o).FirstOrDefault<Notam>();

                if (notam2 == null)
                {
                    notam2 = new Notam();
                    notam2.Type = dic["RQNT"];
                    notam2.Number = dic["RQNN"];
                    notam2.Year = dic["RQNY"];
                    notam2.FIR = dcontext.FIRs.Where(n =>  (n.Code.Length==4) && n.Code.Substring(0,2).Equals(strFir.Substring(0,2))).FirstOrDefault();
                    notam2.SendTime = DateTime.Now.ToString("yyMMddHHmm");
                    notam2.Origin = (
                        from x in App._dataDC2.Origins
                        where x.Code.Equals("OIIIYNYX")
                        select x).FirstOrDefault<Origin>();
                    notam2.Status = "N";
                    Notam notam3 = (
                        from o in App._dataDC2.Notams
                        where o.Type.Equals(dic["RQNT"]) && o.Year.Equals(dic["RQNY"])
                        select o into x
                        orderby x.Number descending
                        select x).FirstOrDefault<Notam>();
                    if (int.Parse(notam3.Number) > int.Parse(notam2.Number))
                    {
                        notam2.Status = "BL";
                    }
                }
            }
            NotamSender notamSender = new NotamSender(notam2);
            if (dic.ContainsKey("Originat"))
            {
                notamSender.SendRQNNotam(dic["Originat"]);
            }
            return;

        }
示例#21
0
 /// <summary>
 /// Creates a new repository of origins.
 /// </summary>
 /// <param name="originDataFile">The relative path to an XML resource file that contains origin data.</param>
 public AerodomService(NotamDataContext dataContext)
 {
     _dataContext = dataContext;
     _Aerodom = LoadAerodoms(dataContext);
 }
示例#22
0
        //public List<Notam> LoadArchiveNotams(NotamDataContext dataContext)
        //{
        //    var result = new List<Notam>();
        //    if (dataContext != null)
        //    {
        //        var notams = dataContext.Notams.Where(n => n.Status.Equals("A")).OrderBy(x=>x.Type).ThenByDescending(y=>y.Year).ThenByDescending(z=>z.Number);
        //        foreach (var item in notams)
        //        {
        //            Notam item1 = item;
        //            item.ArchiveReason =
        //                dataContext.NotamArchives.Where(n => n.Id == item1.Id).Select(n => n.Reason).SingleOrDefault();
        //        }

              
        //        result.AddRange(notams);
        //    }
        //    return result;

        //}

        public List<Notam> LoadArchiveNotams(NotamDataContext dataContext)
        {
            var result = new List<Notam>();
            if (dataContext != null)
            {
                var notams = dataContext.Notams.Where(n => n.Status.Equals("A")).OrderBy(x => x.Type).ThenByDescending(y => y.Year).ThenByDescending(z => z.Number);
                var AllArchives = new List<NotamArchive>();
                AllArchives.AddRange(dataContext.NotamArchives);
                foreach (var item in notams)
                {
                    Notam item1 = item;
                    item.ArchiveReason = AllArchives.Where(n => n.Id == item1.Id).Select(n => n.Reason).SingleOrDefault();
                }


                result.AddRange(notams);
            }
            return result;

        }
示例#23
0
 public List<Snowtam> LoadSnowtams(NotamDataContext dataContext)
 {
     List<Snowtam> list = new List<Snowtam>();
     if (dataContext != null)
     {
         IQueryable<Snowtam> collection =
             from n in dataContext.Snowtams
             where n.Status.Equals("D")
             select n;
         list.AddRange(collection);
     }
     return list;
 }
示例#24
0
 public List<NotamArchive> LoadNotamArchives(NotamDataContext dataContext)
 {
     var result = new List<NotamArchive>();
     if (dataContext != null)
     {
         var notams = dataContext.NotamArchives;
         result.AddRange(notams);
     }
     return result;
 }
示例#25
0
        static List<NotamCode> LoadNotamCodes(NotamDataContext dataContext)
        {
            var result = new List<NotamCode>();
            if (dataContext != null)
            {
                var notamcodes = dataContext.NotamCodes;
                result.AddRange(notamcodes);
            }
            return result;

        }