コード例 #1
0
 public Guid Create(Model.Station station)
 {
     Domain.Station domainStation = this.mapper.Map <Domain.Station>(station);
     stationRepository.Create(domainStation);
     stationRepository.SaveChanges();
     return(domainStation.Id);
 }
コード例 #2
0
 public static Model.Station ToModel(this Core.Station me) {
     var result = new Model.Station();
     result.Id = me.Signature;
     result.Name = me.Name;
     result.Signature = me.Signature;
     result.Passings = me.Calls.ToModel().OrderBy(p => p.Arrival.ExpectedTime);
     return result;
 }
コード例 #3
0
        /// <summary>
        /// Here we create a new database, you need 1.2GB RAM, and TradeDangerous.prices System.csv from http://www.davek.com.au/td/
        /// Put in `Project\Data` folder, the parse is in FParsec
        /// </summary>

        public void NewDatabase()
        {
            var folder = "..\\..\\Data\\";

            using (var db = new TraderContext())
            {
                var SysDict = new Dictionary <string, StarSystem>();
                //var StaDict = new Dictionary<string, Station>();

                foreach (string line in File.ReadLines(folder + "System.csv").Skip(1))
                {
                    var sysout = Parsers.runSystemCSVParser(line, new Model.StarSystem()
                    {
                        Stations = new List <Station>()
                    });
                    var distance = Math.Abs(Math.Pow(sysout.X - 0, 2) + Math.Pow(sysout.Y - 0, 2) + Math.Pow(sysout.Z - 0, 2));
                    if (distance < 10000)
                    {
                        SysDict.Add(sysout.StarName, sysout);
                    }
                }


                var stations = Parsers.runPricesFileParser(folder + "TradeDangerous.prices", new System.Text.UTF8Encoding());

                foreach (var stationR in stations)
                {
                    var uniqueName  = stationR.UniqueName.Split('/');
                    var systemName  = uniqueName[0];
                    var stationName = uniqueName[1];

                    Console.WriteLine(systemName + ": " + stationName);
                    Model.StarSystem star;
                    if (SysDict.TryGetValue(systemName, out star))
                    {
                        var station = new Model.Station()
                        {
                            StationName = stationName, StarSystem = star, Commodities = stationR.commodities
                        };

                        star.Stations.Add(station);
                    }
                }

                foreach (var star in SysDict.Values)
                {
                    foreach (var s in star.Stations.Select(a => a.StationName))
                    {
                        Console.Write(s + ": :");
                    }
                    Console.WriteLine();
                    db.StarSystems.Add(star);
                }

                var count = db.SaveChanges();
            }
        }
コード例 #4
0
 public Guid Update(Model.Station station)
 {
     Domain.Station domainstation = stationRepository.ReadBy(c => c.Id == station.Id);
     if (domainstation.StationName != null)
     {
         domainstation.StationName = station.StationName;
         domainstation.UUID        = station.UUID;
         stationRepository.Update(domainstation);
         stationRepository.SaveChanges();
         return(domainstation.Id);
     }
     else
     {
         return(Guid.Empty);
     }
 }
コード例 #5
0
        // ------------------ Constructor ---------------------

        public StationViewModel()
        {
            StationsCollection = _stationCatalogSingleton.GetStationsCatalogSingleton();
            SelectedStation    = new Model.Station();
        }