feat: add schedule controls to Orbit console

This commit is contained in:
2026-09-21 01:26:30 +08:00
parent 21a6b61b55
commit cad4e1206a
5 changed files with 76 additions and 5 deletions

View File

@@ -131,6 +131,34 @@
</form>
</aside>
</div>
<div class="drawer-backdrop" id="schedule-drawer-backdrop" hidden>
<aside class="task-drawer schedule-drawer" role="dialog" aria-modal="true" aria-labelledby="schedule-detail-title">
<div class="drawer-header">
<div><span class="panel-kicker">PULSE / SCHEDULE DETAIL</span><h2 id="schedule-detail-title">定时计划</h2><small class="drawer-id" id="schedule-detail-id">—</small></div>
<button class="icon-button" id="close-schedule-drawer" type="button" aria-label="关闭计划详情">×</button>
</div>
<div class="drawer-status-line"><span class="state-pill" id="schedule-detail-state">—</span><span id="schedule-detail-updated">—</span></div>
<div class="detail-grid">
<div><span>计划名称</span><b id="schedule-detail-name">—</b></div>
<div><span>队列</span><b id="schedule-detail-queue">—</b></div>
<div><span>控制修订</span><b id="schedule-detail-revision">—</b></div>
<div><span>当前版本</span><b id="schedule-detail-version">—</b></div>
<div><span>下一次触发</span><b id="schedule-detail-next">—</b></div>
<div><span>时区</span><b id="schedule-detail-timezone">—</b></div>
</div>
<div class="detail-block"><div class="detail-block-heading"><span>当前版本规则</span><small id="schedule-detail-rule-kind">—</small></div><div class="schedule-rule-card" id="schedule-detail-rule">等待计划数据…</div></div>
<div class="detail-block"><div class="detail-block-heading"><span>最近触发记录</span><small id="schedule-occurrences-count">加载中</small></div><div class="detail-list" id="schedule-occurrences"><div class="detail-loading">正在读取触发记录…</div></div></div>
<div class="drawer-actions" id="schedule-actions" hidden><button class="quiet-button" id="schedule-control-button" type="button">暂停计划</button></div>
<p class="drawer-note" id="schedule-action-note">计划控制需要 schedules:manage 权限;暂停只停止未来触发,已经创建的任务继续执行。</p>
<form class="action-form" id="schedule-action-form" hidden>
<div class="action-form-heading"><span class="panel-kicker">SCHEDULE CONTROL</span><h3 id="schedule-action-title">暂停计划</h3></div>
<p id="schedule-action-description">暂停后不会再创建新的任务。</p>
<label class="field-label" for="schedule-action-reason">操作原因</label><textarea id="schedule-action-reason" rows="3" maxlength="1024" placeholder="说明本次计划控制的原因"></textarea>
<div class="action-form-buttons"><button class="quiet-button" id="schedule-action-cancel" type="button">返回</button><button class="primary-button compact" id="schedule-action-submit" type="submit">提交控制 →</button></div>
<div class="action-error" id="schedule-action-error" role="alert"></div>
</form>
</aside>
</div>
<div class="toast" id="toast" role="status"></div>
<script src="/console/app.js"></script>
</body>