From b180dcb4379c894910b4a6bff164b291992b7a4e Mon Sep 17 00:00:00 2001 From: nylaaptr Date: Thu, 2 Jul 2026 12:34:39 +0700 Subject: [PATCH] menambahkan perubahan --- app/Http/Controllers/ChatbotController.php | 49 +++++++++++++---- app/Http/Controllers/MonitoringController.php | 27 +++++++++- resources/views/admin/aktivitas.blade.php | 8 ++- resources/views/admin/data_rumah.blade.php | 8 ++- resources/views/admin/data_user.blade.php | 8 ++- .../views/admin/detail-monitoring.blade.php | 13 ++--- .../views/admin/edit-datarumah.blade.php | 8 ++- .../views/admin/edit-perumahan.blade.php | 8 ++- resources/views/admin/edit_user.blade.php | 8 ++- .../views/admin/halaman_verifikasi.blade.php | 8 ++- resources/views/admin/kelola-blok.blade.php | 8 ++- .../views/admin/laporan_penjualan.blade.php | 8 ++- .../admin/monitoring-pemesanan.blade.php | 8 ++- resources/views/admin/perumahan.blade.php | 8 ++- .../views/admin/pesan_pelanggan.blade.php | 8 ++- .../views/admin/tambah-datauser.blade.php | 8 ++- resources/views/admin/tambah-rumah.blade.php | 8 ++- .../views/admin/tambah_perumahan.blade.php | 8 ++- .../views/admin/verifikasi_dokumen.blade.php | 12 ++++- resources/views/admin/welcome.blade.php | 8 ++- resources/views/detail-pemesanan.blade.php | 52 ++++++++++++------- resources/views/form-pemesanan.blade.php | 2 +- resources/views/halaman-katalog.blade.php | 6 ++- resources/views/halaman-profil.blade.php | 7 --- resources/views/invoice.blade.php | 4 +- resources/views/register.blade.php | 35 +++++++++++-- routes/web.php | 2 + 27 files changed, 266 insertions(+), 71 deletions(-) diff --git a/app/Http/Controllers/ChatbotController.php b/app/Http/Controllers/ChatbotController.php index 9398c22..db8e892 100644 --- a/app/Http/Controllers/ChatbotController.php +++ b/app/Http/Controllers/ChatbotController.php @@ -5,6 +5,7 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Auth; +use Illuminate\Support\Facades\Log; use App\Models\ChatSession; use App\Models\ChatbotMessage; @@ -44,6 +45,34 @@ public function index() public function kirim(Request $request) { $pesanUser = $request->input('message'); + $pesanLower = strtolower($pesanUser); + + $keywordProperti = [ + 'rumah', + 'properti', + 'katalog', + 'ruko', + 'subsidi', + 'tipe', + 'cluster', + 'unit', + 'harga', + 'beli rumah', + 'cari rumah', + 'lihat rumah', + 'lihat katalog', + 'show katalog', + 'perumahan' + ]; + + $perluTampilkanKatalog = false; + + foreach ($keywordProperti as $keyword) { + if (str_contains($pesanLower, $keyword)) { + $perluTampilkanKatalog = true; + break; + } + } $userId = Auth::id(); @@ -189,11 +218,18 @@ public function kirim(Request $request) Jika ingin merekomendasikan properti, gunakan format: [REKOMENDASI:id] +Jika pengguna meminta melihat rumah, properti, ruko, katalog, unit, atau mencari rumah berdasarkan budget, lokasi, tipe, maupun kategori, WAJIB sertakan tag: +[REKOMENDASI:id] + Contoh: [REKOMENDASI:1,2] "; + + + + try { $client = new \GuzzleHttp\Client(); @@ -210,22 +246,17 @@ public function kirim(Request $request) ], 'json' => [ - 'model' => 'llama-3.1-8b-instant', - 'max_tokens' => 500, - 'messages' => [ [ 'role' => 'system', - 'content' => $systemPrompt ], [ 'role' => 'user', - 'content' => $pesanUser ] ] @@ -242,6 +273,7 @@ public function kirim(Request $request) $balasan = $result['choices'][0]['message']['content'] ?? 'Tidak ada balasan'; + Log::info($balasan); // ========================= @@ -279,7 +311,7 @@ public function kirim(Request $request) 'luas_tanah', 'stok_unit' ) - ->get() + ->get(1) ->toArray(); // hapus tag dari chat @@ -304,15 +336,10 @@ public function kirim(Request $request) // SIMPAN BALASAN BOT // ========================= DB::table('chat_messages')->insert([ - 'id_sessions' => $sessionId, - 'sender' => 'bot', - 'message' => $balasan, - 'properti_data' => json_encode($rekomendasiProperti), - 'created_at' => now() ]); diff --git a/app/Http/Controllers/MonitoringController.php b/app/Http/Controllers/MonitoringController.php index 1910ceb..1738f9b 100644 --- a/app/Http/Controllers/MonitoringController.php +++ b/app/Http/Controllers/MonitoringController.php @@ -264,11 +264,34 @@ public function update(Request $request, $id) // KHUSUS PELUNASAN if ( - strtolower($request->progres) == 'pelunasan' || - strtolower($request->tahap_saat_ini) == 'pelunasan pembayaran' + strtolower($request->progres) == 'pelunasan' && + $request->status != 'Selesai' ) { + $judul = 'Tagihan Pelunasan'; $pesan = 'Silakan melakukan pelunasan pembayaran rumah Anda. Klik notifikasi ini untuk melihat invoice dan detail tagihan.'; + + Notifikasi::create([ + 'id_user' => $pemesanan->id_user, + 'judul' => $judul, + 'pesan' => $pesan, + 'tipe' => 'pelunasan', + 'status_baca' => 0, + 'status_kirim' => 'terkirim', + 'channel' => 'in_app', + 'referensi_id' => $transaksi->id_transaksi, + 'referensi_tipe' => 'invoice', + ]); + + } + elseif ( + strtolower($request->tahap_saat_ini) == 'pelunasan pembayaran' && + $request->status == 'Selesai' + ) { + + $judul = 'Pelunasan Berhasil'; + $pesan = 'Pembayaran Anda telah berhasil diverifikasi. Klik notifikasi ini untuk melihat invoice.'; + Notifikasi::create([ 'id_user' => $pemesanan->id_user, 'judul' => $judul, diff --git a/resources/views/admin/aktivitas.blade.php b/resources/views/admin/aktivitas.blade.php index 3c11b90..114204d 100644 --- a/resources/views/admin/aktivitas.blade.php +++ b/resources/views/admin/aktivitas.blade.php @@ -505,6 +505,12 @@ class="nav-item {{ request()->routeIs('admin.welcome') ? 'active' : '' }}"> Dashboard + + + Data User + +