<?php
namespace App\Jobs;
use App\Models\Karyawan;
use App\Models\User;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class SyncPerusahaanJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $ids = [];
public $target = "karyawan";
/**
* Create a new job instance.
*
* @return void
*/
public function __construct($ids,$target = "karyawan")
{
$this->ids = $ids;
$this->target = $target;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
if($this->target == "karyawan"){
$karyawans = Karyawan::whereIn('id',$this->ids)->get();
foreach ($karyawans as $karyawan) {
$karyawan->perusahaans()->sync([$karyawan->perusahaan_id]);
}
} else {
$users = User::whereIn('id',$this->ids)->get();
foreach ($users as $user) {
$user->perusahaans()->sync([$user->perusahaan_id]);
}
}
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]