// Package admin_system_log 定义管理员操作日志(操作审计)查询接口契约。 // // 路由前缀 /api/service/admin/system/log,对应 admin_menu: // - POST /api/service/admin/system/log —— system:log:list(操作日志分页查询) package admin_system_log import "github.com/gogf/gf/v2/frame/g" // LogItem 一条管理员操作日志记录。 type LogItem struct { Id uint64 `json:"id"` AdminID uint64 `json:"adminId"` // 操作人ID AdminUsername string `json:"adminUsername"` // 操作人账号(冗余) Permission string `json:"permission"` // 命中的权限码 Method string `json:"method"` // HTTP 方法 Path string `json:"path"` // 请求路径 IP string `json:"ip"` // 来源 IP IpLocation string `json:"ipLocation"` // IP 归属地 Param string `json:"param"` // 请求参数 DurationMS uint `json:"durationMs"` // 耗时(毫秒) StatusCode int `json:"statusCode"` // HTTP 状态码 ErrorMessage string `json:"errorMessage"` // 失败原因 UserAgent string `json:"userAgent"` // 浏览器 UA CreatedAt string `json:"createdAt"` // 操作时间 } // LogListReq 分页查询管理员操作日志。 type LogListReq struct { g.Meta `path:"/system/log" method:"post" tags:"Admin/System/Log" summary:"操作日志列表"` Page int `json:"page" d:"1" v:"min:1"` Size int `json:"size" d:"10" v:"min:1|max:100"` AdminID uint64 `json:"adminId"` // 按管理员ID精确过滤 Username string `json:"username"` // 按管理员账号模糊过滤 IP string `json:"ip"` // 按来源 IP 模糊过滤 IpLocation string `json:"ipLocation"` // 按 IP 归属地模糊过滤 Method string `json:"method"` // 按 HTTP 方法精确过滤 Status int `json:"status"` // 结果筛选:0 全部 / 1 成功 / 2 失败 Keyword string `json:"keyword"` // 关键字:匹配 permission / path / ip StartTime string `json:"startTime"` // 起始时间,格式 2006-01-02 15:04:05 EndTime string `json:"endTime"` // 结束时间,格式 2006-01-02 15:04:05 MinDuration int `json:"minDuration"` // 耗时下限(ms),0 不限 MaxDuration int `json:"maxDuration"` // 耗时上限(ms),0 不限 OrderBy string `json:"orderBy"` // 排序字段:createdAt(默认) | durationMs OrderDir string `json:"orderDir"` // 排序方向:desc(默认) | asc } // LogListRes 是 LogListReq 的响应。 type LogListRes struct { List []*LogItem `json:"list"` Total int `json:"total"` }