Files
ai-agent/internal/pkg/dto/response/dashboard_response.go
T

84 lines
3.4 KiB
Go
Raw Normal View History

2026-04-09 10:01:23 +08:00
package response
type DashboardOverviewResponse struct {
Range string `json:"range"`
GeneratedAt string `json:"generated_at"`
2026-04-09 10:01:23 +08:00
Summary DashboardSummaryResponse `json:"summary"`
ConversationStats DashboardSectionStatsResponse `json:"conversation_stats"`
AgentStats DashboardAgentStatsResponse `json:"agent_stats"`
AIStats DashboardAIStatsResponse `json:"ai_stats"`
2026-04-09 10:01:23 +08:00
Alerts []DashboardAlertResponse `json:"alerts"`
QuickLinks []DashboardQuickLinkResponse `json:"quick_links"`
2026-04-09 10:01:23 +08:00
}
type DashboardSummaryResponse struct {
TodayNewConversations int64 `json:"today_new_conversations"`
ProcessingConversations int64 `json:"processing_conversations"`
PendingDispatchConversations int64 `json:"pending_dispatch_conversations"`
OnlineAgents int64 `json:"online_agents"`
AIServiceRate float64 `json:"ai_service_rate"`
2026-04-09 10:01:23 +08:00
}
type DashboardSectionStatsResponse struct {
StatusDistribution []DashboardStatusDistributionItem `json:"status_distribution"`
2026-04-09 10:01:23 +08:00
Trend []DashboardTrendItem `json:"trend"`
}
type DashboardStatusDistributionItem struct {
Status int `json:"status"`
Label string `json:"label"`
Count int64 `json:"count"`
}
type DashboardTrendItem struct {
Date string `json:"date"`
NewCount int64 `json:"new_count"`
ClosedCount int64 `json:"closed_count"`
2026-04-09 10:01:23 +08:00
}
type DashboardAgentStatsResponse struct {
OnlineAgents int64 `json:"online_agents"`
BusyAgents int64 `json:"busy_agents"`
OfflineAgents int64 `json:"offline_agents"`
TeamLoads []DashboardTeamLoadResponse `json:"team_loads"`
2026-04-09 10:01:23 +08:00
}
type DashboardTeamLoadResponse struct {
TeamID int64 `json:"team_id"`
TeamName string `json:"team_name"`
TotalAgents int64 `json:"total_agents"`
OnlineAgents int64 `json:"online_agents"`
BusyAgents int64 `json:"busy_agents"`
OfflineAgents int64 `json:"offline_agents"`
WaitingConversations int64 `json:"waiting_conversations"`
ProcessingConversations int64 `json:"processing_conversations"`
MaxConcurrentCapacity int64 `json:"max_concurrent_capacity"`
LoadRate float64 `json:"load_rate"`
HasScheduleNow bool `json:"has_schedule_now"`
2026-04-09 10:01:23 +08:00
}
type DashboardAIStatsResponse struct {
EnabledAIAgents int64 `json:"enabled_ai_agents"`
EnabledChannels int64 `json:"enabled_channels"`
TodayKnowledgeRetrieves int64 `json:"today_knowledge_retrieves"`
TodayKnowledgeRetrieveFailCount int64 `json:"today_knowledge_retrieve_fail_count"`
TodayKnowledgeRetrieveFailRate float64 `json:"today_knowledge_retrieve_fail_rate"`
TodayAgentRunFailCount int64 `json:"today_agent_run_fail_count"`
TodayAIHandoffCount int64 `json:"today_ai_handoff_count"`
2026-04-09 10:01:23 +08:00
}
type DashboardAlertResponse struct {
ID string `json:"id"`
Level string `json:"level"`
Title string `json:"title"`
Description string `json:"description"`
Count int64 `json:"count"`
Link string `json:"link"`
}
type DashboardQuickLinkResponse struct {
Title string `json:"title"`
Description string `json:"description"`
Link string `json:"link"`
}