package dbutil

import (
	"gorm.io/gorm"

	entity2 "github.com/tidbcloud/dataflow-service/app/repo/entity"
)

func CountDedicatedBackupsByStatus(tx *gorm.DB, status entity2.BackupStatus) (int64, error) {
	return entity2.NewBackupQuerySet(tx).StatusEq(status).DeletedAtIsNull().Count()
}

func CountDedicatedRestoresByStatus(tx *gorm.DB, status entity2.RestoreStatus) (int64, error) {
	return entity2.NewRestoreQuerySet(tx).StatusEq(status).Count()
}

func CountDedicatedChangefeedsByStatus(tx *gorm.DB, status entity2.BizChangefeedOperationStatus) (int64, error) {
	return entity2.NewBizChangefeedQuerySet(tx).OperationStatusEq(status).Count()
}
