From 2540d86f0dbd77f654f558c3bf9d5ddbe7422f16 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期五, 03 七月 2026 17:22:09 +0800
Subject: [PATCH] fix: 完成设计项目和归档台账接口对接,功能联调
---
src/views/mes/pd/project/modules/workflow-timeline.vue | 52 +++++++++++++++++-----------------------------------
1 files changed, 17 insertions(+), 35 deletions(-)
diff --git a/src/views/mes/pd/project/modules/workflow-timeline.vue b/src/views/mes/pd/project/modules/workflow-timeline.vue
index 58a6d8a..6989422 100644
--- a/src/views/mes/pd/project/modules/workflow-timeline.vue
+++ b/src/views/mes/pd/project/modules/workflow-timeline.vue
@@ -1,53 +1,35 @@
<script lang="ts" setup>
-import type { MesPdWorkflowApi } from '#/api/mes/pd/workflow';
-
-import { onMounted, ref, watch } from 'vue';
+import { computed } from 'vue';
import { Steps } from 'ant-design-vue';
-import { getPdWorkflowList } from '#/api/mes/pd/workflow';
+const STEPS = ['寰呭彂甯�', '寰呬笂浼�', '寰呭鏍�', '寰呭綊妗�', '宸插綊妗�'] as const;
const props = defineProps<{
- projectId: number;
+ /** 椤圭洰褰撳墠鐘舵�� (0-4) */
+ status: number;
}>();
-const loading = ref(false);
-const nodes = ref<MesPdWorkflowApi.WorkflowNode[]>([]);
-const current = ref(0);
+const current = computed(() => {
+ // 鐘舵�佸�煎嵆褰撳墠宸插畬鎴愬埌绗嚑姝ワ細0=绗竴姝ヨ繘琛屼腑锛�4=鍏ㄩ儴瀹屾垚
+ return props.status;
+});
-async function loadData() {
- loading.value = true;
- try {
- nodes.value = await getPdWorkflowList(props.projectId);
- const activeIndex = nodes.value.findIndex((item) => item.status !== 1);
- current.value = activeIndex === -1 ? nodes.value.length : activeIndex;
- } finally {
- loading.value = false;
- }
-}
-
-watch(
- () => props.projectId,
- () => loadData(),
- { immediate: true },
+const nodes = computed(() =>
+ STEPS.map((name, index) => ({
+ title: name,
+ status: index < props.status ? 'finish' : index === props.status ? 'process' : 'wait',
+ })),
);
-
-onMounted(loadData);
</script>
<template>
<Steps :current="current" direction="vertical" size="small">
<Steps.Step
- v-for="node in nodes"
- :key="node.id"
- :description="node.remark"
- :sub-title="node.operatorName"
- :title="node.nodeName"
- />
- <Steps.Step
- v-if="!loading && nodes.length === 0"
- description="鏆傛棤娴佺▼璁板綍锛屼繚瀛橀」鐩悗灏嗚嚜鍔ㄧ敓鎴�"
- title="寰呭惎鍔�"
+ v-for="(node, index) in nodes"
+ :key="index"
+ :status="node.status as any"
+ :title="node.title"
/>
</Steps>
</template>
--
Gitblit v1.9.3