mirror of
https://gh-proxy.org/https://github.com/klinsmaya/SQLBot.git
synced 2026-11-09 09:46:55 +08:00
refactor: canvas save
This commit is contained in:
@@ -3,7 +3,7 @@ from fastapi import APIRouter, File, UploadFile, HTTPException
|
||||
|
||||
from apps.dashboard.crud.dashboard_service import get_dashboard_list, preview_with_id, \
|
||||
create_resource, create_canvas
|
||||
from apps.dashboard.models.dashboard_model import CreateDashboard
|
||||
from apps.dashboard.models.dashboard_model import CreateDashboard,BaseDashboard
|
||||
from common.core.deps import SessionDep, CurrentUser
|
||||
|
||||
router = APIRouter(tags=["dashboard"], prefix="/dashboard")
|
||||
@@ -16,18 +16,18 @@ async def datasource_list(session: SessionDep):
|
||||
async def preview_dashboard(session: SessionDep,id:str):
|
||||
return preview_with_id(session=session,dashboard_id=id)
|
||||
|
||||
@router.post("/add", response_model=CreateDashboard)
|
||||
@router.post("/add", response_model=BaseDashboard)
|
||||
async def add(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
return create_resource(session, user, dashboard)
|
||||
|
||||
@router.post("/update", response_model=CreateDashboard)
|
||||
@router.post("/update", response_model=BaseDashboard)
|
||||
async def update(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
return create_resource(session, user, dashboard)
|
||||
|
||||
@router.post("/add_dashboard", response_model=CreateDashboard)
|
||||
async def add_dashboard(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
@router.post("/add_canvas", response_model=BaseDashboard)
|
||||
async def add_canvas(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
return create_canvas(session, user, dashboard)
|
||||
|
||||
@router.post("/update_dashboard", response_model=CreateDashboard)
|
||||
@router.post("/update_canvas", response_model=BaseDashboard)
|
||||
async def update(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
return
|
||||
@@ -27,8 +27,6 @@ def create_resource(session: SessionDep, user: CurrentUser, dashboard: CreateDas
|
||||
session.commit()
|
||||
return record
|
||||
|
||||
|
||||
|
||||
def update_resource(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
record = session.query(CoreDashboard).filter(CoreDashboard.id == dashboard.id).first()
|
||||
record.name = dashboard.name
|
||||
@@ -44,6 +42,7 @@ def create_canvas(session: SessionDep, user: CurrentUser, dashboard: CreateDashb
|
||||
record.canvas_style_data = dashboard.canvas_style_data
|
||||
session.add(record)
|
||||
session.flush()
|
||||
return record
|
||||
|
||||
def update_canvas(session: SessionDep, user: CurrentUser, dashboard: CreateDashboard):
|
||||
record = session.query(CoreDashboard).filter(CoreDashboard.id == dashboard.id).first()
|
||||
@@ -131,17 +131,19 @@ class DashboardBaseResponse(BaseModel):
|
||||
create_time: Optional[int] = None
|
||||
update_time: Optional[int] = None
|
||||
|
||||
# dashboard create obj
|
||||
class CreateDashboard(BaseModel):
|
||||
class BaseDashboard(BaseModel):
|
||||
id: str = ''
|
||||
name: str = ''
|
||||
pid: str = ''
|
||||
workspace_id: str = ''
|
||||
org_id: str = ''
|
||||
description: str = ''
|
||||
type: str = ''
|
||||
node_type: str = ''
|
||||
create_by: int = 0
|
||||
|
||||
|
||||
# dashboard create obj
|
||||
class CreateDashboard(BaseDashboard):
|
||||
canvas_style_data: str =''
|
||||
component_data: str = ''
|
||||
configuration: str = ''
|
||||
create_by: int = 0
|
||||
description: str = ''
|
||||
|
||||
Reference in New Issue
Block a user