mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-10-09 13:50:00 +08:00
bugfix:修复notice事件扩散问题 (#2132)
* bugfix:修复notice事件扩散问题 * 优化并发调度 * bugfix:修复签到样式 * bugfix:功能调用统计修复 * bugfix:修复私聊时功能调用统计显示已退群问题 * 提高插件适配兼容性 * 优化发送队列 * 修改权限检查设计 * 继续修改权限检查设计 * 完善权限检查设计 * 优化sqlite配置 * 优化数据库初始化 * 代码整理,无用代码清理 * bugfix:修复启动时数据库校验问题 * bugfix:修复预算裁剪过于激进问题
This commit is contained in:
@@ -18,6 +18,10 @@ from zhenxun.models.group_console import GroupConsole
|
||||
from zhenxun.models.group_member_info import GroupInfoUser
|
||||
from zhenxun.models.level_user import LevelUser
|
||||
from zhenxun.models.plugin_info import PluginInfo
|
||||
from zhenxun.services.hot_query_cache import (
|
||||
invalidate_group_members,
|
||||
invalidate_member_names,
|
||||
)
|
||||
from zhenxun.services.log import logger
|
||||
from zhenxun.utils.common_utils import CommonUtils
|
||||
from zhenxun.utils.enum import RequestHandleType
|
||||
@@ -82,6 +86,8 @@ async def _refresh_member_info_async(
|
||||
"platform": platform,
|
||||
},
|
||||
)
|
||||
await invalidate_group_members(group_id, [user_id])
|
||||
await invalidate_member_names([user_id])
|
||||
|
||||
|
||||
class GroupManager:
|
||||
@@ -333,6 +339,8 @@ class GroupManager:
|
||||
"platform": platform,
|
||||
},
|
||||
)
|
||||
await invalidate_group_members(group_id, [user_id])
|
||||
await invalidate_member_names([user_id])
|
||||
task = asyncio.create_task(
|
||||
_refresh_member_info_async(
|
||||
bot, str(group_id), str(user_id), _normalize_platform(platform)
|
||||
@@ -400,6 +408,8 @@ class GroupManager:
|
||||
user_name = f"{user_id}"
|
||||
if user:
|
||||
await user.delete()
|
||||
await invalidate_group_members(group_id, [user_id])
|
||||
await invalidate_member_names([user_id])
|
||||
logger.info(
|
||||
f"名称: {user_name} 退出群聊",
|
||||
"group_decrease_handle",
|
||||
|
||||
@@ -4,6 +4,10 @@ from nonebot_plugin_uninfo import Uninfo
|
||||
from zhenxun.models.friend_user import FriendUser
|
||||
from zhenxun.models.group_console import GroupConsole
|
||||
from zhenxun.models.group_member_info import GroupInfoUser
|
||||
from zhenxun.services.hot_query_cache import (
|
||||
invalidate_group_members,
|
||||
invalidate_member_names,
|
||||
)
|
||||
from zhenxun.services.log import logger
|
||||
from zhenxun.utils.platform import PlatformUtils
|
||||
|
||||
@@ -27,6 +31,8 @@ async def _(session: Uninfo):
|
||||
group_id=session.group.id,
|
||||
platform=PlatformUtils.get_platform(session),
|
||||
)
|
||||
await invalidate_group_members(session.group.id, [session.user.id])
|
||||
await invalidate_member_names([session.user.id])
|
||||
elif not await FriendUser.exists(user_id=session.user.id, platform=platform):
|
||||
await FriendUser.create(
|
||||
user_id=session.user.id, platform=PlatformUtils.get_platform(session)
|
||||
|
||||
Reference in New Issue
Block a user