Beispiel #1
0
        public async Task <ActionResult <ReturnUserDTO> > Login(LoginUserDTO loginUserDTO)
        {
            var user = await _apiHelper.Login(loginUserDTO.Email, loginUserDTO.Password);

            if (user == null)
            {
                return(BadRequest(new {
                    errors = "Niepoprawne hasło lub email."
                }));
            }

            var userToReturn = new ReturnUserDTO();

            userToReturn.Families = new List <ReturnFamilyDTO>();

            for (int i = 0; i < user.FamilyId.Count; i++)
            {
                userToReturn.Families.Add(await _apiHelper.ReturnFamilyInfo(user.FamilyId[i], user.Id));
            }

            var privateNotes = await _apiHelper.ReturnUserPrivateNotes(user.Id);

            userToReturn.PrivateNotes = new List <ReturnPrivateNoteDTO>();
            for (int i = 0; i < privateNotes.Count; i++)
            {
                userToReturn.PrivateNotes.Add(_mapper.Map <ReturnPrivateNoteDTO>(privateNotes[i]));
            }

            userToReturn.Token    = _tokenHelper.CreateToken(user);
            userToReturn.UserInfo = _mapper.Map <UserInfoDTO>(user);

            return(userToReturn);
        }
Beispiel #2
0
        public async Task <ActionResult <ReturnUserDTO> > Register(RegistrationUserModel user)
        {
            if (user == null)
            {
                return(Unauthorized());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(user));
            }

            var registrationUser = mapper.Map <ApplicationUser>(user);
            var result           = await userManager.CreateAsync(registrationUser, user.Password);

            if (!result.Succeeded)
            {
                return(BadRequest("Registration not success"));
            }
            else
            {
                await userManager.AddToRoleAsync(registrationUser, "User");

                string JWT_token = GenerateJWT(user.UserName, "User");

                ReturnUserDTO returnUser = mapper.Map <ReturnUserDTO>(registrationUser);
                returnUser.Token = JWT_token;
                return(returnUser);
            }
        }
Beispiel #3
0
        public async Task <ActionResult <ReturnUserDTO> > Login(LoginUser modelUser)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("User is required"));
            }

            var user = await userManager.FindByNameAsync(modelUser.UserName);

            if (user != null && await userManager.CheckPasswordAsync(user, modelUser.Password))
            {
                var roles = await userManager.GetRolesAsync(user);

                string JWT_Token = GenerateJWT(modelUser.UserName, roles[0]);

                ReturnUserDTO returnUser = mapper.Map <ReturnUserDTO>(user);
                returnUser.Token = JWT_Token;

                return(returnUser);
            }

            return(Unauthorized("Username or Password is not correct"));
        }