From b2e27535fb30f476a01c7a80d4c89a175bdc1d7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A5=BF=E7=93=9C=C2=B0?= Date: Sun, 24 May 2026 23:57:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=AA=93=E7=BA=A6=E4=B8=80?= =?UTF-8?q?=E9=94=AE=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/api/routes/info.py | 14 +++++++------- backend/core/open/helper.py | 9 +++++++++ backend/dataFiles/dcalc_0.db | Bin 860160 -> 860160 bytes backend/openapi | 2 +- .../src/pages/Character/Config/import.vue | 1 + 5 files changed, 18 insertions(+), 8 deletions(-) diff --git a/backend/api/routes/info.py b/backend/api/routes/info.py index 006088b8..463412b3 100644 --- a/backend/api/routes/info.py +++ b/backend/api/routes/info.py @@ -124,13 +124,13 @@ async def get_dnfhelper_list(uid: str, redis: RedisDep): @router.get('/dnfhelper/{uid}/') async def get_info_by_dnfhelper(uid: str, state: AltersDep, redis: RedisDep): - try: - 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='Failed to fetch DNFHelper info', data=None) + # try: + 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='Failed to fetch DNFHelper info', data=None) @router.post('/skillTree/') diff --git a/backend/core/open/helper.py b/backend/core/open/helper.py index a67f4284..bd4e6495 100644 --- a/backend/core/open/helper.py +++ b/backend/core/open/helper.py @@ -108,6 +108,7 @@ def trans_to_dcalc_set(detail, alter: AltersDep): equips = {} avatar = {} emblems = {} + oaths = {} for equ in detail.get('equs', []): info = { 'id': '0', @@ -185,6 +186,13 @@ 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 avatar[item['posName']] = info + for index, item in enumerate(detail.get('oaths', [])): + info = {'id': -1, 'adaptation': 0} + dcalcOath = next((i for i in basic.oaths if i.name == item), None) + if dcalcOath: + info['id'] = dcalcOath.id + info['adaptation'] = 3 if index < 11 else 0 + oaths[str(index)] = info rarities = ['稀有', '神器', '传说', '史诗'] for item in detail.get('emblems', []): @@ -203,6 +211,7 @@ def trans_to_dcalc_set(detail, alter: AltersDep): 'emblems': emblems, 'avatarLink': detail.get('avatarLink', ''), 'fogOathLv': detail.get('fogOathLv', 0), + 'oaths': oaths, 'dressInfo': [ { 'dress': i.get('name', ''), diff --git a/backend/dataFiles/dcalc_0.db b/backend/dataFiles/dcalc_0.db index 8b6489e92b8013f484825c33556143b617a93c74..5224dc391a30df5f82c9e8a65eee9a4dd7ed51d1 100644 GIT binary patch delta 955 zcmY+CO-NKx7>2pdpRW^BdDrFf*6vXH$6EWJ*O2F%i??SRAG( zMhlt)f-T!c8s@R05{gPurWUnu(;~=OL`4)5D0KYJ+_~4qh4b?LJ@5D3+_agSHiw&x z@|{gxMtP8NW^h)+nTInkXFksSoCP?meZue|;t98h#m5^+%4<;^Fjl3UYsFptI&ETv zUOFYd8;7-2DG6ELW6PX?DSG!}mf9&56TR&yky1U9;^9_bix`U{B+hprC`%^;=QgS+Xb(Gr?$;* zVuMr+hpIhe@)*Y%M~dH#hAUY-c!g%!lSdDwNac7@CzILQTR7=)7ByKwI6#u3%|)Eh zWeR>tmnk4iSf~8kHPEjD)@%A*BN%h-E!Xd_oQf6I9@3+0PPK3!-|Ou`3E41?&T9Ll z*#Ak@4o_f<{P7qqIzXp7JAn&YYQ9ONTxH$&{3cP!$Q0UKWzU`>>nh7XM@CEf#oAtA z!MWzam-yKi^CMf zXhCyez?SVI4fEJrD9S{cTGYZ#i=b%{8Bs`}(D6HS=Ux{V&Y$n~`+wifPMO&$bGXSU z-`>z=lm{7S24^*#c{uZO=HtxIS%9Yow;Yt?wU!g_ziXW&8b=Q?Y{DLuzEzspjwDN4-5LE*r+sS#6&X z`#!1K;c;w|KOdo02k2C1#&KRt%{PIhtE~I3-y|v-ovaOs{gGmO1COv19V}o63F!ZKe62y%lQ=5D(vCiE;^j`JHW%hK3@BW)K%)v diff --git a/backend/openapi b/backend/openapi index 20f052e9..be3ff246 160000 --- a/backend/openapi +++ b/backend/openapi @@ -1 +1 @@ -Subproject commit 20f052e93e58762be450d510dc6d8568c90721ae +Subproject commit be3ff246ed3e77b7e95714df0c4cf74dc915eb60 diff --git a/frontend/src/pages/Character/Config/import.vue b/frontend/src/pages/Character/Config/import.vue index e49d4887..c18e806a 100644 --- a/frontend/src/pages/Character/Config/import.vue +++ b/frontend/src/pages/Character/Config/import.vue @@ -19,6 +19,7 @@ export default defineComponent({ configStore.config.avatarLink = res.avatarLink configStore.config.emblems = res.emblems configStore.config.sundry.fog = res.fogOathLv + configStore.config.oaths = res.oaths const { alert } = useDialog() visible.value = false await alert({