Пример #1
0
        public static Refuel Parse(BsonDocument doc)
        {
            var result = new Refuel();

            result.date         = DateTime.Parse(doc["date"].AsString);
            result.tankID       = doc["tankID"].AsInt32;
            result.fuelCapacity = (float)doc["fuelCapacity"].AsDouble;
            result.tankSpeed    = (float)doc["tankSpeed"].AsDouble;
            return(result);
        }
Пример #2
0
        public static Refuel Parse(string item)
        {
            var splited = item.Split(';');
            var result  = new Refuel();

            result.date         = DateTime.Parse(splited[0]);
            result.tankID       = Utilities.ParseToInt(splited[1]);
            result.fuelCapacity = Utilities.ParseToFloat(splited[2]);
            result.tankSpeed    = Utilities.ParseToFloat(splited[3]);
            return(result);
        }
Пример #3
0
 public List <Refuel> GetLatestRefuels(int amount)
 {
     try
     {
         return(refuelsCollection.Aggregate().SortByDescending((a) => a["date"]).Limit(amount)
                .ToList().Select(x => Refuel.Parse(x)).ToList());
     }
     catch (Exception e)
     {
         return(null);
     }
 }
Пример #4
0
        public static BsonDocument Parse(Refuel data)
        {
            var result = new BsonDocument()
            {
                { "id", Guid.NewGuid().ToString("N") },
                { "date", data.date.ToString() },
                { "tankID", data.tankID },
                { "fuelCapacity", data.fuelCapacity },
                { "tankSpeed", data.tankSpeed },
            };

            return(result);
        }
Пример #5
0
 public List <Refuel> GetLatestRefuelsByTime(int hours)
 {
     try
     {
         return(refuelsCollection.Aggregate().SortByDescending((a) => a["date"]).ToList()
                .FindAll(x => (getTime() - DateTime.Parse(x["date"].AsString)).TotalHours <= hours)
                .ToList().Select(x => Refuel.Parse(x)).ToList());
     }
     catch (Exception e)
     {
         return(null);
     }
 }
Пример #6
0
 private void ReadDataRefuel(int amount)
 {
     for (int i = 0; i < amount; i++)
     {
         if (!refuelFile.EndOfStream)
         {
             waitingRefuel.Add(Refuel.Parse(refuelFile.ReadLine()));
         }
         else
         {
             return;
         }
     }
 }
Пример #7
0
 public async void AddRefuel(Refuel data)
 {
     await refuelsCollection.InsertOneAsync(Refuel.Parse(data));
 }