53 lines
1023 B
Go
53 lines
1023 B
Go
package controller
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
"hy2xs-admin/model/vo"
|
|
"hy2xs-admin/service"
|
|
"strconv"
|
|
)
|
|
|
|
func DashboardSummary(c *gin.Context) {
|
|
data, err := service.DashboardSummary()
|
|
if err != nil {
|
|
vo.Fail(err.Error(), c)
|
|
return
|
|
}
|
|
vo.Success(data, c)
|
|
}
|
|
|
|
func DashboardTimeseries(c *gin.Context) {
|
|
rangeKey := c.DefaultQuery("range", "24h")
|
|
data, err := service.DashboardTimeseries(rangeKey)
|
|
if err != nil {
|
|
vo.Fail(err.Error(), c)
|
|
return
|
|
}
|
|
vo.Success(data, c)
|
|
}
|
|
|
|
func DashboardTopPeers(c *gin.Context) {
|
|
rangeKey := c.DefaultQuery("range", "24h")
|
|
limit := 10
|
|
if raw := c.Query("limit"); raw != "" {
|
|
if parsed, err := strconv.Atoi(raw); err == nil && parsed > 0 {
|
|
limit = parsed
|
|
}
|
|
}
|
|
data, err := service.DashboardTopPeers(rangeKey, limit)
|
|
if err != nil {
|
|
vo.Fail(err.Error(), c)
|
|
return
|
|
}
|
|
vo.Success(data, c)
|
|
}
|
|
|
|
func DashboardSecurity(c *gin.Context) {
|
|
data, err := service.DashboardSecurity()
|
|
if err != nil {
|
|
vo.Fail(err.Error(), c)
|
|
return
|
|
}
|
|
vo.Success(data, c)
|
|
}
|