topnotch_ordersystem/app/Http/Controllers/CustomerController.php

60 lines
1.6 KiB
PHP
Raw Normal View History

2024-09-03 14:38:34 -07:00
<?php
namespace App\Http\Controllers;
use App\Http\Requests\CustomerRequest;
use App\Models\Customer;
2024-09-03 15:15:57 -07:00
use App\Models\PackingSlip;
use Illuminate\Http\Request;
2024-09-03 14:38:34 -07:00
class CustomerController extends Controller
{
public function index()
{
2024-09-03 15:15:57 -07:00
return view('customers.index', ['customers' => Customer::all()]);
2024-09-03 14:38:34 -07:00
}
public function store(CustomerRequest $request)
{
2024-09-03 15:15:57 -07:00
Customer::create($request->validated());
2024-09-03 14:38:34 -07:00
2024-09-03 15:15:57 -07:00
return redirect()->route('customers.index')->with('status', 'Customer created successfully.');
2024-09-03 14:38:34 -07:00
}
public function create()
{
2024-09-03 15:15:57 -07:00
return view('customers.create');
2024-09-03 14:38:34 -07:00
}
2024-09-03 15:15:57 -07:00
public function show(Customer $customer, $tab=null)
2024-09-03 14:38:34 -07:00
{
2024-09-03 15:15:57 -07:00
return view('customers.show', [
'customer' => $customer,
'contacts' => $customer->contacts()->get(),
'packingSlips' => PackingSlip::where('customer_id', $customer->id)->orderBy('date_received')->paginate(15),
'tab' => $tab,
]);
2024-09-03 14:38:34 -07:00
}
public function update(CustomerRequest $request, Customer $customer)
{
2024-09-03 15:15:57 -07:00
$customer->update($request->validated());
2024-09-03 14:38:34 -07:00
2024-09-03 15:15:57 -07:00
return redirect()->route('customers.show', $customer)->with('status', 'Customer updated successfully.');
2024-09-03 14:38:34 -07:00
}
2024-09-03 15:15:57 -07:00
public function requestDestroy(Request $request)
{
$customer = Customer::find($request->id);
$customer->delete();
return redirect()->route('customers.index')->with('status', 'Customer deleted successfully.');
}
2024-09-03 14:38:34 -07:00
public function destroy(Customer $customer)
{
2024-09-03 15:15:57 -07:00
$customer->delete();
2024-09-03 14:38:34 -07:00
2024-09-03 15:15:57 -07:00
return redirect()->route('customers.index')->with('status', 'Customer deleted successfully.');
2024-09-03 14:38:34 -07:00
}
}