public async Task <AuthResultModel> AuthenticateUser(AuthModelWithCredentials data)
        {
            AuthResultModel result = null;

            try
            {
                var authData = await _authServiceRepository.GetUserByСredentials(data.Login, data.Password);

                result = MapperExtensions.Convert <AuthData, AuthResultModel>(authData);

                logger.Information($"AuthenticateUser [WithCredentials]  by {data.Login} was successfully");
            }
            catch (Exception e)
            {
                logger.Error($"Method: AuthenticateUser With Credentials Message: {e.Message}");
                throw;
            }

            return(result);
        }
        public async Task <IActionResult> AuthWithCredentials([FromBody] AuthModelWithCredentials authData)
        {
            IActionResult response = Unauthorized();

            try
            {
                var user = await _authService.AuthenticateUser(authData);

                if (user != null)
                {
                    var tokenString  = TokenPublisher.GenerateAccessToken(user, _config);
                    var refreshToken = TokenPublisher.GenerateRefreshToken();

                    user.AccessToken            = tokenString;
                    user.RefreshToken           = refreshToken;
                    user.RefreshTokenExpiryTime = DateTime.Now.AddDays(365);

                    await _authService.UpdateRefreshToken(new UpdateRefreshTokenModel
                    {
                        Id                     = user.Id,
                        RefreshToken           = user.RefreshToken,
                        RefreshTokenExpiryTime = user.RefreshTokenExpiryTime
                    });

                    response = new OkObjectResult(
                        user
                        );

                    logger.Information(
                        $"Type: AuthenticationController; Method: AuthWithCredentials; Info: Auth With Credentials by Login: {authData.Login} successfully");
                }
            }
            catch (Exception e)
            {
                logger.Error($"Type: AuthenticationController; Method: AuthWithCredentials; Error: {e.Message}");
                throw;
            }

            return(response);
        }