diff --git a/pkg/compute/models/loadbalancerawscachedlbb.go b/pkg/compute/models/loadbalancerawscachedlbb.go index b3faccdc0d..9a687bbfcb 100644 --- a/pkg/compute/models/loadbalancerawscachedlbb.go +++ b/pkg/compute/models/loadbalancerawscachedlbb.go @@ -61,6 +61,11 @@ type SAwsCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SAwsCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (man *SAwsCachedLbManager) GetBackendsByLocalBackendId(backendId string) ([]SAwsCachedLb, error) { loadbalancerBackends := []SAwsCachedLb{} q := man.Query().Equals("backend_id", backendId) diff --git a/pkg/compute/models/loadbalancercachedacls.go b/pkg/compute/models/loadbalancercachedacls.go index 42fe676bb1..7baf4da01e 100644 --- a/pkg/compute/models/loadbalancercachedacls.go +++ b/pkg/compute/models/loadbalancercachedacls.go @@ -72,6 +72,11 @@ type SCachedLoadbalancerAcl struct { ListenerId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` // huawei only } +func (manager *SCachedLoadbalancerAclManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbacl *SCachedLoadbalancerAcl) AllowPerformStatus(ctx context.Context, userCred mcclient.TokenCredential, query jsonutils.JSONObject, data jsonutils.JSONObject) bool { return false } diff --git a/pkg/compute/models/loadbalancercachedcertificates.go b/pkg/compute/models/loadbalancercachedcertificates.go index 0034d5359d..7ed4bea809 100644 --- a/pkg/compute/models/loadbalancercachedcertificates.go +++ b/pkg/compute/models/loadbalancercachedcertificates.go @@ -71,6 +71,11 @@ type SCachedLoadbalancerCertificate struct { // CertificateId string `width:"128" charset:"ascii" nullable:"false" create:"required" index:"true" list:"user" json:"certificate_id"` // 本地证书ID } +func (manager *SCachedLoadbalancerCertificateManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (self *SCachedLoadbalancerCertificate) AllowPerformStatus(ctx context.Context, userCred mcclient.TokenCredential, query jsonutils.JSONObject, data jsonutils.JSONObject) bool { return false } diff --git a/pkg/compute/models/loadbalancerhuaweicachedlbb.go b/pkg/compute/models/loadbalancerhuaweicachedlbb.go index aabcb6908d..3181922a70 100644 --- a/pkg/compute/models/loadbalancerhuaweicachedlbb.go +++ b/pkg/compute/models/loadbalancerhuaweicachedlbb.go @@ -64,6 +64,11 @@ type SHuaweiCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SHuaweiCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (man *SHuaweiCachedLbManager) GetBackendsByLocalBackendId(backendId string) ([]SHuaweiCachedLb, error) { loadbalancerBackends := []SHuaweiCachedLb{} q := man.Query().IsFalse("pending_deleted").Equals("backend_id", backendId) diff --git a/pkg/compute/models/loadbalancerhuaweicachedlbbg.go b/pkg/compute/models/loadbalancerhuaweicachedlbbg.go index 7099f0e4b7..0ed3c2c83e 100644 --- a/pkg/compute/models/loadbalancerhuaweicachedlbbg.go +++ b/pkg/compute/models/loadbalancerhuaweicachedlbbg.go @@ -66,6 +66,11 @@ type SHuaweiCachedLbbg struct { ProtocolType string `width:"16" charset:"ascii" nullable:"false" list:"user" create:"required"` // 监听协议类型 } +func (manager *SHuaweiCachedLbbgManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbbg *SHuaweiCachedLbbg) GetLocalBackendGroup(ctx context.Context, userCred mcclient.TokenCredential) (*SLoadbalancerBackendGroup, error) { if len(lbbg.BackendGroupId) == 0 { return nil, fmt.Errorf("GetLocalBackendGroup no related local backendgroup") diff --git a/pkg/compute/models/loadbalanceropenstackcachedlbb.go b/pkg/compute/models/loadbalanceropenstackcachedlbb.go index 60eb98f3cf..0036a72c0e 100644 --- a/pkg/compute/models/loadbalanceropenstackcachedlbb.go +++ b/pkg/compute/models/loadbalanceropenstackcachedlbb.go @@ -60,6 +60,11 @@ type SOpenstackCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SOpenstackCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (man *SOpenstackCachedLbManager) GetBackendsByLocalBackendId(backendId string) ([]SOpenstackCachedLb, error) { loadbalancerBackends := []SOpenstackCachedLb{} q := man.Query().IsFalse("pending_deleted").Equals("backend_id", backendId) diff --git a/pkg/compute/models/loadbalanceropenstackcachedlbbg.go b/pkg/compute/models/loadbalanceropenstackcachedlbbg.go index c042552f39..b741aa99ea 100644 --- a/pkg/compute/models/loadbalanceropenstackcachedlbbg.go +++ b/pkg/compute/models/loadbalanceropenstackcachedlbbg.go @@ -66,6 +66,11 @@ type SOpenstackCachedLbbg struct { ProtocolType string `width:"16" charset:"ascii" nullable:"false" list:"user" create:"required"` // 监听协议类型 } +func (manager *SOpenstackCachedLbbgManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbbg *SOpenstackCachedLbbg) GetLocalBackendGroup(ctx context.Context, userCred mcclient.TokenCredential) (*SLoadbalancerBackendGroup, error) { if len(lbbg.BackendGroupId) == 0 { return nil, fmt.Errorf("GetLocalBackendGroup no related local backendgroup") diff --git a/pkg/compute/models/loadbalancerqcloudcachedlbb.go b/pkg/compute/models/loadbalancerqcloudcachedlbb.go index fa428b9b13..b0259d8e80 100644 --- a/pkg/compute/models/loadbalancerqcloudcachedlbb.go +++ b/pkg/compute/models/loadbalancerqcloudcachedlbb.go @@ -62,6 +62,11 @@ type SQcloudCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SQcloudCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbb *SQcloudCachedLb) GetCustomizeColumns(context.Context, mcclient.TokenCredential, jsonutils.JSONObject) *jsonutils.JSONDict { return nil } diff --git a/pkg/compute/models/loadbalancerqcloudcachedlbbg.go b/pkg/compute/models/loadbalancerqcloudcachedlbbg.go index cb359d163b..e1a25a78f4 100644 --- a/pkg/compute/models/loadbalancerqcloudcachedlbbg.go +++ b/pkg/compute/models/loadbalancerqcloudcachedlbbg.go @@ -66,6 +66,11 @@ type SQcloudCachedLbbg struct { AssociatedType string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` // 关联类型, listener || rule } +func (manager *SQcloudCachedLbbgManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbb *SQcloudCachedLbbg) GetCustomizeColumns(context.Context, mcclient.TokenCredential, jsonutils.JSONObject) *jsonutils.JSONDict { return nil }