From 1bce2be826aad8a75595eb5ad30b89fae25c65ad2407dc07c376d8a570711388 Mon Sep 17 00:00:00 2001 From: Abhishek Mali Date: Mon, 22 Dec 2025 19:22:01 +0530 Subject: [PATCH] amount update --- .../Admin/AdminCustomerController.php | 65 ++++++++++++------ app/Models/Invoice.php | 15 ++++ app/Models/User.php | 13 ++++ config/jwt.php | 4 +- public/invoices/invoice-INV-2025-000024.pdf | Bin 59929 -> 59890 bytes public/invoices/invoice-INV-2025-000033.pdf | Bin 59907 -> 59960 bytes public/invoices/invoice-INV-2025-000034.pdf | Bin 0 -> 59922 bytes resources/views/admin/customers.blade.php | 43 +++++++++++- .../views/admin/customers_view.blade.php | 39 ++++++++++- 9 files changed, 152 insertions(+), 27 deletions(-) create mode 100644 public/invoices/invoice-INV-2025-000034.pdf diff --git a/app/Http/Controllers/Admin/AdminCustomerController.php b/app/Http/Controllers/Admin/AdminCustomerController.php index aab2cd1..4afccda 100644 --- a/app/Http/Controllers/Admin/AdminCustomerController.php +++ b/app/Http/Controllers/Admin/AdminCustomerController.php @@ -19,32 +19,37 @@ class AdminCustomerController extends Controller $search = $request->search; $status = $request->status; - $query = User::with(['marks', 'orders'])->orderBy('id', 'desc'); + $query = User::with([ + 'marks', + 'orders', + 'invoices.installments' // 🔥 IMPORTANT + ])->orderBy('id', 'desc'); - // SEARCH FILTER if (!empty($search)) { $query->where(function ($q) use ($search) { $q->where('customer_name', 'like', "%$search%") - ->orWhere('email', 'like', "%$search%") - ->orWhere('mobile_no', 'like', "%$search%") - ->orWhere('customer_id', 'like', "%$search%"); + ->orWhere('email', 'like', "%$search%") + ->orWhere('mobile_no', 'like', "%$search%") + ->orWhere('customer_id', 'like', "%$search%"); }); } - // STATUS FILTER if (!empty($status) && in_array($status, ['active', 'inactive'])) { $query->where('status', $status); } - // Get all customers for statistics (without pagination) $allCustomers = $query->get(); - - // Get paginated customers for the table (10 per page) $customers = $query->paginate(10); - return view('admin.customers', compact('customers', 'allCustomers', 'search', 'status')); + return view('admin.customers', compact( + 'customers', + 'allCustomers', + 'search', + 'status' + )); } + // --------------------------------------------------------- // SHOW ADD CUSTOMER FORM // --------------------------------------------------------- @@ -106,20 +111,36 @@ class AdminCustomerController extends Controller // VIEW CUSTOMER FULL DETAILS // --------------------------------------------------------- public function view($id) - { - $customer = User::with(['marks', 'orders'])->findOrFail($id); +{ + $customer = User::with([ + 'marks', + 'orders', + 'invoices.installments' + ])->findOrFail($id); - $totalOrders = $customer->orders->count(); - $totalAmount = $customer->orders->sum('ttl_amount'); - $recentOrders = $customer->orders()->latest()->take(5)->get(); + // Orders + $totalOrders = $customer->orders->count(); + $totalOrderAmount = $customer->orders->sum('ttl_amount'); + + // Invoices (PAYABLE) + $totalPayable = $customer->invoices->sum('final_amount_with_gst'); + + // Paid via installments + $totalPaid = $customer->invoiceInstallments->sum('amount'); + + // Remaining + $totalRemaining = max($totalPayable - $totalPaid, 0); + + return view('admin.customers_view', compact( + 'customer', + 'totalOrders', + 'totalOrderAmount', + 'totalPayable', + 'totalPaid', + 'totalRemaining' + )); +} - return view('admin.customers_view', compact( - 'customer', - 'totalOrders', - 'totalAmount', - 'recentOrders' - )); - } // --------------------------------------------------------- // TOGGLE STATUS ACTIVE / INACTIVE diff --git a/app/Models/Invoice.php b/app/Models/Invoice.php index b59b456..d9dc394 100644 --- a/app/Models/Invoice.php +++ b/app/Models/Invoice.php @@ -92,5 +92,20 @@ class Invoice extends Model return $this->hasMany(InvoiceInstallment::class); } +// App\Models\Invoice.php + +public function totalPaid() +{ + return $this->installments()->sum('amount'); +} + +public function remainingAmount() +{ + return max( + ($this->final_amount_with_gst ?? 0) - $this->totalPaid(), + 0 + ); +} + } diff --git a/app/Models/User.php b/app/Models/User.php index e67ea2f..48c963c 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -94,6 +94,19 @@ public function invoices() return $this->hasMany(\App\Models\Invoice::class, 'customer_id', 'id'); } +// App\Models\User.php + + +public function invoiceInstallments() +{ + return $this->hasManyThrough( + InvoiceInstallment::class, + Invoice::class, + 'customer_id', // FK on invoices + 'invoice_id' // FK on installments + ); +} + } diff --git a/config/jwt.php b/config/jwt.php index fcaf30a..3119694 100644 --- a/config/jwt.php +++ b/config/jwt.php @@ -89,7 +89,7 @@ return [ | */ - 'ttl' => (int) env('JWT_TTL', 15), + 'ttl' => (int) env('JWT_TTL', 1440), /* |-------------------------------------------------------------------------- @@ -108,7 +108,7 @@ return [ | */ - 'refresh_ttl' => (int) env('JWT_REFRESH_TTL', 60), + 'refresh_ttl' => (int) env('JWT_REFRESH_TTL', 64800), /* |-------------------------------------------------------------------------- diff --git a/public/invoices/invoice-INV-2025-000024.pdf b/public/invoices/invoice-INV-2025-000024.pdf index 68bc8aa19dc3ea43ea0f70ab333e94d5dfa4624b2331d8134f7b6e20536f5b9f..0494642f03e1c39417c3e503268c2433a5b8a1a30526ceec4e6a0ab22e4dea26 100644 GIT binary patch delta 3751 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 delta 3789 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

|Xb24F~mYJD5+-K-p9%p&c#En;kA^AtK5PzNZ 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 delta 3766 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 OB9TarW5?8VPyQRSzku5S diff --git a/public/invoices/invoice-INV-2025-000034.pdf b/public/invoices/invoice-INV-2025-000034.pdf new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..2257043afeb42a60aac72acb4ad845060f7331df12cd816e663cb5f54a85eacf GIT binary patch literal 59922 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∋b#={=1WO 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 Zo7k;2d>omwx)+cb7+je{T3W|g_dg?HJW~Jw literal 0 HcmV?d00001 diff --git a/resources/views/admin/customers.blade.php b/resources/views/admin/customers.blade.php index 0cd4604..31db1f2 100644 --- a/resources/views/admin/customers.blade.php +++ b/resources/views/admin/customers.blade.php @@ -827,14 +827,29 @@ Customer Info Customer ID Orders - Total + Order Total + Total Payable {{-- NEW --}} + Remaining {{-- NEW --}} Create Date Status Actions + @forelse($customers as $c) + @php + // Invoice total (with GST) + $totalPayable = $c->invoices->sum('final_amount_with_gst'); + + // Total paid via installments + $totalPaid = $c->invoices + ->flatMap(fn($inv) => $inv->installments) + ->sum('amount'); + + // Remaining amount + $remainingAmount = max($totalPayable - $totalPaid, 0); + @endphp @@ -869,9 +884,33 @@ - ₹{{ number_format($c->orders->sum('ttl_amount'), 2) }} + + ₹{{ number_format($c->orders->sum('ttl_amount'), 2) }} + + + + ₹{{ number_format($totalPayable, 2) }} + + + + + @if($remainingAmount > 0) + + ₹{{ number_format($remainingAmount, 2) }} + + @else + + ₹0.00 + + @endif + + + + + + {{ $c->created_at ? $c->created_at->format('d-m-Y') : '-' }} diff --git a/resources/views/admin/customers_view.blade.php b/resources/views/admin/customers_view.blade.php index dc56665..d4dbb66 100644 --- a/resources/views/admin/customers_view.blade.php +++ b/resources/views/admin/customers_view.blade.php @@ -698,11 +698,48 @@

-
₹{{ number_format($totalAmount, 2) }}
+
₹{{ number_format($totalOrderAmount, 2) }}
Total Amount Spent
+ +
+
+
+ +
+
₹{{ number_format($totalPayable, 2) }}
+
Total Payable
+
+
+
+
+
+ +
+
₹{{ number_format($totalRemaining, 2) }}
+
Remaining Amount
+
+
+ + {{-- Mark Count --}}