Exemple #1
0
        public async Task <IActionResult> Post([FromBody] CreateNewUser user)
        {
            try
            {
                if (user.Password == null)
                {
                    user.Password = Guid.NewGuid().ToString();
                }

                var userModel = _mapper.Map <UserModel>(user);
                userModel = await _userService.CreateAsync(userModel);

                var authenticatedUserModel = await _userService.AuthenticateAsync(user.Email, user.Password);

                var authenticatedUserDto = new AuthenticatedUser()
                {
                    Id    = userModel.Id,
                    Email = authenticatedUserModel.Email,
                    Token = authenticatedUserModel.Token
                };
                var auditActionResult = new AuditActionResult <AuthenticatedUser>
                {
                    Object = authenticatedUserDto
                };

                return(Ok(auditActionResult));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Exemple #2
0
        public async Task <IActionResult> Authenticate([FromBody] Authenticate model)
        {
            var user = await _userService.AuthenticateAsync(model.Email, model.Password);

            if (user == null)
            {
                return(BadRequest(new { message = "Username or password is incorrect" }));
            }

            var authenticatedUser = new AuthenticatedUser()
            {
                Email = user.Email,
                Token = user.Token
            };

            var auditActionResult = new AuditActionResult <AuthenticatedUser>
            {
                Object = authenticatedUser
            };

            return(Ok(auditActionResult));
        }