R96 U1-U7 精简页面设计与文案
这个提交包含在:
@@ -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>
|
||||
|
||||
|
||||
在新工单中引用
屏蔽一个用户