mirror of
https://github.com/Lost-MSth/Arcaea-server.git
synced 2026-02-14 04:07:28 +08:00
[Bug fix] Hot fix for a funny thing
- Fix a bug that the order of the users on the score ranks is chaotic
This commit is contained in:
@@ -37,16 +37,18 @@ class RankList:
|
|||||||
if not x:
|
if not x:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
user_info_list = Sql(self.c).select('user', ['name', 'character_id', 'is_skill_sealed', 'is_char_uncapped',
|
user_info_list = Sql(self.c).select('user', ['user_id', 'name', 'character_id', 'is_skill_sealed', 'is_char_uncapped',
|
||||||
'is_char_uncapped_override', 'favorite_character'], Query().from_args({'user_id': [i[0] for i in x]}))
|
'is_char_uncapped_override', 'favorite_character'], Query().from_args({'user_id': [i[0] for i in x]}))
|
||||||
|
user_info_dict = {i[0]: i[1:] for i in user_info_list}
|
||||||
|
|
||||||
rank = 0
|
rank = 0
|
||||||
self.list = []
|
self.list = []
|
||||||
for i, j in zip(x, user_info_list):
|
for i in x:
|
||||||
rank += 1
|
rank += 1
|
||||||
y = UserScore(self.c, UserInfo(self.c, i[0])).from_list(i)
|
y = UserScore(self.c, UserInfo(self.c, i[0])).from_list(i)
|
||||||
y.song = self.song
|
y.song = self.song
|
||||||
y.rank = rank
|
y.rank = rank
|
||||||
y.user.from_list_about_character(j)
|
y.user.from_list_about_character(user_info_dict[i[0]])
|
||||||
|
|
||||||
self.list.append(y)
|
self.list.append(y)
|
||||||
|
|
||||||
@@ -66,16 +68,17 @@ class RankList:
|
|||||||
if not x:
|
if not x:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
user_info_list = Sql(self.c).select('user', ['name', 'character_id', 'is_skill_sealed', 'is_char_uncapped',
|
user_info_list = Sql(self.c).select('user', ['user_id', 'name', 'character_id', 'is_skill_sealed', 'is_char_uncapped',
|
||||||
'is_char_uncapped_override', 'favorite_character'], Query().from_args({'user_id': [i[0] for i in x]}))
|
'is_char_uncapped_override', 'favorite_character'], Query().from_args({'user_id': [i[0] for i in x]}))
|
||||||
|
user_info_dict = {i[0]: i[1:] for i in user_info_list}
|
||||||
rank = 0
|
rank = 0
|
||||||
self.list = []
|
self.list = []
|
||||||
for i, j in zip(x, user_info_list):
|
for i in x:
|
||||||
rank += 1
|
rank += 1
|
||||||
y = UserScore(self.c, UserInfo(self.c, i[0])).from_list(i)
|
y = UserScore(self.c, UserInfo(self.c, i[0])).from_list(i)
|
||||||
y.song = self.song
|
y.song = self.song
|
||||||
y.rank = rank
|
y.rank = rank
|
||||||
y.user.from_list_about_character(j)
|
y.user.from_list_about_character(user_info_dict[i[0]])
|
||||||
|
|
||||||
self.list.append(y)
|
self.list.append(y)
|
||||||
|
|
||||||
@@ -132,16 +135,17 @@ class RankList:
|
|||||||
x = self.c.fetchall()
|
x = self.c.fetchall()
|
||||||
|
|
||||||
if x:
|
if x:
|
||||||
user_info_list = Sql(self.c).select('user', ['name', 'character_id', 'is_skill_sealed', 'is_char_uncapped',
|
user_info_list = Sql(self.c).select('user', ['user_id', 'name', 'character_id', 'is_skill_sealed', 'is_char_uncapped',
|
||||||
'is_char_uncapped_override', 'favorite_character'], Query().from_args({'user_id': [i[0] for i in x]}))
|
'is_char_uncapped_override', 'favorite_character'], Query().from_args({'user_id': [i[0] for i in x]}))
|
||||||
|
user_info_dict = {i[0]: i[1:] for i in user_info_list}
|
||||||
rank = sql_offset if sql_offset > 0 else 0
|
rank = sql_offset if sql_offset > 0 else 0
|
||||||
self.list = []
|
self.list = []
|
||||||
for i, j in zip(x, user_info_list):
|
for i in x:
|
||||||
rank += 1
|
rank += 1
|
||||||
y = UserScore(self.c, UserInfo(self.c, i[0])).from_list(i)
|
y = UserScore(self.c, UserInfo(self.c, i[0])).from_list(i)
|
||||||
y.song = self.song
|
y.song = self.song
|
||||||
y.rank = rank
|
y.rank = rank
|
||||||
y.user.from_list_about_character(j)
|
y.user.from_list_about_character(user_info_dict[i[0]])
|
||||||
|
|
||||||
self.list.append(y)
|
self.list.append(y)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user