I have three Laravel Parent jobs name
AutoPOChargeCalculation::dispatch($invoice_id, $user_id, $notify)->onQueue('invoice');
AutoSOChargeCalculation::dispatch($invoice_id, $user_id, $notify)->onQueue('invoice');
AutoSPChargeCalculation::dispatch($invoice_id, $user_id, $notify)->onQueue('invoice');
inside Each of them calling child jobs with for loop
foreach ($objects as $object) {
$jobs[] = new CalculateSingleSaleOrderCharge($model, $object, $user_id, $notify, $i, $total_objects);
$i ++;
}
Bus::chain($jobs)->onQueue('invoice')->dispatch();
}
foreach ($objects as $object) {
$jobs[] = new CalculateSinglePurchaseOrderCharge($model, $object, $user_id, $notify, $i, $total_objects);
$i ++;
}
Bus::chain($jobs)->onQueue('invoice')->dispatch();
}
foreach ($objects as $object) {
$jobs[] = new CalculateSingleStoragePeriodCharge($model, $object, $user_id, $notify, $i, $total_objects);
$i ++;
}
Bus::chain($jobs)->onQueue('invoice')->dispatch();
}
Now I am thinking to removed parent jobs and Chained the all child jobs bus
Bus::chain($jobs)->onQueue('invoice')->dispatch()->withChain(
Bus::chain($jobs)->onQueue('invoice')->dispatch())->withChain(
Bus::chain($jobs)->onQueue('invoice')->dispatch());
Is that Possible?
question from:
https://stackoverflow.com/questions/65882261/how-to-chain-buschain-in-laravel 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…