25 lines
989 B
C#
25 lines
989 B
C#
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<Product> 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);
|
|
}
|
|
} |