Change index sites for invoices and payments.

This commit is contained in:
2025-01-17 12:10:43 +01:00
parent dcedbc71c4
commit 6427dfdc5d
3 changed files with 25 additions and 10 deletions

View File

@@ -16,7 +16,7 @@ class InvoiceController extends Controller
{ {
$from = $from . ' 00:00:00'; $from = $from . ' 00:00:00';
$end = $end . ' 23:59:59'; $end = $end . ' 23:59:59';
return response()->json(Invoice::whereBetween('created_at', [$from, $end])->with('address')->orderBy('created_at', 'desc')->get()); return response()->json(Invoice::whereBetween('created_at', [$from, $end])->with(['address', 'customer'])->orderBy('created_at', 'desc')->get());
} }
public function open(): JsonResponse public function open(): JsonResponse

View File

@@ -42,22 +42,22 @@
<summary class="cursor-pointer flex flex-row w-full mt-4"> <summary class="cursor-pointer flex flex-row w-full mt-4">
<div class="w-1/6 font-bold border-b-2">{{ __('invoice.Invoice Number') }}</div> <div class="w-1/6 font-bold border-b-2">{{ __('invoice.Invoice Number') }}</div>
<div class="w-1/6 font-bold border-b-2">{{ __('common.Name') }}</div> <div class="w-1/3 font-bold border-b-2">{{ __('customer.Customer') }}</div>
<div class="w-1/4 font-bold border-b-2">{{ __('common.Email') }}</div> <div class="w-1/4 font-bold border-b-2">{{ __('common.Name') }}</div>
<div class="w-1/12 font-bold border-b-2">{{ __('invoice.State') }}</div> <div class="w-1/12 font-bold border-b-2">{{ __('invoice.State') }}</div>
<div class="w-1/6 font-bold border-b-2 text-right">{{ __('invoice.Sum') }}</div> <div class="w-1/12 font-bold border-b-2 text-right">{{ __('invoice.Sum') }}</div>
<div class="w-1/6 font-bold border-b-2 text-right">{{ __('common.Created at') }}</div> <div class="w-1/12 font-bold border-b-2 text-right">{{ __('common.Created at') }}</div>
</summary> </summary>
<template x-for="invoice in invoices"> <template x-for="invoice in invoices">
<details class="even:bg-gray-100 odd:bg-white"> <details class="even:bg-gray-100 odd:bg-white">
<summary class="cursor-pointer flex flex-row w-full" @click="window.location.href='/invoice/' + invoice.id;"> <summary class="cursor-pointer flex flex-row w-full" @click="window.location.href='/invoice/' + invoice.id;">
<div class="w-1/6" x-text="invoice.number"></div> <div class="w-1/6" x-text="invoice.number"></div>
<div class="w-1/6" x-text="invoice.address.name"></div> <div class="w-1/3" x-text="invoice.customer.name"></div>
<div class="w-1/4" x-text="invoice.address.email"></div> <div class="w-1/4" x-text="invoice.address.name"></div>
<div class="w-1/12" x-text="invoice.localized_state"></div> <div class="w-1/12" x-text="invoice.localized_state"></div>
<div class="w-1/6 text-right" x-text="invoice.sum + ' €'"></div> <div class="w-1/12 text-right" x-text="invoice.sum + ' €'"></div>
<div class="w-1/6 text-right" x-text="invoice.created"></div> <div class="w-1/12 text-right" x-text="invoice.created"></div>
</summary> </summary>
</details> </details>
</template> </template>

View File

@@ -57,6 +57,17 @@
</details> </details>
</template> </template>
<div class="w-full border-t-2"></div>
<div class="w-1/2 grid grid-cols-2">
<div>{{ __('invoice.Net') }}</div>
<div class="text-right" x-text="(sum - tax).toFixed(2) + ' €'"></div>
<div>{{ __('invoice.Tax') }}</div>
<div class="text-right" x-text="tax + ' €'"></div>
<div class="font-bold">{{ __('invoice.Sum') }}</div>
<div class="font-bold text-right" x-text="sum + ' €'"></div>
</div>
</section> </section>
</div> </div>
</div> </div>
@@ -72,6 +83,7 @@
end: "{{ \Illuminate\Support\Facades\Date::now()->format('Y-m-d') }}", end: "{{ \Illuminate\Support\Facades\Date::now()->format('Y-m-d') }}",
payments: [], payments: [],
sum: 0, sum: 0,
tax: 0,
init() { init() {
this.fetchPayments(); this.fetchPayments();
@@ -91,10 +103,13 @@
calculateSum() { calculateSum() {
this.sum = 0; this.sum = 0;
this.tax = 0;
for (const [key, payment] of Object.entries(this.payments)) { for (const [key, payment] of Object.entries(this.payments)) {
this.sum += parseFloat(payment.sum); this.sum += parseFloat(payment.paid_amount);
this.tax += payment.invoice.tax * payment.paid_amount / payment.invoice.sum;
} }
this.sum = this.sum.toFixed(2); this.sum = this.sum.toFixed(2);
this.tax = this.tax.toFixed(2);
} }
} }
} }