Files
ShiErFeng/shierfeng-fastapi-backend/module_business/controller/dashboard_controller.py
T

38 lines
1.4 KiB
Python

"""首页运营驾驶舱接口。"""
from typing import Annotated
from fastapi import Request, Response
from sqlalchemy.ext.asyncio import AsyncSession
from common.aspect.db_seesion import DBSessionDependency
from common.aspect.pre_auth import CurrentUserDependency, PreAuthDependency
from common.router import APIRouterPro
from common.vo import PageResponseModel
from module_admin.entity.vo.user_vo import CurrentUserModel
from module_business.entity.vo.dashboard_vo import ScanExceptionModel
from module_business.service.dashboard_service import DashboardService
from utils.response_util import ResponseUtil
dashboard_controller = APIRouterPro(
prefix='/business/dashboard',
tags=['业务管理-运营驾驶舱'],
dependencies=[PreAuthDependency()],
)
@dashboard_controller.get(
'/scan-exceptions',
summary='获取首页扫码异常分页列表接口',
description='普通用户仅查看本人扫码异常,超级管理员查看全部扫码异常',
response_model=PageResponseModel[ScanExceptionModel],
)
async def get_business_dashboard_scan_exceptions(
request: Request,
query_db: Annotated[AsyncSession, DBSessionDependency()],
current_user: Annotated[CurrentUserModel, CurrentUserDependency()],
) -> Response:
result = await DashboardService.get_scan_exception_list_services(query_db, current_user)
return ResponseUtil.success(model_content=result)