Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/dceprojects.corals.io/Corals/modules/ProjectPlan/Jobs/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home/corals/dceprojects.corals.io/Corals/modules/ProjectPlan/Jobs/NotifyProjectCrewsMembers.php
<?php


namespace Corals\Modules\ProjectPlan\Jobs;

use Corals\Modules\ProjectPlan\Models\Project;
use Corals\Modules\ProjectPlan\Models\ProjectCrew;
use Corals\Modules\ProjectPlan\Services\ProjectCrewService;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;

class NotifyProjectCrewsMembers implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    /**
     * @var Project
     */
    protected Project $project;

    /**
     * @param Project $project
     */
    public function __construct(Project $project)
    {
        $this->project = $project;
    }

    /**
     *
     */
    public function handle()
    {
        try {
            logger('NotifyProjectCrewsMembers JOB Started');

            $projectCrewService = new ProjectCrewService();

            ProjectCrew::query()->where('project_id', $this->project->id)
                ->where('is_notified', 0)
                ->each(function (ProjectCrew $projectCrew) use ($projectCrewService) {
                    $projectCrewService->sendProjectNotification($projectCrew);
                });

            logger('NotifyProjectCrewsMembers JOB Completed');
        } catch (\Exception $exception) {
            report($exception);
        }
    }
}

Spamworldpro Mini