feat: 完成鸽达达后台安全与审计改造

This commit is contained in:
richjohnrambo
2026-09-07 11:50:29 +08:00
parent ab2b84c9fa
commit bb87d01644
196 changed files with 19970 additions and 280 deletions
@@ -0,0 +1,25 @@
package imdashboard
import (
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type OverviewReq struct {
g.Meta `path:"/imDashboard/overview" method:"get" tags:"IM数据概览" summary:"获取IM数据概览"`
sysin.ImDashboardOverviewInp
}
type OverviewRes struct {
*sysin.ImDashboardOverviewModel
}
type TrendsReq struct {
g.Meta `path:"/imDashboard/trends" method:"get" tags:"IM数据概览" summary:"获取IM增长趋势"`
sysin.ImDashboardTrendsInp
}
type TrendsRes struct {
List []*sysin.ImDashboardTrendModel `json:"list" dc:"趋势数据"`
}
@@ -0,0 +1,37 @@
package imgroupmessage
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imGroupMessage/list" method:"get" tags:"IM群聊消息" summary:"获取群聊消息列表"`
sysin.ImGroupMessageListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImMessageListModel `json:"list" dc:"数据列表"`
}
type ViewReq struct {
g.Meta `path:"/imGroupMessage/view" method:"get" tags:"IM群聊消息" summary:"获取群聊消息详情"`
sysin.ImMessageViewInp
}
type ViewRes struct{ *sysin.ImMessageViewModel }
type HideReq struct {
g.Meta `path:"/imGroupMessage/hide" method:"post" tags:"IM群聊消息" summary:"隐藏群聊消息"`
sysin.ImMessageActionInp
}
type HideRes struct{ *sysin.ImMessageCommandModel }
type DeleteReq struct {
g.Meta `path:"/imGroupMessage/delete" method:"post" tags:"IM群聊消息" summary:"删除群聊消息"`
sysin.ImMessageActionInp
}
type DeleteRes struct{ *sysin.ImMessageCommandModel }
type ExportReq struct {
g.Meta `path:"/imGroupMessage/export" method:"get" tags:"IM群聊消息" summary:"导出群聊消息"`
sysin.ImGroupMessageListInp
}
type ExportRes struct{}
@@ -0,0 +1,37 @@
package imloginfailurelog
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imLoginFailureLog/list" method:"get" tags:"IM登录失败日志" summary:"获取登录失败日志"`
sysin.ImLoginFailureLogListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImLoginFailureLogModel `json:"list" dc:"数据列表"`
}
type ViewReq struct {
g.Meta `path:"/imLoginFailureLog/view" method:"get" tags:"IM登录失败日志" summary:"获取登录失败详情"`
sysin.ImLoginFailureViewInp
}
type ViewRes struct{ *sysin.ImLoginFailureLogModel }
type ExportReq struct {
g.Meta `path:"/imLoginFailureLog/export" method:"get" tags:"IM登录失败日志" summary:"导出登录失败日志"`
sysin.ImLoginFailureLogListInp
}
type ExportRes struct{}
type AddBlacklistReq struct {
g.Meta `path:"/imLoginFailureLog/addBlacklist" method:"post" tags:"IM登录失败日志" summary:"将IP加入黑名单"`
sysin.ImLoginFailureAddBlacklistInp
}
type AddBlacklistRes struct{}
type BanUserReq struct {
g.Meta `path:"/imLoginFailureLog/banUser" method:"post" tags:"IM登录失败日志" summary:"封禁关联用户"`
sysin.ImLoginFailureBanUserInp
}
type BanUserRes struct{ *sysin.ImUserCommandModel }
@@ -0,0 +1,37 @@
package imprivatemessage
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imPrivateMessage/list" method:"get" tags:"IM单聊消息" summary:"获取单聊消息列表"`
sysin.ImPrivateMessageListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImMessageListModel `json:"list" dc:"数据列表"`
}
type ViewReq struct {
g.Meta `path:"/imPrivateMessage/view" method:"get" tags:"IM单聊消息" summary:"获取单聊消息详情"`
sysin.ImMessageViewInp
}
type ViewRes struct{ *sysin.ImMessageViewModel }
type HideReq struct {
g.Meta `path:"/imPrivateMessage/hide" method:"post" tags:"IM单聊消息" summary:"隐藏单聊消息"`
sysin.ImMessageActionInp
}
type HideRes struct{ *sysin.ImMessageCommandModel }
type DeleteReq struct {
g.Meta `path:"/imPrivateMessage/delete" method:"post" tags:"IM单聊消息" summary:"删除单聊消息"`
sysin.ImMessageActionInp
}
type DeleteRes struct{ *sysin.ImMessageCommandModel }
type ExportReq struct {
g.Meta `path:"/imPrivateMessage/export" method:"get" tags:"IM单聊消息" summary:"导出单聊消息"`
sysin.ImPrivateMessageListInp
}
type ExportRes struct{}
@@ -0,0 +1,59 @@
package imsecuritypolicy
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imSecurityPolicy/list" method:"get" tags:"IM安全策略" summary:"获取安全策略历史"`
sysin.ImSecurityPolicyListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImSecurityPolicyModel `json:"list"`
}
type ViewReq struct {
g.Meta `path:"/imSecurityPolicy/view" method:"get" tags:"IM安全策略" summary:"获取安全策略详情"`
sysin.ImSecurityPolicyViewInp
}
type ViewRes struct{ *sysin.ImSecurityPolicyModel }
type SaveReq struct {
g.Meta `path:"/imSecurityPolicy/save" method:"post" tags:"IM安全策略" summary:"保存安全策略草稿"`
sysin.ImSecurityPolicySaveInp
}
type SaveRes struct {
Id int64 `json:"id"`
}
type PublishReq struct {
g.Meta `path:"/imSecurityPolicy/publish" method:"post" tags:"IM安全策略" summary:"发布安全策略"`
sysin.ImSecurityPolicyPublishInp
}
type PublishRes struct{}
type RestoreDefaultReq struct {
g.Meta `path:"/imSecurityPolicy/restoreDefault" method:"post" tags:"IM安全策略" summary:"恢复默认安全策略"`
sysin.ImSecurityPolicyRestoreInp
}
type RestoreDefaultRes struct {
Id int64 `json:"id"`
}
type IPRuleListReq struct {
g.Meta `path:"/imSecurityPolicy/ipRuleList" method:"get" tags:"IM安全策略" summary:"获取IP黑白名单"`
sysin.ImSecurityIPRuleListInp
}
type IPRuleListRes struct {
form.PageRes
List []*sysin.ImSecurityIPRuleModel `json:"list"`
}
type IPRuleEditReq struct {
g.Meta `path:"/imSecurityPolicy/ipRuleEdit" method:"post" tags:"IM安全策略" summary:"新增或编辑IP规则"`
sysin.ImSecurityIPRuleEditInp
}
type IPRuleEditRes struct{}
type IPRuleDeleteReq struct {
g.Meta `path:"/imSecurityPolicy/ipRuleDelete" method:"post" tags:"IM安全策略" summary:"删除IP规则"`
sysin.ImSecurityIPRuleDeleteInp
}
type IPRuleDeleteRes struct{}
@@ -0,0 +1,51 @@
package imsensitiveword
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imSensitiveWord/list" method:"get" tags:"IM敏感词" summary:"获取敏感词列表"`
sysin.ImSensitiveWordListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImSensitiveWordListModel `json:"list"`
}
type EditReq struct {
g.Meta `path:"/imSensitiveWord/edit" method:"post" tags:"IM敏感词" summary:"新增或编辑敏感词"`
sysin.ImSensitiveWordEditInp
}
type EditRes struct{}
type DeleteReq struct {
g.Meta `path:"/imSensitiveWord/delete" method:"post" tags:"IM敏感词" summary:"删除敏感词"`
sysin.ImSensitiveWordDeleteInp
}
type DeleteRes struct{}
type StatusReq struct {
g.Meta `path:"/imSensitiveWord/status" method:"post" tags:"IM敏感词" summary:"更新敏感词状态"`
sysin.ImSensitiveWordStatusInp
}
type StatusRes struct{}
type BatchImportReq struct {
g.Meta `path:"/imSensitiveWord/batchImport" method:"post" tags:"IM敏感词" summary:"批量导入敏感词"`
sysin.ImSensitiveWordBatchImportInp
}
type BatchImportRes struct {
*sysin.ImSensitiveWordBatchImportModel
}
type GroupListReq struct {
g.Meta `path:"/imSensitiveWord/groupList" method:"get" tags:"IM敏感词" summary:"获取敏感词分组"`
sysin.ImSensitiveWordGroupListInp
}
type GroupListRes struct {
List []*sysin.ImSensitiveWordGroupModel `json:"list"`
}
type GroupEditReq struct {
g.Meta `path:"/imSensitiveWord/groupEdit" method:"post" tags:"IM敏感词" summary:"新增或编辑敏感词分组"`
sysin.ImSensitiveWordGroupEditInp
}
type GroupEditRes struct{}
@@ -0,0 +1,22 @@
package imuserloginhistory
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imUserLoginHistory/list" method:"get" tags:"IM用户登录历史" summary:"获取用户登录历史"`
sysin.ImUserLoginHistoryListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImUserLoginHistoryModel `json:"list" dc:"数据列表"`
}
type ExportReq struct {
g.Meta `path:"/imUserLoginHistory/export" method:"get" tags:"IM用户登录历史" summary:"导出用户登录历史"`
sysin.ImUserLoginHistoryListInp
}
type ExportRes struct{}
@@ -0,0 +1,57 @@
package imuserpolicygroup
import (
"hotgo/internal/model/input/form"
"hotgo/internal/model/input/sysin"
"github.com/gogf/gf/v2/frame/g"
)
type ListReq struct {
g.Meta `path:"/imUserPolicyGroup/list" method:"get" tags:"IM用户策略分组" summary:"获取用户策略分组列表"`
sysin.ImUserPolicyGroupListInp
}
type ListRes struct {
form.PageRes
List []*sysin.ImUserPolicyGroupListModel `json:"list"`
}
type ViewReq struct {
g.Meta `path:"/imUserPolicyGroup/view" method:"get" tags:"IM用户策略分组" summary:"获取用户策略分组详情"`
sysin.ImUserPolicyGroupViewInp
}
type ViewRes struct {
*sysin.ImUserPolicyGroupViewModel
}
type EditReq struct {
g.Meta `path:"/imUserPolicyGroup/edit" method:"post" tags:"IM用户策略分组" summary:"新增或编辑用户策略分组"`
sysin.ImUserPolicyGroupEditInp
}
type EditRes struct{}
type DeleteReq struct {
g.Meta `path:"/imUserPolicyGroup/delete" method:"post" tags:"IM用户策略分组" summary:"删除用户策略分组"`
sysin.ImUserPolicyGroupDeleteInp
}
type DeleteRes struct{}
type StatusReq struct {
g.Meta `path:"/imUserPolicyGroup/status" method:"post" tags:"IM用户策略分组" summary:"更新用户策略分组状态"`
sysin.ImUserPolicyGroupStatusInp
}
type StatusRes struct{}
type MemberListReq struct {
g.Meta `path:"/imUserPolicyGroup/memberList" method:"get" tags:"IM用户策略分组" summary:"获取策略分组成员"`
sysin.ImUserPolicyGroupMemberListInp
}
type MemberListRes struct {
form.PageRes
List []*sysin.ImUserPolicyGroupMemberModel `json:"list"`
}
type MemberAddReq struct {
g.Meta `path:"/imUserPolicyGroup/memberAdd" method:"post" tags:"IM用户策略分组" summary:"添加策略分组成员"`
sysin.ImUserPolicyGroupMemberAddInp
}
type MemberAddRes struct{}
type MemberRemoveReq struct {
g.Meta `path:"/imUserPolicyGroup/memberRemove" method:"post" tags:"IM用户策略分组" summary:"移除策略分组成员"`
sysin.ImUserPolicyGroupMemberRemoveInp
}
type MemberRemoveRes struct{}