示例#1
0
        private async Task <LoginResultVm> CreateSuccessLoginVm(LoginDm loginDm)
        {
            var expirationDate = AccessTokenHelper.ExpirationDate;
            var accessToken    = CreateJwtToken(loginDm.UserId, expirationDate);
            var refreshToken   = GetGuid();
            var accessTokenVm  = await GetAccessTokenVmAsync(loginDm.UserId);

            AddUserAccessInMemory(accessTokenVm);

            await InsertActiveAccessTokenAsync(accessToken,
                                               refreshToken,
                                               loginDm.UserId);

            return(new LoginResultVm
            {
                UserName = loginDm.UserName,
                FirstName = loginDm.FirstName,
                LastName = loginDm.LastName,
                RoleIds = accessTokenVm.UserRoleAccess.UserRoleIds.Distinct(),
                UserAccessIds = accessTokenVm.UserRoleAccess.UserAccessIds.Distinct(),
                AccessToken = accessToken,
                ExpiresIn = expirationDate,
                RefreshToken = refreshToken
            });
        }
示例#2
0
        private void Log(LoginDm loginDm, string userName)
        {
            var logMessage = CreateLogMessage(loginDm.ResultStatus.ToDescription(),
                                              loginDm.ObjectSerialize(),
                                              userName);

            _logger.LogInformation(logMessage);
        }
示例#3
0
        private async Task <UserLoggedInVm> CreateLoginResultVmAsync(LoginDm loginDm)
        {
            var accessTokenVm = await GetAccessTokenVmAsync(loginDm.UserId);

            return(new UserLoggedInVm
            {
                UserId = loginDm.UserId,
                UserName = loginDm.UserName,
                FirstName = loginDm.FirstName,
                LastName = loginDm.LastName,
                RoleIds = accessTokenVm.UserRoleAccess.UserRoleIds.Distinct(),
                UserAccessIds = accessTokenVm.UserRoleAccess.UserAccessIds.Distinct(),
            });
        }