diff --git a/src/api/api-models.ts b/src/api/api-models.ts index 3a1bf2f..e5710f5 100644 --- a/src/api/api-models.ts +++ b/src/api/api-models.ts @@ -108,6 +108,7 @@ export enum BiliAuthCodeStatusType { export interface Setting_SendEmail { recieveQA: boolean recieveQAReply: boolean + receiveOrder: boolean } export enum SaftyLevels { Disabled, diff --git a/src/components/manage/PointOrderCard.vue b/src/components/manage/PointOrderCard.vue index b30143f..b69f017 100644 --- a/src/components/manage/PointOrderCard.vue +++ b/src/components/manage/PointOrderCard.vue @@ -116,12 +116,12 @@ const orderColumn: DataTableColumns row.customer.name }, + { default: () => row.customer?.name || '未知用户' }, ), - default: () => row.customer.userId, + default: () => row.customer?.userId || '未知ID', }) }, }, diff --git a/src/views/ViewerLayout.vue b/src/views/ViewerLayout.vue index 36c1a83..4ea5c2c 100644 --- a/src/views/ViewerLayout.vue +++ b/src/views/ViewerLayout.vue @@ -177,7 +177,7 @@ // 基于新的用户信息更新菜单 updateMenuOptions(); // 异步获取 B 站信息(不阻塞主流程) - await RequestBiliUserData(); + RequestBiliUserData(); } } catch (error) { console.error("获取用户信息时出错:", error); @@ -218,7 +218,6 @@ }, { immediate: true } // 关键: 组件挂载时立即执行一次 watcher,触发初始数据加载 ); - // --- 组件模板 --- diff --git a/src/views/manage/SettingsManageView.vue b/src/views/manage/SettingsManageView.vue index 497f7df..9b9350b 100644 --- a/src/views/manage/SettingsManageView.vue +++ b/src/views/manage/SettingsManageView.vue @@ -655,6 +655,12 @@ > 提问收到回复时发送邮件 + + 积分礼物有新用户兑换时发送邮件 + 提问箱 diff --git a/src/views/manage/point/PointSettings.vue b/src/views/manage/point/PointSettings.vue index eed057b..9f80a5b 100644 --- a/src/views/manage/point/PointSettings.vue +++ b/src/views/manage/point/PointSettings.vue @@ -138,6 +138,27 @@ async function deleteGift(name: string) { async function updateGift() { return await updateSettings() } + +// 更新账户通知设置 +async function SaveComboSetting() { + if (!accountInfo.value) return false + + isLoading.value = true + try { + const msg = await SaveSetting('SendEmail', accountInfo.value.settings.sendEmail) + if (msg) { + message.success('已保存') + return true + } else { + message.error('保存失败: ' + msg) + } + } catch (err) { + message.error('修改失败: ' + err) + } finally { + isLoading.value = false + } + return false +}