11from 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
33from common .core .deps import SessionDep , CurrentUser
44import uuid
55import time
66
77from 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):
4247def 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+
6976def 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