feat: 添加Revit分析仪表板和批处理作业管理器组件。
This commit is contained in:
parent
e01376de57
commit
aa9d283706
@ -18,28 +18,28 @@
|
||||
<div class="stat-card">
|
||||
<div class="stat-icon"><i class="fas fa-spinner fa-spin"></i></div>
|
||||
<div class="stat-info">
|
||||
<div class="stat-value">3</div>
|
||||
<div class="stat-value">0</div>
|
||||
<div class="stat-label">运行中任务</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-icon success"><i class="fas fa-check-circle"></i></div>
|
||||
<div class="stat-info">
|
||||
<div class="stat-value">128</div>
|
||||
<div class="stat-value">0</div>
|
||||
<div class="stat-label">已完成</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-icon warning"><i class="fas fa-clock"></i></div>
|
||||
<div class="stat-info">
|
||||
<div class="stat-value">5</div>
|
||||
<div class="stat-value">0</div>
|
||||
<div class="stat-label">排队中</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-icon danger"><i class="fas fa-times-circle"></i></div>
|
||||
<div class="stat-info">
|
||||
<div class="stat-value">2</div>
|
||||
<div class="stat-value">0</div>
|
||||
<div class="stat-label">失败/异常</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -263,52 +263,7 @@ const taskForm = ref({
|
||||
const newModelPath = ref('')
|
||||
|
||||
// 模拟列表数据 - 配合后端的 queued -> dispatching -> waiting_callback -> succeeded/failed 状态
|
||||
const jobs = ref([
|
||||
{
|
||||
batchId: 'B-20261001',
|
||||
strategy: 'creo_shrinkwrap',
|
||||
priority: '普通',
|
||||
progress: 40,
|
||||
status: 'running',
|
||||
totalCount: 5,
|
||||
completedCount: 2,
|
||||
createdAt: '2026-02-26 14:00',
|
||||
items: [
|
||||
{ modelPath: 'C:\\Models\\engine_block.prt', status: 'succeeded', errorMessage: '', finishedAt: '2026-02-26 14:05' },
|
||||
{ modelPath: 'C:\\Models\\gear_box.prt', status: 'failed', errorMessage: '模型几何损坏无法抽取外壳', finishedAt: '2026-02-26 14:10' },
|
||||
{ modelPath: 'C:\\Models\\shaft.prt', status: 'waiting_callback', errorMessage: '', finishedAt: '-' },
|
||||
{ modelPath: 'C:\\Models\\bearing.prt', status: 'queued', errorMessage: '', finishedAt: '-' },
|
||||
{ modelPath: 'C:\\Models\\casing.prt', status: 'queued', errorMessage: '', finishedAt: '-' }
|
||||
]
|
||||
},
|
||||
{
|
||||
batchId: 'B-20261002',
|
||||
strategy: 'revit_shell',
|
||||
priority: '高',
|
||||
progress: 100,
|
||||
status: 'succeeded',
|
||||
totalCount: 2,
|
||||
completedCount: 2,
|
||||
createdAt: '2026-02-26 10:30',
|
||||
items: [
|
||||
{ modelPath: 'D:\\BIM\\A_Tower.rvt', status: 'succeeded', errorMessage: '', finishedAt: '2026-02-26 10:45' },
|
||||
{ modelPath: 'D:\\BIM\\B_Tower.rvt', status: 'succeeded', errorMessage: '', finishedAt: '2026-02-26 11:00' }
|
||||
]
|
||||
},
|
||||
{
|
||||
batchId: 'B-20261003',
|
||||
strategy: 'pdms_shrinkwrap',
|
||||
priority: '低',
|
||||
progress: 0,
|
||||
status: 'queued',
|
||||
totalCount: 1,
|
||||
completedCount: 0,
|
||||
createdAt: '2026-02-26 15:20',
|
||||
items: [
|
||||
{ modelPath: 'SAM/CATA', status: 'queued', errorMessage: '', finishedAt: '-' }
|
||||
]
|
||||
}
|
||||
])
|
||||
const jobs = ref([])
|
||||
|
||||
const filteredJobs = computed(() => {
|
||||
if (statusFilter.value === 'all') return jobs.value
|
||||
|
||||
@ -220,10 +220,7 @@
|
||||
<i class="fas" :class="isApplyingOptimization ? 'fa-spinner fa-spin' : 'fa-check-circle'"></i>
|
||||
{{ isApplyingOptimization ? '正在应用...' : '应用优化' }}
|
||||
</button>
|
||||
<button class="revit-analysis-btn secondary" @click="exportResults">
|
||||
<i class="fas fa-download"></i>
|
||||
导出报告
|
||||
</button>
|
||||
|
||||
<button class="revit-analysis-btn secondary" @click="restartAnalysis">
|
||||
<i class="fas fa-redo"></i>
|
||||
重新分析
|
||||
@ -421,16 +418,6 @@ const applyOptimization = async () => {
|
||||
}
|
||||
}
|
||||
|
||||
const exportResults = () => {
|
||||
ElNotification({
|
||||
title: '导出报告',
|
||||
message: '分析报告已导出(模拟)',
|
||||
type: 'success',
|
||||
position: 'top-right',
|
||||
duration: 2000
|
||||
})
|
||||
}
|
||||
|
||||
const restartAnalysis = () => {
|
||||
resetAnalysis()
|
||||
selectedCategories.value = []
|
||||
|
||||
Loading…
Reference in New Issue
Block a user