public IActionResult LoginByToken([FromBody] IdentityByTokenModel model) { try { var identity = identityService.GetToken(model); switch (identity.Result) { case VerificationResult.Ok: return(Ok(identity.Data)); case VerificationResult.Forbidden: return(BadRequest("UserNotFound")); case VerificationResult.WrongCredentials: return(BadRequest("UserIncorrectData")); default: return(StatusCode(500)); } } catch (Exception ex) { Log.Error(ex, "Failed to Login"); return(StatusCode(500, ex.Message)); } }
public VerificationResultWith <TokenModel> GetToken(IdentityByTokenModel model) { var user = _dataService.GetById <User>(model.UserId); if (user != null && !user.IsActive) { return new VerificationResultWith <TokenModel> { Result = VerificationResult.Forbidden, Data = null } } ; var identity = GetIdentity(user.Email, Uri.UnescapeDataString(model.Token), model.Language, true); return(GetTokenInner(user, identity)); }