mirror of
https://github.com/opensupports/opensupports.git
synced 2025-07-28 00:04:31 +02:00
Fix ticket number collision #378
This commit is contained in:
parent
4111401518
commit
b09ccdec02
@ -92,15 +92,15 @@ class Ticket extends DataStore {
|
|||||||
|
|
||||||
public function generateUniqueTicketNumber() {
|
public function generateUniqueTicketNumber() {
|
||||||
$linearCongruentialGenerator = new LinearCongruentialGenerator();
|
$linearCongruentialGenerator = new LinearCongruentialGenerator();
|
||||||
$ticketQuantity = Ticket::count();
|
|
||||||
|
|
||||||
if ($ticketQuantity === 0) {
|
if (Ticket::count() === 0) {
|
||||||
$ticketNumber = Setting::getSetting('ticket-first-number')->value;
|
$ticketNumber = Setting::getSetting('ticket-first-number')->value;
|
||||||
} else {
|
} else {
|
||||||
|
$lastTicketId = Ticket::findOne(' ORDER BY id DESC')->id;
|
||||||
$linearCongruentialGenerator->setGap(Setting::getSetting('ticket-gap')->value);
|
$linearCongruentialGenerator->setGap(Setting::getSetting('ticket-gap')->value);
|
||||||
$linearCongruentialGenerator->setFirst(Setting::getSetting('ticket-first-number')->value);
|
$linearCongruentialGenerator->setFirst(Setting::getSetting('ticket-first-number')->value);
|
||||||
|
|
||||||
$ticketNumber = $linearCongruentialGenerator->generate($ticketQuantity);
|
$ticketNumber = $linearCongruentialGenerator->generate($lastTicketId + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $ticketNumber;
|
return $ticketNumber;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user