diff --git a/internal/rpc/rpc_client.go b/internal/rpc/rpc_client.go index 3565250a..f3db8293 100644 --- a/internal/rpc/rpc_client.go +++ b/internal/rpc/rpc_client.go @@ -9,6 +9,7 @@ import ( teaconst "github.com/TeaOSLab/EdgeAdmin/internal/const" "github.com/TeaOSLab/EdgeAdmin/internal/encrypt" "github.com/TeaOSLab/EdgeAdmin/internal/utils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/maps" "github.com/iwind/TeaGo/rands" @@ -44,6 +45,9 @@ func NewRPCClient(apiConfig *configs.APIConfig) (*RPCClient, error) { return nil, err } + // 设置RPC + dao.SetRPC(client) + return client, nil } diff --git a/internal/web/actions/actionutils/parent_action.go b/internal/web/actions/actionutils/parent_action.go index 470196e0..f75f2483 100644 --- a/internal/web/actions/actionutils/parent_action.go +++ b/internal/web/actions/actionutils/parent_action.go @@ -7,7 +7,7 @@ import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/rpc" "github.com/TeaOSLab/EdgeAdmin/internal/utils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/logs" "net/http" @@ -87,7 +87,7 @@ func (this *ParentAction) CreateLog(level string, description string, args ...in } } } - err := models.SharedLogDAO.CreateAdminLog(this.AdminContext(), level, this.Request.URL.Path, desc, this.RequestRemoteIP()) + err := dao.SharedLogDAO.CreateAdminLog(this.AdminContext(), level, this.Request.URL.Path, desc, this.RequestRemoteIP()) if err != nil { utils.PrintError(err) } diff --git a/internal/web/actions/default/clusters/cluster/settings/cache/index.go b/internal/web/actions/default/clusters/cluster/settings/cache/index.go index 2539a762..c3038418 100644 --- a/internal/web/actions/default/clusters/cluster/settings/cache/index.go +++ b/internal/web/actions/default/clusters/cluster/settings/cache/index.go @@ -2,7 +2,7 @@ package cache import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/maps" @@ -20,7 +20,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ClusterId int64 }) { - cluster, err := models.SharedNodeClusterDAO.FindEnabledNodeCluster(this.AdminContext(), params.ClusterId) + cluster, err := dao.SharedNodeClusterDAO.FindEnabledNodeCluster(this.AdminContext(), params.ClusterId) if err != nil { this.ErrorPage(err) return @@ -33,7 +33,7 @@ func (this *IndexAction) RunGet(params struct { // 缓存设置 this.Data["cachePolicy"] = nil if cluster.HttpCachePolicyId > 0 { - cachePolicy, err := models.SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicy(this.AdminContext(), cluster.HttpCachePolicyId) + cachePolicy, err := dao.SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicy(this.AdminContext(), cluster.HttpCachePolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/clusters/cluster/settings/waf/index.go b/internal/web/actions/default/clusters/cluster/settings/waf/index.go index eeac4277..050fe8d5 100644 --- a/internal/web/actions/default/clusters/cluster/settings/waf/index.go +++ b/internal/web/actions/default/clusters/cluster/settings/waf/index.go @@ -2,7 +2,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/maps" @@ -20,7 +20,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ClusterId int64 }) { - cluster, err := models.SharedNodeClusterDAO.FindEnabledNodeCluster(this.AdminContext(), params.ClusterId) + cluster, err := dao.SharedNodeClusterDAO.FindEnabledNodeCluster(this.AdminContext(), params.ClusterId) if err != nil { this.ErrorPage(err) return @@ -33,7 +33,7 @@ func (this *IndexAction) RunGet(params struct { // WAF设置 this.Data["firewallPolicy"] = nil if cluster.HttpFirewallPolicyId > 0 { - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicy(this.AdminContext(), cluster.HttpFirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicy(this.AdminContext(), cluster.HttpFirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/clusters/clusterutils/cluster_helper.go b/internal/web/actions/default/clusters/clusterutils/cluster_helper.go index bc7c9d48..0c5b1b46 100644 --- a/internal/web/actions/default/clusters/clusterutils/cluster_helper.go +++ b/internal/web/actions/default/clusters/clusterutils/cluster_helper.go @@ -4,7 +4,7 @@ import ( "github.com/TeaOSLab/EdgeAdmin/internal/rpc" "github.com/TeaOSLab/EdgeAdmin/internal/utils/numberutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/logs" @@ -35,7 +35,7 @@ func (this *ClusterHelper) BeforeAction(actionPtr actions.ActionWrapper) { action.Data["clusterId"] = clusterId if clusterId > 0 { - cluster, err := models.SharedNodeClusterDAO.FindEnabledNodeCluster(actionPtr.(rpc.ContextInterface).AdminContext(), clusterId) + cluster, err := dao.SharedNodeClusterDAO.FindEnabledNodeCluster(actionPtr.(rpc.ContextInterface).AdminContext(), clusterId) if err != nil { logs.Error(err) return diff --git a/internal/web/actions/default/index/index.go b/internal/web/actions/default/index/index.go index 994a3ba3..abbf23d6 100644 --- a/internal/web/actions/default/index/index.go +++ b/internal/web/actions/default/index/index.go @@ -10,7 +10,7 @@ import ( "github.com/TeaOSLab/EdgeAdmin/internal/utils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/helpers" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/types" @@ -109,7 +109,7 @@ func (this *IndexAction) RunPost(params struct { }) if err != nil { - err = models.SharedLogDAO.CreateAdminLog(rpcClient.Context(0), oplogs.LevelError, this.Request.URL.Path, "登录时发生系统错误:"+err.Error(), this.RequestRemoteIP()) + err = dao.SharedLogDAO.CreateAdminLog(rpcClient.Context(0), oplogs.LevelError, this.Request.URL.Path, "登录时发生系统错误:"+err.Error(), this.RequestRemoteIP()) if err != nil { utils.PrintError(err) } @@ -118,7 +118,7 @@ func (this *IndexAction) RunPost(params struct { } if !resp.IsOk { - err = models.SharedLogDAO.CreateAdminLog(rpcClient.Context(0), oplogs.LevelWarn, this.Request.URL.Path, "登录失败,用户名:"+params.Username, this.RequestRemoteIP()) + err = dao.SharedLogDAO.CreateAdminLog(rpcClient.Context(0), oplogs.LevelWarn, this.Request.URL.Path, "登录失败,用户名:"+params.Username, this.RequestRemoteIP()) if err != nil { utils.PrintError(err) } @@ -130,7 +130,7 @@ func (this *IndexAction) RunPost(params struct { params.Auth.StoreAdmin(adminId, params.Remember) // 记录日志 - err = models.SharedLogDAO.CreateAdminLog(rpcClient.Context(adminId), oplogs.LevelInfo, this.Request.URL.Path, "成功登录系统,用户名:"+params.Username, this.RequestRemoteIP()) + err = dao.SharedLogDAO.CreateAdminLog(rpcClient.Context(adminId), oplogs.LevelInfo, this.Request.URL.Path, "成功登录系统,用户名:"+params.Username, this.RequestRemoteIP()) if err != nil { utils.PrintError(err) } diff --git a/internal/web/actions/default/servers/components/waf/createGroupPopup.go b/internal/web/actions/default/servers/components/waf/createGroupPopup.go index 3e6d3003..48d41648 100644 --- a/internal/web/actions/default/servers/components/waf/createGroupPopup.go +++ b/internal/web/actions/default/servers/components/waf/createGroupPopup.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" @@ -35,7 +35,7 @@ func (this *CreateGroupPopupAction) RunPost(params struct { Must *actions.Must }) { - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/createSetPopup.go b/internal/web/actions/default/servers/components/waf/createSetPopup.go index c5212138..438c4d8a 100644 --- a/internal/web/actions/default/servers/components/waf/createSetPopup.go +++ b/internal/web/actions/default/servers/components/waf/createSetPopup.go @@ -3,7 +3,7 @@ package waf import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" @@ -28,7 +28,7 @@ func (this *CreateSetPopupAction) RunGet(params struct { this.Data["groupId"] = params.GroupId this.Data["type"] = params.Type - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return @@ -76,7 +76,7 @@ func (this *CreateSetPopupAction) RunPost(params struct { Must *actions.Must }) { - groupConfig, err := models.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) + groupConfig, err := dao.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/deleteGroup.go b/internal/web/actions/default/servers/components/waf/deleteGroup.go index a35d1fe1..08243ba5 100644 --- a/internal/web/actions/default/servers/components/waf/deleteGroup.go +++ b/internal/web/actions/default/servers/components/waf/deleteGroup.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" ) @@ -18,7 +18,7 @@ func (this *DeleteGroupAction) RunPost(params struct { // 日志 defer this.CreateLog(oplogs.LevelInfo, "删除WAF策略 %d 的规则分组 %d", params.FirewallPolicyId, params.GroupId) - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/deleteSet.go b/internal/web/actions/default/servers/components/waf/deleteSet.go index c96b0268..60361164 100644 --- a/internal/web/actions/default/servers/components/waf/deleteSet.go +++ b/internal/web/actions/default/servers/components/waf/deleteSet.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" ) @@ -20,7 +20,7 @@ func (this *DeleteSetAction) RunPost(params struct { // 日志 defer this.CreateLog(oplogs.LevelInfo, "删除WAF规则分组 %d 中的规则集 %d", params.GroupId, params.SetId) - groupConfig, err := models.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) + groupConfig, err := dao.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/export.go b/internal/web/actions/default/servers/components/waf/export.go index 08f4581c..75364d34 100644 --- a/internal/web/actions/default/servers/components/waf/export.go +++ b/internal/web/actions/default/servers/components/waf/export.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/ttlcache" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/rands" @@ -22,7 +22,7 @@ func (this *ExportAction) Init() { func (this *ExportAction) RunGet(params struct { FirewallPolicyId int64 }) { - policy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + policy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return @@ -64,7 +64,7 @@ func (this *ExportAction) RunPost(params struct { }) { defer this.CreateLogInfo("导出WAF策略 %d", params.FirewallPolicyId) - policy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + policy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/group.go b/internal/web/actions/default/servers/components/waf/group.go index c4a931e6..c7277722 100644 --- a/internal/web/actions/default/servers/components/waf/group.go +++ b/internal/web/actions/default/servers/components/waf/group.go @@ -2,7 +2,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/lists" "github.com/iwind/TeaGo/maps" @@ -26,7 +26,7 @@ func (this *GroupAction) RunGet(params struct { this.Data["type"] = params.Type // policy - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return @@ -37,7 +37,7 @@ func (this *GroupAction) RunGet(params struct { } // group config - groupConfig, err := models.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) + groupConfig, err := dao.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/groups.go b/internal/web/actions/default/servers/components/waf/groups.go index 2bbf46ef..1cf74fb9 100644 --- a/internal/web/actions/default/servers/components/waf/groups.go +++ b/internal/web/actions/default/servers/components/waf/groups.go @@ -2,7 +2,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/iwind/TeaGo/maps" ) @@ -20,7 +20,7 @@ func (this *GroupsAction) RunGet(params struct { }) { this.Data["type"] = params.Type - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/helper.go b/internal/web/actions/default/servers/components/waf/helper.go index f673be39..1a1a87af 100644 --- a/internal/web/actions/default/servers/components/waf/helper.go +++ b/internal/web/actions/default/servers/components/waf/helper.go @@ -3,7 +3,7 @@ package waf import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" "net/http" @@ -33,7 +33,7 @@ func (this *Helper) BeforeAction(actionPtr actions.ActionWrapper) (goNext bool) action.Data["countOutboundGroups"] = 0 parentAction := actionutils.FindParentAction(actionPtr) if parentAction != nil { - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicy(parentAction.AdminContext(), firewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicy(parentAction.AdminContext(), firewallPolicyId) if err != nil { parentAction.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go b/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go index 793e2df3..e3760b67 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go @@ -4,7 +4,7 @@ import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/components/waf/ipadmin/ipadminutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -23,7 +23,7 @@ func (this *CreateIPPopupAction) RunGet(params struct { }) { this.Data["type"] = params.Type - listId, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyIPListIdWithType(this.AdminContext(), params.FirewallPolicyId, params.Type) + listId, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyIPListIdWithType(this.AdminContext(), params.FirewallPolicyId, params.Type) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/index.go b/internal/web/actions/default/servers/components/waf/ipadmin/index.go index 3f7f99d6..4535a802 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/index.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/index.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" @@ -27,7 +27,7 @@ func (this *IndexAction) RunGet(params struct { this.Data["subMenuItem"] = "region" // 当前选中的地区 - policyConfig, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + policyConfig, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return @@ -69,7 +69,7 @@ func (this *IndexAction) RunPost(params struct { // 日志 defer this.CreateLog(oplogs.LevelInfo, "WAF策略 %d 设置禁止访问的国家和地区", params.FirewallPolicyId) - policyConfig, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + policyConfig, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/lists.go b/internal/web/actions/default/servers/components/waf/ipadmin/lists.go index 3070ef68..3d7d5bd6 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/lists.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/lists.go @@ -2,7 +2,7 @@ package ipadmin import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/maps" timeutil "github.com/iwind/TeaGo/utils/time" @@ -22,7 +22,7 @@ func (this *ListsAction) RunGet(params struct { }) { this.Data["subMenuItem"] = params.Type - listId, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyIPListIdWithType(this.AdminContext(), params.FirewallPolicyId, params.Type) + listId, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyIPListIdWithType(this.AdminContext(), params.FirewallPolicyId, params.Type) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/provinces.go b/internal/web/actions/default/servers/components/waf/ipadmin/provinces.go index 355e767a..b6592c5c 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/provinces.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/provinces.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" @@ -28,7 +28,7 @@ func (this *ProvincesAction) RunGet(params struct { this.Data["subMenuItem"] = "province" // 当前选中的省份 - policyConfig, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + policyConfig, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return @@ -71,7 +71,7 @@ func (this *ProvincesAction) RunPost(params struct { // 日志 defer this.CreateLog(oplogs.LevelInfo, "WAF策略 %d 设置禁止访问的省份", params.FirewallPolicyId) - policyConfig, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + policyConfig, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/policy.go b/internal/web/actions/default/servers/components/waf/policy.go index 4ea9ed11..60955df1 100644 --- a/internal/web/actions/default/servers/components/waf/policy.go +++ b/internal/web/actions/default/servers/components/waf/policy.go @@ -2,7 +2,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/maps" ) @@ -18,7 +18,7 @@ func (this *PolicyAction) Init() { func (this *PolicyAction) RunGet(params struct { FirewallPolicyId int64 }) { - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/sortGroups.go b/internal/web/actions/default/servers/components/waf/sortGroups.go index 2d917650..67648139 100644 --- a/internal/web/actions/default/servers/components/waf/sortGroups.go +++ b/internal/web/actions/default/servers/components/waf/sortGroups.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" ) @@ -20,7 +20,7 @@ func (this *SortGroupsAction) RunPost(params struct { // 日志 defer this.CreateLog(oplogs.LevelInfo, "修改WAF策略 %d 中的规则分组中的排序", params.FirewallPolicyId) - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/sortSets.go b/internal/web/actions/default/servers/components/waf/sortSets.go index 37906a13..4bbc1b0f 100644 --- a/internal/web/actions/default/servers/components/waf/sortSets.go +++ b/internal/web/actions/default/servers/components/waf/sortSets.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" ) @@ -20,7 +20,7 @@ func (this *SortSetsAction) RunPost(params struct { // 日志 defer this.CreateLog(oplogs.LevelInfo, "修改WAF规则分组 %d 中的规则集排序", params.GroupId) - groupConfig, err := models.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) + groupConfig, err := dao.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/update.go b/internal/web/actions/default/servers/components/waf/update.go index 7e619c76..6f0b56f9 100644 --- a/internal/web/actions/default/servers/components/waf/update.go +++ b/internal/web/actions/default/servers/components/waf/update.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" @@ -22,7 +22,7 @@ func (this *UpdateAction) Init() { func (this *UpdateAction) RunGet(params struct { FirewallPolicyId int64 }) { - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/updateGroupPopup.go b/internal/web/actions/default/servers/components/waf/updateGroupPopup.go index e8e5901a..2b14341f 100644 --- a/internal/web/actions/default/servers/components/waf/updateGroupPopup.go +++ b/internal/web/actions/default/servers/components/waf/updateGroupPopup.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/maps" @@ -20,7 +20,7 @@ func (this *UpdateGroupPopupAction) Init() { func (this *UpdateGroupPopupAction) RunGet(params struct { GroupId int64 }) { - groupConfig, err := models.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) + groupConfig, err := dao.SharedHTTPFirewallRuleGroupDAO.FindRuleGroupConfig(this.AdminContext(), params.GroupId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/components/waf/updateSetPopup.go b/internal/web/actions/default/servers/components/waf/updateSetPopup.go index d3f4e3bc..34d2f80d 100644 --- a/internal/web/actions/default/servers/components/waf/updateSetPopup.go +++ b/internal/web/actions/default/servers/components/waf/updateSetPopup.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" "github.com/iwind/TeaGo/actions" @@ -32,7 +32,7 @@ func (this *UpdateSetPopupAction) RunGet(params struct { this.Data["groupId"] = params.GroupId this.Data["type"] = params.Type - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledPolicyConfig(this.AdminContext(), params.FirewallPolicyId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyConfig(this.AdminContext(), params.FirewallPolicyId) if err != nil { this.ErrorPage(err) return @@ -68,7 +68,7 @@ func (this *UpdateSetPopupAction) RunGet(params struct { this.Data["actions"] = actionMaps // 规则集信息 - setConfig, err := models.SharedHTTPFirewallRuleSetDAO.FindRuleSetConfig(this.AdminContext(), params.SetId) + setConfig, err := dao.SharedHTTPFirewallRuleSetDAO.FindRuleSetConfig(this.AdminContext(), params.SetId) if err != nil { this.ErrorPage(err) return @@ -94,7 +94,7 @@ func (this *UpdateSetPopupAction) RunPost(params struct { Must *actions.Must }) { // 规则集信息 - setConfig, err := models.SharedHTTPFirewallRuleSetDAO.FindRuleSetConfig(this.AdminContext(), params.SetId) + setConfig, err := dao.SharedHTTPFirewallRuleSetDAO.FindRuleSetConfig(this.AdminContext(), params.SetId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/cache/index.go b/internal/web/actions/default/servers/server/settings/cache/index.go index 69764a5b..99fb128c 100644 --- a/internal/web/actions/default/servers/server/settings/cache/index.go +++ b/internal/web/actions/default/servers/server/settings/cache/index.go @@ -5,7 +5,7 @@ import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -34,7 +34,7 @@ func (this *IndexAction) RunGet(params struct { this.Data["cacheConfig"] = webConfig.Cache // 当前集群的缓存策略 - cachePolicy, err := models.SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicyWithServerId(this.AdminContext(), params.ServerId) + cachePolicy, err := dao.SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicyWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/headers/index.go b/internal/web/actions/default/servers/server/settings/headers/index.go index 04a6cb89..3e0acbfa 100644 --- a/internal/web/actions/default/servers/server/settings/headers/index.go +++ b/internal/web/actions/default/servers/server/settings/headers/index.go @@ -49,6 +49,10 @@ func (this *IndexAction) RunGet(params struct { WebId: webId, HeaderJSON: refJSON, }) + if err != nil { + this.ErrorPage(err) + return + } isChanged = true } if webConfig.ResponseHeaderPolicy == nil { @@ -72,6 +76,10 @@ func (this *IndexAction) RunGet(params struct { WebId: webId, HeaderJSON: refJSON, }) + if err != nil { + this.ErrorPage(err) + return + } isChanged = true } diff --git a/internal/web/actions/default/servers/server/settings/http/index.go b/internal/web/actions/default/servers/server/settings/http/index.go index 760327ee..e357912f 100644 --- a/internal/web/actions/default/servers/server/settings/http/index.go +++ b/internal/web/actions/default/servers/server/settings/http/index.go @@ -99,7 +99,7 @@ func (this *IndexAction) RunPost(params struct { _, err = this.RPC().ServerRPC().UpdateServerHTTP(this.AdminContext(), &pb.UpdateServerHTTPRequest{ ServerId: params.ServerId, - Config: configData, + HttpJSON: configData, }) if err != nil { this.ErrorPage(err) diff --git a/internal/web/actions/default/servers/server/settings/https/index.go b/internal/web/actions/default/servers/server/settings/https/index.go index 449fdee9..57ddd766 100644 --- a/internal/web/actions/default/servers/server/settings/https/index.go +++ b/internal/web/actions/default/servers/server/settings/https/index.go @@ -180,8 +180,8 @@ func (this *IndexAction) RunPost(params struct { } _, err = this.RPC().ServerRPC().UpdateServerHTTPS(this.AdminContext(), &pb.UpdateServerHTTPSRequest{ - ServerId: params.ServerId, - Config: configData, + ServerId: params.ServerId, + HttpsJSON: configData, }) if err != nil { this.ErrorPage(err) diff --git a/internal/web/actions/default/servers/server/settings/locations/cache/index.go b/internal/web/actions/default/servers/server/settings/locations/cache/index.go index c5c833bf..2b17db80 100644 --- a/internal/web/actions/default/servers/server/settings/locations/cache/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/cache/index.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -32,7 +32,7 @@ func (this *IndexAction) RunGet(params struct { this.Data["cacheConfig"] = webConfig.Cache // 当前集群的缓存策略 - cachePolicy, err := models.SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicyWithServerId(this.AdminContext(), params.ServerId) + cachePolicy, err := dao.SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicyWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/waf/index.go b/internal/web/actions/default/servers/server/settings/locations/waf/index.go index 09207691..8c2487c1 100644 --- a/internal/web/actions/default/servers/server/settings/locations/waf/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/waf/index.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/maps" @@ -30,7 +30,7 @@ func (this *IndexAction) RunGet(params struct { this.Data["firewallConfig"] = webConfig.FirewallRef // 获取当前服务所在集群的WAF设置 - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyWithServerId(this.AdminContext(), params.ServerId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/tcp/index.go b/internal/web/actions/default/servers/server/settings/tcp/index.go index 2b471494..222327ba 100644 --- a/internal/web/actions/default/servers/server/settings/tcp/index.go +++ b/internal/web/actions/default/servers/server/settings/tcp/index.go @@ -81,7 +81,7 @@ func (this *IndexAction) RunPost(params struct { _, err = this.RPC().ServerRPC().UpdateServerTCP(this.AdminContext(), &pb.UpdateServerTCPRequest{ ServerId: params.ServerId, - Config: configData, + TcpJSON: configData, }) if err != nil { this.ErrorPage(err) diff --git a/internal/web/actions/default/servers/server/settings/tls/index.go b/internal/web/actions/default/servers/server/settings/tls/index.go index e26eae91..d6afaa2c 100644 --- a/internal/web/actions/default/servers/server/settings/tls/index.go +++ b/internal/web/actions/default/servers/server/settings/tls/index.go @@ -180,7 +180,7 @@ func (this *IndexAction) RunPost(params struct { _, err = this.RPC().ServerRPC().UpdateServerTLS(this.AdminContext(), &pb.UpdateServerTLSRequest{ ServerId: params.ServerId, - Config: configData, + TlsJSON: configData, }) if err != nil { this.ErrorPage(err) diff --git a/internal/web/actions/default/servers/server/settings/waf/index.go b/internal/web/actions/default/servers/server/settings/waf/index.go index cd5f692c..31e82802 100644 --- a/internal/web/actions/default/servers/server/settings/waf/index.go +++ b/internal/web/actions/default/servers/server/settings/waf/index.go @@ -3,7 +3,7 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/models" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/maps" @@ -31,7 +31,7 @@ func (this *IndexAction) RunGet(params struct { this.Data["firewallConfig"] = webConfig.FirewallRef // 获取当前服务所在集群的WAF设置 - firewallPolicy, err := models.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyWithServerId(this.AdminContext(), params.ServerId) + firewallPolicy, err := dao.SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicyWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/models/base_dao.go b/internal/web/models/base_dao.go deleted file mode 100644 index 209a9746..00000000 --- a/internal/web/models/base_dao.go +++ /dev/null @@ -1,18 +0,0 @@ -package models - -import ( - "github.com/TeaOSLab/EdgeAdmin/internal/rpc" - "github.com/iwind/TeaGo/logs" -) - -type BaseDAO struct { -} - -func (this *BaseDAO) RPC() *rpc.RPCClient { - client, err := rpc.SharedRPC() - if err != nil { - logs.Println("[MODEL]get shared rpc client failed: " + err.Error()) - return nil - } - return client -} diff --git a/internal/web/models/http_cache_policy_dao.go b/internal/web/models/http_cache_policy_dao.go deleted file mode 100644 index 1dd51d45..00000000 --- a/internal/web/models/http_cache_policy_dao.go +++ /dev/null @@ -1,69 +0,0 @@ -package models - -import ( - "context" - "encoding/json" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" - "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" -) - -var SharedHTTPCachePolicyDAO = new(HTTPCachePolicyDAO) - -type HTTPCachePolicyDAO struct { - BaseDAO -} - -// 查找缓存策略配置 -func (this *HTTPCachePolicyDAO) FindEnabledHTTPCachePolicyConfig(ctx context.Context, cachePolicyId int64) (*serverconfigs.HTTPCachePolicy, error) { - resp, err := this.RPC().HTTPCachePolicyRPC().FindEnabledHTTPCachePolicyConfig(ctx, &pb.FindEnabledHTTPCachePolicyConfigRequest{HttpCachePolicyId: cachePolicyId}) - if err != nil { - return nil, err - } - if len(resp.HttpCachePolicyJSON) == 0 { - return nil, nil - } - config := &serverconfigs.HTTPCachePolicy{} - err = json.Unmarshal(resp.HttpCachePolicyJSON, config) - if err != nil { - return nil, err - } - return config, nil -} - -// 查找缓存策略信息 -func (this *HTTPCachePolicyDAO) FindEnabledHTTPCachePolicy(ctx context.Context, cachePolicyId int64) (*pb.HTTPCachePolicy, error) { - resp, err := this.RPC().HTTPCachePolicyRPC().FindEnabledHTTPCachePolicy(ctx, &pb.FindEnabledHTTPCachePolicyRequest{ - HttpCachePolicyId: cachePolicyId, - }) - if err != nil { - return nil, err - } - return resp.HttpCachePolicy, nil -} - -// 根据服务ID查找缓存策略 -func (this *HTTPCachePolicyDAO) FindEnabledHTTPCachePolicyWithServerId(ctx context.Context, serverId int64) (*pb.HTTPCachePolicy, error) { - serverResp, err := this.RPC().ServerRPC().FindEnabledServer(ctx, &pb.FindEnabledServerRequest{ServerId: serverId}) - if err != nil { - return nil, err - } - server := serverResp.Server - if server == nil { - return nil, nil - } - if server.NodeCluster == nil { - return nil, nil - } - clusterId := server.NodeCluster.Id - cluster, err := SharedNodeClusterDAO.FindEnabledNodeCluster(ctx, clusterId) - if err != nil { - return nil, err - } - if cluster == nil { - return nil, nil - } - if cluster.HttpCachePolicyId == 0 { - return nil, nil - } - return SharedHTTPCachePolicyDAO.FindEnabledHTTPCachePolicy(ctx, cluster.HttpCachePolicyId) -} diff --git a/internal/web/models/http_firewall_policy_dao.go b/internal/web/models/http_firewall_policy_dao.go deleted file mode 100644 index 4a851c46..00000000 --- a/internal/web/models/http_firewall_policy_dao.go +++ /dev/null @@ -1,190 +0,0 @@ -package models - -import ( - "context" - "encoding/json" - "github.com/TeaOSLab/EdgeAdmin/internal/errors" - "github.com/TeaOSLab/EdgeAdmin/internal/rpc" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" - "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" - "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/ipconfigs" -) - -var SharedHTTPFirewallPolicyDAO = new(HTTPFirewallPolicyDAO) - -// WAF策略相关 -type HTTPFirewallPolicyDAO struct { - BaseDAO -} - -// 查找WAF策略配置 -func (this *HTTPFirewallPolicyDAO) FindEnabledPolicyConfig(ctx context.Context, policyId int64) (*firewallconfigs.HTTPFirewallPolicy, error) { - resp, err := this.RPC().HTTPFirewallPolicyRPC().FindEnabledHTTPFirewallPolicyConfig(ctx, &pb.FindEnabledHTTPFirewallPolicyConfigRequest{HttpFirewallPolicyId: policyId}) - if err != nil { - return nil, err - } - if len(resp.HttpFirewallPolicyJSON) == 0 { - return nil, nil - } - firewallPolicy := &firewallconfigs.HTTPFirewallPolicy{} - err = json.Unmarshal(resp.HttpFirewallPolicyJSON, firewallPolicy) - if err != nil { - return nil, err - } - return firewallPolicy, nil -} - -// 查找WAF的Inbound -func (this *HTTPFirewallPolicyDAO) FindEnabledPolicyInboundConfig(ctx context.Context, policyId int64) (*firewallconfigs.HTTPFirewallInboundConfig, error) { - config, err := this.FindEnabledPolicyConfig(ctx, policyId) - if err != nil { - return nil, err - } - if config == nil { - return nil, errors.New("not found") - } - return config.Inbound, nil -} - -// 根据类型查找WAF的IP名单 -func (this *HTTPFirewallPolicyDAO) FindEnabledPolicyIPListIdWithType(ctx context.Context, policyId int64, listType ipconfigs.IPListType) (int64, error) { - switch listType { - case ipconfigs.IPListTypeWhite: - return this.FindEnabledPolicyWhiteIPListId(ctx, policyId) - case ipconfigs.IPListTypeBlack: - return this.FindEnabledPolicyBlackIPListId(ctx, policyId) - default: - return 0, errors.New("invalid ip list type '" + listType + "'") - } -} - -// 查找WAF的白名单 -func (this *HTTPFirewallPolicyDAO) FindEnabledPolicyWhiteIPListId(ctx context.Context, policyId int64) (int64, error) { - client, err := rpc.SharedRPC() - if err != nil { - return 0, err - } - - config, err := this.FindEnabledPolicyConfig(ctx, policyId) - if err != nil { - return 0, err - } - if config == nil { - return 0, errors.New("not found") - } - if config.Inbound == nil { - config.Inbound = &firewallconfigs.HTTPFirewallInboundConfig{IsOn: true} - } - if config.Inbound.WhiteListRef == nil || config.Inbound.WhiteListRef.ListId == 0 { - createResp, err := client.IPListRPC().CreateIPList(ctx, &pb.CreateIPListRequest{ - Type: "white", - Name: "白名单", - Code: "white", - TimeoutJSON: nil, - }) - if err != nil { - return 0, err - } - listId := createResp.IpListId - config.Inbound.WhiteListRef = &ipconfigs.IPListRef{ - IsOn: true, - ListId: listId, - } - inboundJSON, err := json.Marshal(config.Inbound) - if err != nil { - return 0, err - } - _, err = client.HTTPFirewallPolicyRPC().UpdateHTTPFirewallInboundConfig(ctx, &pb.UpdateHTTPFirewallInboundConfigRequest{ - HttpFirewallPolicyId: policyId, - InboundJSON: inboundJSON, - }) - if err != nil { - return 0, err - } - return listId, nil - } - - return config.Inbound.WhiteListRef.ListId, nil -} - -// 查找WAF的黑名单 -func (this *HTTPFirewallPolicyDAO) FindEnabledPolicyBlackIPListId(ctx context.Context, policyId int64) (int64, error) { - config, err := this.FindEnabledPolicyConfig(ctx, policyId) - if err != nil { - return 0, err - } - if config == nil { - return 0, errors.New("not found") - } - if config.Inbound == nil { - config.Inbound = &firewallconfigs.HTTPFirewallInboundConfig{IsOn: true} - } - if config.Inbound.BlackListRef == nil || config.Inbound.BlackListRef.ListId == 0 { - createResp, err := this.RPC().IPListRPC().CreateIPList(ctx, &pb.CreateIPListRequest{ - Type: "black", - Name: "黑名单", - Code: "black", - TimeoutJSON: nil, - }) - if err != nil { - return 0, err - } - listId := createResp.IpListId - config.Inbound.BlackListRef = &ipconfigs.IPListRef{ - IsOn: true, - ListId: listId, - } - inboundJSON, err := json.Marshal(config.Inbound) - if err != nil { - return 0, err - } - _, err = this.RPC().HTTPFirewallPolicyRPC().UpdateHTTPFirewallInboundConfig(ctx, &pb.UpdateHTTPFirewallInboundConfigRequest{ - HttpFirewallPolicyId: policyId, - InboundJSON: inboundJSON, - }) - if err != nil { - return 0, err - } - return listId, nil - } - - return config.Inbound.BlackListRef.ListId, nil -} - -// 查找WAF信息 -func (this *HTTPFirewallPolicyDAO) FindEnabledHTTPFirewallPolicy(ctx context.Context, firewallPolicyId int64) (*pb.HTTPFirewallPolicy, error) { - resp, err := this.RPC().HTTPFirewallPolicyRPC().FindEnabledHTTPFirewallPolicy(ctx, &pb.FindEnabledHTTPFirewallPolicyRequest{ - HttpFirewallPolicyId: firewallPolicyId, - }) - if err != nil { - return nil, err - } - return resp.HttpFirewallPolicy, nil -} - -// 根据服务Id查找WAF策略 -func (this *HTTPFirewallPolicyDAO) FindEnabledHTTPFirewallPolicyWithServerId(ctx context.Context, serverId int64) (*pb.HTTPFirewallPolicy, error) { - serverResp, err := this.RPC().ServerRPC().FindEnabledServer(ctx, &pb.FindEnabledServerRequest{ServerId: serverId}) - if err != nil { - return nil, err - } - server := serverResp.Server - if server == nil { - return nil, nil - } - if server.NodeCluster == nil { - return nil, nil - } - clusterId := server.NodeCluster.Id - cluster, err := SharedNodeClusterDAO.FindEnabledNodeCluster(ctx, clusterId) - if err != nil { - return nil, err - } - if cluster == nil { - return nil, nil - } - if cluster.HttpFirewallPolicyId == 0 { - return nil, nil - } - return SharedHTTPFirewallPolicyDAO.FindEnabledHTTPFirewallPolicy(ctx, cluster.HttpFirewallPolicyId) -} diff --git a/internal/web/models/http_firewall_rule_group_dao.go b/internal/web/models/http_firewall_rule_group_dao.go deleted file mode 100644 index 9966629d..00000000 --- a/internal/web/models/http_firewall_rule_group_dao.go +++ /dev/null @@ -1,39 +0,0 @@ -package models - -import ( - "context" - "encoding/json" - "github.com/TeaOSLab/EdgeAdmin/internal/rpc" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" - "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" -) - -var SharedHTTPFirewallRuleGroupDAO = new(HTTPFirewallRuleGroupDAO) - -type HTTPFirewallRuleGroupDAO struct { -} - -// 查找分组配置 -func (this *HTTPFirewallRuleGroupDAO) FindRuleGroupConfig(ctx context.Context, groupId int64) (*firewallconfigs.HTTPFirewallRuleGroup, error) { - client, err := rpc.SharedRPC() - if err != nil { - return nil, err - } - - groupResp, err := client.HTTPFirewallRuleGroupRPC().FindEnabledHTTPFirewallRuleGroupConfig(ctx, &pb.FindEnabledHTTPFirewallRuleGroupConfigRequest{FirewallRuleGroupId: groupId}) - if err != nil { - return nil, err - } - - if len(groupResp.FirewallRuleGroupJSON) == 0 { - return nil, nil - } - - groupConfig := &firewallconfigs.HTTPFirewallRuleGroup{} - err = json.Unmarshal(groupResp.FirewallRuleGroupJSON, groupConfig) - if err != nil { - return nil, err - } - - return groupConfig, nil -} diff --git a/internal/web/models/http_firewall_rule_set_dao.go b/internal/web/models/http_firewall_rule_set_dao.go deleted file mode 100644 index 1a1662c9..00000000 --- a/internal/web/models/http_firewall_rule_set_dao.go +++ /dev/null @@ -1,35 +0,0 @@ -package models - -import ( - "context" - "encoding/json" - "github.com/TeaOSLab/EdgeAdmin/internal/rpc" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" - "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs" -) - -var SharedHTTPFirewallRuleSetDAO = new(HTTPFirewallRuleSetDAO) - -type HTTPFirewallRuleSetDAO struct { -} - -// 查找规则集配置 -func (this *HTTPFirewallRuleSetDAO) FindRuleSetConfig(ctx context.Context, setId int64) (*firewallconfigs.HTTPFirewallRuleSet, error) { - client, err := rpc.SharedRPC() - if err != nil { - return nil, err - } - resp, err := client.HTTPFirewallRuleSetRPC().FindEnabledHTTPFirewallRuleSetConfig(ctx, &pb.FindEnabledHTTPFirewallRuleSetConfigRequest{FirewallRuleSetId: setId}) - if err != nil { - return nil, err - } - if len(resp.FirewallRuleSetJSON) == 0 { - return nil, err - } - config := &firewallconfigs.HTTPFirewallRuleSet{} - err = json.Unmarshal(resp.FirewallRuleSetJSON, config) - if err != nil { - return nil, err - } - return config, nil -} diff --git a/internal/web/models/log_dao.go b/internal/web/models/log_dao.go deleted file mode 100644 index 2f892771..00000000 --- a/internal/web/models/log_dao.go +++ /dev/null @@ -1,30 +0,0 @@ -package models - -import ( - "context" - "github.com/TeaOSLab/EdgeAdmin/internal/rpc" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" -) - -var SharedLogDAO = NewLogDAO() - -type LogDAO struct { -} - -func NewLogDAO() *LogDAO { - return &LogDAO{} -} - -func (this *LogDAO) CreateAdminLog(ctx context.Context, level string, action string, description string, ip string) error { - client, err := rpc.SharedRPC() - if err != nil { - return err - } - _, err = client.LogRPC().CreateLog(ctx, &pb.CreateLogRequest{ - Level: level, - Description: description, - Action: action, - Ip: ip, - }) - return err -} diff --git a/internal/web/models/node_cluster_dao.go b/internal/web/models/node_cluster_dao.go deleted file mode 100644 index e6262d6a..00000000 --- a/internal/web/models/node_cluster_dao.go +++ /dev/null @@ -1,21 +0,0 @@ -package models - -import ( - "context" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" -) - -var SharedNodeClusterDAO = new(NodeClusterDAO) - -type NodeClusterDAO struct { - BaseDAO -} - -// 查找集群 -func (this *NodeClusterDAO) FindEnabledNodeCluster(ctx context.Context, clusterId int64) (*pb.NodeCluster, error) { - clusterResp, err := this.RPC().NodeClusterRPC().FindEnabledNodeCluster(ctx, &pb.FindEnabledNodeClusterRequest{NodeClusterId: clusterId}) - if err != nil { - return nil, err - } - return clusterResp.NodeCluster, nil -} diff --git a/internal/web/models/server_dao.go b/internal/web/models/server_dao.go deleted file mode 100644 index 07dbfe91..00000000 --- a/internal/web/models/server_dao.go +++ /dev/null @@ -1,7 +0,0 @@ -package models - -var SharedServerDAO = new(ServerDAO) - -type ServerDAO struct { - BaseDAO -} diff --git a/web/public/js/components/server/http-cond-definitions.js b/web/public/js/components/server/http-cond-definitions.js index b16290d0..d3215b02 100644 --- a/web/public/js/components/server/http-cond-definitions.js +++ b/web/public/js/components/server/http-cond-definitions.js @@ -79,6 +79,29 @@ Vue.component("http-cond-url-extension", { ` }) +// 根据URL前缀 +Vue.component("http-cond-url-prefix", { + props: ["v-cond"], + data: function () { + let cond = this.vCond + if (cond == null) { + cond = { + isRequest: true, + param: "${requestPath}", + operator: "prefix", + value: "" + } + } + return { + cond: cond + } + }, + template: `