package controller import ( "context" "ticket-pimp/internal/domain" db "ticket-pimp/internal/storage/db/config" ) type IConfigController interface { Get(context.Context) (domain.ApplicationConfig, error) Update(context.Context) (domain.ApplicationConfig, error) } type AppConfig struct { db *db.Queries } func NewAppConfig(db *db.Queries) AppConfig { return AppConfig{ db: db, } } func (ac *AppConfig) Get(ctx context.Context) (*domain.ApplicationConfig, error) { c, err := ac.db.GetConfig(ctx) return &domain.ApplicationConfig{ Key: c.TicketKey.String, ID: int(c.TicketID.Int32), }, err } func (ac *AppConfig) NewKey(ctx context.Context) (*domain.ApplicationConfig, error) { c, err := ac.db.SetNewConfig(ctx) return &domain.ApplicationConfig{ Key: c.TicketKey.String, ID: int(c.TicketID.Int32), }, err }