* @package xxx * @link https://www.zentao.net */ class executionZen extends execution { /** * 处理版本列表展示数据。 * Process build list display data. * * @param array $buildList * @param string $executionID * @access protected * @return object[] */ protected function processBuildListData(array $buildList, int $executionID = 0): array { $this->loadModel('build'); $productIdList = array(); foreach($buildList as $build) $productIdList[$build->product] = $build->product; /* Get branch name. */ $showBranch = false; $branchGroups = $this->loadModel('branch')->getByProducts($productIdList); foreach($buildList as $build) { $build->branchName = ''; if(isset($branchGroups[$build->product])) { $showBranch = true; $branchPairs = $branchGroups[$build->product]; foreach(explode(',', trim($build->branch, ',')) as $branchID) { if(isset($branchPairs[$branchID])) $build->branchName .= "{$branchPairs[$branchID]},"; } $build->branchName = trim($build->branchName, ','); } $build->actions = $this->build->buildActionList($build, $executionID, 'execution'); } if(!$showBranch) unset($this->config->build->dtable->fieldList['branch']); unset($this->config->build->dtable->fieldList['execution']); return array_values($buildList); } }