public async Task <IActionResult> GetStep(int userId, string deptName, string objectiveName, string stepNumber) { if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var stepFromRepo = await _repo.GetStep(userId, deptName, objectiveName, stepNumber); StepForCreationDto stepForReturn = _mapper.Map <StepForCreationDto>(stepFromRepo); return(Ok(stepForReturn)); }
public async Task <IActionResult> AddStep(int userId, StepForCreationDto stepForCreation) { var creator = await _userRepo.GetUser(userId); if (creator.Id != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var step = _mapper.Map <Step>(stepForCreation); step.User = creator; _repo.Add(step); if (await _repo.SaveAll()) { var jobToReturn = _mapper.Map <StepForCreationDto>(step); return(CreatedAtRoute("GetStep", new { stepNumber = step.StepNumber, deptName = step.deptName, objectiveName = step.objectiveName, userId = userId }, jobToReturn)); } throw new Exception("Creation of Step failed on save"); }