35 lines
696 B
Go
35 lines
696 B
Go
package statistics
|
|
|
|
import (
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
// Handler 统计处理器
|
|
type Handler struct {
|
|
service *Service
|
|
}
|
|
|
|
// NewHandler 创建统计处理器
|
|
func NewHandler(service *Service) *Handler {
|
|
return &Handler{
|
|
service: service,
|
|
}
|
|
}
|
|
|
|
// GetStatistics 获取统计数据
|
|
func (h *Handler) GetStatistics(c *fiber.Ctx) error {
|
|
stats, err := h.service.GetStatistics()
|
|
if err != nil {
|
|
return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{
|
|
"success": false,
|
|
"message": "获取统计数据失败: " + err.Error(),
|
|
})
|
|
}
|
|
|
|
return c.Status(fiber.StatusOK).JSON(fiber.Map{
|
|
"success": true,
|
|
"message": "获取统计数据成功",
|
|
"data": stats,
|
|
})
|
|
}
|