owner instanceof \App\Models\Booking) { $companyReference = $model->owner->company->reference; $companyName = $model->owner->company->name; $employee = $model->owner->company->employees()->first(); $contactEmail = $employee->email; $contactName = $employee->name; $bookingMarking = $model->owner->marking; $serviceTypeName = $model->owner->company->services()->where('id', $model->owner->service_id)->first()->name; $projectName = 'Exchange | '.$serviceTypeName.' | '.$bookingMarking; if($status == ApprovalStatus::APPROVED) { if($model->type == TransactionType::PAYMENT){ $tasks = [ PerfexCRMTasks::TASK_1 ]; if($model->owner->service_id == 1){ $tasks = [ PerfexCRMTasks::TASK_1, PerfexCRMTasks::TASK_1_DAY_TRANSFER_1, PerfexCRMTasks::TASK_1_DAY_TRANSFER_2, PerfexCRMTasks::TASK_1_DAY_TRANSFER_3, PerfexCRMTasks::TASK_1_DAY_TRANSFER_4, PerfexCRMTasks::TASK_1_DAY_TRANSFER_5, PerfexCRMTasks::TASK_1_DAY_TRANSFER_6, ]; } else if($model->owner->service_id == 3){ $tasks = [ PerfexCRMTasks::TASK_1, PerfexCRMTasks::TASK_3_DAY_TRANSFER_1, PerfexCRMTasks::TASK_3_DAY_TRANSFER_2, PerfexCRMTasks::TASK_3_DAY_TRANSFER_3, PerfexCRMTasks::TASK_3_DAY_TRANSFER_4, PerfexCRMTasks::TASK_3_DAY_TRANSFER_5, PerfexCRMTasks::TASK_3_DAY_TRANSFER_6, ]; } else if($model->owner->service_id == 4){ $tasks = [ PerfexCRMTasks::TASK_1, PerfexCRMTasks::TASK_1688_PAYMENT_1, PerfexCRMTasks::TASK_1688_PAYMENT_2, PerfexCRMTasks::TASK_1688_PAYMENT_3, PerfexCRMTasks::TASK_1688_PAYMENT_4, PerfexCRMTasks::TASK_1688_PAYMENT_5, PerfexCRMTasks::TASK_1688_PAYMENT_6, PerfexCRMTasks::TASK_1688_PAYMENT_7, PerfexCRMTasks::TASK_1688_PAYMENT_8, PerfexCRMTasks::TASK_1688_PAYMENT_9, PerfexCRMTasks::TASK_1688_PAYMENT_10, PerfexCRMTasks::TASK_1688_PAYMENT_11, PerfexCRMTasks::TASK_1688_PAYMENT_12, PerfexCRMTasks::TASK_1688_PAYMENT_13, ]; } $updatePerfexCRMObject = new UpdatePerfexCRMObject( $companyName, $companyReference, $contactName, $contactEmail, $bookingMarking, $projectName, PerfexCRMProjectStatus::IN_PROGRESS, [], $tasks ); UpdatePerfexCRM::dispatch($updatePerfexCRMObject); } } else if($status == ApprovalStatus::PENDING_VERIFICATION){ if($model->type == TransactionType::PURCHASE_ORDER){ $tasks = []; if($model->owner->service_id == 1 || $model->owner->service_id == 3){ $tasks = [ PerfexCRMTasks::TASK_PURCHASE_ORDER_1, PerfexCRMTasks::TASK_PURCHASE_ORDER_2, ]; } if(count($tasks) > 0){ $updatePerfexCRMObject = new UpdatePerfexCRMObject( $companyName, $companyReference, $contactName, $contactEmail, $bookingMarking, $projectName, PerfexCRMProjectStatus::IN_PROGRESS, [], $tasks ); UpdatePerfexCRM::dispatch($updatePerfexCRMObject); } } } } return true; } }