From 85507a4fffee1b2ec26b4c7f2d176b153a4a38b6 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Thu, 30 Jan 2025 08:37:35 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E9=80=9A=E8=BF=87=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E8=AE=A2=E9=98=85=E6=97=B6=E8=BD=AC=E6=8D=A2=E4=B8=BA?= =?UTF-8?q?MP=E7=94=A8=E6=88=B7=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/chain/message.py | 8 ++++++-- app/db/user_oper.py | 13 +++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/app/chain/message.py b/app/chain/message.py index 57be91cf..77e035a6 100644 --- a/app/chain/message.py +++ b/app/chain/message.py @@ -295,6 +295,8 @@ class MessageChain(ChainBase): return else: best_version = True + # 转换用户名 + mp_name = self.useroper.get_name(**{f"{source}_userid": userid}) # 添加订阅,状态为N self.subscribechain.add(title=mediainfo.title, year=mediainfo.year, @@ -304,7 +306,7 @@ class MessageChain(ChainBase): channel=channel, source=source, userid=userid, - username=username, + username=mp_name or username, best_version=best_version) elif cache_type == "Torrent": if int(text) == 0: @@ -505,6 +507,8 @@ class MessageChain(ChainBase): note = downloaded else: note = None + # 转换用户名 + mp_name = self.useroper.get_name(**{f"{source}_userid": userid}) # 添加订阅,状态为R self.subscribechain.add(title=_current_media.title, year=_current_media.year, @@ -514,7 +518,7 @@ class MessageChain(ChainBase): channel=channel, source=source, userid=userid, - username=username, + username=mp_name or username, state="R", note=note) diff --git a/app/db/user_oper.py b/app/db/user_oper.py index 25f7a392..4331a185 100644 --- a/app/db/user_oper.py +++ b/app/db/user_oper.py @@ -96,3 +96,16 @@ class UserOper(DbOper): if settings: return settings.get(key) return None + + def get_name(self, **kwargs) -> Optional[str]: + """ + 根据绑定账号获取用户名称 + """ + users = self.list() + for user in users: + user_setting = user.settings + if user_setting: + for k, v in kwargs.items(): + if user_setting.get(k) == v: + return user.name + return None