28 lines
920 B
Python
28 lines
920 B
Python
"""反馈统计 API"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from fastapi import APIRouter, Depends
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|
|
|
from ..core.database import get_db
|
|
from ..core.response import success_response
|
|
from ..dependencies.auth import get_current_user
|
|
from ..dependencies.tenant import get_tenant_id
|
|
from ..models import User
|
|
from ..services.feedback_center import FeedbackCenterService
|
|
|
|
router = APIRouter(prefix="/feedbacks", tags=["feedbacks"])
|
|
|
|
|
|
@router.get("/stats")
|
|
async def get_feedback_stats(
|
|
current_user: User = Depends(get_current_user),
|
|
db: AsyncSession = Depends(get_db),
|
|
tenant_id: int = Depends(get_tenant_id),
|
|
):
|
|
"""获取反馈统计"""
|
|
effective_tenant_id = int(getattr(current_user, "tenant_id", tenant_id) or tenant_id)
|
|
data = await FeedbackCenterService(db).get_signal_feedback_stats(tenant_id=effective_tenant_id)
|
|
return success_response(data)
|