38 lines
1.4 KiB
Python
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)
|