kra-new/internal/data/system/provider.go

43 lines
859 B
Go

package system
import (
"kra/internal/config"
"github.com/google/wire"
"gorm.io/gorm"
)
// Provider exposes the shared data infrastructure needed by system
// repositories without coupling this module to the parent data package.
type Provider interface {
DB() *gorm.DB
Database(name string) (*gorm.DB, error)
DatabaseReady() bool
Runtime() *config.Store
}
// ProviderSet wires system repositories and their runtime-backed adapters.
var ProviderSet = wire.NewSet(
NewRuntimeSettings,
NewTokenIssuer,
NewUserRepo,
NewAuthorityAccessRepo,
NewAPIRepo,
NewPermissionRepo,
NewMenuRepo,
NewDepartmentRepo,
NewPositionRepo,
NewDictionaryRepo,
NewParameterRepo,
NewAPITokenRepo,
NewSecurityRepo,
NewVersionRepo,
NewExportRepo,
NewAuditRepo,
NewAuditRecorderRepo,
NewLogFileRepo,
NewMediaRepo,
NewAnnouncementRepo,
NewMaintenanceRepo,
)