Add empleado, borrado del seeder, cambios esteticos y middleware.

This commit is contained in:
2026-06-10 15:57:51 -03:00
parent d0d61f7985
commit 2454ee3a23
20 changed files with 1039 additions and 200 deletions
+14 -2
View File
@@ -7,6 +7,13 @@ use App\Models\Client;
class ClientController extends Controller
{
private function checkAdmin()
{
if (auth()->check() && auth()->user()->role !== 'admin') {
abort(403, 'Solo los administradores pueden realizar esta acción.');
}
}
/**
* Display a listing of the resource.
*/
@@ -31,6 +38,7 @@ class ClientController extends Controller
*/
public function create()
{
$this->checkAdmin();
return view('clients.create');
}
@@ -39,6 +47,7 @@ class ClientController extends Controller
*/
public function store(Request $request)
{
$this->checkAdmin();
$validated = $request->validate([
'name' => ['required', 'string', 'max:255', 'not_regex:/[0-9]/'],
'phone' => 'nullable|string|max:50',
@@ -76,19 +85,21 @@ class ClientController extends Controller
/**
* Display the specified resource.
*/
public function show(string $id)
public function show(Client $client)
{
//
return view('clients.show', compact('client'));
}
public function edit(Client $client)
{
$this->checkAdmin();
// Reutilizamos la vista de create, o creamos una edit.blade.php similar
return view('clients.edit', compact('client'));
}
public function update(Request $request, Client $client)
{
$this->checkAdmin();
$validated = $request->validate([
'name' => ['required', 'string', 'max:255', 'not_regex:/[0-9]/'],
'phone' => 'nullable|string|max:50',
@@ -109,6 +120,7 @@ class ClientController extends Controller
*/
public function destroy(Client $client)
{
$this->checkAdmin();
try {
$client->delete();
return redirect()->route('clients.index')->with('success', 'Cliente eliminado correctamente.');