Exemple #1
0
        public async Task <IActionResult> GetAuthToken([FromBody] LoginDetail loginDetail)
        {
            var tokenResponse = await GetTokenAsyncFromAuth0(loginDetail.UserName, loginDetail.Password);

            if (String.IsNullOrEmpty(tokenResponse.AccessToken))
            {
                return(BadRequest());
            }

            var userProfile = await GetUserInfoFromAuth0(tokenResponse.AccessToken);

            var accountingUnit = await _userProfileRepository.GetAsync(loginDetail.UserName);

            tokenResponse.UserProfile = new UserProfile(userProfile.UserId,
                                                        userProfile.Name,
                                                        userProfile.Email,
                                                        accountingUnit.Role
                                                        );

            return(Ok(tokenResponse));
        }