💄 性别显示

This commit is contained in:
Chenric 2024-09-30 22:00:37 +08:00
parent d514d96db6
commit e5d107c520
5 changed files with 30 additions and 14 deletions

View File

@ -74,14 +74,17 @@ def wrapper(slot: Union[int, str], content: Optional[str], context) -> str:
return content return content
return "" # pragma: no cover return "" # pragma: no cover
build_cache_cmd = on_command("build_cache", aliases={"重建缓存"}, block=True) build_cache_cmd = on_command("build_cache", aliases={"重建缓存"}, block=True)
@build_cache_cmd.handle() @build_cache_cmd.handle()
async def _build_cache(bot: Bot, event: Event): async def _build_cache(bot: Bot, event: Event):
await saa.Text("正在重建缓存,请稍等。").send(reply=True) await saa.Text("正在重建缓存,请稍等。").send(reply=True)
await build_cache() await build_cache()
await saa.Text("重建缓存完成。").send(reply=True) await saa.Text("重建缓存完成。").send(reply=True)
rank_cmd = on_alconna( rank_cmd = on_alconna(
Alconna( Alconna(
"B话榜", "B话榜",

View File

@ -11,6 +11,7 @@ class ScopedConfig(BaseModel):
visualization: bool = True # 是否可视化 visualization: bool = True # 是否可视化
counting_cache: bool = False # 计数缓存(能够提高回复速度) counting_cache: bool = False # 计数缓存(能够提高回复速度)
excluded_people: List[str] = [] # 排除的人的QQ号 excluded_people: List[str] = [] # 排除的人的QQ号
use_user_info_cache: bool = False # 是否使用用户信息缓存
timezone: Optional[str] = "Asia/Shanghai" # 时区,影响统计时间 timezone: Optional[str] = "Asia/Shanghai" # 时区,影响统计时间
string_suffix: str = "统计花费时间:{timecost}" # 消息格式后缀 string_suffix: str = "统计花费时间:{timecost}" # 消息格式后缀
template_path: str = "./template/rank_template.j2" # 模板路径 template_path: str = "./template/rank_template.j2" # 模板路径

View File

@ -56,7 +56,9 @@ async def build_cache():
where.append( where.append(
or_( or_(
MessageCountCache.time MessageCountCache.time
== remove_timezone(msg.time.replace(hour=1, minute=0, second=0, microsecond=0)) == remove_timezone(
msg.time.replace(hour=1, minute=0, second=0, microsecond=0)
)
) )
) )
statement = select(MessageCountCache).where(*where) statement = select(MessageCountCache).where(*where)
@ -68,7 +70,9 @@ async def build_cache():
else: else:
user_cache = MessageCountCache( user_cache = MessageCountCache(
session_id=msg.session_persist_id, session_id=msg.session_persist_id,
time=remove_timezone(msg.time.replace(hour=1, minute=0, second=0, microsecond=0)), time=remove_timezone(
msg.time.replace(hour=1, minute=0, second=0, microsecond=0)
),
session_bnum=1, session_bnum=1,
) )
db_session.add(user_cache) db_session.add(user_cache)

View File

@ -194,6 +194,7 @@ async def _get_user_default_avatar() -> bytes:
).read() ).read()
return img return img
async def _get_user_avatar(user: UserInfo, client: httpx.AsyncClient) -> bytes: async def _get_user_avatar(user: UserInfo, client: httpx.AsyncClient) -> bytes:
if not user.user_avatar: if not user.user_avatar:
return await _get_user_default_avatar() return await _get_user_default_avatar()
@ -208,6 +209,7 @@ async def _get_user_avatar(user: UserInfo, client: httpx.AsyncClient) -> bytes:
await asyncio.sleep(3) await asyncio.sleep(3)
raise NetworkError(f"{url} 下载失败!") raise NetworkError(f"{url} 下载失败!")
def get_default_user_info() -> UserInfo: def get_default_user_info() -> UserInfo:
user_info = UserInfo( user_info = UserInfo(
user_id="114514", user_id="114514",
@ -215,8 +217,12 @@ def get_default_user_info() -> UserInfo:
) )
return user_info return user_info
async def get_user_infos( async def get_user_infos(
bot: Bot, event: Event, rank: List, use_cache: bool = True bot: Bot,
event: Event,
rank: List,
use_cache: bool = plugin_config.use_user_info_cache,
) -> List[UserRankInfo]: ) -> List[UserRankInfo]:
user_ids = [i[0] for i in rank] user_ids = [i[0] for i in rank]
@ -253,11 +259,13 @@ async def get_user_infos(
user_nickname=_get_user_nickname(user_info), user_nickname=_get_user_nickname(user_info),
user_avatar_bytes=user_avatars[i], user_avatar_bytes=user_avatars[i],
) )
user.user_gender = ( print(user.user_gender)
"" if user.user_gender == "male":
if user.user_gender == "male" user.user_gender = ""
else "" if user.user_gender == "female" else "" elif user.user_gender == "female":
) user.user_gender = ""
else:
user.user_gender = "🤔"
rank2.append(user) rank2.append(user)
return rank2 return rank2

View File

@ -1,6 +1,6 @@
[project] [project]
name = "nonebot-plugin-dialectlist" name = "nonebot-plugin-dialectlist"
version = "2.4.1" version = "2.4.2"
description = "看看你群群友有多能说" description = "看看你群群友有多能说"
authors = [ authors = [
{name = "Chen_Xu233", email = "woyerpa@outlook.com"}, {name = "Chen_Xu233", email = "woyerpa@outlook.com"},