From 1906a74759ed92673393e0a9fd30e21e08d76360 Mon Sep 17 00:00:00 2001 From: Mikhail Chusavitin Date: Tue, 24 Feb 2026 14:54:38 +0300 Subject: [PATCH] fix(sync): backfill missing items for existing local pricelists --- internal/services/sync/service.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/internal/services/sync/service.go b/internal/services/sync/service.go index 24882c6..1b97f6d 100644 --- a/internal/services/sync/service.go +++ b/internal/services/sync/service.go @@ -351,6 +351,15 @@ func (s *Service) SyncPricelists() (int, error) { // Check if pricelist already exists locally existing, _ := s.localDB.GetLocalPricelistByServerID(pl.ID) if existing != nil { + // Backfill items for legacy/partial local caches where only pricelist metadata exists. + if s.localDB.CountLocalPricelistItems(existing.ID) == 0 { + itemCount, err := s.SyncPricelistItems(existing.ID) + if err != nil { + slog.Warn("failed to sync missing pricelist items for existing local pricelist", "version", pl.Version, "error", err) + } else { + slog.Info("synced missing pricelist items for existing local pricelist", "version", pl.Version, "items", itemCount) + } + } continue }