feat: propagate showNatixis through orchestrator and cache keys

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-26 12:46:18 +01:00
parent cd1a366f77
commit 7595530490

View File

@@ -44,12 +44,17 @@ public class ReportOrchestrator : IReportOrchestrator
_dividendRenderer = dividendRenderer; _dividendRenderer = dividendRenderer;
} }
public async Task<byte[]> GenerateReportAsync(string isin, bool showBranding = false, bool showDividend = false) public async Task<byte[]> GenerateReportAsync(string isin, bool showBranding = false, bool showDividend = false, bool showNatixis = false)
{ {
// ── Cache check ──────────────────────────────────────────────── // ── Cache check ────────────────────────────────────────────────
var dividendSuffix = showDividend ? ":dividend" : ""; var dividendSuffix = showDividend ? ":dividend" : "";
var baseCacheKey = showBranding ? $"{isin}:branded{dividendSuffix}" : $"{isin}{dividendSuffix}"; var natixisSuffix = showNatixis ? ":natixis" : "";
var expiredCacheKey = showBranding ? $"{isin}:expired:branded{dividendSuffix}" : $"{isin}:expired{dividendSuffix}"; var baseCacheKey = showBranding
? $"{isin}:branded{dividendSuffix}{natixisSuffix}"
: $"{isin}{dividendSuffix}{natixisSuffix}";
var expiredCacheKey = showBranding
? $"{isin}:expired:branded{dividendSuffix}{natixisSuffix}"
: $"{isin}:expired{dividendSuffix}{natixisSuffix}";
var cached = _cache.Get(baseCacheKey) ?? _cache.Get(expiredCacheKey); var cached = _cache.Get(baseCacheKey) ?? _cache.Get(expiredCacheKey);
if (cached != null) if (cached != null)
@@ -68,6 +73,7 @@ public class ReportOrchestrator : IReportOrchestrator
Scenario = await _dataService.GetScenarioAnalysisAsync(isin), Scenario = await _dataService.GetScenarioAnalysisAsync(isin),
ShowBranding = showBranding, ShowBranding = showBranding,
ShowDividend = showDividend, ShowDividend = showDividend,
ShowNatixis = showNatixis,
}; };
// ── 2. Determina il tipo di report ──────────────────────────── // ── 2. Determina il tipo di report ────────────────────────────