From de910547f195ee09e54202bee68825ec4dda2666 Mon Sep 17 00:00:00 2001 From: zhx Date: Thu, 2 Jul 2026 19:23:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=88=90=E5=B0=B1=E6=8E=92?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../achievements/hooks/useAchievementsPage.js | 3 ++- .../achievements/pages/AchievementConfigPage.jsx | 13 +++++++++++++ src/features/achievements/schema.ts | 1 + 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/features/achievements/hooks/useAchievementsPage.js b/src/features/achievements/hooks/useAchievementsPage.js index 8f02274..a2b2cff 100644 --- a/src/features/achievements/hooks/useAchievementsPage.js +++ b/src/features/achievements/hooks/useAchievementsPage.js @@ -20,6 +20,7 @@ const emptyForm = (achievement = {}) => ({ achievementType: achievement.achievementType || "ordinary", description: achievement.description || "", primaryBadgeResourceId: optionalId(achievement.primaryBadgeResourceId), + sortOrder: String(achievement.sortOrder || 0), title: achievement.title || "", }); @@ -196,7 +197,7 @@ function buildAchievementPayload(form) { honor_visibility: true, primary_badge_resource_id: Number(form.primaryBadgeResourceId || 0), reward_resource_group_id: 0, - sort_order: 0, + sort_order: Number(form.sortOrder || 0), status: "active", title: String(form.title || "").trim(), }; diff --git a/src/features/achievements/pages/AchievementConfigPage.jsx b/src/features/achievements/pages/AchievementConfigPage.jsx index 06aab97..264e2c9 100644 --- a/src/features/achievements/pages/AchievementConfigPage.jsx +++ b/src/features/achievements/pages/AchievementConfigPage.jsx @@ -46,6 +46,12 @@ const baseColumns = [ {achievementTypeLabel(achievement.achievementType)} ), }, + { + key: "sortOrder", + label: "排序", + width: "96px", + render: (achievement) => {achievement.sortOrder || 0}, + }, { key: "description", label: "成就描述", @@ -201,6 +207,13 @@ function AchievementFormDialog({ disabled, form, loading, mode, onClose, onSubmi value={form.title} onChange={changeField(page.setForm, "title")} /> + {