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));
 }