public async Task <ActionResult <TriggerResponse> > AddTrigger(Guid deviceId, [FromBody] TriggerRequest req) { var user = HttpContext.User.Identity?.Name; if (user == null) { return(NotFound("Cannot find user")); } var ud = await Db.Users.Where(x => x.Aud == user) .Include(x => x.Device) .FirstOrDefaultAsync(x => x.Device.DeviceId == deviceId); if (ud == null) { return(NotFound("Device Not Found")); } var pd = new TriggerData { Name = req.Name, Code = req.Code, DeviceId = ud.DeviceId, }; var saved = await Db.Triggers .AddAsync(pd); await Db.SaveChangesAsync(); var ok = saved.Entity !; return(Ok(new TriggerResponse(ok.Id, ok.Name))); }
public async Task <ActionResult <TriggerResponse> > UpdateTrigger(Guid deviceId, Guid triggerId, [FromBody] TriggerRequest req) { var user = HttpContext.User.Identity?.Name; if (user == null) { return(NotFound("Cannot find user")); } var ud = await Db.Users.Where(x => x.Aud == user) .Include(x => x.Device) .FirstOrDefaultAsync(x => x.Device.DeviceId == deviceId); if (ud == null) { return(NotFound("Device Not Found")); } var td = await Db.Triggers.Include(x => x.Device) .FirstOrDefaultAsync(x => x.Device.DeviceId == deviceId && x.Id == triggerId); if (td == null) { return(NotFound("Trigger Not Found")); } td.Code = req.Code; td.Name = req.Name; await Db.SaveChangesAsync(); return(Ok(new TriggerResponse(td.Id, td.Name))); }