public ActionResult Login(User user)
 {
     try
     {
         var authInfo = new AuthInfo();
         authInfo = _authServices.Login(user);
         if (authInfo != null)
         {
             var authRefresh = new AuthRefresh();
             authRefresh.UserName    = authInfo.UserName;
             authRefresh.RefresToken = authInfo.RefreshToken;
             var newAuthRefresh = new AuthRefresh();
             newAuthRefresh = _authRefreshServices.CreateAuthRefresh(authRefresh);
             if (newAuthRefresh != null)
             {
                 return(Ok(authInfo));
             }
             else
             {
                 return(StatusCode(StatusCodes.Status403Forbidden, new { message = Common.Message.LOGIN_BIDDEN }));
             }
         }
         else
         {
             return(StatusCode(StatusCodes.Status401Unauthorized, new { message = Common.Message.INCORRECT_USERNAME_PASSWORD }));
         }
     }
     catch (System.Exception ex)
     {
         _logger.LogError(ex, ex.Message);
         return(StatusCode(StatusCodes.Status500InternalServerError, new ResponseMessage {
             status = "ERROR", message = ex.Message
         }));
     }
 }
 public AuthRefresh CreateAuthRefresh(AuthRefresh authRefresh)
 {
     try
     {
         _authRefresh.InsertOne(authRefresh);
         return(authRefresh);
     }
     catch (Exception ex)
     {
         _logger.LogError(ex, ex.Message);
         return(null);
     }
 }
        public long UpdateRefreshToken(AuthRefresh authRefresh)
        {
            long updateCount = 0;

            try
            {
                updateCount = _authRefresh.ReplaceOne(i => i.UserName == authRefresh.UserName, authRefresh).ModifiedCount;
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, ex.Message);
            }
            return(updateCount);
        }