* [upgrade] upgrade project workflowgroup.

This commit is contained in:
sunguangming
2025-09-22 03:03:59 +00:00
parent c636cd47f1
commit c063f0aa8d
3 changed files with 31 additions and 2 deletions
+1 -1
View File
@@ -112,7 +112,7 @@ $config->upgrade->execFlow['21_6_beta'] = array('functions' => 'processCharter
$config->upgrade->execFlow['21_6_1'] = array('xxsqls' => "$appRoot/db/upgradexuanxuan9.1.2.sql");
$config->upgrade->execFlow['21_7'] = array('functions' => 'fixWorkflowNameForExecution');
$config->upgrade->execFlow['21_7_1'] = array('functions' => 'convertCharset,processActionProduct');
$config->upgrade->execFlow['21_7_3'] = array('functions' => 'upgradeProcessAndActivity,addDefaultDeliverableModule,upgradeDesignToDeliverable,buildinTestcaseStageDeliverable,upgradeDeliverable,buildinBaselineReview,upgradeReviewclCategory,upgradeBaselineObjects,upgradeReviewToDeliverable');
$config->upgrade->execFlow['21_7_3'] = array('functions' => 'upgradeProcessAndActivity,addDefaultDeliverableModule,upgradeDesignToDeliverable,buildinTestcaseStageDeliverable,upgradeDeliverable,buildinBaselineReview,upgradeReviewclCategory,upgradeBaselineObjects,upgradeReviewToDeliverable,modifyProjectWorkflowGroup');
if(!empty($config->isINT))
{
+29
View File
@@ -12046,6 +12046,7 @@ class upgradeModel extends model
$nameFilter = array();
$deliverable->workflowGroup = $groupID;
$deliverable->activity = $otherActivityID;
foreach(array_filter($objectList) as $key => $value)
{
if(empty($value)) continue;
@@ -12233,4 +12234,32 @@ class upgradeModel extends model
$this->dao->exec('ALTER TABLE ' . TABLE_REVIEW . ' DROP `doc`');
}
/**
* 之前IPD、融合瀑布使用的是瀑布项目流程,融合敏捷使用的是敏捷项目流程。现在统一使用自己的项目流程。
* Before IPD, fusion waterfall uses the waterfall project workflow, and fusion agile uses the agile project workflow. Now use the own project workflow.
*
* @access public
* @return void
*/
public function modifyProjectWorkflowGroup()
{
$workflows = $this->dao->select('id,code,projectModel')->from(TABLE_WORKFLOWGROUP)->where('projectModel')->in('ipd,waterfallplus,agileplus')->andWhere('main')->eq('1')->fetchAll();
foreach($workflows as $workflow)
{
$hasProduct = strpos($workflow->code, 'product') !== false ? '1' : '0';
if($workflow->projectModel == 'ipd')
{
$category = $hasProduct ? str_replace('product', '', $workflow->code) : str_replace('project', '', $workflow->code);
$category = strtoupper($category);
$this->dao->update(TABLE_PROJECT)->set('workflowGroup')->eq($workflow->id)->where('model')->eq($workflow->projectModel)->andWhere('category')->eq($category)->andWhere('hasProduct')->eq($hasProduct)->exec();
}
else
{
$this->dao->update(TABLE_PROJECT)->set('workflowGroup')->eq($workflow->id)->where('model')->eq($workflow->projectModel)->andWhere('hasProduct')->eq($hasProduct)->exec();
}
}
}
}
+1 -1
View File
@@ -911,7 +911,7 @@ class upgradeTao extends upgradeModel
protected function getWorkflowGroupForProcess()
{
return $this->dao->select('id,projectModel,projectType,main')->from(TABLE_WORKFLOWGROUP)
->where('projectModel')->in('scrum,waterfall,agileplus,waterfallplus')
->where('projectModel')->in('scrum,waterfall,agileplus,waterfallplus,ipd')
->andWhere('deleted')->eq('0')
->fetchAll('id');
}