1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-21 00:41:34 +02:00

Additional logging in generates counter

This commit is contained in:
David Bomba 2022-09-12 12:32:16 +10:00
parent 3a33be37a0
commit ab2d529923

View File

@ -412,20 +412,22 @@ trait GeneratesCounter
* @param string $prefix
* @return string The padded and prefixed entity number
*/
private function checkEntityNumber($class, $entity, $counter, $padding, $pattern, $prefix = '')
private function checkEntityNumber($class, $entity, $counter, $padding, $pattern, $prefix = '') :string
{
$check = false;
$check_counter = 1;
$original_counter = $counter;
do {
nlog($check_counter);
$number = $this->padCounter($counter, $padding);
$number = $this->applyNumberPattern($entity, $number, $pattern);
$number = $this->prefixCounter($number, $prefix);
$check = $class::whereCompanyId($entity->company_id)->whereNumber($number)->withTrashed()->exists();
$check = $class::where('company_id', $entity->company_id)->where('number', $number)->withTrashed()->exists();
$counter++;
$check_counter++;
@ -434,13 +436,17 @@ trait GeneratesCounter
nlog("counter error");
nlog("original_counter = {$original_counter}");
nlog("entity company = {$entity->company_id}");
nlog("counter = {$counter}");
nlog("returning = {$number}");
return $number.'_'.Str::random(5);
}
} while ($check);
nlog($number);
return $number;
}
@ -465,10 +471,12 @@ trait GeneratesCounter
$settings = $entity->settings;
if ($counter_name == 'invoice_number_counter' && ! property_exists($entity->settings, 'invoice_number_counter')) {
nlog("BAD STATE - why no invoice_number_counter set?");
$settings->invoice_number_counter = 0;
}
if (! property_exists($settings, $counter_name)) {
nlog("BAD STATE - why no {$counter_name} set?");
$settings->{$counter_name} = 1;
}