From 9d021b31c54125c85704b00268cbd323134b5708 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Sat, 22 Nov 2025 23:13:51 +0700 Subject: [PATCH] refactor: remove WhatsApp settings and related components --- app/Livewire/Studio/Setting/Account.php | 1 - app/Livewire/Studio/Setting/Whatsapp.php | 99 ------------------- app/Models/Whatsapp.php | 10 -- app/Providers/ViewServiceProvider.php | 7 -- ...25_10_28_150511_create_whatsapps_table.php | 31 ------ database/seeders/RolePermissionSeeder.php | 6 -- .../studio/setting/whatsapp.blade.php | 52 ---------- 7 files changed, 206 deletions(-) delete mode 100644 app/Livewire/Studio/Setting/Whatsapp.php delete mode 100644 app/Models/Whatsapp.php delete mode 100644 database/migrations/2025_10_28_150511_create_whatsapps_table.php delete mode 100644 resources/views/livewire/studio/setting/whatsapp.blade.php diff --git a/app/Livewire/Studio/Setting/Account.php b/app/Livewire/Studio/Setting/Account.php index ad4e02c..7c32b17 100644 --- a/app/Livewire/Studio/Setting/Account.php +++ b/app/Livewire/Studio/Setting/Account.php @@ -5,7 +5,6 @@ use App\Livewire\Forms\Studio\Setting\AccountForm; use App\Livewire\Forms\Studio\Setting\PasswordForm; use App\Livewire\Forms\Studio\Setting\ProfileForm; -use App\Models\User; use App\Traits\Notification\WithSubscribeNotification; use App\Traits\WithAuthorization; use App\Traits\WithToast; diff --git a/app/Livewire/Studio/Setting/Whatsapp.php b/app/Livewire/Studio/Setting/Whatsapp.php deleted file mode 100644 index 1a1cd76..0000000 --- a/app/Livewire/Studio/Setting/Whatsapp.php +++ /dev/null @@ -1,99 +0,0 @@ -whatsapp = [ - 'id' => $whatsapp?->id, - 'zawa_id' => $whatsapp?->zawa_id, - 'session_id' => $whatsapp?->session_id, - 'qr_code' => $whatsapp?->qr_code, - ]; - } - - public function createSession(): void - { - try { - $response = Http::post(config('services.zawa.url').'/authorize'); - - if ($response->successful()) { - $data = $response->json(); - - WhatsappModel::updateOrCreate( - ['zawa_id' => $data['id']], - [ - 'session_id' => $data['sessionId'], - ] - ); - - $this->whatsapp['zawa_id'] = $data['id']; - $this->whatsapp['session_id'] = $data['sessionId']; - - $this->toast('Berhasil membuat sesi WhatsApp'); - } else { - $this->toast('Gagal membuat sesi WhatsApp', 'Gagal', 'danger'); - } - } catch (\Throwable $e) { - Log::error($e); - $this->toast('Gagal membuat sesi WhatsApp, silakan coba lagi.', 'Gagal', 'danger'); - } - } - - public function generateQrCode(): void - { - try { - $response = Http::withHeaders([ - 'id' => $this->whatsapp['zawa_id'], - 'session-id' => $this->whatsapp['session_id'], - ])->get(config('services.zawa.url').'/qrcode'); - - if ($response->successful()) { - $data = $response->json(); - - $qrBase64 = 'data:image/png;base64,'.$data['qrcode']; - - WhatsappModel::updateOrCreate( - ['zawa_id' => $this->whatsapp['zawa_id']], - [ - 'session_id' => $this->whatsapp['session_id'], - 'qr_code' => $qrBase64, - ] - ); - - $this->whatsapp['qr_code'] = $qrBase64; - - $this->toast('Berhasil generate QR Code WhatsApp'); - } else { - $this->toast('Gagal generate QR Code, silakan coba lagi.', 'Gagal', 'danger'); - } - } catch (\Throwable $e) { - Log::error($e); - $this->toast('Terjadi kesalahan saat generate QR Code,silakan hubungi Administrator.', 'Gagal', 'danger'); - } - } - - public function render() - { - return view('livewire.studio.setting.whatsapp', [ - 'pageTitle' => 'Whatsapp', - ]); - } -} diff --git a/app/Models/Whatsapp.php b/app/Models/Whatsapp.php deleted file mode 100644 index d809d41..0000000 --- a/app/Models/Whatsapp.php +++ /dev/null @@ -1,10 +0,0 @@ - 'studio.setting.application', 'can' => 'view application settings', ], - // [ - // 'label' => 'Whatsapp', - // 'icon' => 'chat-bubble-oval-left-ellipsis', - // 'route' => 'studio.setting.whatsapp', - // 'match' => 'studio.setting.whatsapp', - // 'can' => 'view whatsapp settings', - // ], ], ], [ diff --git a/database/migrations/2025_10_28_150511_create_whatsapps_table.php b/database/migrations/2025_10_28_150511_create_whatsapps_table.php deleted file mode 100644 index 9d3aa0e..0000000 --- a/database/migrations/2025_10_28_150511_create_whatsapps_table.php +++ /dev/null @@ -1,31 +0,0 @@ -id(); - $table->string('zawa_id', 100); - $table->string('session_id', 100); - $table->text('qr_code')->nullable(); - $table->timestamp('created_at')->useCurrent(); - $table->timestamp('updated_at')->useCurrent()->useCurrentOnUpdate(); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::dropIfExists('whatsapps'); - } -}; diff --git a/database/seeders/RolePermissionSeeder.php b/database/seeders/RolePermissionSeeder.php index 5dfd1ce..4df2681 100644 --- a/database/seeders/RolePermissionSeeder.php +++ b/database/seeders/RolePermissionSeeder.php @@ -142,8 +142,6 @@ public function run(): void 'view application settings', - // 'view whatsapp settings', - 'view general settings', 'update general settings', @@ -261,8 +259,6 @@ public function run(): void 'view application settings', - // 'view whatsapp settings', - 'view general settings', 'update general settings', @@ -372,8 +368,6 @@ public function run(): void 'view application settings', - // 'view whatsapp settings', - 'view general settings', 'update general settings', diff --git a/resources/views/livewire/studio/setting/whatsapp.blade.php b/resources/views/livewire/studio/setting/whatsapp.blade.php deleted file mode 100644 index 9b33699..0000000 --- a/resources/views/livewire/studio/setting/whatsapp.blade.php +++ /dev/null @@ -1,52 +0,0 @@ - -
-
- {{ $pageTitle }} - - Integrasikan WhatsApp untuk pengiriman invoice, kode verifikasi, serta - broadcast voucher atau informasi kepada pelanggan secara cepat dan efikien. - -
-
- -
- - Langkah 1: Buat Sesi WA - - Klik tombol untuk membuat sesi WhatsApp dan mendapatkan sessionId. - - - - @if (!$whatsapp['zawa_id']) - Buat Sesi - @else - ✅ Sesi sudah dibuat - @endif - - - - - Langkah 2: Generate QR Code - - Gunakan sessionId untuk men-generate QR code yang akan discan di WhatsApp. - - - - @if (!$whatsapp['qr_code'] && $whatsapp['zawa_id']) - Generate QR Code - @endif - - - @if ($whatsapp['qr_code']) -
- QR Code WhatsApp -

Scan QR ini di WhatsApp

-
- @endif -
-
- -