Skip to content

Commit 6fb855c

Browse files
committed
refactor: dashboard with auth
1 parent 8cd16be commit 6fb855c

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

backend/apps/dashboard/api/dashboard_api.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
from apps.dashboard.crud.dashboard_service import list_resource, load_resource, \
44
create_resource, create_canvas, validate_name, delete_resource, update_resource, update_canvas
5-
from apps.dashboard.models.dashboard_model import CreateDashboard, BaseDashboard, QueryDashboard,DashboardResponse
5+
from apps.dashboard.models.dashboard_model import CreateDashboard, BaseDashboard, QueryDashboard, DashboardResponse
66
from common.core.deps import SessionDep, CurrentUser
77

88
router = APIRouter(tags=["dashboard"], prefix="/dashboard")
99

1010

1111
@router.post("/list_resource")
12-
async def list_resource_api(session: SessionDep, dashboard: QueryDashboard):
13-
return list_resource(session=session, dashboard=dashboard)
12+
async def list_resource_api(session: SessionDep, dashboard: QueryDashboard, current_user: CurrentUser):
13+
return list_resource(session=session, dashboard=dashboard, current_user=current_user)
1414

1515

1616
@router.post("/load_resource")

backend/apps/dashboard/crud/dashboard_service.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,21 @@
11
from sqlalchemy import select, and_, text
2-
from apps.dashboard.models.dashboard_model import CoreDashboard, CreateDashboard, QueryDashboard,DashboardBaseResponse
2+
from apps.dashboard.models.dashboard_model import CoreDashboard, CreateDashboard, QueryDashboard, DashboardBaseResponse
33
from common.core.deps import SessionDep, CurrentUser
44
import uuid
55
import time
66

77
from common.utils.tree_utils import build_tree_generic
88

99

10-
def list_resource(session: SessionDep, dashboard: QueryDashboard):
10+
def list_resource(session: SessionDep, dashboard: QueryDashboard, current_user: CurrentUser):
1111
sql = "SELECT id, name, type, node_type, pid, create_time FROM core_dashboard"
1212
filters = []
1313
params = {}
14+
oid = str(current_user.oid if current_user.oid is not None else 1)
15+
filters.append("workspace_id = :workspace_id")
16+
filters.append("create_by = :create_by")
17+
params["workspace_id"] = oid
18+
params["create_by"] = str(current_user.id)
1419
if dashboard.node_type is not None and dashboard.node_type != "":
1520
filters.append("node_type = :node_type")
1621
params["node_type"] = dashboard.node_type
@@ -42,6 +47,7 @@ def load_resource(session: SessionDep, dashboard: QueryDashboard):
4247
def get_create_base_info(user: CurrentUser, dashboard: CreateDashboard):
4348
new_id = uuid.uuid4().hex
4449
record = CoreDashboard(**dashboard.model_dump())
50+
record.workspace_id = user.oid
4551
record.id = new_id
4652
record.create_by = user.id
4753
record.create_time = int(time.time())
@@ -66,6 +72,7 @@ def update_resource(session: SessionDep, user: CurrentUser, dashboard: QueryDash
6672
session.commit()
6773
return record
6874

75+
6976
def create_canvas(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
7077
record = get_create_base_info(user, dashboard)
7178
record.node_type = dashboard.node_type

0 commit comments

Comments
 (0)