public async Task <IActionResult> UpdateDeviceStatus(string id, [FromBody] SirmotoDevices sirmoto) { var dbContext = new sirmotoContext(); var usr = await GetCurrentUserAsync(); var usrId = usr.Id; var device = await dbContext.SirmotoDevices.Where(z => z.Id == Int32.Parse(id)).ToListAsync(); if (device[0].UserId != usr.Id) { return(Forbid("[ERRO] Access denied")); } device[0].Description = (String.IsNullOrEmpty(sirmoto.Description)) ? device[0].Description : sirmoto.Description; device[0].DeviceInfo = (String.IsNullOrEmpty(sirmoto.DeviceName)) ? device[0].DeviceInfo : sirmoto.DeviceName; device[0].DeviceName = (String.IsNullOrEmpty(sirmoto.DeviceName)) ? device[0].DeviceName : sirmoto.DeviceName; device[0].DeviceState = (String.IsNullOrEmpty(sirmoto.DeviceState)) ? device[0].DeviceState : sirmoto.DeviceState; if (device[0] == null) { return(NotFound("[WARN] Device not found")); } else { dbContext.Update(sirmoto); } return(new ObjectResult(JsonConvert.SerializeObject(device[0]))); }
public async Task <IActionResult> RegisterDevice([FromBody] SirmotoDevices data) { var random = new Random(); var dbContext = new sirmotoContext(); var usr = await GetCurrentUserAsync(); var user = await dbContext.AspNetUsers.Where(z => z.Email == usr.Email).ToListAsync(); data.Description = "None"; data.Id = random.Next(); data.UserId = usr.Id; data.DeviceInfo = "READY"; data.LastUpdated = DateTime.Now; dbContext.SirmotoDevices.Add(data); await dbContext.SaveChangesAsync(); dynamic result = new ExpandoObject(); result.Sirmoto = data; result.Resource = "Device/GetDeviceById/" + data.Id; return(new ObjectResult(JsonConvert.SerializeObject(result))); }