public UserResponse GetUserById(UserRequest request)
        {
            var response = new UserResponse();

            try
            {
                var user = UserManager.FindById(request.UserId);
                response.ApplicationUserDto = MapperHelper.ApplicationUserDTOMapper(user);
                return(response);
            }
            catch (Exception ex)
            {
                response.ResponseMessage = ex.Message;
                response.ResponseStatus  = ResponseStatus.ExpectationFailed;
                return(response);
            }
        }
        public UserLoginResponse Authenticate(UserLoginRequest request)
        {
            var x = new UserLoginResponse();

            //var r = RoleManager.Roles;
            var user = UserManager.Find(request.UserName, request.Password);

            if (user == null)
            {
                x.ResponseStatus  = ResponseStatus.ExpectationFailed;
                x.ResponseMessage =
                    MessageDescription.MessageDescription.ApplicationUserRequestIsNull.GetEnumDescription();
                x.ApplicationUser = null;
                return(x);
            }
            x.ApplicationUser = MapperHelper.ApplicationUserDTOMapper(user);
            if (user.EmailConfirmed && user.Status != null && user.Status == 1 && !user.LockoutEnabled)
            {
                x.ResponseStatus = ResponseStatus.Ok;

                x.ResponseMessage = MessageDescription.MessageDescription.UserStatusIsOk.GetDescription();
            }
            else
            {
                if (!user.EmailConfirmed)
                {
                    x.ResponseStatus = ResponseStatus.Ok;

                    x.ResponseMessage = MessageDescription.MessageDescription.EmailNotConfirmed.GetDescription();
                }
            }
            if (user.Status != null && user.Status == 1)
            {
                x.ResponseStatus  = ResponseStatus.BadRequest;
                x.ResponseMessage = MessageDescription.MessageDescription.UserNotActive.GetDescription();
            }


            else
            {
                x.ResponseStatus  = ResponseStatus.ExpectationFailed;
                x.ResponseMessage = MessageDescription.MessageDescription.UserNotActive.GetDescription();
            }
            return(x);
        }
        public UserLoginResponse Login(UserLoginRequest request)
        {
            var x = new UserLoginResponse();

            //var r = RoleManager.Roles;
            var user = UserManager.Find(request.UserName, request.Password);

            if (user == null)
            {
                x.LoginStatusEnum = LoginStatusEnum.ExpectationFailed;
                x.ApplicationUser = null;
                return(x);
            }
            if (user != null)
            {
                x.ApplicationUser = MapperHelper.ApplicationUserDTOMapper(user);
                if (user.EmailConfirmed && user.IsActive != null && (bool)user.IsActive && !user.LockoutEnabled)
                {
                    x.LoginStatusEnum = LoginStatusEnum.Ok;
                }
                else
                {
                    if (!user.EmailConfirmed)
                    {
                        x.LoginStatusEnum = LoginStatusEnum.BadRequest;

                        x.ErrorList.Add("Email not Confirmed");
                    }
                    if (user.IsActive != null && !(bool)user.IsActive)
                    {
                        x.LoginStatusEnum = LoginStatusEnum.BadRequest;
                        x.ErrorList.Add("user not active");
                    }
                }
            }
            else
            {
                x.LoginStatusEnum = LoginStatusEnum.ExpectationFailed;
            }
            return(x);
        }
        public UserResponse GetUserById(UserRequest request)
        {
            var response = new UserResponse();

            try
            {
                var user = UserManager.FindById(request.UserId);
                response.ApplicationUserDto = MapperHelper.ApplicationUserDTOMapper(user);
                response.ResponseStatus     = ResponseStatus.Ok;

                return(response);
            }
            catch (Exception ex)
            {
                response.ResponseMessage = MessageDescription.MessageDescription.TransactionFailed.GetDescription();
                response.ResponseStatus  = ResponseStatus.ExpectationFailed;
                Logger.ErrorException(ex.Message, ex);

                return(response);
            }
        }