Files
hfb_sys/backend/internal/modules/systemconfig/service_update.go
T
2026-06-27 22:26:37 +08:00

24 lines
607 B
Go

package systemconfig
import (
"context"
"strconv"
"strings"
)
func (s *Service) Update(ctx context.Context, actorID uint64, key string, req UpdateRequest, meta AuditMeta) (*ConfigDTO, error) {
if s.repo == nil {
return nil, ErrDependencyUnavailable
}
if key == "" || (req.Value == "" && key != "integration.paddle_ocr_token") {
return nil, ErrInvalidConfig
}
if key == "listing.publish_cooldown_minutes" {
minutes, err := strconv.Atoi(strings.TrimSpace(req.Value))
if err != nil || minutes < 0 {
return nil, ErrInvalidConfig
}
}
return s.repo.Update(ctx, actorID, key, req, meta)
}