From f5f6454cc1d67612adaa5c26c197f8cfa421a6f7 Mon Sep 17 00:00:00 2001 From: Buksa Kinga Date: Fri, 14 Feb 2025 14:14:57 +0200 Subject: [PATCH 1/2] Add vat_number DB field, update codebase accordingly --- docs/core/reference/addresses.md | 1 + docs/core/reference/carts.md | 1 + docs/core/reference/orders.md | 1 + docs/core/reference/payments.md | 1 + packages/admin/resources/lang/en/address.php | 6 +++++ packages/admin/resources/lang/en/order.php | 3 +++ packages/admin/resources/lang/es/address.php | 6 +++++ packages/admin/resources/lang/es/order.php | 3 +++ packages/admin/resources/lang/fr/address.php | 6 +++++ packages/admin/resources/lang/fr/order.php | 3 +++ packages/admin/resources/lang/nl/address.php | 6 +++++ packages/admin/resources/lang/nl/order.php | 3 +++ .../admin/resources/views/pdf/order.blade.php | 6 +++++ .../AddressRelationManager.php | 7 ++++++ .../Concerns/DisplaysOrderAddresses.php | 5 +++++ .../database/factories/AddressFactory.php | 1 + .../database/factories/CartAddressFactory.php | 1 + .../factories/OrderAddressFactory.php | 1 + ...0000_add_vat_number_to_addresses_table.php | 22 +++++++++++++++++++ ...dd_vat_number_to_order_addresses_table.php | 22 +++++++++++++++++++ ...add_vat_number_to_cart_addresses_table.php | 22 +++++++++++++++++++ .../core/src/Actions/Carts/AddAddress.php | 1 + packages/core/src/Models/Address.php | 1 + packages/core/src/Models/CartAddress.php | 2 ++ packages/core/src/Models/OrderAddress.php | 2 ++ packages/core/src/Search/OrderIndexer.php | 1 + 26 files changed, 134 insertions(+) create mode 100644 packages/core/database/migrations/2025_02_14_100000_add_vat_number_to_addresses_table.php create mode 100644 packages/core/database/migrations/2025_02_14_100010_add_vat_number_to_order_addresses_table.php create mode 100644 packages/core/database/migrations/2025_02_14_100020_add_vat_number_to_cart_addresses_table.php diff --git a/docs/core/reference/addresses.md b/docs/core/reference/addresses.md index af6c420bc5..e49e92ba4e 100644 --- a/docs/core/reference/addresses.md +++ b/docs/core/reference/addresses.md @@ -18,6 +18,7 @@ Lunar\Models\Address |`first_name`|| |`last_name`|| |`company_name`|nullable| +|`vat_number`|nullable| |`line_one`|| |`line_two`|nullable| |`line_three`|nullable| diff --git a/docs/core/reference/carts.md b/docs/core/reference/carts.md index 9ef5955e50..7b7b82457a 100644 --- a/docs/core/reference/carts.md +++ b/docs/core/reference/carts.md @@ -177,6 +177,7 @@ $shippingAddress = [ 'first_name' => null, 'last_name' => null, 'company_name' => null, + 'vat_number' => null, 'line_one' => null, 'line_two' => null, 'line_three' => null, diff --git a/docs/core/reference/orders.md b/docs/core/reference/orders.md index cf4320b745..ec80418374 100644 --- a/docs/core/reference/orders.md +++ b/docs/core/reference/orders.md @@ -256,6 +256,7 @@ If you are using the `createOrder` method on a cart, this is all handled for you 'first_name' => 'Jacob', 'last_name' => null, 'company_name' => null, + 'vat_number' => null, 'line_one' => '123 Foo Street', 'line_two' => null, 'line_three' => null, diff --git a/docs/core/reference/payments.md b/docs/core/reference/payments.md index ce56261e1a..a723ffa201 100644 --- a/docs/core/reference/payments.md +++ b/docs/core/reference/payments.md @@ -228,6 +228,7 @@ If you are using the `createOrder` method on a cart, this is all handled for you 'first_name' => 'Jacob', 'last_name' => null, 'company_name' => null, + 'vat_number' => null, 'line_one' => '123 Foo Street', 'line_two' => null, 'line_three' => null, diff --git a/packages/admin/resources/lang/en/address.php b/packages/admin/resources/lang/en/address.php index 2226d47010..26dade0e8c 100644 --- a/packages/admin/resources/lang/en/address.php +++ b/packages/admin/resources/lang/en/address.php @@ -19,6 +19,9 @@ 'company_name' => [ 'label' => 'Company Name', ], + 'vat_number' => [ + 'label' => 'VAT Number', + ], 'line_one' => [ 'label' => 'Address', ], @@ -61,6 +64,9 @@ 'company_name' => [ 'label' => 'Company Name', ], + 'vat_number' => [ + 'label' => 'VAT Number', + ], 'line_one' => [ 'label' => 'Line One', ], diff --git a/packages/admin/resources/lang/en/order.php b/packages/admin/resources/lang/en/order.php index 475d60ab39..7e0bb687f7 100644 --- a/packages/admin/resources/lang/en/order.php +++ b/packages/admin/resources/lang/en/order.php @@ -80,6 +80,9 @@ 'company_name' => [ 'label' => 'Company Name', ], + 'vat_number' => [ + 'label' => 'VAT Number', + ], 'contact_phone' => [ 'label' => 'Phone', ], diff --git a/packages/admin/resources/lang/es/address.php b/packages/admin/resources/lang/es/address.php index 424a6f7088..0766280145 100644 --- a/packages/admin/resources/lang/es/address.php +++ b/packages/admin/resources/lang/es/address.php @@ -19,6 +19,9 @@ 'company_name' => [ 'label' => 'Nombre de la empresa', ], + 'vat_number' => [ + 'label' => 'Número de IVA', + ], 'line_one' => [ 'label' => 'Dirección', ], @@ -61,6 +64,9 @@ 'company_name' => [ 'label' => 'Nombre de la empresa', ], + 'vat_number' => [ + 'label' => 'Número de IVA', + ], 'line_one' => [ 'label' => 'Línea Uno', ], diff --git a/packages/admin/resources/lang/es/order.php b/packages/admin/resources/lang/es/order.php index 2aee39a6da..b2d1b5d915 100644 --- a/packages/admin/resources/lang/es/order.php +++ b/packages/admin/resources/lang/es/order.php @@ -80,6 +80,9 @@ 'company_name' => [ 'label' => 'Nombre de la Empresa', ], + 'vat_number' => [ + 'label' => 'Número de IVA', + ], 'contact_phone' => [ 'label' => 'Teléfono', ], diff --git a/packages/admin/resources/lang/fr/address.php b/packages/admin/resources/lang/fr/address.php index 9b138060b9..fee3a04c5f 100644 --- a/packages/admin/resources/lang/fr/address.php +++ b/packages/admin/resources/lang/fr/address.php @@ -19,6 +19,9 @@ 'company_name' => [ 'label' => 'Nom de l\'entreprise', ], + 'vat_number' => [ + 'label' => 'Numéro de TVA', + ], 'line_one' => [ 'label' => 'Adresse', ], @@ -61,6 +64,9 @@ 'company_name' => [ 'label' => 'Nom de l\'entreprise', ], + 'vat_number' => [ + 'label' => 'Numéro de TVA', + ], 'line_one' => [ 'label' => 'Adresse ligne 1', ], diff --git a/packages/admin/resources/lang/fr/order.php b/packages/admin/resources/lang/fr/order.php index a9e62cda54..3225fb3c78 100644 --- a/packages/admin/resources/lang/fr/order.php +++ b/packages/admin/resources/lang/fr/order.php @@ -80,6 +80,9 @@ 'company_name' => [ 'label' => 'Nom de l\'entreprise', ], + 'vat_number' => [ + 'label' => 'Numéro de TVA', + ], 'contact_phone' => [ 'label' => 'Téléphone', ], diff --git a/packages/admin/resources/lang/nl/address.php b/packages/admin/resources/lang/nl/address.php index 8a64008810..c34c0b7624 100644 --- a/packages/admin/resources/lang/nl/address.php +++ b/packages/admin/resources/lang/nl/address.php @@ -19,6 +19,9 @@ 'company_name' => [ 'label' => 'Bedrijfsnaam', ], + 'vat_number' => [ + 'label' => 'BTW-nummer', + ], 'line_one' => [ 'label' => 'Adres', ], @@ -61,6 +64,9 @@ 'company_name' => [ 'label' => 'Bedrijfsnaam', ], + 'vat_number' => [ + 'label' => 'BTW-nummer', + ], 'line_one' => [ 'label' => 'Adresregel Een', ], diff --git a/packages/admin/resources/lang/nl/order.php b/packages/admin/resources/lang/nl/order.php index 311cce8d89..b764d3e753 100644 --- a/packages/admin/resources/lang/nl/order.php +++ b/packages/admin/resources/lang/nl/order.php @@ -80,6 +80,9 @@ 'company_name' => [ 'label' => 'Bedrijfsnaam', ], + 'vat_number' => [ + 'label' => 'BTW-nummer', + ], 'contact_phone' => [ 'label' => 'Telefoon', ], diff --git a/packages/admin/resources/views/pdf/order.blade.php b/packages/admin/resources/views/pdf/order.blade.php index d247876ba4..1b8d0004f7 100644 --- a/packages/admin/resources/views/pdf/order.blade.php +++ b/packages/admin/resources/views/pdf/order.blade.php @@ -95,6 +95,9 @@ @if($record->billingAddress->company_name) {{ $record->billingAddress->company_name }}
@endif + @if($record->billingAddress->vat_number) + {{ $record->billingAddress->vat_number }}
+ @endif {{ $record->billingAddress->line_one }} @if($record->billingAddress->line_two)
{{ $record->billingAddress->line_two }}
@@ -117,6 +120,9 @@ @if($record->shippingAddress->company_name) {{ $record->shippingAddress->company_name }}
@endif + @if($record->shippingAddress->vat_number) + {{ $record->shippingAddress->vat_number }}
+ @endif {{ $record->shippingAddress->line_one }} @if($record->shippingAddress->line_two)
{{ $record->shippingAddress->line_two }}
diff --git a/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/AddressRelationManager.php b/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/AddressRelationManager.php index 476576e45e..c492ed60c6 100644 --- a/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/AddressRelationManager.php +++ b/packages/admin/src/Filament/Resources/CustomerResource/RelationManagers/AddressRelationManager.php @@ -39,6 +39,9 @@ public function getDefaultTable(Table $table): Table Tables\Columns\TextColumn::make('company_name')->label( __('lunarpanel::address.table.company_name.label') ), + Tables\Columns\TextColumn::make('vat_number')->label( + __('lunarpanel::address.table.vat_number.label') + ), Tables\Columns\TextColumn::make('line_one')->label( __('lunarpanel::address.table.line_one.label') )->description(function (Model $record) { @@ -76,6 +79,7 @@ public function getDefaultTable(Table $table): Table 'first_name' => $record->first_name, 'last_name' => $record->last_name, 'company_name' => $record->company_name, + 'vat_number' => $record->vat_number, 'line_one' => $record->line_one, 'line_two' => $record->line_two, 'line_three' => $record->line_three, @@ -100,6 +104,9 @@ public function getDefaultTable(Table $table): Table Forms\Components\TextInput::make('company_name')->label( __('lunarpanel::address.form.company_name.label') ), + Forms\Components\TextInput::make('vat_number')->label( + __('lunarpanel::address.form.vat_number.label') + ), Forms\Components\Group::make()->schema([ Forms\Components\TextInput::make('line_one')->label( __('lunarpanel::address.form.line_one.label') diff --git a/packages/admin/src/Filament/Resources/OrderResource/Concerns/DisplaysOrderAddresses.php b/packages/admin/src/Filament/Resources/OrderResource/Concerns/DisplaysOrderAddresses.php index 5cbe29f021..98d31da6cd 100644 --- a/packages/admin/src/Filament/Resources/OrderResource/Concerns/DisplaysOrderAddresses.php +++ b/packages/admin/src/Filament/Resources/OrderResource/Concerns/DisplaysOrderAddresses.php @@ -54,6 +54,10 @@ public static function getAddressEditSchema(): array ->label(__('lunarpanel::order.form.address.company_name.label')) ->autocomplete(false) ->maxLength(255), + Forms\Components\TextInput::make('vat_number') + ->label(__('lunarpanel::order.form.address.vat_number.label')) + ->autocomplete(false) + ->maxLength(255), Forms\Components\Grid::make() ->schema([ Forms\Components\TextInput::make('contact_phone') @@ -138,6 +142,7 @@ public static function getOrderAddressInfolistSchema(string $type): Infolists\Co if ($address?->id ?? false) { return collect([ 'company_name' => $address->company_name, + 'vat_number' => $address->vat_number, 'fullName' => $address->fullName, 'line_one' => $address->line_one, 'line_two' => $address->line_two, diff --git a/packages/core/database/factories/AddressFactory.php b/packages/core/database/factories/AddressFactory.php index a00971daf8..e169962ed6 100644 --- a/packages/core/database/factories/AddressFactory.php +++ b/packages/core/database/factories/AddressFactory.php @@ -17,6 +17,7 @@ public function definition(): array 'first_name' => $this->faker->firstName, 'last_name' => $this->faker->lastName, 'company_name' => $this->faker->boolean ? $this->faker->company : null, + 'vat_number' => $this->faker->boolean ? $this->faker->regexify('[A-Z]{2}[0-9]{8}') : null, 'line_one' => $this->faker->streetName, 'line_two' => $this->faker->boolean ? $this->faker->secondaryAddress : null, 'line_three' => $this->faker->boolean ? $this->faker->buildingNumber : null, diff --git a/packages/core/database/factories/CartAddressFactory.php b/packages/core/database/factories/CartAddressFactory.php index fa0429de47..b65aae2478 100644 --- a/packages/core/database/factories/CartAddressFactory.php +++ b/packages/core/database/factories/CartAddressFactory.php @@ -16,6 +16,7 @@ public function definition(): array 'first_name' => $this->faker->firstName, 'last_name' => $this->faker->lastName, 'company_name' => $this->faker->boolean ? $this->faker->company : null, + 'vat_number' => $this->faker->boolean ? $this->faker->regexify('[A-Z]{2}[0-9]{8}') : null, 'line_one' => $this->faker->streetName, 'line_two' => $this->faker->boolean ? $this->faker->secondaryAddress : null, 'line_three' => $this->faker->boolean ? $this->faker->buildingNumber : null, diff --git a/packages/core/database/factories/OrderAddressFactory.php b/packages/core/database/factories/OrderAddressFactory.php index 3c6a28ae8e..843ff00add 100644 --- a/packages/core/database/factories/OrderAddressFactory.php +++ b/packages/core/database/factories/OrderAddressFactory.php @@ -15,6 +15,7 @@ public function definition(): array 'first_name' => $this->faker->firstName, 'last_name' => $this->faker->lastName, 'company_name' => $this->faker->boolean ? $this->faker->company : null, + 'vat_number' => $this->faker->boolean ? $this->faker->regexify('[A-Z]{2}[0-9]{8}') : null, 'line_one' => $this->faker->streetName, 'line_two' => $this->faker->boolean ? 'Suite '.$this->faker->numerify() : null, 'line_three' => $this->faker->boolean ? $this->faker->buildingNumber : null, diff --git a/packages/core/database/migrations/2025_02_14_100000_add_vat_number_to_addresses_table.php b/packages/core/database/migrations/2025_02_14_100000_add_vat_number_to_addresses_table.php new file mode 100644 index 0000000000..512274a26a --- /dev/null +++ b/packages/core/database/migrations/2025_02_14_100000_add_vat_number_to_addresses_table.php @@ -0,0 +1,22 @@ +prefix.'addresses', function (Blueprint $table) { + $table->string('vat_number')->after('company_name')->nullable(); + }); + } + + public function down(): void + { + Schema::table($this->prefix.'addresses', function (Blueprint $table) { + $table->dropColumn('vat_number'); + }); + } +}; diff --git a/packages/core/database/migrations/2025_02_14_100010_add_vat_number_to_order_addresses_table.php b/packages/core/database/migrations/2025_02_14_100010_add_vat_number_to_order_addresses_table.php new file mode 100644 index 0000000000..5abae57a66 --- /dev/null +++ b/packages/core/database/migrations/2025_02_14_100010_add_vat_number_to_order_addresses_table.php @@ -0,0 +1,22 @@ +prefix.'order_addresses', function (Blueprint $table) { + $table->string('vat_number')->after('company_name')->nullable(); + }); + } + + public function down(): void + { + Schema::table($this->prefix.'order_addresses', function (Blueprint $table) { + $table->dropColumn('vat_number'); + }); + } +}; diff --git a/packages/core/database/migrations/2025_02_14_100020_add_vat_number_to_cart_addresses_table.php b/packages/core/database/migrations/2025_02_14_100020_add_vat_number_to_cart_addresses_table.php new file mode 100644 index 0000000000..8597be7de4 --- /dev/null +++ b/packages/core/database/migrations/2025_02_14_100020_add_vat_number_to_cart_addresses_table.php @@ -0,0 +1,22 @@ +prefix.'cart_addresses', function (Blueprint $table) { + $table->string('vat_number')->after('company_name')->nullable(); + }); + } + + public function down(): void + { + Schema::table($this->prefix.'cart_addresses', function (Blueprint $table) { + $table->dropColumn('vat_number'); + }); + } +}; diff --git a/packages/core/src/Actions/Carts/AddAddress.php b/packages/core/src/Actions/Carts/AddAddress.php index 1eb0151397..c3147d80c5 100644 --- a/packages/core/src/Actions/Carts/AddAddress.php +++ b/packages/core/src/Actions/Carts/AddAddress.php @@ -15,6 +15,7 @@ class AddAddress extends AbstractAction 'first_name', 'last_name', 'company_name', + 'vat_number', 'line_one', 'line_two', 'line_three', diff --git a/packages/core/src/Models/Address.php b/packages/core/src/Models/Address.php index 208e933978..f72d4ece84 100644 --- a/packages/core/src/Models/Address.php +++ b/packages/core/src/Models/Address.php @@ -17,6 +17,7 @@ * @property string $first_name * @property string $last_name * @property ?string $company_name + * @property ?string $vat_number * @property string $line_one * @property ?string $line_two * @property ?string $line_three diff --git a/packages/core/src/Models/CartAddress.php b/packages/core/src/Models/CartAddress.php index 641a911b35..8870725323 100644 --- a/packages/core/src/Models/CartAddress.php +++ b/packages/core/src/Models/CartAddress.php @@ -23,6 +23,7 @@ * @property ?string $first_name * @property ?string $last_name * @property ?string $company_name + * @property ?string $vat_number * @property ?string $line_one * @property ?string $line_two * @property ?string $line_three @@ -103,6 +104,7 @@ protected static function newFactory() 'first_name', 'last_name', 'company_name', + 'vat_number', 'line_one', 'line_two', 'line_three', diff --git a/packages/core/src/Models/OrderAddress.php b/packages/core/src/Models/OrderAddress.php index 6acfcd5233..1aadc61108 100644 --- a/packages/core/src/Models/OrderAddress.php +++ b/packages/core/src/Models/OrderAddress.php @@ -20,6 +20,7 @@ * @property ?string $first_name * @property ?string $last_name * @property ?string $company_name + * @property ?string $vat_number * @property ?string $line_one * @property ?string $line_two * @property ?string $line_three @@ -63,6 +64,7 @@ protected static function newFactory() 'first_name', 'last_name', 'company_name', + 'vat_number', 'line_one', 'line_two', 'line_three', diff --git a/packages/core/src/Search/OrderIndexer.php b/packages/core/src/Search/OrderIndexer.php index 758be98c38..42cc27f75d 100644 --- a/packages/core/src/Search/OrderIndexer.php +++ b/packages/core/src/Search/OrderIndexer.php @@ -75,6 +75,7 @@ public function toSearchableArray(Model $model): array 'first_name', 'last_name', 'company_name', + 'vat_number', 'line_one', 'line_two', 'line_three', From c5378a93f81b343919638908b8115493118b0a2f Mon Sep 17 00:00:00 2001 From: Buksa Kinga Date: Fri, 14 Feb 2025 14:19:59 +0200 Subject: [PATCH 2/2] Rename vat_no to vat_number --- docs/core/reference/customers.md | 4 ++-- packages/admin/resources/lang/en/customer.php | 8 +++---- packages/admin/resources/lang/es/customer.php | 4 ++-- packages/admin/resources/lang/fr/customer.php | 4 ++-- packages/admin/resources/lang/nl/customer.php | 4 ++-- .../admin/resources/views/pdf/order.blade.php | 4 ++-- .../Filament/Resources/CustomerResource.php | 10 ++++----- .../database/factories/CustomerFactory.php | 2 +- ...00030_rename_vat_no_at_customers_table.php | 22 +++++++++++++++++++ packages/core/src/Models/Customer.php | 2 +- packages/core/src/Search/CustomerIndexer.php | 2 +- tests/core/Unit/Models/CustomerTest.php | 6 ++--- .../core/Unit/Search/CustomerIndexerTest.php | 2 +- 13 files changed, 48 insertions(+), 26 deletions(-) create mode 100644 packages/core/database/migrations/2025_02_14_100030_rename_vat_no_at_customers_table.php diff --git a/docs/core/reference/customers.md b/docs/core/reference/customers.md index 2e4463f6c2..5b67d1d2de 100644 --- a/docs/core/reference/customers.md +++ b/docs/core/reference/customers.md @@ -17,7 +17,7 @@ Lunar\Models\Customer |`first_name`|| |`last_name`|| |`company_name`|nullable| -|`vat_no`|nullable| +|`vat_number`|nullable| |`account_ref`|nullable| |`attribute_data`|JSON| |`meta`|JSON| @@ -32,7 +32,7 @@ Lunar\Models\Customer::create([ 'first_name' => 'Tony', 'last_name' => 'Stark', 'company_name' => 'Stark Enterprises', - 'vat_no' => null, + 'vat_number' => null, 'meta' => [ 'account_no' => 'TNYSTRK1234' ], diff --git a/packages/admin/resources/lang/en/customer.php b/packages/admin/resources/lang/en/customer.php index 6dfe6c5cd5..093f08433c 100644 --- a/packages/admin/resources/lang/en/customer.php +++ b/packages/admin/resources/lang/en/customer.php @@ -22,8 +22,8 @@ 'company_name' => [ 'label' => 'Company Name', ], - 'vat_no' => [ - 'label' => 'VAT No.', + 'vat_number' => [ + 'label' => 'VAT Number', ], 'account_reference' => [ 'label' => 'Account Reference', @@ -52,8 +52,8 @@ 'account_ref' => [ 'label' => 'Account Reference', ], - 'vat_no' => [ - 'label' => 'VAT No.', + 'vat_number' => [ + 'label' => 'VAT Number', ], 'customer_groups' => [ 'label' => 'Customer Groups', diff --git a/packages/admin/resources/lang/es/customer.php b/packages/admin/resources/lang/es/customer.php index 341ac80497..59d6dcd5c4 100644 --- a/packages/admin/resources/lang/es/customer.php +++ b/packages/admin/resources/lang/es/customer.php @@ -22,7 +22,7 @@ 'company_name' => [ 'label' => 'Nombre de la Empresa', ], - 'vat_no' => [ + 'vat_number' => [ 'label' => 'NIF', ], 'account_reference' => [ @@ -52,7 +52,7 @@ 'account_ref' => [ 'label' => 'Referencia de Cuenta', ], - 'vat_no' => [ + 'vat_number' => [ 'label' => 'NIF', ], 'customer_groups' => [ diff --git a/packages/admin/resources/lang/fr/customer.php b/packages/admin/resources/lang/fr/customer.php index e919567681..97f5317451 100644 --- a/packages/admin/resources/lang/fr/customer.php +++ b/packages/admin/resources/lang/fr/customer.php @@ -22,7 +22,7 @@ 'company_name' => [ 'label' => 'Nom de la société', ], - 'vat_no' => [ + 'vat_number' => [ 'label' => 'Numéro de TVA', ], 'account_reference' => [ @@ -52,7 +52,7 @@ 'account_ref' => [ 'label' => 'Référence de compte', ], - 'vat_no' => [ + 'vat_number' => [ 'label' => 'Numéro de TVA', ], 'customer_groups' => [ diff --git a/packages/admin/resources/lang/nl/customer.php b/packages/admin/resources/lang/nl/customer.php index b7411131cc..f14d3a6a02 100644 --- a/packages/admin/resources/lang/nl/customer.php +++ b/packages/admin/resources/lang/nl/customer.php @@ -22,7 +22,7 @@ 'company_name' => [ 'label' => 'Bedrijfsnaam', ], - 'vat_no' => [ + 'vat_number' => [ 'label' => 'BTW Nr.', ], 'account_reference' => [ @@ -52,7 +52,7 @@ 'account_ref' => [ 'label' => 'Account Referentie', ], - 'vat_no' => [ + 'vat_number' => [ 'label' => 'BTW Nr.', ], 'customer_groups' => [ diff --git a/packages/admin/resources/views/pdf/order.blade.php b/packages/admin/resources/views/pdf/order.blade.php index 1b8d0004f7..1da227711e 100644 --- a/packages/admin/resources/views/pdf/order.blade.php +++ b/packages/admin/resources/views/pdf/order.blade.php @@ -109,8 +109,8 @@ {{ $record->billingAddress->state }}
{{ $record->billingAddress->postcode }}
{{ $record->billingAddress->country->name }}
- @if($record->customer?->vat_no) -

VAT No.: {{ $record->customer?->vat_no }}

+ @if($record->customer?->vat_number) +

VAT Number: {{ $record->customer?->vat_number }}

@endif diff --git a/packages/admin/src/Filament/Resources/CustomerResource.php b/packages/admin/src/Filament/Resources/CustomerResource.php index 50b535d87d..dab2187639 100644 --- a/packages/admin/src/Filament/Resources/CustomerResource.php +++ b/packages/admin/src/Filament/Resources/CustomerResource.php @@ -149,8 +149,8 @@ protected static function getAccountRefFormComponent(): Component protected static function getVatNoFormComponent(): Component { - return Forms\Components\TextInput::make('vat_no') - ->label(__('lunarpanel::customer.form.vat_no.label')) + return Forms\Components\TextInput::make('vat_number') + ->label(__('lunarpanel::customer.form.vat_number.label')) ->nullable() ->maxLength(255); } @@ -184,8 +184,8 @@ protected static function getDefaultTable(Table $table): Table ->label(__('lunarpanel::customer.table.company_name.label')) ->sortable() ->searchable(), - Tables\Columns\TextColumn::make('vat_no') - ->label(__('lunarpanel::customer.table.vat_no.label')) + Tables\Columns\TextColumn::make('vat_number') + ->label(__('lunarpanel::customer.table.vat_number.label')) ->sortable(), Tables\Columns\TextColumn::make('account_ref') ->label(__('lunarpanel::customer.table.account_reference.label')) @@ -236,7 +236,7 @@ public static function getGloballySearchableAttributes(): array 'last_name', 'company_name', 'account_ref', - 'vat_no', + 'vat_number', 'users.name', 'users.email', ]; diff --git a/packages/core/database/factories/CustomerFactory.php b/packages/core/database/factories/CustomerFactory.php index aaf720048c..0eeb39ac99 100644 --- a/packages/core/database/factories/CustomerFactory.php +++ b/packages/core/database/factories/CustomerFactory.php @@ -16,7 +16,7 @@ public function definition(): array 'first_name' => $this->faker->firstName, 'last_name' => $this->faker->lastName, 'company_name' => $this->faker->boolean ? $this->faker->company : null, - 'vat_no' => $this->faker->boolean ? Str::random() : null, + 'vat_number' => $this->faker->boolean ? Str::random() : null, 'meta' => $this->faker->boolean ? ['account_no' => Str::random()] : null, ]; } diff --git a/packages/core/database/migrations/2025_02_14_100030_rename_vat_no_at_customers_table.php b/packages/core/database/migrations/2025_02_14_100030_rename_vat_no_at_customers_table.php new file mode 100644 index 0000000000..2e5421d63a --- /dev/null +++ b/packages/core/database/migrations/2025_02_14_100030_rename_vat_no_at_customers_table.php @@ -0,0 +1,22 @@ +prefix.'customers', function (Blueprint $table) { + $table->renameColumn('vat_no', 'vat_number'); + }); + } + + public function down(): void + { + Schema::table($this->prefix.'customers', function (Blueprint $table) { + $table->renameColumn('vat_number', 'vat_no'); + }); + } +}; diff --git a/packages/core/src/Models/Customer.php b/packages/core/src/Models/Customer.php index 21b7e66935..bd281289b5 100644 --- a/packages/core/src/Models/Customer.php +++ b/packages/core/src/Models/Customer.php @@ -22,7 +22,7 @@ * @property string $first_name * @property string $last_name * @property ?string $company_name - * @property ?string $vat_no + * @property ?string $vat_number * @property ?string $account_ref * @property ?array $attribute_data * @property ?array $meta diff --git a/packages/core/src/Search/CustomerIndexer.php b/packages/core/src/Search/CustomerIndexer.php index 8dffa3e7ad..ee2754021c 100644 --- a/packages/core/src/Search/CustomerIndexer.php +++ b/packages/core/src/Search/CustomerIndexer.php @@ -41,7 +41,7 @@ public function toSearchableArray(Model $model): array 'id' => (string) $model->id, 'name' => $model->fullName, 'company_name' => $model->company_name, - 'vat_no' => $model->vat_no, + 'vat_number' => $model->vat_number, 'account_ref' => $model->account_ref, 'created_at' => (int) $model->created_at->timestamp, ], $this->mapSearchableAttributes($model)); diff --git a/tests/core/Unit/Models/CustomerTest.php b/tests/core/Unit/Models/CustomerTest.php index 2e0a3f5712..9d4c92c810 100644 --- a/tests/core/Unit/Models/CustomerTest.php +++ b/tests/core/Unit/Models/CustomerTest.php @@ -16,7 +16,7 @@ 'first_name' => 'Tony', 'last_name' => 'Stark', 'company_name' => null, - 'vat_no' => null, + 'vat_number' => null, 'meta' => null, ]; @@ -36,7 +36,7 @@ 'first_name' => 'Tony', 'last_name' => 'Stark', 'company_name' => 'Stark Enterprises', - 'vat_no' => null, + 'vat_number' => null, 'meta' => null, ]; @@ -56,7 +56,7 @@ 'first_name' => 'Tony', 'last_name' => 'Stark', 'company_name' => null, - 'vat_no' => null, + 'vat_number' => null, 'meta' => [ 'account' => 123456, ], diff --git a/tests/core/Unit/Search/CustomerIndexerTest.php b/tests/core/Unit/Search/CustomerIndexerTest.php index 0d887d9620..cea5d0c9c1 100644 --- a/tests/core/Unit/Search/CustomerIndexerTest.php +++ b/tests/core/Unit/Search/CustomerIndexerTest.php @@ -64,7 +64,7 @@ expect($data['name'])->toEqual($customer->fullName); expect($data['company_name'])->toEqual($customer->company_name); - expect($data['vat_no'])->toEqual($customer->vat_no); + expect($data['vat_number'])->toEqual($customer->vat_number); expect($data)->toHaveKey('meta_field'); expect($data['meta_field'])->toEqual('meta_value'); expect($data['account_ref'])->toEqual($customer->account_ref);