修复WBS编码: 分支1→分支1.1层级正确(prefix空字符串处理)
This commit is contained in:
@ -108,19 +108,19 @@ export default {
|
|||||||
},
|
},
|
||||||
branchLabelMap() {
|
branchLabelMap() {
|
||||||
const map = {};
|
const map = {};
|
||||||
|
if (!this.product || !this.product.task_tree) return map;
|
||||||
const traverse = (tasks, prefix) => {
|
const traverse = (tasks, prefix) => {
|
||||||
if (!tasks) return;
|
if (!tasks) return;
|
||||||
tasks.forEach((t, i) => {
|
tasks.forEach((t, i) => {
|
||||||
map[t.id] = prefix ? `分支 ${prefix}${i + 1}` : '分支 1';
|
const num = prefix ? `${prefix}.${i + 1}` : `${i + 1}`;
|
||||||
traverse(t.child_tasks, prefix ? `${prefix}${i + 1}.` : `${i + 1}.`);
|
map[t.id] = `分支 ${num}`;
|
||||||
|
traverse(t.child_tasks, num);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
if (this.product && this.product.task_tree) {
|
this.product.task_tree.forEach((t, i) => {
|
||||||
this.product.task_tree.forEach((t, i) => {
|
map[t.id] = '主分支';
|
||||||
map[t.id] = '主分支';
|
traverse(t.child_tasks, '');
|
||||||
traverse(t.child_tasks, `${i + 1}.`);
|
});
|
||||||
});
|
|
||||||
}
|
|
||||||
return map;
|
return map;
|
||||||
},
|
},
|
||||||
canvasWidth() { if (!this.treeNodes.length) return 400; return Math.max(800, Math.max(...this.treeNodes.map(n => n.x)) + 300); },
|
canvasWidth() { if (!this.treeNodes.length) return 400; return Math.max(800, Math.max(...this.treeNodes.map(n => n.x)) + 300); },
|
||||||
|
|||||||
@ -143,16 +143,15 @@ export default {
|
|||||||
const traverse = (tasks, prefix) => {
|
const traverse = (tasks, prefix) => {
|
||||||
if (!tasks) return;
|
if (!tasks) return;
|
||||||
tasks.forEach((t, i) => {
|
tasks.forEach((t, i) => {
|
||||||
if (prefix === '') {
|
const num = prefix ? `${prefix}.${i + 1}` : `${i + 1}`;
|
||||||
map[t.id] = '主分支';
|
map[t.id] = `分支 ${num}`;
|
||||||
} else {
|
traverse(t.child_tasks, num);
|
||||||
map[t.id] = `分支 ${prefix}${i + 1}`;
|
|
||||||
}
|
|
||||||
const nextPrefix = prefix === '' ? `${i + 1}.` : `${prefix}${i + 1}.`;
|
|
||||||
traverse(t.child_tasks, nextPrefix);
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
traverse(this.product.task_tree, '');
|
this.product.task_tree.forEach((t, i) => {
|
||||||
|
map[t.id] = '主分支';
|
||||||
|
traverse(t.child_tasks, '');
|
||||||
|
});
|
||||||
return map;
|
return map;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user