public UnitConversionsResponse Post(UnitConversions request)
        {
            if (request.UnitConversion.Id > 0)
              {
            Bm2s.Data.Common.BLL.Parameter.UnitConversion item = Datas.Instance.DataStorage.UnitConversions[request.UnitConversion.Id];
            item.UnitChildId = request.UnitConversion.Child.Id;
            item.Multiplier = request.UnitConversion.Multiplier;
            item.UnitParentId = request.UnitConversion.Parent.Id;
            item.Quantity = request.UnitConversion.Quantity;
            Datas.Instance.DataStorage.UnitConversions[request.UnitConversion.Id] = item;
              }
              else
              {
            Bm2s.Data.Common.BLL.Parameter.UnitConversion item = new Data.Common.BLL.Parameter.UnitConversion()
            {
              UnitChildId = request.UnitConversion.Child.Id,
              Multiplier = request.UnitConversion.Multiplier,
              UnitParentId = request.UnitConversion.Parent.Id,
              Quantity = request.UnitConversion.Quantity
            };

            Datas.Instance.DataStorage.UnitConversions.Add(item);
            request.UnitConversion.Id = item.Id;
              }

              UnitConversionsResponse response = new UnitConversionsResponse();
              response.UnitConversions.Add(request.UnitConversion);
              return response;
        }
        public UnitConversionsResponse Delete(UnitConversions request)
        {
            Bm2s.Data.Common.BLL.Parameter.UnitConversion item = Datas.Instance.DataStorage.UnitConversions[request.UnitConversion.Id];
              Datas.Instance.DataStorage.UnitConversions.Remove(item);

              UnitConversionsResponse response = new UnitConversionsResponse();
              response.UnitConversions.Add(request.UnitConversion);
              return response;
        }
        public UnitConversionsResponse Get(UnitConversions request)
        {
            UnitConversionsResponse response = new UnitConversionsResponse();
              List<Bm2s.Data.Common.BLL.Parameter.UnitConversion> items = new List<Data.Common.BLL.Parameter.UnitConversion>();
              if (!request.Ids.Any())
              {
            items.AddRange(Datas.Instance.DataStorage.UnitConversions.Where(item =>
              (request.ChildId == 0 || item.UnitChildId == request.ChildId) &&
              (request.ParentId == 0 || item.UnitParentId == request.ParentId)
              ));
              }
              else
              {
            items.AddRange(Datas.Instance.DataStorage.UnitConversions.Where(item => request.Ids.Contains(item.Id)));
              }

              var collection = (from item in items
                        select new Bm2s.Poco.Common.Parameter.UnitConversion()
                        {
                          Child = new UnitsService().Get(new Units() { Ids = new List<int>() { item.UnitChildId } }).Units.FirstOrDefault(),
                          Id = item.Id,
                          Multiplier = item.Multiplier,
                          Parent = new UnitsService().Get(new Units() { Ids = new List<int>() { item.UnitParentId } }).Units.FirstOrDefault(),
                          Quantity = item.Quantity
                        }).AsQueryable().OrderBy(request.Order, !request.DescendingOrder);

              response.ItemsCount = collection.Count();
              if (request.PageSize > 0)
              {
            response.UnitConversions.AddRange(collection.Skip((request.CurrentPage - 1) * request.PageSize).Take(request.PageSize));
              }
              else
              {
            response.UnitConversions.AddRange(collection);
              }

              try
              {
            response.PagesCount = collection.Count() / response.UnitConversions.Count + (collection.Count() % response.UnitConversions.Count > 0 ? 1 : 0);
              }
              catch
              {
            response.PagesCount = 1;
              }

              return response;
        }
 public void ConvertZeroSolarMasses()
 {
     Assert.AreEqual(0, UnitConversions.KilometersToEarthRadius(0), DELTA);
 }
            public void ConvertOneEarthRadius()
            {
                var expectedValue = EARTH_RADIUS_IN_CM;

                Assert.AreEqual(expectedValue, UnitConversions.EarthRadiusToCentimeters(1), DELTA);
            }
            public void ConvertOneSolarMass()
            {
                var expectedValue = SOLAR_MASS_IN_G;

                Assert.AreEqual(expectedValue, UnitConversions.SolarMassesToGrams(1), DELTA);
            }
 public void ConvertZeroCentimeters()
 {
     Assert.AreEqual(0, UnitConversions.CentimetersToEarthRadius(0), DELTA);
 }
            public void ConvertOneEarthRadius()
            {
                var expectedValue = 1.0;

                Assert.AreEqual(expectedValue, UnitConversions.KilometersToEarthRadius(EARTH_RADIUS_IN_KM), DELTA);
            }
Exemplo n.º 9
0
 public static string GetEscapeVelocity(Planet planet)
 {
     return(String.Format("{0:0.00} km/sec", UnitConversions.CMToKM(planet.EscapeVelocityCMSec)));
 }
Exemplo n.º 10
0
 /// <summary>
 /// Sets the start time and length of a new bot state
 /// </summary>
 /// <param name="stateLength">length of the new bot state in milliseconds</param>
 public void SetNewState(long stateLength)
 {
     stateLength       = (long)Numerical.LimitToRange(stateLength, 0, UnitConversions.HoursToMilliseconds(168)); //limit state length to 1 week as a sanity check
     CurrentStateStart = DateTime.Now;
     CurrentStateEnd   = CurrentStateStart.AddMilliseconds(stateLength);
 }
Exemplo n.º 11
0
 public static string GetGreenhouseRise(Planet planet)
 {
     return(String.Format("{0:0.00} F", UnitConversions.KelvinToFahrenheit(planet.GreenhouseRiseKelvin)));
 }
Exemplo n.º 12
0
 public static string GetMassStringEM(Planet planet)
 {
     return(String.Format("{0:0.00} EM", UnitConversions.SolarMassesToEarthMasses(planet.MassSM)));
 }
Exemplo n.º 13
0
 public static string GetNightTemp(Planet planet)
 {
     return(String.Format("{0:0.0} F", UnitConversions.KelvinToFahrenheit(planet.NighttimeTempKelvin)));
 }
Exemplo n.º 14
0
 public decimal ToCubicFeet(decimal volume)
 {
     return(UnitConversions.CubicMeterToCubicFeet(volume));
 }
Exemplo n.º 15
0
 public decimal ToBarrels(decimal volume)
 {
     return(UnitConversions.CubicMeterToBarrels(volume));
 }