fix:禁工作台跳系统管理
This commit is contained in:
@@ -14,6 +14,8 @@ export function DashboardPage({
|
|||||||
onNavigate: (page: "scripts" | "schedules" | "system") => void;
|
onNavigate: (page: "scripts" | "schedules" | "system") => void;
|
||||||
}) {
|
}) {
|
||||||
const { user, currentWorkspace } = useAuth();
|
const { user, currentWorkspace } = useAuth();
|
||||||
|
const isSystemAdmin = user?.is_system_admin ?? false;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<section className="dashboard-page">
|
<section className="dashboard-page">
|
||||||
<div className="dashboard-hero">
|
<div className="dashboard-hero">
|
||||||
@@ -36,7 +38,9 @@ export function DashboardPage({
|
|||||||
<div className="dashboard-actions">
|
<div className="dashboard-actions">
|
||||||
<button type="button" onClick={() => onNavigate("scripts")}><Icon name="script" />构建脚本</button>
|
<button type="button" onClick={() => onNavigate("scripts")}><Icon name="script" />构建脚本</button>
|
||||||
<button type="button" onClick={() => onNavigate("schedules")}><Icon name="schedule" />调度配置</button>
|
<button type="button" onClick={() => onNavigate("schedules")}><Icon name="schedule" />调度配置</button>
|
||||||
<button type="button" onClick={() => onNavigate("system")}><Icon name="settings" />系统管理</button>
|
{isSystemAdmin && (
|
||||||
|
<button type="button" onClick={() => onNavigate("system")}><Icon name="settings" />系统管理</button>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
<div className="dashboard-grid">
|
<div className="dashboard-grid">
|
||||||
<section className="dashboard-panel dashboard-panel--trend">
|
<section className="dashboard-panel dashboard-panel--trend">
|
||||||
|
|||||||
@@ -391,8 +391,8 @@ export function ProjectManagementPage({
|
|||||||
</div>
|
</div>
|
||||||
<button className="icon-button" type="button" onClick={() => setImportMemberDialogOpen(false)}><Icon name="close" /></button>
|
<button className="icon-button" type="button" onClick={() => setImportMemberDialogOpen(false)}><Icon name="close" /></button>
|
||||||
</div>
|
</div>
|
||||||
<div style={{ padding: "20px 24px 110px" }}>
|
<form >
|
||||||
<label className="form-field">
|
<label className="form-field" style={{ paddingBottom: 120 }}>
|
||||||
<span>选择用户<span className="required">*</span></span>
|
<span>选择用户<span className="required">*</span></span>
|
||||||
<UserMultiSelect
|
<UserMultiSelect
|
||||||
users={availableUsers}
|
users={availableUsers}
|
||||||
@@ -401,13 +401,13 @@ export function ProjectManagementPage({
|
|||||||
existingMemberIds={currentProjectMembers.map((m) => m.user_id)}
|
existingMemberIds={currentProjectMembers.map((m) => m.user_id)}
|
||||||
/>
|
/>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
<div className="modal__footer">
|
||||||
<div style={{ display: "flex", justifyContent: "flex-end", gap: "8px", padding: "16px 24px", borderTop: "1px solid #e8e8e8" }}>
|
<button className="secondary-button" type="button" onClick={() => setImportMemberDialogOpen(false)}>取消</button>
|
||||||
<button className="secondary-button" type="button" onClick={() => setImportMemberDialogOpen(false)}>取消</button>
|
<button className="primary-button" type="button" disabled={saving || selectedUserIds.length === 0} onClick={() => void importMember()}>
|
||||||
<button className="primary-button" type="button" disabled={saving || selectedUserIds.length === 0} onClick={() => void importMember()}>
|
{saving ? "添加中…" : `添加 (${selectedUserIds.length})`}
|
||||||
{saving ? "添加中…" : `添加 (${selectedUserIds.length})`}
|
</button>
|
||||||
</button>
|
</div>
|
||||||
</div>
|
</form>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in New Issue
Block a user