[功能] 服务状态页新增「视频分割」状态 - Oracle /api/oracle/activity 加 segment(运动片段 done/pending/failed/文件数/最近分割活动), ServiceStatus.vue 加视频分割卡片

This commit is contained in:
ericwyuan
2026-08-22 13:18:57 +08:00
parent 01a8ac2a3f
commit cbcc5d0325
3 changed files with 50 additions and 0 deletions

View File

@@ -38,6 +38,7 @@ const qs = computed(() => queue.value.stats || {})
const rclone = computed(() => oracle.value.rclone)
const person = computed(() => oracle.value.person)
const segment = computed(() => oracle.value.segment)
const nasSync = computed(() => data.value?.nas_sync)
const modelCalls = computed(() => oracle.value.model_calls || [])
const activities = computed(() => oracle.value.activities || [])
@@ -101,6 +102,15 @@ const SVC_BADGE = {
近5次 成功{{ modelCalls.filter(m => m.success).length }}/{{ modelCalls.length }}
</template>
</ServiceCard>
<ServiceCard icon="🎬" name="视频分割" :value-color="segment?.total ? '#f472b6' : undefined">
{{ segment && segment.total ? `运动片段 ${segment.done ?? 0}/${segment.total} · 文件 ${segment.clips_files ?? 0}` : '暂无片段' }}
<template #sub v-if="segment && segment.total">
待处理 {{ segment.pending ?? 0 }} · 失败 {{ segment.failed ?? 0 }} · 运动事件 {{ segment.motion_events ?? 0 }}
<span v-if="segment.last" class="mt-0.5 block text-text-mute">
{{ (segment.last.ts || '').slice(0, 19) }} · {{ (segment.last.detail || '').slice(0, 42) }}
</span>
</template>
</ServiceCard>
</div>
<div class="mb-3 text-[15px] font-bold text-[#f7f9fc]">最近活动</div>