meoacgx
be1a6db30a
修复Bot频道同步:手动同步支持新增+清理,缓存回放my_chat_member
2025-12-23 23:21:12 +08:00
meoacgx
4a601570d1
fix(bot): manual sync reconciles stale channels
2025-12-23 16:37:49 +08:00
meoacgx
7e06556d8d
feat(settings): add timezone support
2025-12-23 13:35:24 +08:00
meoacgx
1758680f3d
fix: stabilize bot polling and simplify tasks
2025-12-22 19:07:31 +08:00
meoacgx and Claude
987be180d0
feat: BOT频道增强 - 踢人/封禁功能及用户ID获取提示
...
新增功能:
- Bot频道支持批量踢人/封禁用户(支持两种模式:仅踢出 or 永久封禁)
- 踢人对话框支持选择操作模式(默认仅踢出,可选永久封禁)
体验优化:
- 踢人和设置管理员对话框添加"如何获取用户ID"的详细步骤提示
- 统一用户ID输入方式(使用纯文本输入框,移除数字增减按钮)
技术改动:
- BotTelegramService: 新增 BanChatMemberAsync 支持踢人/封禁
- BotTelegramService: 新增 CanBotBanMembersAsync 权限检查
- 新增 BotBanMemberDialog 踢人对话框组件
- BotChannelsHome: 添加踢出用户按钮及批量处理逻辑
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-20 22:36:47 +08:00
meoacgx and Claude
1f805ace84
实现Bot频道批量设置分类功能
...
新增功能:
- 在Bot频道页面工具栏添加"批量设置分类"按钮
- 支持多选频道后批量修改分类
- 显示当前选中的频道数量(实时更新)
新增组件:
- BotBatchSetCategoryDialog.razor - 批量设置分类对话框
- 显示选中频道数量的信息提示
- 下拉选择目标分类(包含"未分类"选项)
- 简洁的确认/取消操作
功能特点:
- 支持设置为"未分类"(取消分类)
- 批量操作时显示成功/失败统计
- 操作完成后自动刷新列表并清空选择
- 错误处理:部分失败不影响其他频道
- 与现有批量操作保持一致的交互体验
用户体验改进:
- 按钮动态显示选中数量:批量设置分类(N)
- 未选中频道时按钮禁用
- 操作后显示详细的成功/失败统计
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-20 22:07:18 +08:00
meoacgx and Claude
ce8ee3dd4c
优化Bot频道分类管理UI
...
改进内容:
- 将"新建分类"功能从页面底部移至顶部工具栏
- 在分类筛选器旁添加"+"按钮,点击打开对话框
- 新增 BotChannelCategoryDialog 对话框组件
- 支持创建分类(输入名称和描述)
- 保留编辑模式接口(待后续实现)
- 删除原有页面底部的分类创建表单
- 提升用户体验,操作更集中便捷
UI改进:
- 分类筛选器 + 新建按钮 紧密集成
- 对话框使用 MudDialog 标准样式
- 保持与现有对话框一致的交互体验
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-20 21:55:44 +08:00
meoacgx and Claude
654a8fe1a3
修复 BotChannelsHome 页面类型转换崩溃问题
...
问题:
- MudSelect 泛型类型是 int?(可空整数)
- MudSelectItem 的 Value 使用了 int 类型
- 导致类型不匹配,运行时崩溃
修复:
- 将分类选择下拉框中的 Value="@(c.Id)" 改为 Value="@((int?)c.Id)"
- 确保类型一致性
错误信息:
Unable to cast object of type 'MudBlazor.MudSelect`1[System.Nullable`1[System.Int32]]'
to type 'MudBlazor.MudSelect`1[System.Int32]'
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-20 21:47:55 +08:00
meoacgx
0e08a18f51
修复Bot频道页面编译:选择机器人切换回调
2025-12-19 19:12:14 +08:00
meoacgx
34bda77560
Bot频道支持批量设置管理员
2025-12-19 19:07:07 +08:00
meoacgx
ff944b1c1e
新增Bot频道详情与编辑:支持查看管理员与修改标题简介
2025-12-19 19:05:22 +08:00
meoacgx
eb26b9b7ef
重构Bot频道页面:单页切换机器人
2025-12-19 19:00:18 +08:00
meoacgx
341e072188
机器人管理优化:菜单直达 Bot 频道,并后台自动同步
2025-12-19 18:10:34 +08:00