feat: add admin audit log endpoint

This commit is contained in:
OpenClaw Agent
2026-09-17 02:20:24 +08:00
parent c4aa30e564
commit dcf01e8f4c
2 changed files with 14 additions and 0 deletions
+13
View File
@@ -82,6 +82,19 @@ func (a *App) adminCreateUser(c *gin.Context) {
c.JSON(201, u) c.JSON(201, u)
} }
func (a *App) adminAudit(c *gin.Context) {
var logs []AuditLog
q := a.db.Order("id desc").Limit(200)
if action := c.Query("action"); action != "" {
q = q.Where("action = ?", action)
}
if err := q.Find(&logs).Error; err != nil {
c.JSON(500, gin.H{"error": err.Error()})
return
}
c.JSON(200, gin.H{"data": logs})
}
func (a *App) adminUpdateUser(c *gin.Context) { func (a *App) adminUpdateUser(c *gin.Context) {
id, err := strconv.ParseUint(c.Param("id"), 10, 64) id, err := strconv.ParseUint(c.Param("id"), 10, 64)
if err != nil { if err != nil {
+1
View File
@@ -50,6 +50,7 @@ func main() {
auth.DELETE("/tasks/:id", a.requirePermission(PermDownload), a.deleteTask) auth.DELETE("/tasks/:id", a.requirePermission(PermDownload), a.deleteTask)
admin := api.Group("/admin", a.requireAuth, a.requireAdmin) admin := api.Group("/admin", a.requireAuth, a.requireAdmin)
admin.GET("/users", a.adminListUsers) admin.GET("/users", a.adminListUsers)
admin.GET("/audit", a.adminAudit)
admin.POST("/users", a.adminCreateUser) admin.POST("/users", a.adminCreateUser)
admin.PUT("/users/:id", a.adminUpdateUser) admin.PUT("/users/:id", a.adminUpdateUser)
admin.GET("/redeem", a.adminListRedeemBatches) admin.GET("/redeem", a.adminListRedeemBatches)