public async Task <IHttpActionResult> PostProfilePreposition(ProfilePrepositionDTO profilePrepositionDTO) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var userId = User.Identity.GetUserId(); if (string.IsNullOrEmpty(profilePrepositionDTO.ProfileId)) { profilePrepositionDTO.ProfileId = userId; } if (profilePrepositionDTO.ProfileId != userId) { return(Unauthorized()); } var profilePreposition = AutoMapper.Mapper.Map <ProfilePreposition>(profilePrepositionDTO); db.ProfilePrepositions.Add(profilePreposition); await db.SaveChangesAsync(); return(CreatedAtRoute("GetProfilePrepositionByName", new { id = profilePreposition.Id }, AutoMapper.Mapper.Map <ProfilePrepositionDTO>(profilePreposition))); }
public async Task <IHttpActionResult> GetProfilePreposition(int id) { var userId = User.Identity.GetUserId(); ProfilePrepositionDTO profilePrepositionDTO = AutoMapper.Mapper.Map <ProfilePrepositionDTO>(await db.ProfilePrepositions .Where(p => p.Id == id && p.ProfileId == userId) .FirstOrDefaultAsync()); if (profilePrepositionDTO == null) { return(NotFound()); } return(Ok(profilePrepositionDTO)); }
public async Task <IHttpActionResult> PutProfilePreposition(int id, ProfilePrepositionDTO profilePrepositionDTO) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != profilePrepositionDTO.Id) { return(BadRequest()); } var userId = User.Identity.GetUserId(); if (string.IsNullOrEmpty(profilePrepositionDTO.ProfileId)) { profilePrepositionDTO.ProfileId = userId; } if (profilePrepositionDTO.ProfileId != userId) { return(Unauthorized()); } db.Entry(AutoMapper.Mapper.Map <ProfilePreposition>(profilePrepositionDTO)).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProfilePrepositionExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }