Example #1
0
        public IActionResult Login(
            [FromBody]
            [SwaggerParameter("User name and Password", Required = true)]
            UserCreateOrUpdateModel model)
        {
            if (model.IsNull())
            {
                _logger.LogError(string.Format(Resource.LogErrorInvalidModel, nameof(model), string.Empty));
                return(BadRequest(Resource.Status400BadRequestInvalidModel));
            }

            var user = new UserCreateOrUpdateModel(_repository.User.GetUserByName(model.Name));

            if (user.IsNull())
            {
                _logger.LogError(string.Format(Resource.LogErrorGetByIsNull, nameof(user), nameof(model.Name), model.Name));
                return(NotFound());
            }

            if (model.Name == user.Name && model.Password == _dataProtector.Unprotect(user.Password))
            {
                return(Ok(new AuthGetModel(GetToken(user), user.Id)));
            }

            return(Unauthorized());
        }