using Mango.Nop.Services; using Microsoft.AspNetCore.Http; using Nop.Core.Domain.Catalog; using Nop.Core.Events; using Nop.Plugin.Misc.AuctionPlugin.Domains.DataLayer; using Nop.Plugin.Misc.AuctionPlugin.Domains.Enums; namespace Nop.Plugin.Misc.AuctionPlugin.Domains.EventConsumers; public class AuctionEventConsumer(IHttpContextAccessor httpContextAccessor, AuctionDbContext ctx) : MgEventConsumer(httpContextAccessor) { public override async Task HandleEventAsync(EntityUpdatedEvent eventMessage) { //TODO: itt lehetne ciklussal az összes ProductToAuction-re! - J. var productToAuction = await ctx.ProductToAuctions.GetByProductId(eventMessage.Entity.Id).FirstOrDefaultAsync(); //foreach if (productToAuction is { AuctionStatus: AuctionStatus.None }) { await ctx.ProductToAuctions.DeactivateItem(productToAuction, eventMessage.Entity.Price); } await base.HandleEventAsync(eventMessage); } }