增加get_list,get_value等后端api文件

This commit is contained in:
jingrow 2026-03-11 17:10:21 +08:00
parent 882278108b
commit 2574028ad1
7 changed files with 177 additions and 0 deletions

View File

@ -0,0 +1,31 @@
# Copyright (c) 2025, JINGROW and contributors
# For license information, please see license.txt
"""
jlocal 相关白名单函数 - 转发到 SaaS
"""
import jingrow
import requests
import logging
from jingrow.config import Config
from jingrow.utils.auth import get_request_session_cookie
logger = logging.getLogger(__name__)
@jingrow.whitelist()
def get_user_pagetype_permissions(**kwargs):
"""获取用户 PageType 权限 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.ai.utils.jlocal.get_user_pagetype_permissions"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.post(url, headers=headers, json=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message", {})
logger.error(f"[get_user_pagetype_permissions] SaaS error: {resp.status_code} - {resp.text[:200]}")
return {}

View File

@ -0,0 +1,65 @@
# Copyright (c) 2025, JINGROW and contributors
# For license information, please see license.txt
"""
Client 相关白名单函数 - 转发到 SaaS
"""
import jingrow
import requests
import logging
from jingrow.config import Config
from jingrow.utils.auth import get_request_session_cookie
logger = logging.getLogger(__name__)
@jingrow.whitelist()
def get_list(**kwargs):
"""获取列表 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.client.get_list"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.post(url, headers=headers, json=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message", [])
logger.error(f"[get_list] SaaS error: {resp.status_code} - {resp.text[:200]}")
return []
@jingrow.whitelist()
def get_value(**kwargs):
"""获取值 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.client.get_value"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.post(url, headers=headers, json=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message")
logger.error(f"[get_value] SaaS error: {resp.status_code} - {resp.text[:200]}")
return None
@jingrow.whitelist()
def get_count(**kwargs):
"""获取计数 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.client.get_count"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.get(url, headers=headers, params=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message", 0)
logger.error(f"[get_count] SaaS error: {resp.status_code} - {resp.text[:200]}")
return 0

View File

View File

@ -0,0 +1 @@
# Core pagetype package

View File

@ -0,0 +1 @@
# Local job package

View File

@ -0,0 +1,31 @@
# Copyright (c) 2025, JINGROW and contributors
# For license information, please see license.txt
"""
Local Job 相关白名单函数 - 转发到 SaaS
"""
import jingrow
import requests
import logging
from jingrow.config import Config
from jingrow.utils.auth import get_request_session_cookie
logger = logging.getLogger(__name__)
@jingrow.whitelist()
def get_local_job_count(**kwargs):
"""获取本地任务计数 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.core.pagetype.local_job.local_job.get_local_job_count"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.get(url, headers=headers, params=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message", 0)
logger.error(f"[get_local_job_count] SaaS error: {resp.status_code}")
return 0

View File

@ -0,0 +1,48 @@
# Copyright (c) 2025, JINGROW and contributors
# For license information, please see license.txt
"""
Desktop 相关白名单函数 - 转发到 SaaS
"""
import jingrow
import requests
import logging
from jingrow.config import Config
from jingrow.utils.auth import get_request_session_cookie
logger = logging.getLogger(__name__)
@jingrow.whitelist()
def get_workspace_sidebar_items(**kwargs):
"""获取工作区侧边栏项目 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.desk.desktop.get_workspace_sidebar_items"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.post(url, headers=headers, json=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message", {})
logger.error(f"[get_workspace_sidebar_items] SaaS error: {resp.status_code}")
return {}
@jingrow.whitelist()
def get_desktop_page(**kwargs):
"""获取桌面页面 - 转发到 SaaS 端"""
url = f"{Config.jingrow_server_url}/api/action/jingrow.desk.desktop.get_desktop_page"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
session_cookie = get_request_session_cookie()
if session_cookie:
headers["Cookie"] = f"sid={session_cookie}"
resp = requests.post(url, headers=headers, json=kwargs, timeout=30)
if resp.status_code == 200:
return resp.json().get("message", {})
logger.error(f"[get_desktop_page] SaaS error: {resp.status_code}")
return {}