R96 U1-U7 精简页面设计与文案

这个提交包含在:
2026-05-06 16:47:13 +08:00
父节点 6127a537d8
当前提交 3741a3d626
共修改 19 个文件,包含 329 行新增和 549 行删除
@@ -183,7 +183,7 @@ export function UserImportDialog({ open, onOpenChange, onImported }: UserImportD
<DialogHeader>
<DialogTitle>批量导入员工</DialogTitle>
<DialogDescription>
导入结果会同时创建员工档案、登录账号和角色。流程固定为 dry-run 预检后再 apply,成功后可下载一次性密码清单。
上传员工表,先预检,再确认导入。成功后可下载一次性密码清单。
</DialogDescription>
</DialogHeader>
@@ -224,7 +224,7 @@ export function UserImportDialog({ open, onOpenChange, onImported }: UserImportD
onClick={() => dryRunMutation.mutate()}
disabled={!selectedFile || dryRunMutation.isPending || applyMutation.isPending}
>
{dryRunMutation.isPending ? "预检中..." : "执行 dry-run"}
{dryRunMutation.isPending ? "预检中..." : "预检"}
</Button>
<Button
type="button"
@@ -232,7 +232,7 @@ export function UserImportDialog({ open, onOpenChange, onImported }: UserImportD
onClick={() => applyMutation.mutate()}
disabled={!canApply}
>
{applyMutation.isPending ? "导入中..." : "执行 apply"}
{applyMutation.isPending ? "导入中..." : "确认导入"}
</Button>
{applyResult ? (
<Button type="button" variant="secondary" onClick={handleDownloadPasswords}>
@@ -264,7 +264,7 @@ export function UserImportDialog({ open, onOpenChange, onImported }: UserImportD
</div>
) : (
<div className="rounded-lg border border-dashed border-zinc-300 px-4 py-6 text-sm text-zinc-500">
下载模板并上传文件后,先执行 dry-run 查看逐行校验结果。
下载模板并上传文件后,先预检逐行结果。
</div>
)}
</div>
@@ -273,7 +273,7 @@ export function UserImportDialog({ open, onOpenChange, onImported }: UserImportD
{dryRunResult ? (
<div className="space-y-4">
<div>
<h3 className="text-base font-semibold text-zinc-900">dry-run 结果</h3>
<h3 className="text-base font-semibold text-zinc-900">预检结果</h3>
<div className="mt-1 text-sm text-zinc-500">{dryRunResult.sourceFilename}</div>
</div>