mongo开发工具类增加增删改操作日志写入redis消息逻辑

This commit is contained in:
2025-12-30 18:18:56 +08:00
parent 5ded2b08a2
commit 8c4918e4ed
6 changed files with 106 additions and 138 deletions

View File

@@ -20,37 +20,27 @@ type GetLogResp struct {
// OperationLogInfo 操作日志信息
type OperationLogInfo struct {
ID string `json:"id" dc:"日志ID"`
Module string `json:"module" dc:"模块名"`
Service string `json:"service" dc:"服务名"`
Operation string `json:"operation" dc:"操作类型"`
Resource string `json:"resource" dc:"资源类型"`
ResourceID string `json:"resource_id" dc:"资源ID"`
UserID interface{} `json:"user_id" dc:"操作人ID"`
UserName string `json:"user_name" dc:"操作人名称"`
IPAddress string `json:"ip_address" dc:"操作IP地址"`
UserAgent string `json:"user_agent" dc:"用户代理"`
Description string `json:"description" dc:"操作描述"`
BeforeData map[string]interface{} `json:"before_data" dc:"操作前的数据"`
AfterData map[string]interface{} `json:"after_data" dc:"操作后的数据"`
ExtraData map[string]interface{} `json:"extra_data" dc:"额外数据"`
CreatedAt string `json:"created_at" dc:"创建时间"`
UpdatedAt string `json:"updated_at" dc:"更新时间"`
ID string `json:"id" dc:"日志ID"`
ServiceName string `json:"service_name" dc:"服务名"`
Collection string `json:"collection" dc:"数据所在集合名称"`
CollectionID string `json:"collection_id" dc:"数据ID"`
Operation string `json:"operation" dc:"操作类型"`
UserName string `json:"user_name" dc:"操作人名称"`
IPAddress string `json:"ip_address" dc:"操作IP地址"`
Data map[string]interface{} `json:"data" dc:"当前数据"`
}
// ListLogsReq 查询操作日志列表请求(通用方法,支持根据不同条件动态查询)
type ListLogsReq struct {
g.Meta `path:"/listLogs" method:"get" tags:"操作日志" summary:"查询操作日志列表" dc:"根据多个条件查询操作日志列表"`
beans.Page
Module string `json:"module" dc:"模块名(可选)"`
Service string `json:"service" dc:"服务名(可选)"`
Operation string `json:"operation" dc:"操作类型(可选)"`
Resource string `json:"resource" dc:"资源类型(可选)"`
ResourceID string `json:"resource_id" dc:"资源ID(可选)"`
UserID string `json:"user_id" dc:"用户ID(可选)"`
StartTime string `json:"start_time" dc:"开始时间(可选)"`
EndTime string `json:"end_time" dc:"结束时间(可选)"`
SortFields string `json:"sort_fields" dc:"排序字段,多个用逗号分隔,如:-createdAt,module可选"`
ServiceName string `json:"service_name" dc:"服务名(可选)"`
Collection string `json:"collection" dc:"数据所在集合名称(可选)"`
CollectionID string `json:"collection_id" dc:"数据ID(可选)"`
Operation string `json:"operation" dc:"操作类型(可选)"`
StartTime string `json:"start_time" dc:"开始时间(可选)"`
EndTime string `json:"end_time" dc:"结束时间(可选)"`
SortFields string `json:"sort_fields" dc:"排序字段,多个用逗号分隔,如:-createdAt"`
}
// ListLogsResp 查询操作日志列表响应
@@ -63,34 +53,7 @@ type ListLogsResp struct {
// RecordCreateLogReq 记录创建操作日志请求
type RecordCreateLogReq struct {
g.Meta `path:"/recordCreateLog" method:"post" tags:"操作日志" summary:"记录创建操作日志" dc:"记录数据创建操作的行为日志"`
Module string `json:"module" v:"required" dc:"模块名"`
Service string `json:"service" v:"required" dc:"服务名"`
Resource string `json:"resource" v:"required" dc:"资源类型"`
ResourceID string `json:"resource_id" v:"required" dc:"资源ID"`
Description string `json:"description" dc:"操作描述"`
AfterData map[string]interface{} `json:"after_data" dc:"操作后的数据"`
}
// RecordUpdateLogReq 记录更新操作日志请求
type RecordUpdateLogReq struct {
g.Meta `path:"/recordUpdateLog" method:"post" tags:"操作日志" summary:"记录更新操作日志" dc:"记录数据更新操作的行为日志"`
Module string `json:"module" v:"required" dc:"模块名"`
Service string `json:"service" v:"required" dc:"服务名"`
Resource string `json:"resource" v:"required" dc:"资源类型"`
ResourceID string `json:"resource_id" v:"required" dc:"资源ID"`
Description string `json:"description" dc:"操作描述"`
BeforeData map[string]interface{} `json:"before_data" dc:"操作前的数据"`
AfterData map[string]interface{} `json:"after_data" dc:"操作后的数据"`
}
// RecordDeleteLogReq 记录删除操作日志请求
type RecordDeleteLogReq struct {
g.Meta `path:"/recordDeleteLog" method:"post" tags:"操作日志" summary:"记录删除操作日志" dc:"记录数据删除操作的行为日志"`
Module string `json:"module" v:"required" dc:"模块名"`
Service string `json:"service" v:"required" dc:"服务名"`
Resource string `json:"resource" v:"required" dc:"资源类型"`
ResourceID string `json:"resource_id" v:"required" dc:"资源ID"`
Description string `json:"description" dc:"操作描述"`
BeforeData map[string]interface{} `json:"before_data" dc:"操作前的数据"`
ServiceName string `json:"service_name" v:"required" dc:"服务名"`
Collection string `json:"collection" v:"required" dc:"数据所在集合名称"`
Data []interface{} `json:"data" dc:"当前数据"`
}