Exemplo n.º 1
0
        public IActionResult LoginByPin([FromBody] LoginByPinCommand command)
        {
            try
            {
                string email        = command.Email.ToLower();
                string pin          = command.Pin;
                string refreshToken = command.RefreshToken;

                LoginByPinDto loginByPinDto = _authService.LoginUser(email, pin, refreshToken);
                if (loginByPinDto == null)
                {
                    return(BadRequest());
                }

                string user = loginByPinDto.User;
                refreshToken = _authService.GetRefreshToken(email);
                string token = GetToken(email, user);
                LoginByPinViewModel model = new LoginByPinViewModel()
                {
                    RefreshToken = refreshToken,
                    Token        = token,
                    User         = user,
                    UserId       = loginByPinDto.UserId,
                    ShiftId      = loginByPinDto.ShiftId
                };

                return(Ok(model));
            }
            catch (Exception e)
            {
                Console.WriteLine("Error : {0}", e.Message);
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
        public async Task <ResultServiceModel <LoginByPinViewModel> > LoginByPin(string pin, string refreshToken, string email)
        {
            LoginByPinCommand model = new LoginByPinCommand()
            {
                Pin          = pin,
                RefreshToken = refreshToken,
                Email        = email
            };

            string url = serviceUrl + "loginbypin";

            return(await Post <LoginByPinViewModel>(url, model));
        }