private void UpdateTestState(int speedLevel, FitnessRating shuttelInfo, double timeIntervalInSeconds)
        {
            if (_test.TestInfo.SpeedLevel != speedLevel)
            {
                _test.TestInfo.ElapsedShuttleTime = 0;
                _test.TestInfo.NextShuttle        = (int)shuttelInfo.LevelTime + 1;
                _test.TestInfo.SpeedLevel         = speedLevel;
                _test.TestInfo.ShuttleNo          = shuttelInfo.ShuttleNo;
                _test.TestInfo.LevelShuttleTime   = shuttelInfo.LevelTime;
                _test.TestInfo.Speed = shuttelInfo.Speed;
            }
            else if (_test.TestInfo.ShuttleNo != shuttelInfo.ShuttleNo)
            {
                _test.TestInfo.ElapsedShuttleTime = 0;
                _test.TestInfo.ShuttleNo          = shuttelInfo.ShuttleNo;
                _test.TestInfo.NextShuttle        = (int)shuttelInfo.LevelTime + 1;
            }
            else
            {
                _test.TestInfo.NextShuttle        -= (int)timeIntervalInSeconds;
                _test.TestInfo.ElapsedShuttleTime += timeIntervalInSeconds;

                if (_test.TestInfo.NextShuttle < 0)
                {
                    _test.TestInfo.NextShuttle = 0;
                }
            }

            _test.TestInfo.TotalElapsedTime += timeIntervalInSeconds;
            _test.TestInfo.TotalDistance    += shuttelInfo.Speed * _appConfig.KmPerHrToMPersConversationFactor * timeIntervalInSeconds;

            RaiseStatusChange();
        }
Beispiel #2
0
        public async Task <FitnessRating> AddFitnessRating(FitnessRating fitnessRating)
        {
            _logger.LogInformation("Adding fitness rating.");
            await GetAllFitnessRatingsAsync();

            fitnessRatings.Add(fitnessRating);
            await SaveAllFitnessRatings(fitnessRatings);

            return(fitnessRating);
        }
Beispiel #3
0
        public async Task <FitnessRating> DeleteFitnessRating(FitnessRating fitnessRating)
        {
            _logger.LogInformation("Removing fitness rating.");
            await GetAllFitnessRatingsAsync();

            var removed = fitnessRatings.Remove(fitnessRating);

            if (removed)
            {
                await SaveAllFitnessRatings(fitnessRatings);
            }
            return(fitnessRating);
        }
Beispiel #4
0
 public static FitnessRatingDTO Map(FitnessRating fitnessRating)
 {
     return(new FitnessRatingDTO
     {
         AccumulatedShuttleDistance = fitnessRating.AccumulatedShuttleDistance,
         SpeedLevel = fitnessRating.SpeedLevel,
         ShuttleNo = fitnessRating.ShuttleNo,
         Speed = fitnessRating.Speed,
         LevelTime = fitnessRating.LevelTime,
         CommulativeTime = Map(fitnessRating.CommulativeTime),
         StartTime = Map(fitnessRating.StartTime),
         ApproxVo2Max = fitnessRating.ApproxVo2Max
     });
 }
Beispiel #5
0
        /// <summary>
        /// Geting fitness ratings from json
        /// </summary>
        /// <returns></returns>
        public List <FitnessRating> GetFitnessRatingsFromJson()
        {
            var jsonFile = "DATA/fitnessrating_beeptest.json";

            try
            {
                List <FitnessRating> List = null;

                string jsonString = File.ReadAllText(jsonFile);
                JArray array      = JArray.Parse(jsonString);

                List = new List <FitnessRating>();

                foreach (JObject obj in array.Children <JObject>())
                {
                    string name  = string.Empty;
                    string value = string.Empty;

                    FitnessRating fitnessRating = new FitnessRating();

                    foreach (JProperty singleProp in obj.Properties())
                    {
                        name  = singleProp.Name;
                        value = singleProp.Value.ToString();

                        if (name.Equals("AccumulatedShuttleDistance"))
                        {
                            fitnessRating.AccumulatedShuttleDistance = Convert.ToInt32(value);
                        }
                        else if (name.Equals("CommulativeTime"))
                        {
                            fitnessRating.CommulativeTime = value;
                        }
                        else if (name.Equals("SpeedLevel"))
                        {
                            fitnessRating.SpeedLevel = Convert.ToInt32(value);
                        }
                        else if (name.Equals("ShuttleNo"))
                        {
                            fitnessRating.ShuttleNo = Convert.ToInt32(value);
                        }
                        else if (name.Equals("Speed"))
                        {
                            fitnessRating.Speed = Convert.ToDouble(value);
                        }
                        else if (name.Equals("LevelTime"))
                        {
                            fitnessRating.LevelTime = Convert.ToDouble(value);
                        }
                        else if (name.Equals("CommulativeTime"))
                        {
                            fitnessRating.CommulativeTime = value;
                        }
                        else if (name.Equals("StartTime"))
                        {
                            fitnessRating.StartTime = value;
                        }
                        else if (name.Equals("ApproxVo2Max"))
                        {
                            fitnessRating.ApproxVo2Max = Convert.ToDouble(value);
                        }
                    }

                    List.Add(fitnessRating);
                }

                return(List != null ? List : null);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }