File: /var/www/vhost/disk-apps/qas.sports-crowd.com/app/Console/Commands/RenewMembershipsCommand.php
<?php
namespace App\Console\Commands;
use App\Jobs\Memberships\RenewSubscriptionJob;
use App\Models\Membership\MembershipSubscriber;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Log;
class RenewMembershipsCommand extends Command
{
protected $signature = 'sportscrowd:renew-memberships';
protected $description = 'renovar membresías expiradas.';
public function __construct()
{
parent::__construct();
}
public function handle()
{
Log::info('renew-memberships');
MembershipSubscriber::where('status', 'EXPIRED')
->where('auto_renew', true)
->chunk(100, function ($expiredMemberships) {
foreach ($expiredMemberships as $expiredMembership) {
RenewSubscriptionJob::dispatch($expiredMembership->id);
}
});
return 0;
}
}