(msg: Api.Message)
| 462 | const white = this.isWhite(chatId); |
| 463 | const black = this.isBlack(chatId); |
| 464 | const stats = this.db.data.stats; |
| 465 | |
| 466 | let effectiveStatus = "❓ 未知"; |
| 467 | if (white) { |
| 468 | effectiveStatus = "✅ 开启 (白名单强制)"; |
| 469 | } else if (black) { |
| 470 | effectiveStatus = "❌ 关闭 (黑名单强制)"; |
| 471 | } else if (chatMode !== null) { |
| 472 | effectiveStatus = chatMode ? "✅ 开启" : "❌ 关闭"; |
| 473 | } else { |
| 474 | effectiveStatus = globalMode ? "✅ 开启 (全局)" : "❌ 关闭 (全局)"; |
| 475 | } |
| 476 | |
| 477 | await msg.edit({ |
| 478 | text: `📊 <b>Pangu 格式化状态</b>\n\n` + |
| 479 | `💬 <b>当前会话:</b> <code>${htmlEscape(chatId)}</code>\n` + |
| 480 | `🎯 <b>生效状态:</b> ${effectiveStatus}\n\n` + |
| 481 | `⚪ <b>白名单:</b> ${white ? "✅ 是" : "❌ 否"}\n` + |
| 482 | `⚫ <b>黑名单:</b> ${black ? "✅ 是" : "❌ 否"}\n` + |
| 483 | `💬 <b>会话设置:</b> ${chatMode === null ? "未设置" : (chatMode ? "✅ 开启" : "❌ 关闭")}\n` + |
| 484 | `🌐 <b>全局模式:</b> ${globalMode ? "✅ 开启" : "❌ 关闭"}\n\n` + |
| 485 | `📈 <b>统计信息:</b>\n` + |
| 486 | `• 已格式化消息:${stats.formattedMessages}\n` + |
| 487 | `• 启用会话数:${stats.enabledChats}\n` + |
| 488 | `• 最后格式化:${stats.lastFormatted ? new Date(stats.lastFormatted).toLocaleString() : "从未"}`, |
| 489 | parseMode: "html" |
| 490 | }); |
| 491 | } |
| 492 | |
| 493 | // 显示统计信息 |
| 494 | private async showStats(msg: Api.Message): Promise<void> { |
| 495 | const stats = this.db.data.stats; |
| 496 | await msg.edit({ |
| 497 | text: `📈 <b>Pangu 统计信息</b>\n\n` + |
| 498 | `• 已格式化消息:${stats.formattedMessages}\n` + |
| 499 | `• 启用会话数:${stats.enabledChats}\n` + |
| 500 | `• 最后格式化:${stats.lastFormatted ? new Date(stats.lastFormatted).toLocaleString() : "从未"}\n` + |
no test coverage detected