diff --git a/backend/app/Http/Controllers/Api/ReviewController.php b/backend/app/Http/Controllers/Api/ReviewController.php new file mode 100644 index 0000000..69731ac --- /dev/null +++ b/backend/app/Http/Controllers/Api/ReviewController.php @@ -0,0 +1,72 @@ +json(Review::all(), 200); + } + + // Simpan ulasan baru + public function store(Request $request) + { + $validated = $request->validate([ + 'rating' => 'required|integer|min:1|max:5', + 'message' => 'required|string', + 'name' => 'required|string|max:100', + 'city' => 'required|string|max:100', + ]); + + $review = Review::create($validated); + + return response()->json([ + 'message' => 'Ulasan berhasil disimpan', + 'data' => $review + ], 201); + } + + // Tampilkan ulasan tertentu + public function show($id) + { + $review = Review::findOrFail($id); + return response()->json($review, 200); + } + + // Update ulasan + public function update(Request $request, $id) + { + $review = Review::findOrFail($id); + + $validated = $request->validate([ + 'rating' => 'integer|min:1|max:5', + 'message' => 'string', + 'name' => 'string|max:100', + 'city' => 'string|max:100', + ]); + + $review->update($validated); + + return response()->json([ + 'message' => 'Ulasan berhasil diperbarui', + 'data' => $review + ], 200); + } + + // Hapus ulasan + public function destroy($id) + { + $review = Review::findOrFail($id); + $review->delete(); + + return response()->json([ + 'message' => 'Ulasan berhasil dihapus' + ], 200); + } +} diff --git a/backend/app/Models/Review.php b/backend/app/Models/Review.php new file mode 100644 index 0000000..b274073 --- /dev/null +++ b/backend/app/Models/Review.php @@ -0,0 +1,18 @@ +id(); + $table->tinyInteger('rating'); // nilai bintang 1–5 + $table->text('message'); + $table->string('name'); + $table->string('city'); + $table->timestamps(); + }); + } + + public function down(): void + { + Schema::dropIfExists('reviews'); + } +}; diff --git a/backend/resources/views/admin/dashboard.blade.php b/backend/resources/views/admin/dashboard.blade.php index 871947f..b76f564 100644 --- a/backend/resources/views/admin/dashboard.blade.php +++ b/backend/resources/views/admin/dashboard.blade.php @@ -1,107 +1,115 @@ +
- - -