76 lines
2.8 KiB
Go
76 lines
2.8 KiB
Go
// Package sysin
|
|
// @Link https://github.com/bufanyun/hotgo
|
|
// @Copyright Copyright (c) 2026 HotGo
|
|
// @Author Ms <133814250@qq.com>
|
|
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
|
package sysin
|
|
|
|
import (
|
|
"context"
|
|
"hotgo/internal/model/input/form"
|
|
|
|
"github.com/gogf/gf/v2/errors/gerror"
|
|
"github.com/gogf/gf/v2/os/gtime"
|
|
)
|
|
|
|
// ImAuditLogListInp 获取IM审计日志列表
|
|
type ImAuditLogListInp struct {
|
|
form.PageReq
|
|
TenantId int64 `json:"tenantId" dc:"租户ID"`
|
|
ActorUid int64 `json:"actorUid" dc:"操作人UID"`
|
|
ActorRole string `json:"actorRole" dc:"操作角色"`
|
|
Action string `json:"action" dc:"操作类型"`
|
|
TargetType string `json:"targetType" dc:"目标类型"`
|
|
TargetId string `json:"targetId" dc:"目标ID"`
|
|
RequestId string `json:"requestId" dc:"请求ID"`
|
|
Ip string `json:"ip" dc:"IP"`
|
|
Keyword string `json:"keyword" dc:"关键词"`
|
|
CreatedAt []*gtime.Time `json:"createdAt" dc:"创建时间"`
|
|
}
|
|
|
|
func (in *ImAuditLogListInp) Filter(ctx context.Context) (err error) {
|
|
if in.TenantId <= 0 {
|
|
return gerror.New("请选择租户")
|
|
}
|
|
return
|
|
}
|
|
|
|
type ImAuditLogListModel struct {
|
|
TenantId int64 `json:"tenantId" dc:"租户ID"`
|
|
TenantName string `json:"tenantName" dc:"租户名称"`
|
|
Id int64 `json:"id" dc:"ID"`
|
|
ActorUid int64 `json:"actorUid" dc:"操作人UID"`
|
|
ActorRole string `json:"actorRole" dc:"操作角色"`
|
|
Action string `json:"action" dc:"操作类型"`
|
|
TargetType string `json:"targetType" dc:"目标类型"`
|
|
TargetId string `json:"targetId" dc:"目标ID"`
|
|
Reason string `json:"reason" dc:"操作原因"`
|
|
RequestId string `json:"requestId" dc:"请求ID"`
|
|
Ip string `json:"ip" dc:"IP"`
|
|
UserAgent string `json:"userAgent" dc:"客户端"`
|
|
BeforeSnapshot string `json:"beforeSnapshot" dc:"变更前快照"`
|
|
AfterSnapshot string `json:"afterSnapshot" dc:"变更后快照"`
|
|
Metadata string `json:"metadata" dc:"元数据"`
|
|
CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"`
|
|
}
|
|
|
|
// ImAuditLogViewInp 获取指定IM审计日志信息
|
|
type ImAuditLogViewInp struct {
|
|
TenantId int64 `json:"tenantId" v:"required#租户ID不能为空" dc:"租户ID"`
|
|
Id int64 `json:"id" v:"required#ID不能为空" dc:"ID"`
|
|
}
|
|
|
|
func (in *ImAuditLogViewInp) Filter(ctx context.Context) (err error) {
|
|
if in.TenantId <= 0 {
|
|
return gerror.New("请选择租户")
|
|
}
|
|
if in.Id <= 0 {
|
|
return gerror.New("ID不能为空")
|
|
}
|
|
return
|
|
}
|
|
|
|
type ImAuditLogViewModel struct {
|
|
ImAuditLogListModel
|
|
}
|