From cd22175bfcb2fef153cfd304f29cb1d2c2b0ddc5 Mon Sep 17 00:00:00 2001 From: ThearchyHelios Date: Sat, 3 Oct 2026 10:51:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=9B=AE=E5=BD=95=E9=98=B6?= =?UTF-8?q?=E6=AE=B5=201C=EF=BC=9A=E7=BC=96=E8=BE=91=E4=B8=AD=E7=82=B9?= =?UTF-8?q?=E5=BC=80=E7=8A=B6=E6=80=81=E6=A0=87=E8=AF=86=E6=97=B6=E5=86=99?= =?UTF-8?q?=E6=98=8E=E4=BF=9D=E5=AD=98=E6=88=96=E5=8F=96=E6=B6=88=E5=90=8E?= =?UTF-8?q?=E5=86=8D=E9=80=90=E9=A1=B9=E5=AE=A1=E9=98=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/lib/terms.ts | 1 + frontend/src/pages/catalog/ColumnTable.tsx | 2 +- frontend/src/pages/catalog/TableDetail.tsx | 2 +- frontend/src/pages/catalog/parts.tsx | 10 +++++++--- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/frontend/src/lib/terms.ts b/frontend/src/lib/terms.ts index 20e162ad..ff167559 100644 --- a/frontend/src/lib/terms.ts +++ b/frontend/src/lib/terms.ts @@ -2051,6 +2051,7 @@ export const CATALOG_TEXT = { reset: (where: string) => `已恢复${where}`, }, removed: (where: string) => `已删除${where}`, + reviewWhileEditing: '正在编辑这张表,保存或取消后再逐项审阅', whereTable: (field: string) => `表的${field}`, whereColumn: (col: string, field: string) => `列 ${col} 的${field}`, whereRelation: (to: string) => `指向 ${to} 的关联关系`, diff --git a/frontend/src/pages/catalog/ColumnTable.tsx b/frontend/src/pages/catalog/ColumnTable.tsx index 36d04258..e5903287 100644 --- a/frontend/src/pages/catalog/ColumnTable.tsx +++ b/frontend/src/pages/catalog/ColumnTable.tsx @@ -101,7 +101,7 @@ const ColumnRow = memo(function ColumnRow({ col, editing, draft, initial, proble
{editing ? input : view}
{it && !changed && ( - onReview({ path: columnPath(name, f), where, source: it.source, status: it.status }, a)} /> diff --git a/frontend/src/pages/catalog/TableDetail.tsx b/frontend/src/pages/catalog/TableDetail.tsx index f0721af6..d9984f7c 100644 --- a/frontend/src/pages/catalog/TableDetail.tsx +++ b/frontend/src/pages/catalog/TableDetail.tsx @@ -486,7 +486,7 @@ function TableFieldRow({ field, item, edit, busy, problems, columns, onChange, o
{edit ? input : }
{item && !changed && ( onReview({ path: tablePath(field), where, source: item.source, status: item.status }, a)} /> )} {changed && {CT.changedMark}} diff --git a/frontend/src/pages/catalog/parts.tsx b/frontend/src/pages/catalog/parts.tsx index 95812633..5c90ee69 100644 --- a/frontend/src/pages/catalog/parts.tsx +++ b/frontend/src/pages/catalog/parts.tsx @@ -108,11 +108,13 @@ export interface ReviewTarget { * 不会被表格的横向滚动裁掉;滚动时跟着触发按钮走,滚出视野或改窗口大小时收起。键盘:Enter 打开,焦点落到第一个可点的操作, * ←→↑↓ 在操作之间移动,Tab 在弹层里循环,Esc 收起并把焦点还给触发按钮 */ -export function ItemMark({ target, compact = false, disabled = false, onReview }: { +export function ItemMark({ target, compact = false, disabled = false, disabledHint, onReview }: { target: ReviewTarget compact?: boolean - /** 正在提交别的操作:弹层照常能看,操作按钮禁用 */ + /** 正在提交别的操作、正在编辑:弹层照常能看,操作按钮禁用 */ disabled?: boolean + /** 禁用的原因,写在操作按钮下面 */ + disabledHint?: string onReview: (action: CatalogReviewAction) => void }) { const [open, setOpen] = useState(false) @@ -269,7 +271,9 @@ export function ItemMark({ target, compact = false, disabled = false, onReview } {human ? CT.remove : CT.reset} - {canReset &&

{human ? CT.removeHint : CT.resetHint}

} + {disabled && disabledHint + ?

{disabledHint}

+ : canReset &&

{human ? CT.removeHint : CT.resetHint}

} , document.body, )}