Updated mock data for templates
This commit is contained in:
parent
a703b99fc0
commit
1bfcd22b34
File diff suppressed because one or more lines are too long
|
|
@ -534,14 +534,15 @@ trait GeneratesCounter
|
|||
$reset_counter_frequency = (int) $client->getSetting('reset_counter_frequency_id');
|
||||
$settings_entity = $client->getSettingEntity('reset_counter_frequency_id');
|
||||
$settings = $settings_entity->settings;
|
||||
|
||||
|
||||
if ($reset_counter_frequency == 0) {
|
||||
|
||||
if ($client->getSetting('reset_counter_date')) {
|
||||
$settings->reset_counter_date = "";
|
||||
$settings_entity->settings = $settings;
|
||||
$settings_entity->saveQuietly();
|
||||
}
|
||||
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -154,7 +154,7 @@ class VendorHtmlEngine
|
|||
$data['$entity'] = ['value' => '', 'label' => ctrans('texts.purchase_order')];
|
||||
$data['$number'] = ['value' => $this->entity->number ?: ' ', 'label' => ctrans('texts.number')];
|
||||
$data['$number_short'] = ['value' => $this->entity->number ?: ' ', 'label' => ctrans('texts.purchase_order_number_short')];
|
||||
$data['$entity.terms'] = ['value' => Helpers::processReservedKeywords(\nl2br($this->entity->terms), $this->company) ?: '', 'label' => ctrans('texts.invoice_terms')];
|
||||
$data['$entity.terms'] = ['value' => Helpers::processReservedKeywords(\nl2br($this->entity->terms ?? ''), $this->company) ?: '', 'label' => ctrans('texts.invoice_terms')];
|
||||
$data['$terms'] = &$data['$entity.terms'];
|
||||
$data['$view_link'] = ['value' => $this->buildViewButton($this->invitation->getLink(), ctrans('texts.view_purchase_order')), 'label' => ctrans('texts.view_purchase_order')];
|
||||
$data['$viewLink'] = &$data['$view_link'];
|
||||
|
|
@ -404,7 +404,7 @@ class VendorHtmlEngine
|
|||
$data['$item'] = ['value' => '', 'label' => ctrans('texts.item')];
|
||||
$data['$description'] = ['value' => '', 'label' => ctrans('texts.description')];
|
||||
|
||||
$data['$entity_footer'] = ['value' => Helpers::processReservedKeywords(\nl2br($this->entity->footer), $this->company), 'label' => ''];
|
||||
$data['$entity_footer'] = ['value' => Helpers::processReservedKeywords(\nl2br($this->entity->footer ??''), $this->company), 'label' => ''];
|
||||
$data['$footer'] = &$data['$entity_footer'];
|
||||
|
||||
$data['$page_size'] = ['value' => $this->settings->page_size, 'label' => ''];
|
||||
|
|
|
|||
|
|
@ -56,6 +56,72 @@ class GeneratesCounterTest extends TestCase
|
|||
$this->makeTestData();
|
||||
}
|
||||
|
||||
public function testResetCounterFromClientCounter()
|
||||
{
|
||||
|
||||
$settings = CompanySettings::defaults();
|
||||
|
||||
$settings->reset_counter_date = "2026-01-01";
|
||||
$settings->reset_counter_frequency_id = "10";
|
||||
$settings->invoice_number_pattern = '{$client_id_number}/{$year}-{$client_counter}';
|
||||
|
||||
$company = Company::factory()->create([
|
||||
'account_id' => $this->account->id,
|
||||
]);
|
||||
|
||||
$client = Client::factory()->create([
|
||||
'company_id' => $company->id,
|
||||
'user_id' => $this->user->id,
|
||||
'id_number' => 'IDNUMBER',
|
||||
'settings' => $settings,
|
||||
]);
|
||||
|
||||
$this->assertEquals("10", $client->getSetting('reset_counter_frequency_id'));
|
||||
$this->assertEquals("2026-01-01", $client->getSetting('reset_counter_date'));
|
||||
|
||||
$invoice = Invoice::factory()->create([
|
||||
'client_id' => $client->id,
|
||||
'company_id' => $company->id,
|
||||
'user_id' => $this->user->id,
|
||||
]);
|
||||
|
||||
$this->travelTo('2025-02-01');
|
||||
|
||||
$invoice->number = null;
|
||||
$invoice->status_id = Invoice::STATUS_DRAFT;
|
||||
$invoice->save();
|
||||
|
||||
$this->travelTo('2025-02-01');
|
||||
|
||||
$invoice->number = null;
|
||||
$invoice->status_id = Invoice::STATUS_DRAFT;
|
||||
$invoice->save();
|
||||
|
||||
$invoice = $invoice->service()->markSent()->save();
|
||||
|
||||
$this->assertNotNull($invoice->number);
|
||||
|
||||
$this->assertEquals("IDNUMBER/2025-0001", $invoice->number);
|
||||
|
||||
$this->travelTo('2026-02-01');
|
||||
|
||||
$invoice = Invoice::factory()->create([
|
||||
'client_id' => $client->id,
|
||||
'company_id' => $company->id,
|
||||
'user_id' => $this->user->id,
|
||||
]);
|
||||
|
||||
$invoice->number = null;
|
||||
$invoice->status_id = Invoice::STATUS_DRAFT;
|
||||
$invoice->save();
|
||||
|
||||
$invoice = $invoice->service()->markSent()->save();
|
||||
|
||||
$this->assertEquals("IDNUMBER/2026-0001", $invoice->number);
|
||||
|
||||
|
||||
}
|
||||
|
||||
public function testAnnualCounterResetLogic()
|
||||
{
|
||||
$settings = CompanySettings::defaults();
|
||||
|
|
|
|||
Loading…
Reference in New Issue