public async Task <IViewComponentResult> InvokeAsync()
        {
            var roles = ((ClaimsPrincipal)User).GetSpecificClaim("Role");
            List <FunctionViewModel> functions;

            if (roles.Split(";").Contains(CommonConstants.AppRole.AdminRole))
            {
                functions = await _functionService.GetAll(string.Empty);
            }
            else
            {
                //TODO: Get by permission
                // viết 1 hàm truyền vào list role trả về những function nào được truy xuất từ roles đó.
                // lấy con thì phải lấy cha nó để hiểu thị hehe // thử nghiệm lấy con thôi ?
                functions = _functionService.GetAllByRoles(roles);
            }
            return(View(functions));
        }