diff --git a/backend/api/routes/info.py b/backend/api/routes/info.py index 5e546875..6efa584a 100644 --- a/backend/api/routes/info.py +++ b/backend/api/routes/info.py @@ -121,8 +121,7 @@ async def get_info_by_dnfhelper(uid: str, state: AltersDep, redis: RedisDep): result = await get_user_info_by_id(uid, state) return response(data=result) except Exception as e: - if isinstance(e, ResponseException): - return response(code=500, message=str(e), data=None) + return response(code=500, message=str(e), data=None) return response(code=500, message='Failed to fetch DNFHelper info', data=None) diff --git a/backend/core/open/helper.py b/backend/core/open/helper.py index d41b7f21..2222c446 100644 --- a/backend/core/open/helper.py +++ b/backend/core/open/helper.py @@ -83,6 +83,7 @@ async def get_user_info_by_id(user_id: str, alter: AltersDep): name = next((k for k, v in job_mapping.items() if v == alter.origin), '') # 通过OCR助手获取用户信息 helper_info = await get_main_user_info_by_id(user_id, name) + print(helper_info) if helper_info is None: raise ResponseException('当前助手ID不存在或已隐藏,请确认后重试') else: @@ -97,8 +98,11 @@ def trans_to_dcalc_set(detail, alter: AltersDep): basic = get_equipment('0') basicAvatars = basic.funs.get_dress_list([]) equs = detail.get('equs', []) + avatars = detail.get('avatars', []) + emblems = detail.get('emblems', []) equips = {} avatar = {} + emblem = {} for equ in equs: info = { 'id': '0', @@ -117,13 +121,12 @@ def trans_to_dcalc_set(detail, alter: AltersDep): # 锻造等级 'refine': equ.get('enhance', {}).get('refine', 0), # 调试等级 - 'adaptation': 3, + 'adaptation': equ.get('adaptation', 0), # 精度 'precision': 100, } # 装备 dcalcEqu = next((item for item in basic.equs if item.name == equ['name'].replace('(黑雨) ', '')), None) - # 贴膜 if dcalcEqu: info['id'] = dcalcEqu.id # dcalcEquFusion = next((item for item in basic.stones if item.name == equ.get('upgrade', '')), None) @@ -134,7 +137,7 @@ def trans_to_dcalc_set(detail, alter: AltersDep): # info['emblem_0'] = emblems[0] if len(emblems) > 0 else 0 # info['emblem_1'] = emblems[1] if len(emblems) > 1 else 0 equips[equ['posName']] = info - avatars = detail.get('avatars', []) + for item in avatars: info = { 'id': '', diff --git a/backend/dataFiles/dcalc_0.db b/backend/dataFiles/dcalc_0.db index 46f6b3ba..43e71e0a 100644 Binary files a/backend/dataFiles/dcalc_0.db and b/backend/dataFiles/dcalc_0.db differ diff --git a/backend/openapi b/backend/openapi index c7957c50..60d8022f 160000 --- a/backend/openapi +++ b/backend/openapi @@ -1 +1 @@ -Subproject commit c7957c50ebe9d7fb7e84123429f61f675a5fa7b0 +Subproject commit 60d8022f367b6f16a63aa6537b65cf260e3d47af