public async Task <IActionResult> Post([FromBody] DetailPersonalityDto detailPersonalityDto) { //Get header token if (Request.Headers.TryGetValue("Authorization", out StringValues headerValues)) { var token = _customEncoder.DecodeBearerAuth(headerValues.First()); if (token != null) { //Verify if the token exist and is not expire if (await _authenticationService.CheckIfTokenIsValidAsync(token)) { var user = await _userService.GetUserAsyncByToken(token); if (user.IsAdmin == 1) { var detailPersonalityApiDto = await _personalityService.PostAsyncDetailPersonality(detailPersonalityDto); if (detailPersonalityApiDto == null) { return(StatusCode(404, "Unable to create referencial personality.")); } return(Ok(detailPersonalityApiDto)); } return(StatusCode(403, "Invalid user.")); } return(StatusCode(401, "Invalid token.")); } return(StatusCode(401, "Invalid authorization.")); } return(StatusCode(401, "Invalid authorization.")); }
/// <summary> /// Posts the async detail personality. /// </summary> /// <returns>The async detail personality.</returns> /// <param name="detailPersonalityDto">Detail personality dto.</param> public async Task <DetailPersonalityApiDto> PostAsyncDetailPersonality(DetailPersonalityDto detailPersonalityDto) { return(await _dal.PostAsyncDetailPersonality(detailPersonalityDto)); }