diff --git a/Nop.Plugin.Misc.AIPlugin/Controllers/FruitBankDataController.cs b/Nop.Plugin.Misc.AIPlugin/Controllers/FruitBankDataController.cs index d07fb60..bc00e5b 100644 --- a/Nop.Plugin.Misc.AIPlugin/Controllers/FruitBankDataController.cs +++ b/Nop.Plugin.Misc.AIPlugin/Controllers/FruitBankDataController.cs @@ -270,11 +270,22 @@ namespace Nop.Plugin.Misc.FruitBankPlugin.Controllers } [SignalR(SignalRTags.GetEkaerHistories)] - public async Task> GetEkaerHistories() + public async Task> GetEkaerHistories(EkaerHistoryFilter ekaerHistoryFilter) { - _logger.Detail($"GetEkaerHistories invoked"); + _logger.Detail($"GetEkaerHistories invoked; ekaerHistoryFilter: {ekaerHistoryFilter}"); - return await ctx.EkaerHistories.GetAll().ToListAsync(); + // Szerver-oldali szűrés (a tabokhoz) a StatusId int-oszlopon — a helper-ek nem fordulnak SQL-re, + // ezért közvetlen StatusId-összehasonlítás. All / ismeretlen → minden. + IQueryable query = ctx.EkaerHistories.GetAll(); + query = ekaerHistoryFilter switch + { + EkaerHistoryFilter.ToSubmit => query.Where(eh => eh.StatusId != (int)EkaerStatus.Sent && eh.StatusId != (int)EkaerStatus.SentWithMissingData), + EkaerHistoryFilter.Sent => query.Where(eh => eh.StatusId == (int)EkaerStatus.Sent), + EkaerHistoryFilter.NeedsCompletion => query.Where(eh => eh.StatusId == (int)EkaerStatus.SentWithMissingData), + _ => query, + }; + + return await query.ToListAsync(); } [SignalR(SignalRTags.GetEkaerHistoryById)]