You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

56 lines
2.6 KiB

from typing import List
from fastapi import APIRouter, Depends, Request
from sqlalchemy.ext.asyncio import AsyncSession
from config.get_db import get_db
from module_admin.entity.vo.user_vo import CurrentUserModel
from module_admin.entity.vo.dataint_vo import SscfPageObject, SaveSscfModel, TreeOperateModel
from module_admin.service.login_service import LoginService
from module_admin.service.sscf_service import SscfService
from utils.response_util import ResponseUtil
sscfController = APIRouter(prefix='/dataint/sscf', dependencies=[Depends(LoginService.get_current_user)])
@sscfController.get("/list")
async def get_tsmcb_list(request: Request, sscf_query: SscfPageObject = Depends(SscfPageObject.as_query),
query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
meta_query_result = await SscfService.get_sscf_list_services(query_db, sscf_query, current_user)
return ResponseUtil.success(data=meta_query_result)
@sscfController.get("/tree")
async def get_tsmcb_list(request: Request,
query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
meta_query_result = await SscfService.get_dasset_tree_services(query_db, current_user)
return ResponseUtil.success(data=meta_query_result)
@sscfController.post("/tree")
async def get_tsmcb_list(request: Request,
treeOperate: TreeOperateModel,
query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
meta_query_result = await SscfService.save_dasset_tree_services(query_db, treeOperate, current_user)
return ResponseUtil.success(data=meta_query_result)
@sscfController.post("/save")
async def save_tsmcb(request: Request,
saveSscfModel: SaveSscfModel,
query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
result = await SscfService.save_sscf(query_db, saveSscfModel, current_user)
return ResponseUtil.success(msg=result.message)
@sscfController.post("/delete")
async def delete_tsmcb(request: Request,
array: List[str],
query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
result = await SscfService.delete_sscf(query_db, array)
return ResponseUtil.success(msg=result.message)