|
@@ -109,39 +109,51 @@ void SchemeFlowWidget::setType(int t)
|
|
|
refresh();
|
|
|
}
|
|
|
|
|
|
-QList<SchemePlanManager::SchemeProcessType> SchemeFlowWidget::schemeTemplate(int indexType)
|
|
|
+QList<SchemePlanManager::SchemeProcessInfo> SchemeFlowWidget::schemeTemplate(int projId, int indexType)
|
|
|
{
|
|
|
/// 方案流程模板
|
|
|
- QList<SchemePlanManager::SchemeProcessType> scheme;
|
|
|
+
|
|
|
+ QList<SchemePlanManager::SchemeProcessType> types;
|
|
|
switch (indexType) {
|
|
|
case ProjectManager::AbilityIndex: {
|
|
|
- scheme = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportWeightData,
|
|
|
- SchemePlanManager::OptimizeIndex, SchemePlanManager::CalculateWeight,
|
|
|
- SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
+ types = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportWeightData,
|
|
|
+ SchemePlanManager::OptimizeIndex, SchemePlanManager::CalculateWeight,
|
|
|
+ SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
+ // types = { SchemePlanManager::IndexSystem };
|
|
|
break;
|
|
|
}
|
|
|
case ProjectManager::TechIndex: {
|
|
|
- scheme = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportEvalData, SchemePlanManager::RunEvaluate,
|
|
|
- SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
+ types = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportEvalData, SchemePlanManager::RunEvaluate,
|
|
|
+ SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
break;
|
|
|
}
|
|
|
case ProjectManager::OptimalIndex: {
|
|
|
- scheme = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportWeightData,
|
|
|
- SchemePlanManager::OptimizeIndex, SchemePlanManager::CalculateWeight,
|
|
|
- SchemePlanManager::ImportEvalData, SchemePlanManager::RunEvaluate,
|
|
|
- SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
+ types = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportWeightData,
|
|
|
+ SchemePlanManager::OptimizeIndex, SchemePlanManager::CalculateWeight,
|
|
|
+ SchemePlanManager::ImportEvalData, SchemePlanManager::RunEvaluate,
|
|
|
+ SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
break;
|
|
|
}
|
|
|
case ProjectManager::EfficiencyIndex: {
|
|
|
- scheme = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportWeightData,
|
|
|
- SchemePlanManager::OptimizeIndex, SchemePlanManager::CalculateWeight,
|
|
|
- SchemePlanManager::ImportEvalData, SchemePlanManager::RunEvaluate,
|
|
|
- SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
+ types = { SchemePlanManager::IndexSystem, SchemePlanManager::ImportWeightData,
|
|
|
+ SchemePlanManager::OptimizeIndex, SchemePlanManager::CalculateWeight,
|
|
|
+ SchemePlanManager::ImportEvalData, SchemePlanManager::RunEvaluate,
|
|
|
+ SchemePlanManager::ShowEvalResult, SchemePlanManager::GenerateReport };
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- return scheme;
|
|
|
+ QList<SchemePlanManager::SchemeProcessInfo> schemes;
|
|
|
+ for (int i = 0; i < types.count(); i++) {
|
|
|
+ SchemePlanManager::SchemeProcessInfo process;
|
|
|
+ process.projectId = projId;
|
|
|
+ process.indexType = indexType;
|
|
|
+ process.type = types[i];
|
|
|
+ process.step = i;
|
|
|
+ schemes.append(process);
|
|
|
+ }
|
|
|
+
|
|
|
+ return schemes;
|
|
|
}
|
|
|
|
|
|
void SchemeFlowWidget::initWidget()
|
|
@@ -173,17 +185,13 @@ void SchemeFlowWidget::refresh()
|
|
|
int space = 50; // 流程图节点间距
|
|
|
NodeId lastId = -1;
|
|
|
|
|
|
- QList<SchemePlanManager::SchemeProcessType> scheme = schemeTemplate(m_indexType);
|
|
|
+ QList<SchemePlanManager::SchemeProcessInfo> scheme = schemeTemplate(m_proj->id, m_indexType);
|
|
|
for (int i = 0; i < scheme.count(); i++) {
|
|
|
NodeId id = m_graphModel->addNode(FlowCommonData().type().id);
|
|
|
m_graphModel->setNodeData(id, NodeRole::Position, QPointF(0, y));
|
|
|
FlowGraphCommonNodeWidget *w = new FlowGraphCommonNodeWidget();
|
|
|
connect(w, &FlowGraphCommonNodeWidget::sigProcessChanged, this, &SchemeFlowWidget::slotSchemeProcessEdited);
|
|
|
- SchemePlanManager::SchemeProcessInfo process;
|
|
|
- process.projectId = m_proj->id;
|
|
|
- process.indexType = m_indexType;
|
|
|
- process.type = scheme[i];
|
|
|
- process.step = i;
|
|
|
+ SchemePlanManager::SchemeProcessInfo process = scheme[i];
|
|
|
w->setProcess(process);
|
|
|
if (w->isTitleHidden()) {
|
|
|
m_graphModel->setNodeData(id, NodeRole::Caption, SchemePlanManager::processName(process));
|