Files
sistema-abogadas-litoral/app/Http/Controllers/ClienteController.php
T

79 lines
1.9 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Cliente;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ClienteController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index(): JsonResponse
{
$items = Cliente::all();
return response()->json([
'success' => true,
'data' => $items,
'message' => 'Registros obtenidos correctamente',
], 200);
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request): JsonResponse
{
$payload = $request->only((new Cliente())->getFillable());
$cliente = Cliente::create($payload);
return response()->json([
'success' => true,
'data' => $cliente,
'message' => 'Registro creado correctamente',
], 201);
}
/**
* Display the specified resource.
*/
public function show(Cliente $cliente): JsonResponse
{
return response()->json([
'success' => true,
'data' => $cliente,
'message' => 'Registro obtenido correctamente',
], 200);
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, Cliente $cliente): JsonResponse
{
$payload = $request->only((new Cliente())->getFillable());
$cliente->update($payload);
return response()->json([
'success' => true,
'data' => $cliente,
'message' => 'Registro actualizado correctamente',
], 200);
}
/**
* Remove the specified resource from storage.
*/
public function destroy(Cliente $cliente): JsonResponse
{
$cliente->delete();
return response()->json([
'success' => true,
'message' => 'Registro eliminado correctamente',
], 200);
}
}