public async Task <ActionResult <IEnumerable <VegaImpulsDeviceData> > > GetAllDeltaAsync(long deviceId, [FromQuery] int days) { var result = await _repository .GetAllAsync(deviceId, DateTimeOffset.Now, DateTimeOffset.Now.AddDays(-days)) .ConfigureAwait(false); if (result == null) { return(NotFound()); } VegaImpulsDeviceData[] modifiedData = new VegaImpulsDeviceData[result.Count() - 1]; for (int i = 1; i < result.Count(); i++) { modifiedData[i - 1] = new VegaImpulsDeviceData(); modifiedData[i - 1].Id = result.ElementAt(i).Id; modifiedData[i - 1].Device = result.ElementAt(i).Device; modifiedData[i - 1].DeviceId = result.ElementAt(i).DeviceId; modifiedData[i - 1].PackageType = result.ElementAt(i).PackageType; modifiedData[i - 1].BatteryLevel = result.ElementAt(i).BatteryLevel; modifiedData[i - 1].MainSettings = result.ElementAt(i).MainSettings; modifiedData[i - 1].AlarmExit = result.ElementAt(i).AlarmExit; modifiedData[i - 1].Uptime = result.ElementAt(i).Uptime; modifiedData[i - 1].Temperature = result.ElementAt(i).Temperature; modifiedData[i - 1].InputState1 = result.ElementAt(i).InputState1; modifiedData[i - 1].InputState2 = result.ElementAt(i).InputState2; modifiedData[i - 1].InputState3 = result.ElementAt(i - 1).InputState3 - result.ElementAt(i).InputState3; modifiedData[i - 1].InputState4 = result.ElementAt(i).InputState4; } return(Ok(modifiedData)); }
public async Task <IActionResult> PutVegaImpulsDeviceData(long id, VegaImpulsDeviceData vegaImpulsDeviceData) { if (vegaImpulsDeviceData == null) { throw new ArgumentNullException(nameof(vegaImpulsDeviceData)); } if (id != vegaImpulsDeviceData.Id || _repository.ImpulsDeviceDataExists(vegaImpulsDeviceData.DeviceId)) { return(BadRequest()); } try { await _repository.EditAsync(vegaImpulsDeviceData).ConfigureAwait(false); } catch { if (!_repository.ImpulsDeviceDataExists(vegaImpulsDeviceData.DeviceId)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <VegaImpulsDeviceData> > PostVegaImpulsDeviceData(VegaImpulsDeviceData vegaImpulsDeviceData) { if (vegaImpulsDeviceData == null) { throw new ArgumentNullException(nameof(vegaImpulsDeviceData)); } if (!_repository.DeviceExists(vegaImpulsDeviceData.DeviceId)) { return(BadRequest()); } await _repository.AddAsync(vegaImpulsDeviceData).ConfigureAwait(false); return(CreatedAtAction("GetImpulsDeviceData", new { id = vegaImpulsDeviceData.Id }, vegaImpulsDeviceData)); }