рабочая версия с кодами dm/pm

This commit is contained in:
krivoshein
2024-11-27 16:19:01 +03:00
parent fbd2eadfa3
commit 9c0fae5df9
3 changed files with 52 additions and 68 deletions

View File

@@ -62,7 +62,7 @@ void DocTasksWidget::on_treeWidget_currentItemChanged(QTreeWidgetItem *current,
}
}
void DocTasksWidget::DomElementParser(QDomElement element, Module* moduleParent)
void DocTasksWidget::domElementParser(QDomElement element, Module* moduleParent)
{
QString name;
@@ -80,16 +80,13 @@ void DocTasksWidget::DomElementParser(QDomElement element, Module* moduleParent)
if(name == "pm")
{
QString modelIdentCode = nodeMap.namedItem("modelIdentCode").nodeValue();
QString pmIssuer = nodeMap.namedItem("pmIssuer").nodeValue();
QString pmNumber = nodeMap.namedItem("pmNumber").nodeValue();
QString pmVolume = nodeMap.namedItem("pmVolume").nodeValue();
module = new PM();
PM* PMmodul = static_cast<PM*>(module);
PMmodul->initialize(modelIdentCode, pmIssuer, pmNumber, pmVolume);
PMmodul->initialize(nodeMap.namedItem("modelIdentCode").nodeValue(),
nodeMap.namedItem("pmIssuer").nodeValue(),
nodeMap.namedItem("pmNumber").nodeValue(),
nodeMap.namedItem("pmVolume").nodeValue());
if(moduleParent)
{
@@ -101,33 +98,20 @@ void DocTasksWidget::DomElementParser(QDomElement element, Module* moduleParent)
}
else if(name == "dm")
{
QString modelIdentCode = nodeMap.namedItem("modelIdentCode").nodeValue();
QString systemDiffCode = nodeMap.namedItem("systemDiffCode").nodeValue();
QString systemCode = nodeMap.namedItem("systemCode").nodeValue();
QString subSystemCode = nodeMap.namedItem("subSystemCode").nodeValue();
QString subSubSystemCode = nodeMap.namedItem("subSubSystemCode").nodeValue();
QString assyCode = nodeMap.namedItem("assyCode").nodeValue();
QString disassyCode = nodeMap.namedItem("disassyCode").nodeValue();
QString disassyCodeVariant = nodeMap.namedItem("disassyCodeVariant").nodeValue();
QString infoCode = nodeMap.namedItem("infoCode").nodeValue();
QString infoCodeVariant = nodeMap.namedItem("infoCodeVariant").nodeValue();
QString itemLocationCode = nodeMap.namedItem("itemLocationCode").nodeValue();
module = new DM();
DM* DMmodul = static_cast<DM*>(module);
DMmodul->initialize(modelIdentCode,
systemDiffCode,
systemCode,
subSystemCode,
subSubSystemCode,
assyCode,
disassyCode,
disassyCodeVariant,
infoCode,
infoCodeVariant,
itemLocationCode);
DMmodul->initialize(nodeMap.namedItem("modelIdentCode").nodeValue(),
nodeMap.namedItem("systemDiffCode").nodeValue(),
nodeMap.namedItem("systemCode").nodeValue(),
nodeMap.namedItem("subSystemCode").nodeValue(),
nodeMap.namedItem("subSubSystemCode").nodeValue(),
nodeMap.namedItem("assyCode").nodeValue(),
nodeMap.namedItem("disassyCode").nodeValue(),
nodeMap.namedItem("disassyCodeVariant").nodeValue(),
nodeMap.namedItem("infoCode").nodeValue(),
nodeMap.namedItem("infoCodeVariant").nodeValue(),
nodeMap.namedItem("itemLocationCode").nodeValue());
if(moduleParent)
{
@@ -143,35 +127,35 @@ void DocTasksWidget::DomElementParser(QDomElement element, Module* moduleParent)
{
if(moduleParent->getType() == ModuleType::TYPE_PM)
{//PM
QString title = nodeMap.namedItem("title").nodeValue();
PM* PMmodulParent = static_cast<PM*>(moduleParent);
if(name == "rus")
PMmodulParent->setLangStructRus(title);
PMmodulParent->setLangStructRus(nodeMap.namedItem("title").nodeValue());
else
PMmodulParent->setLangStructEng(title);
PMmodulParent->setLangStructEng(nodeMap.namedItem("title").nodeValue());
}
else
{//DM
QString techName = nodeMap.namedItem("techName").nodeValue();
QString infoName = nodeMap.namedItem("infoName").nodeValue();
QString pdf = nodeMap.namedItem("pdf").nodeValue();
QString bookmark = nodeMap.namedItem("bookmark").nodeValue();
QString xml = nodeMap.namedItem("xml").nodeValue();
DM* DMmodulParent = static_cast<DM*>(moduleParent);
if(name == "rus")
DMmodulParent->setLangStructRus(techName, infoName, pdf, bookmark, xml);
DMmodulParent->setLangStructRus(nodeMap.namedItem("techName").nodeValue(),
nodeMap.namedItem("infoName").nodeValue(),
nodeMap.namedItem("pdf").nodeValue(),
nodeMap.namedItem("bookmark").nodeValue(),
nodeMap.namedItem("xml").nodeValue());
else
DMmodulParent->setLangStructEng(techName, infoName, pdf, bookmark, xml);
DMmodulParent->setLangStructEng(nodeMap.namedItem("techName").nodeValue(),
nodeMap.namedItem("infoName").nodeValue(),
nodeMap.namedItem("pdf").nodeValue(),
nodeMap.namedItem("bookmark").nodeValue(),
nodeMap.namedItem("xml").nodeValue());
}
}
}
DomElementParser(childElement, module);
domElementParser(childElement, module);
if(moduleParent == nullptr)
listAllModules.append(module);
@@ -198,9 +182,9 @@ void DocTasksWidget::loadDocTasksFromXML()
if(manifestElement.isNull())
return;
deleteAllModuls();
//deleteAllModuls();
DomElementParser(manifestElement, nullptr);
domElementParser(manifestElement, nullptr);
}
}
@@ -241,7 +225,7 @@ void DocTasksWidget::preparationTreeWidget()
"font-family: Tahoma;"));
treeWidget->setColumnWidth(ColumnsTree::clmn_ID, 80);
treeWidget->setColumnWidth(ColumnsTree::clmn_PMorDM, 800);
treeWidget->setColumnWidth(ColumnsTree::clmn_PMorDM, 900);
//treeWidget->setColumnHidden(ColumnsTree::clmn_ID, true);
}
@@ -259,11 +243,11 @@ void DocTasksWidget::updateTreeWidget()
for(Module* module : listAllModules)
{
addModulToTreeWidget(module);
addModuleToTreeWidget(module);
}
}
void DocTasksWidget::addModulToTreeWidget(Module *module, QTreeWidgetItem* parentItem)
void DocTasksWidget::addModuleToTreeWidget(Module *module, QTreeWidgetItem* parentItem)
{
QTreeWidgetItem* itemModule = nullptr;
@@ -287,7 +271,7 @@ void DocTasksWidget::addModulToTreeWidget(Module *module, QTreeWidgetItem* paren
for(Module* module : PMmodul->getListChildModules())
{
addModulToTreeWidget(module, itemModule);
addModuleToTreeWidget(module, itemModule);
}
}
else