mirror of
https://github.com/xuthus83/LittlePaimon.git
synced 2024-10-21 16:27:15 +08:00
🐛 修复ys
、ysa
可能出现的None问题
This commit is contained in:
parent
8592c7cb49
commit
d3d7c2733d
@ -189,14 +189,15 @@ class GenshinInfoManager:
|
|||||||
:return: 原神玩家信息和角色列表
|
:return: 原神玩家信息和角色列表
|
||||||
"""
|
"""
|
||||||
await self.set_last_query()
|
await self.set_last_query()
|
||||||
player_info, state = await PlayerInfo.get_or_create(user_id=self.user_id, uid=self.uid)
|
player_info = await PlayerInfo.get_or_none(user_id=self.user_id, uid=self.uid)
|
||||||
if state or player_info.update_time is None or player_info.update_time < (
|
if player_info is None or player_info.update_time is None or player_info.update_time < (
|
||||||
datetime.datetime.now() - datetime.timedelta(days=1)).replace(
|
datetime.datetime.now() - datetime.timedelta(days=1)).replace(
|
||||||
tzinfo=pytz.timezone('Asia/Shanghai')):
|
tzinfo=pytz.timezone('Asia/Shanghai')):
|
||||||
result = await self.update_from_mihoyo()
|
result = await self.update_from_mihoyo()
|
||||||
if result != '更新成功':
|
if result != '更新成功':
|
||||||
return result, []
|
return result, []
|
||||||
player_info = await PlayerInfo.get_or_none(user_id=self.user_id, uid=self.uid)
|
if (player_info := await PlayerInfo.get_or_none(user_id=self.user_id, uid=self.uid)) is None:
|
||||||
|
return '获取原神信息失败', []
|
||||||
character_list = []
|
character_list = []
|
||||||
for character_name in CHARACTERS:
|
for character_name in CHARACTERS:
|
||||||
if character := await self.get_character(name=character_name):
|
if character := await self.get_character(name=character_name):
|
||||||
@ -205,15 +206,16 @@ class GenshinInfoManager:
|
|||||||
|
|
||||||
async def get_player_info(self) -> Tuple[Union[PlayerInfo, str], Optional[List[Character]]]:
|
async def get_player_info(self) -> Tuple[Union[PlayerInfo, str], Optional[List[Character]]]:
|
||||||
await self.set_last_query()
|
await self.set_last_query()
|
||||||
player_info, state = await PlayerInfo.get_or_create(user_id=self.user_id, uid=self.uid)
|
player_info = await PlayerInfo.get_or_none(user_id=self.user_id, uid=self.uid)
|
||||||
if state or player_info.update_time is None or player_info.update_time < (
|
if player_info is None or player_info.update_time is None or player_info.update_time < (
|
||||||
datetime.datetime.now() - datetime.timedelta(days=1)).replace(
|
datetime.datetime.now() - datetime.timedelta(days=1)).replace(
|
||||||
tzinfo=pytz.timezone('Asia/Shanghai')):
|
tzinfo=pytz.timezone('Asia/Shanghai')):
|
||||||
result = await self.update_from_mihoyo()
|
result = await self.update_from_mihoyo()
|
||||||
if result != '更新成功':
|
if result != '更新成功':
|
||||||
return result, None
|
return result, None
|
||||||
await self.update_from_enka()
|
await self.update_from_enka()
|
||||||
player_info, _ = await PlayerInfo.get_or_create(user_id=self.user_id, uid=self.uid)
|
if (player_info := await PlayerInfo.get_or_none(user_id=self.user_id, uid=self.uid)) is None:
|
||||||
|
return '获取原神信息失败', None
|
||||||
characters_list = []
|
characters_list = []
|
||||||
for chara in player_info.avatars:
|
for chara in player_info.avatars:
|
||||||
if c := await self.get_character(character_id=chara):
|
if c := await self.get_character(character_id=chara):
|
||||||
|
Loading…
Reference in New Issue
Block a user