1
0
mirror of https://github.com/zerobig/vscode-1c-metadata-viewer.git synced 2025-07-13 01:20:13 +02:00

Рефакторинг

This commit is contained in:
Ilya Bushin
2022-11-06 01:29:43 +03:00
parent fb65e54f52
commit dbb5182b8d

View File

@ -220,180 +220,148 @@ function CreateTreeElements(element: TreeItem, metadataFile: MetadataFile) {
} }
const treeItemId = element.id + '/' + current.$.id; const treeItemId = element.id + '/' + current.$.id;
const treeItemPath = `${element.id}/${CreatePath(current.$.name)}`; const treeItemPath = `${element.id}/${CreatePath(current.$.name)}`;
if (current.$.name.startsWith('CommonModule.')) { switch (true) {
previous.commonModule.push(GetTreeItem( case current.$.name.startsWith('CommonModule.'):
treeItemId, current.$.name, previous.commonModule.push(GetTreeItem(
{ treeItemId, current.$.name,
icon: 'commonModule', { icon: 'commonModule', context: 'module', path: treeItemPath, }));
context: 'module',
path: treeItemPath, break;
})); case current.$.name.startsWith('SessionParameter.'):
} else if (current.$.name.startsWith('SessionParameter.')) { previous.sessionParameter.push(GetTreeItem(treeItemId, current.$.name, { icon: 'sessionParameter' }));
previous.sessionParameter.push(GetTreeItem(treeItemId, current.$.name, { icon: 'sessionParameter' })); break;
} else if (current.$.name.startsWith('Role.')) { case current.$.name.startsWith('Role.'):
previous.role.push(GetTreeItem(treeItemId, current.$.name, { icon: 'role' })); previous.role.push(GetTreeItem(treeItemId, current.$.name, { icon: 'role' }));
} else if (current.$.name.startsWith('CommonAttribute.')) { break;
previous.commonAttribute.push(GetTreeItem(treeItemId, current.$.name, { icon: 'attribute' })); case current.$.name.startsWith('CommonAttribute.'):
} else if (current.$.name.startsWith('ExchangePlan.')) { previous.commonAttribute.push(GetTreeItem(treeItemId, current.$.name, { icon: 'attribute' }));
previous.exchangePlan.push(GetTreeItem( break;
treeItemId, current.$.name, case current.$.name.startsWith('ExchangePlan.'):
{ previous.exchangePlan.push(GetTreeItem(
icon: 'exchangePlan', treeItemId, current.$.name, {
context: 'object_and_manager', icon: 'exchangePlan', context: 'object_and_manager', path: treeItemPath,
path: treeItemPath, children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult)
})); break;
} if (current.$.name.startsWith('Constant.')) { case current.$.name.startsWith('Constant.'):
previous.constant.push(GetTreeItem( previous.constant.push(GetTreeItem(
treeItemId, current.$.name, treeItemId, current.$.name, {
{ icon: 'constant', context: 'valueManager_and_manager', path: treeItemPath, }));
icon: 'constant',
context: 'valueManager_and_manager', break;
path: treeItemPath, case current.$.name.startsWith('Catalog.'):
})); previous.catalog.push(GetTreeItem(
} if (current.$.name.startsWith('Catalog.')) { treeItemId, current.$.name, {
previous.catalog.push(GetTreeItem( icon: 'catalog', context: 'object_and_manager_and_predefined', path: treeItemPath,
treeItemId, current.$.name, children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
{
icon: 'catalog', break;
context: 'object_and_manager_and_predefined', case current.$.name.startsWith('Document.'):
path: treeItemPath, previous.document.push(GetTreeItem(
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) treeItemId, current.$.name, {
})); icon: 'document', context: 'object_and_manager', path: treeItemPath,
} else if (current.$.name.startsWith('Document.')) { children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
previous.document.push(GetTreeItem(
treeItemId, current.$.name, break;
{ case current.$.name.startsWith('DocumentJournal.'):
icon: 'document', previous.documentJournal.push(GetTreeItem(
context: 'object_and_manager', treeItemId, current.$.name, {
path: treeItemPath, icon: 'documentJournal', context: 'manager', path: treeItemPath,
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) children: FillDocumentJournalItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
}));
} else if (current.$.name.startsWith('DocumentJournal.')) { break;
previous.documentJournal.push(GetTreeItem( case current.$.name.startsWith('Enum.'):
treeItemId, current.$.name, previous.enum.push(GetTreeItem(
{ treeItemId, current.$.name, {
icon: 'documentJournal', icon: 'enum', context: 'manager', path: treeItemPath,
context: 'manager', children: FillEnumItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
path: treeItemPath,
children: FillDocumentJournalItemsByMetadata(element.id + '/', current, attributeReduceResult) break;
})); case current.$.name.startsWith('Report.'):
} if (current.$.name.startsWith('Enum.')) { previous.report.push(GetTreeItem(
previous.enum.push(GetTreeItem( treeItemId, current.$.name, {
treeItemId, current.$.name, icon: 'report', context: 'object_and_manager', path: treeItemPath,
{ children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
icon: 'enum',
context: 'manager', break;
path: treeItemPath, case current.$.name.startsWith('DataProcessor.'):
children: FillEnumItemsByMetadata(element.id + '/', current, attributeReduceResult) previous.dataProcessor.push(GetTreeItem(
})); treeItemId, current.$.name, {
} else if (current.$.name.startsWith('Report.')) { icon: 'dataProcessor', context: 'object_and_manager', path: treeItemPath,
previous.report.push(GetTreeItem( children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
treeItemId, current.$.name,
{ break;
icon: 'report', case current.$.name.startsWith('ChartOfCharacteristicTypes.'):
context: 'object_and_manager', previous.сhartOfCharacteristicTypes.push(GetTreeItem(
path: treeItemPath, treeItemId, current.$.name, {
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) icon: 'chartsOfCharacteristicType', context: 'object_and_manager_and_predefined', path: treeItemPath,
})); children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
} else if (current.$.name.startsWith('DataProcessor.')) {
previous.dataProcessor.push(GetTreeItem( break;
treeItemId, current.$.name, case current.$.name.startsWith('ChartOfAccounts.'):
{ previous.chartOfAccounts.push(GetTreeItem(
icon: 'dataProcessor', treeItemId, current.$.name, {
context: 'object_and_manager', icon: 'chartsOfAccount', context: 'object_and_manager_and_predefined', path: treeItemPath,
path: treeItemPath, children: FillChartOfAccountsItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult)
})); break;
} else if (current.$.name.startsWith('ChartOfCharacteristicTypes.')) { case current.$.name.startsWith('ChartOfCalculationTypes.'):
previous.сhartOfCharacteristicTypes.push(GetTreeItem( previous.chartOfCalculationTypes.push(GetTreeItem(
treeItemId, current.$.name, treeItemId, current.$.name, {
{ icon: 'chartsOfCalculationType', context: 'object_and_manager_and_predefined', path: treeItemPath,
icon: 'chartsOfCharacteristicType', children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
context: 'object_and_manager_and_predefined',
path: treeItemPath, break;
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) case current.$.name.startsWith('InformationRegister.'):
})); previous.informationRegister.push(GetTreeItem(
} else if (current.$.name.startsWith('ChartOfAccounts.')) { treeItemId, current.$.name, {
previous.chartOfAccounts.push(GetTreeItem( icon: 'informationRegister', context: 'recordset_and_manager', path: treeItemPath,
treeItemId, current.$.name, children: FillRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
{
icon: 'chartsOfAccount', break;
context: 'object_and_manager_and_predefined', case current.$.name.startsWith('AccumulationRegister.'):
path: treeItemPath, previous.accumulationRegister.push(GetTreeItem(
children: FillChartOfAccountsItemsByMetadata(element.id + '/', current, attributeReduceResult) treeItemId, current.$.name, {
})); icon: 'accumulationRegister', context: 'recordset_and_manager', path: treeItemPath,
} else if (current.$.name.startsWith('ChartOfCalculationTypes.')) { children: FillRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
previous.chartOfCalculationTypes.push(GetTreeItem(
treeItemId, current.$.name, break;
{ case current.$.name.startsWith('AccountingRegister.'):
icon: 'chartsOfCalculationType', previous.accountingRegister.push(GetTreeItem(
context: 'object_and_manager_and_predefined', treeItemId, current.$.name, {
path: treeItemPath, icon: 'accountingRegister', context: 'recordset_and_manager', path: treeItemPath,
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) children: FillRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
}));
} else if (current.$.name.startsWith('InformationRegister.')) { break;
previous.informationRegister.push(GetTreeItem( case current.$.name.startsWith('CalculationRegister.'):
treeItemId, current.$.name, previous.calculationRegister.push(GetTreeItem(
{ treeItemId, current.$.name, {
icon: 'informationRegister', icon: 'calculationRegister', context: 'recordset_and_manager', path: treeItemPath,
context: 'recordset_and_manager', children: FillCalculationRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
path: treeItemPath,
children: FillRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) break;
})); case current.$.name.startsWith('BusinessProcess.'):
} else if (current.$.name.startsWith('AccumulationRegister.')) { previous.businessProcess.push(GetTreeItem(
previous.accumulationRegister.push(GetTreeItem( treeItemId, current.$.name, {
treeItemId, current.$.name, icon: 'businessProcess', context: 'object_and_manager', path: treeItemPath,
{ children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
icon: 'accumulationRegister',
context: 'recordset_and_manager', break;
path: treeItemPath, case current.$.name.startsWith('Task.'):
children: FillRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) previous.task.push(GetTreeItem(
})); treeItemId, current.$.name, {
} else if (current.$.name.startsWith('AccountingRegister.')) { icon: 'task', context: 'object_and_manager', path: treeItemPath,
previous.accountingRegister.push(GetTreeItem( children: FillTaskItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
treeItemId, current.$.name,
{ break;
icon: 'accountingRegister', case current.$.name.startsWith('ExternalDataSource.'):
context: 'recordset_and_manager', previous.externalDataSource.push(GetTreeItem(
path: treeItemPath, treeItemId, current.$.name, {
children: FillRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult) icon: 'externalDataSource',
})); children: FillExternalDataSourceItemsByMetadata(element.id + '/', current, attributeReduceResult) }));
} else if (current.$.name.startsWith('CalculationRegister.')) {
previous.calculationRegister.push(GetTreeItem( break;
treeItemId, current.$.name, }
{
icon: 'calculationRegister',
context: 'recordset_and_manager',
path: treeItemPath,
children: FillCalculationRegisterItemsByMetadata(element.id + '/', current, attributeReduceResult)
}));
} else if (current.$.name.startsWith('BusinessProcess.')) {
previous.businessProcess.push(GetTreeItem(
treeItemId, current.$.name,
{
icon: 'businessProcess',
context: 'object_and_manager',
path: treeItemPath,
children: FillObjectItemsByMetadata(element.id + '/', current, attributeReduceResult)
}));
} else if (current.$.name.startsWith('Task.')) {
previous.task.push(GetTreeItem(
treeItemId, current.$.name,
{
icon: 'task',
context: 'object_and_manager',
path: treeItemPath,
children: FillTaskItemsByMetadata(element.id + '/', current, attributeReduceResult)
}));
} else if (current.$.name.startsWith('ExternalDataSource.')) {
previous.externalDataSource.push(GetTreeItem(
treeItemId, current.$.name,
{
icon: 'externalDataSource',
children: FillExternalDataSourceItemsByMetadata(element.id + '/', current, attributeReduceResult)
}));
}
return previous; return previous;
}, { }, {