35 lines
1.0 KiB
PHP
35 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Commands;
|
|
|
|
use CodeIgniter\CLI\BaseCommand;
|
|
use CodeIgniter\CLI\CLI;
|
|
use App\Models\UserModel;
|
|
use App\Services\NotificationService;
|
|
|
|
class CheckMissedPayments extends BaseCommand
|
|
{
|
|
protected $group = 'Payments';
|
|
protected $name = 'payments:check-missed';
|
|
protected $description = 'Checks for users who missed payments and sends reminders.';
|
|
|
|
public function run(array $params)
|
|
{
|
|
$userModel = new UserModel();
|
|
|
|
// Fetch users who missed payment (you need to implement this query)
|
|
$missedUsers = $userModel->getUsersWithMissedPayments();
|
|
|
|
foreach ($missedUsers as $user) {
|
|
NotificationService::toUser(
|
|
$user['id'],
|
|
'Payment Missed',
|
|
'You have a missed payment. Please pay to avoid penalty.',
|
|
['in_app', 'email', 'sms']
|
|
);
|
|
CLI::write("Reminder sent to {$user['email']}", 'yellow');
|
|
}
|
|
|
|
CLI::write("Finished checking missed payments.", 'green');
|
|
}
|
|
} |