PMFlow/backend/app/api/feedbacks.py

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)