fix: allow reviewing legacy draft signatures

This commit is contained in:
hectorzhao
2026-07-13 17:44:44 +08:00
parent 6eaa4157e8
commit ff3e56070a
2 changed files with 6 additions and 1 deletions
+5 -1
View File
@@ -24,6 +24,10 @@ function fileRef(value: unknown): FileRef | null {
} : null;
}
function canReviewSignature(item: ClientSmsSignature) {
return ['draft', 'pending'].includes(item.auditStatus);
}
function SignatureDetail({ item, onClose }: { item: ClientSmsSignature; onClose: () => void }) {
const payload = asRecord(item.drainageInfo);
const profile = asRecord(payload.signatureProfile);
@@ -95,7 +99,7 @@ export function AdminSignatureAuditPage() {
{ key: 'application', title: '应用', render: (record) => record.application?.name ?? '-' },
{ key: 'submittedAt', title: '提交时间', render: (record) => formatDateTime(record.updatedAt) },
{ key: 'status', title: '状态', render: (record) => <Tag tone={(statusMeta[record.auditStatus] ?? statusMeta.draft).tone}>{(statusMeta[record.auditStatus] ?? statusMeta.draft).label}</Tag> },
{ key: 'actions', title: '操作', align: 'right', render: (record) => <div className="table-actions"><Button icon={<Eye size={15} />} onClick={() => setDetail(record)} size="sm" variant="ghost"></Button><Button disabled={record.auditStatus !== 'pending'} icon={<Check size={15} />} onClick={() => void approve(record)} size="sm" variant="success"></Button><Button disabled={record.auditStatus !== 'pending'} icon={<X size={15} />} onClick={() => setRejectTarget(record)} size="sm" variant="danger"></Button></div> },
{ key: 'actions', title: '操作', align: 'right', render: (record) => <div className="table-actions"><Button icon={<Eye size={15} />} onClick={() => setDetail(record)} size="sm" variant="ghost"></Button><Button disabled={!canReviewSignature(record)} icon={<Check size={15} />} onClick={() => void approve(record)} size="sm" variant="success"></Button><Button disabled={!canReviewSignature(record)} icon={<X size={15} />} onClick={() => setRejectTarget(record)} size="sm" variant="danger"></Button></div> },
], []);
return <section className="page-stack admin-template-audit-page">