Esempio n. 1
0
        public async Task <IActionResult> Index(LoginInfoDto loginInfoDto)
        {
            if (!ModelState.IsValid)
            {
                return(View(loginInfoDto));
            }
            SOApiResult <string> resultGetToken = await _userService.GetToken(loginInfoDto);

            if (resultGetToken.IsSucceed && !string.IsNullOrEmpty(resultGetToken.ReturnedData))
            {
                string          token         = resultGetToken.ReturnedData;
                ClaimsPrincipal userPrincipal = this.ValidateToken(token);
                //cookie
                var authProp = new AuthenticationProperties()
                {
                    ExpiresUtc   = DateTimeOffset.UtcNow.AddMinutes(SystemValue.TIMELIFE_COOKIE_MINUTES),
                    IsPersistent = true,
                };

                //Save cookie to Browser - IMPORTANT
                //The final step validate CookieAuthen
                await HttpContext.SignInAsync(
                    CookieAuthenticationDefaults.AuthenticationScheme,
                    userPrincipal,
                    authProp);

                HttpContext.Session.SetString(SystemValue.TOKEN_NAME, token);

                return(RedirectToAction("Index", "Home"));
            }
            //Log Here
            ModelState.AddModelError("Exception", resultGetToken.Message);
            return(View());
        }
        public async Task <IActionResult> GetByUserId([FromQuery] Guid userId)
        {
            SOApiResult <UserDto> result = await _userApiService.GetByUserId(userId);

            if (result.IsSucceed)
            {
                return(Ok(result.ReturnedDataJSON));
            }
            return(BadRequest(result.Message));
        }
        public async Task <IActionResult> UpdatePassword([FromQuery] Guid userId, [FromBody] string newPassword)
        {
            SOApiResult <bool> result = await _userApiService.UpdatePassword(userId, newPassword);

            if (result.IsSucceed)
            {
                return(Ok());
            }
            return(BadRequest(result.Message));
        }
        public async Task <IActionResult> UpdateBasicInfo([FromBody] UserBasicInfoDto basicInfoDto)
        {
            SOApiResult <bool> result = await _userApiService.UpdateBasicInfo(basicInfoDto);

            if (result.IsSucceed)
            {
                return(Ok());
            }
            return(BadRequest(result.Message));
        }
        public async Task <IActionResult> Create([FromBody] CreateUserDto createUserDto)
        {
            SOApiResult <bool> result = await _userApiService.Create(createUserDto);

            if (result.IsSucceed)
            {
                return(Ok());
            }
            return(BadRequest(result.Message));
        }
        public IActionResult GetUserList()
        {
            ReadUserDto readUserDto = new ReadUserDto();
            SOApiResult <List <UserDto> > result = _userApiService.GetUserList(readUserDto);

            if (result.IsSucceed)
            {
                return(Ok(result.ReturnedDataJSON));
            }
            return(BadRequest(result.Message));
        }
Esempio n. 7
0
        public async Task <IActionResult> GetUserList()
        {
            ReadUserDto readUserDto = new ReadUserDto();
            SOApiResult <List <UserDto> > result = await _userService.GetUserList(readUserDto);

            if (!result.IsSucceed)
            {
                //Log Here
                return(View("UserList", new List <UserDto>()));
            }
            return(View("UserList", result.ReturnedData));
        }
Esempio n. 8
0
        public async Task <SOApiResult <bool> > UpdateBasicInfo(UserBasicInfoDto basicInfoDto)
        {
            SOApiResult <bool> result = _repository.SUSER_REPOSITORY.VerifyUserInfo(new UserDto()
            {
                UserId = basicInfoDto.UserId,
                Email  = basicInfoDto.Email
            });

            if (result.IsSucceed)
            {
                return(await _repository.SUSER_REPOSITORY.UpdateBasicInfo(basicInfoDto));
            }
            return(result);
        }
Esempio n. 9
0
        public async Task <SOApiResult <bool> > Create(CreateUserDto createUserDto)
        {
            SOApiResult <bool> result = _repository.SUSER_REPOSITORY.VerifyUserInfo(new UserDto()
            {
                Username = createUserDto.UserName,
                Email    = createUserDto.Email
            });

            if (result.IsSucceed)
            {
                return(await _repository.SUSER_REPOSITORY.Create(createUserDto));
            }
            return(result);
        }
Esempio n. 10
0
        public async Task <IActionResult> GetToken([FromBody] LoginInfoDto loginInfoDto)
        {
            SOApiResult <bool> resultLogin = await _userApiService.IsSucceedLogin(loginInfoDto);

            if (resultLogin.IsSucceed)
            {
                SOApiResult <string> result = await _userApiService.GenerateToken(loginInfoDto.UserName);

                if (result.IsSucceed)
                {
                    return(Ok(result.ReturnedDataJSON));
                }
                return(BadRequest(result.Message));
            }
            return(BadRequest(resultLogin.Message));
        }
Esempio n. 11
0
        public async Task <IActionResult> Update(UserBasicInfoDto basicInfoDto)
        {
            if (ModelState.IsValid)
            {
                SOApiResult <bool> result = await _userService.UpdateBasicInfo(basicInfoDto);

                if (result.IsSucceed)
                {
                    return(RedirectToAction("GetUserList"));
                }
                else
                {
                    ModelState.AddModelError("Exception", result.Message);
                }
            }
            //Log Here
            return(View("UserBasicInfo", basicInfoDto));
        }
Esempio n. 12
0
        public async Task <IActionResult> Create(CreateUserDto createUserDto)
        {
            if (ModelState.IsValid)
            {
                SOApiResult <bool> result = await _userService.Create(createUserDto);

                if (result.IsSucceed)
                {
                    return(RedirectToAction("GetUserList"));
                }
                else
                {
                    ModelState.AddModelError("Exception", result.Message);
                }
            }
            //Log Here
            return(View(createUserDto));
        }
Esempio n. 13
0
        public async Task <IActionResult> Update(Guid userId)
        {
            UserBasicInfoDto      basicInfoDto = new UserBasicInfoDto();
            SOApiResult <UserDto> result       = await _userService.GetByUserId(userId);

            if (!result.IsSucceed)
            {
                //Log Here
            }
            else
            {
                UserDto userDto = result.ReturnedData;
                basicInfoDto.UserId   = userDto.UserId;
                basicInfoDto.FullName = userDto.FullName;
                basicInfoDto.DOB      = userDto.DOB;
                basicInfoDto.Email    = userDto.Email;
            };
            return(View("UserBasicInfo", basicInfoDto));
        }