AItEKS пре 2 недеља
родитељ
комит
8a42551e19

+ 25 - 0
form-app-with-data/app/Http/Controllers/Api/ContactMessageController.php

@@ -0,0 +1,25 @@
+<?php
+
+namespace App\Http\Controllers\Api;
+
+use App\Http\Controllers\Controller;
+use App\Http\Resources\ContactMessageResource;
+use App\Models\ContactMessage;
+use Illuminate\Http\Request;
+
+class ContactMessageController extends Controller
+{
+    public function index()
+    {
+        $messages = ContactMessage::with(['category', 'status', 'notes'])->get();
+        
+        return ContactMessageResource::collection($messages);
+    }
+
+    public function show(ContactMessage $contactMessage)
+    {
+        $contactMessage->load(['category', 'status', 'notes']);
+        
+        return new ContactMessageResource($contactMessage);
+    }
+}

+ 2 - 4
form-app-with-data/app/Http/Resources/ContactMessageResource.php

@@ -5,6 +5,8 @@ namespace App\Http\Resources;
 use Illuminate\Http\Request;
 use Illuminate\Http\Resources\Json\JsonResource;
 
+use App\Models\Category;
+
 class ContactMessageResource extends JsonResource
 {
     /**
@@ -20,10 +22,6 @@ class ContactMessageResource extends JsonResource
             'sender_email' => $this->email,
             'message_body' => $this->message,
             'submitted_at' => $this->created_at->format('Y-m-d H:i:s'),
-            
-            'category' => new CategoryResource($this->whenLoaded('category')),
-            'status' => new StatusResource($this->whenLoaded('status')),
-            'notes' => NoteResource::collection($this->whenLoaded('notes')),
         ];
     }
 }

+ 1 - 0
form-app-with-data/bootstrap/app.php

@@ -7,6 +7,7 @@ use Illuminate\Foundation\Configuration\Middleware;
 return Application::configure(basePath: dirname(__DIR__))
     ->withRouting(
         web: __DIR__.'/../routes/web.php',
+        api: __DIR__.'/../routes/api.php',
         commands: __DIR__.'/../routes/console.php',
         health: '/up',
     )

+ 8 - 0
form-app-with-data/routes/api.php

@@ -0,0 +1,8 @@
+<?php
+
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Route;
+use App\Http\Controllers\Api\ContactMessageController;
+
+Route::get('/messages', [ContactMessageController::class, 'index']);
+Route::get('/messages/{contactMessage}', [ContactMessageController::class, 'show']);