메뉴 정리

This commit is contained in:
현성필
2025-02-02 15:39:00 +09:00
parent 42d542418a
commit 14a004c9e5
2 changed files with 16 additions and 23 deletions
+3 -18
View File
@@ -2,7 +2,7 @@
export const menuConfig = [
{
id: 'response',
label: '응답관리',
label: '응답 관리',
items: [
{id: 'response-list', label: 'API 응답 목록', action: 'response-list', screen: 'response-list'},
// {id: 'response-add', label: 'API 응답 추가', action: 'response-add'},
@@ -22,24 +22,9 @@ export const menuConfig = [
{id: 'request-add', label: '요청 추가', action: 'request-add'},
{id: 'scenario-add', label: '시나리오 추가', action: 'scenario-add'},
{type: 'separator'},
{id: 'variables-show', label: '변수 보기', action: 'variables-show'}
]
},
// {
// id: 'queue',
// label: '큐 관리',
// items: [
// {id: 'queue-add', label: '큐 추가', action: 'queue-add'}
// ]
// },
{
id: 'loadtest',
label: '부하 테스트',
items: [
{id: 'load-test', label: '새 테스트', action: 'load-test', screen: 'load-test'},
{id: 'variables-show', label: '변수 보기', action: 'variables-show'},
{type: 'separator'},
{id: 'load-test-history', label: '테스트 이력', action: 'load-test-history', screen: 'load-test-history'},
{id: 'load-test-reports', label: '결과 리포트', action: 'load-test-reports', screen: 'load-test-reports'}
{id: 'load-test', label: '부하 테스트', action: 'load-test', screen: 'load-test'},
]
},
{
@@ -1,17 +1,24 @@
class ApiLayoutItemTreeBuilder {
static createTree(layoutItems) {
layoutItems.sort((a, b) => a.loutItemSerno - b.loutItemSerno);
const rootId = layoutItems.length === 0 ? 0 : parseInt(layoutItems[0].parent);
const itemsCopy = layoutItems.map(item => ({
...item,
children: [] // 기존의 children 배열을 초기화합니다.
}));
// 2. 정렬 (필요한 경우)
itemsCopy.sort((a, b) => a.loutItemSerno - b.loutItemSerno);
const rootId = itemsCopy.length === 0 ? 0 : parseInt(itemsCopy[0].parent);
const root = {id: rootId, children: [], loutItemSerno: 0, loutItemName: 'Root', loutItemDesc: 'Root', loutItemType: '', loutItemDepth: 0, parent: null};
const nodeMap = new Map();
nodeMap.set(rootId, root);
for (const item of layoutItems) {
for (const item of itemsCopy) {
if (['Grid', 'Group'].includes(item.loutItemType)) {
if (item.loutItemOccCnt !== null) {
if (item.loutItemOccCnt === '*') {
let refItem = layoutItems.find(p => p.loutItemName === item.loutItemOccRef);
let refItem = itemsCopy.find(p => p.loutItemName === item.loutItemOccRef);
if (refItem) {
item.childOccCnt = parseInt(refItem.value, 10);
}
@@ -31,6 +38,7 @@ class ApiLayoutItemTreeBuilder {
nodeMap.set(item.id, item);
}
console.log(root);
return root;
}
@@ -68,7 +76,7 @@ class ApiLayoutItemTreeBuilder {
}
static getNodeById(node, id) {
if (node.id == id) {
if (Number(node.id) === Number(id)) {
return node;
}