Я пытаюсь создать уникальные, последовательные номера счетов.Счета-фактуры генерируются с использованием очереди с 1 работником, но из 160 счетов-фактур 28 по-прежнему имеют одинаковые номера.Ниже приведен код, используемый для генерации уникального номера счета.
public static function getNewInvoiceNumber(String $prefix)
{
$lastNumber = App\Invoice::where('invoiceNumber', 'LIKE', $prefix . now()->year . '-%')->orderByDesc('invoiceID')->first()->invoiceNumber ?? '0';
$newNumber = (int)substr($lastNumber, strlen($prefix . now()->year . '-')) + 1;
while (App\Invoice::where('invoiceNumber', $prefix . now()->year . '-' . $newNumber)->exists()) {
$newNumber++;
}
return $newNumber;
}