更新 src/App.tsx

修改了并行的逻辑
This commit is contained in:
2025-06-19 18:13:03 +08:00
parent 09c1821495
commit 7512c76c04

View File

@ -713,24 +713,30 @@ export default function App() {
const tempStepsMap = new Map<string, StepItem>();
// 首先处理每个步骤的基本信息
for (const config of filteredConfigs) {
const stepName = config.processName;
const order = config.order;
// 如果该步骤不存在,创建新步骤
if (!tempStepsMap.has(stepName)) {
tempStepsMap.set(stepName, {
name: stepName,
fieldId: stepName,
finished: false,
order,
parallelSteps: undefined,
requireAllSubSteps: true, // 默认需要所有子步骤完成
isMainStep: order === Math.floor(order) // 标记是否为主步骤
});
}
const stepItem = tempStepsMap.get(stepName)!;
for (const config of filteredConfigs) {
const stepName = config.processName;
const order = config.order;
// 如果该步骤不存在,创建新步骤
if (!tempStepsMap.has(stepName)) {
tempStepsMap.set(stepName, {
name: stepName,
fieldId: stepName,
finished: false,
order,
parallelSteps: undefined,
requireAllSubSteps: true, // 默认需要所有子步骤完成
isMainStep: order === Math.floor(order) // 标记是否为主步骤
});
} else {
// 如果步骤已存在使用最小的order值
const existingStep = tempStepsMap.get(stepName)!;
existingStep.order = Math.min(existingStep.order || 0, order);
// 重新计算是否为主步骤
existingStep.isMainStep = existingStep.order === Math.floor(existingStep.order);
}
const stepItem = tempStepsMap.get(stepName)!;
// 根据节点类型设置相应的时间字段
if (config.timeFieldId) {