diff --git a/basic_plugins/admin_bot_manage/_data_source.py b/basic_plugins/admin_bot_manage/_data_source.py index 11fb775b..57923262 100644 --- a/basic_plugins/admin_bot_manage/_data_source.py +++ b/basic_plugins/admin_bot_manage/_data_source.py @@ -1,7 +1,7 @@ import asyncio import os import time -from datetime import datetime +from datetime import datetime, timedelta, timezone from pathlib import Path from typing import List @@ -331,14 +331,23 @@ async def update_member_info(group_id: int, remind_superuser: bool = False) -> b time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(user_info["join_time"])), "%Y-%m-%d %H:%M:%S", ) - await GroupInfoUser.update_or_create( + user, _ = await GroupInfoUser.get_or_create( user_qq=user_info["user_id"], group_id=user_info["group_id"], defaults={ "user_name": nickname, - "user_join_time": join_time.replace(tzinfo=None), }, ) + # await GroupInfoUser.update_or_create( + # user_qq=user_info["user_id"], + # group_id=user_info["group_id"], + # defaults={ + # "user_name": nickname, + # # "user_join_time": datetime.now().replace(tzinfo=None), + # }, + # ) + user.user_join_time = join_time + await user.save() _exist_member_list.append(int(user_info["user_id"])) logger.info("更新成功", "更新成员信息", user_info["user_id"], user_info["group_id"]) _del_member_list = list( diff --git a/models/group_member_info.py b/models/group_member_info.py index dd2820d7..74d856c0 100755 --- a/models/group_member_info.py +++ b/models/group_member_info.py @@ -17,7 +17,7 @@ class GroupInfoUser(Model): """用户昵称""" group_id = fields.BigIntField() """群聊id""" - user_join_time = fields.DatetimeField(null=True) + user_join_time: datetime = fields.DatetimeField(null=True) """用户入群时间""" nickname = fields.CharField(255, null=True) """群聊昵称"""