/// <summary> /// Get the most recent set of measurements for a specific device /// </summary> /// <param name="reportingDeviceId"></param> /// <returns></returns> public MeasurementSet MostRecentSet(int reportingDeviceId) { var recent = new MeasurementSet(); var last3 = _context.Measurements .Where(m => m.ReportingDeviceId == reportingDeviceId) .Select(m => m).Include(l => l.Location).Distinct(). OrderByDescending(m => m.MeasuredDate).Take(3).ToList(); if (last3.Any()) { var temp = last3.FirstOrDefault(m => m.MeasurementTypeId == 1); var humd = last3.FirstOrDefault(m => m.MeasurementTypeId == 2); var lght = last3.FirstOrDefault(m => m.MeasurementTypeId == 3); if (temp != null) { recent.MeasuredDate = temp.MeasuredDate; recent.Temperature = temp.MeasuredValue; } if (humd != null) { recent.Humidity = humd.MeasuredValue; } if (lght != null) { recent.Light = lght.MeasuredValue; } } return(recent); }
public NodeInput(Feature feature, MeasurementSet measurementSet, ToolSet toolSet) { MinimumPoints = measurementSet.MinimumPoints; MaximumPoints = measurementSet.MaximumPoints; Feature = feature; ToolSet = toolSet; MeasurementSetId = measurementSet.Id; }
public MeasurementSetKey(Feature feature, MeasurementSet measurementSet) { _featureId = feature.Id; _minimumPoints = measurementSet.MinimumPoints; _maximumPoints = measurementSet.MaximumPoints; }