From 5bcbf74dfc727c8c4c70c4ffc4b48da0e29fb576 Mon Sep 17 00:00:00 2001 From: lkddi Date: Sun, 1 Mar 2026 18:02:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E5=9C=A8=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=90=8D=E7=89=87=E9=9D=A2=E6=9D=BF=E5=B1=95=E7=8E=B0?= =?UTF-8?q?=E3=80=8C=E5=8D=8F=E8=AE=AE=E7=A6=BB=E5=A9=9A=E3=80=8D=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E5=8F=8A=E7=9B=B8=E5=85=B3=E7=9A=84=E4=BA=A4=E4=BA=92?= =?UTF-8?q?=E5=BC=B9=E7=AA=97=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/MarriageController.php | 1 + .../chat/partials/global-dialog.blade.php | 2 +- .../chat/partials/user-actions.blade.php | 52 ++++++++++++++++++- 3 files changed, 52 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/MarriageController.php b/app/Http/Controllers/MarriageController.php index 8f66102..876f4ba 100644 --- a/app/Http/Controllers/MarriageController.php +++ b/app/Http/Controllers/MarriageController.php @@ -94,6 +94,7 @@ class MarriageController extends Controller 'status' => $marriage->status, 'marriage_id' => $marriage->id, 'partner_name' => $partner?->username, + 'is_my_partner' => $partner?->id === $request->user()?->id, 'ring' => $marriage->ringItem?->only(['name', 'icon']), 'level_icon' => \App\Services\MarriageIntimacyService::levelIcon($marriage->level), 'level_name' => \App\Services\MarriageIntimacyService::levelName($marriage->level), diff --git a/resources/views/chat/partials/global-dialog.blade.php b/resources/views/chat/partials/global-dialog.blade.php index bd92b5d..dd8ee82 100644 --- a/resources/views/chat/partials/global-dialog.blade.php +++ b/resources/views/chat/partials/global-dialog.blade.php @@ -27,7 +27,7 @@ {{-- 内容区 --}}
diff --git a/resources/views/chat/partials/user-actions.blade.php b/resources/views/chat/partials/user-actions.blade.php index 2ac4a17..5049fb9 100644 --- a/resources/views/chat/partials/user-actions.blade.php +++ b/resources/views/chat/partials/user-actions.blade.php @@ -167,6 +167,45 @@ this.friendLoading = false; }, + async handleConfirmDivorce(marriageId) { + // 等待后端接口实现,当前先略 + return; + }, + + /** 发起协议离婚 */ + async doDivorce(marriageId) { + if (!marriageId) return; + this.showUserModal = false; + + const confirmed = await window.chatDialog?.confirm( + '提出离婚后,对方将在私人频道收到通知。\n\n如果对方在 24 小时内未作决定,此申请将自动升级为“强制离婚”,并扣除发起方一定的魅力值作为单方面解除契约的惩罚。\n\n您确定要继续发起离婚申请吗?', + '发起离婚', + '#475569' + ); + + if (!confirmed) return; + + window.chatDialog?.alert('请稍候…', '发送申请中', '#9ca3af'); + try { + const res = await fetch(window.chatContext.marriage.divorceUrl(marriageId), { + method: 'POST', + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json', + 'X-CSRF-TOKEN': document.querySelector('meta[name=csrf-token]').content + } + }); + const data = await res.json(); + if (data.ok) { + window.chatDialog?.alert(data.message, '已发出', '#6b7280'); + } else { + window.chatDialog?.alert(data.message || '操作失败', '错误', '#dc2626'); + } + } catch (e) { + window.chatDialog?.alert('网络请求失败', '错误', '#dc2626'); + } + }, + /** 获取用户资料 */ async fetchUser(username) { try { @@ -736,14 +775,23 @@ 💍 请先设置性别 - {{-- 对方已婚时显示提示 --}} -
💑
+ + {{-- 如果对方是自己的伴侣,显示离婚按钮 --}} + {{-- 内联礼物面板 --}}