рабочая версия с кодами 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

View File

@@ -28,7 +28,7 @@ private Q_SLOTS:
void on_treeWidget_currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous);
private:
void DomElementParser(QDomElement element, Module* moduleParent);
void domElementParser(QDomElement element, Module* moduleParent);
void loadDocTasksFromXML();
void deleteAllModuls();
Module* searchModuleByID(int id);
@@ -36,7 +36,7 @@ private:
void preparationTreeWidget();
void reSetHeadTreeWidget();
void updateTreeWidget();
void addModulToTreeWidget(Module* module, QTreeWidgetItem* parentItem = nullptr);
void addModuleToTreeWidget(Module* module, QTreeWidgetItem* parentItem = nullptr);
private:
Ui::DocTasksWidget *ui;

View File

@@ -41,10 +41,10 @@ Module *Module::getModuleByID(int id)
PM::PM():
modelIdentCode (""),
pmIssuer (""),
pmNumber (""),
pmVolume ("")
modelIdentCode (),
pmIssuer (),
pmNumber (),
pmVolume ()
{
type = ModuleType::TYPE_PM;
@@ -105,17 +105,17 @@ QString PM::pmCode()
DM::DM():
modelIdentCode (""),
systemDiffCode (""),
systemCode (""),
subSystemCode (""),
subSubSystemCode (""),
assyCode (""),
disassyCode (""),
disassyCodeVariant (""),
infoCode (""),
infoCodeVariant (""),
itemLocationCode ("")
modelIdentCode (),
systemDiffCode (),
systemCode (),
subSystemCode (),
subSubSystemCode (),
assyCode (),
disassyCode (),
disassyCodeVariant (),
infoCode (),
infoCodeVariant (),
itemLocationCode ()
{
type = ModuleType::TYPE_DM;