HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/laravel/app/Console/Commands/ProcessAip.php
<?php

namespace App\Console\Commands;

use App\Models\Aip;
use App\Models\Prompt;
use Illuminate\Console\Command;

class ProcessAip extends Command
{

    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'aip:process {aipId?}';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Process AIPs';

    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle()
    {
        $aipId = $this->argument('aipId');
        if ($aipId) {
            /** @var Aip $aip */
            $aip = Aip::query()->where('id', $aipId)->first();
        } else {
            /** @var Aip $aip */
            $aip = Aip::query()
                ->where('response', '')
                ->orWhereNull('response')
                ->first();
        }

        if ($aip) {
            echo "Processing AIP ID {$aip->id} through default prompt.\n";
            $aip->response = json_encode([
                'status' => 'In progress',
            ]);

            $aip->saveQuietly();
            $aip->process();
        } else {
            echo "No AIP to process found.\n";
        }
    }
}