using Quartz;

namespace DysonNetwork.Pass.Wallet;

public class FundExpirationJob(
    PaymentService paymentService,
    ILogger<FundExpirationJob> logger
) : IJob
{
    public async Task Execute(IJobExecutionContext context)
    {
        logger.LogInformation("Starting fund expiration job...");

        try
        {
            await paymentService.ProcessExpiredFundsAsync();
            logger.LogInformation("Successfully processed expired funds");
        }
        catch (Exception ex)
        {
            logger.LogError(ex, "Error processing expired funds");
        }
    }
}
