public IHttpActionResult GetAlue(int id) { Kayttaja k = Kirjautuminen.HaeKirjautuminen(Request.Headers.Authorization?.ToString().Substring(7) ?? null); Alue alue = db.Alueet.Find(id); if (alue == null) { return(NotFound()); } if (!alue.NakeekoKayttaja(k)) { return(Unauthorized()); } var data = new { alue, langat = alue.Langat }; return(Ok(new { k.jwt, data })); }
public IHttpActionResult PostAlue(Alue alue) { Kayttaja k = Kirjautuminen.HaeKirjautuminen(Request.Headers.Authorization?.ToString().Substring(7) ?? null); if (!k.Kayttajatasot.o_alueLisaa) { return(Unauthorized()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Alueet.Add(alue); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { jwt = k.jwt, id = alue.alue_id }, alue)); }
public IHttpActionResult PostLanka(Lanka lanka) { Kayttaja k = Kirjautuminen.HaeKirjautuminen(Request.Headers.Authorization?.ToString().Substring(7) ?? null); lanka.kayttaja_id = k.kayttaja_id; lanka.aika = DateTime.Now; Alue alue = db.Alueet.Find(lanka.alue_id); if (!k.Kayttajatasot.o_lankaLisaa) { return(Unauthorized()); } if (alue == null) { return(BadRequest("Aluetta ei löytynyt")); } if (!alue.NakeekoKayttaja(k)) { return(Unauthorized()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (lanka.otsikko.Length < 1) { return(BadRequest("Otsikko on liian olematon")); } if (lanka.otsikko.Length > 50) { return(BadRequest("Otsikko on liian pitkä")); } db.Langat.Add(lanka); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { k.jwt, id = lanka.lanka_id }, lanka)); }
public IHttpActionResult DeleteAlue(int id) { Kayttaja k = Kirjautuminen.HaeKirjautuminen(Request.Headers.Authorization?.ToString().Substring(7) ?? null); if (!k.Kayttajatasot.o_aluePoista) { return(Unauthorized()); } Alue alue = db.Alueet.Find(id); if (alue == null) { return(NotFound()); } db.Alueet.Remove(alue); db.SaveChanges(); return(Ok(new { k.jwt })); }
public IHttpActionResult PutAlue(int id, Alue alue) { Kayttaja k = Kirjautuminen.HaeKirjautuminen(Request.Headers.Authorization?.ToString().Substring(7) ?? null); if (!k.Kayttajatasot.o_alueMuokkaa) { return(Unauthorized()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != alue.alue_id) { return(BadRequest()); } db.Entry(alue).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!AlueExists(id)) { return(NotFound()); } else { throw; } } return(Ok(new { k.jwt })); }