* @package ZenTaoPMS * @version $Id */ ?>

product->noProduct;?>

' data-preserve-nested='true' data-expand-nest-child='true'> config->URAndSR):?> product->getFlowExtendFields(); foreach($extendFields as $extendField) echo ""; ?> config->URAndSR):?> $program):?> $lineName) { if(!isset($program[$lineID])) { $program[$lineID] = array(); $program[$lineID]['product'] = ''; $program[$lineID]['lineName'] = $lineName; } } } ;?> systemMode == 'new'):?> > config->URAndSR):?> ";?> $line):?> config->systemMode == 'new' and $programID) { $trAttrs = "data-id='line.$lineID' data-parent='program.$programID'"; $trAttrs .= " data-nest-parent='program.$programID' data-nest-path='program.$programID,line.$lineID'" . "class='text-center'"; } else { $trAttrs = "data-id='line.$lineID' data-parent='0' data-nested='true'"; $trClass = 'is-top-level table-nest-child text-center'; $trAttrs .= " class='$trClass'"; } ?> > config->URAndSR):?> ";?> $product):?> stories['active'] + $product->stories['closed'] + $product->stories['draft'] + $product->stories['changing'] + $product->stories['reviewing']; $totalRequirements = $product->requirements['active'] + $product->requirements['closed'] + $product->requirements['draft'] + $product->requirements['changing'] + $product->requirements['reviewing']; $trClass = ''; if($product->line) { $path = "line.$product->line,$product->id"; if($this->config->systemMode == 'new' and $product->program) $path = "program.$product->program,$path"; $trAttrs = "data-id='$product->id' data-parent='line.$product->line'"; $trClass .= ' is-nest-child table-nest'; $trAttrs .= " data-nest-parent='line.$product->line' data-nest-path='$path'"; } elseif($product->program and $this->config->systemMode == 'new') { $trAttrs = "data-id='$product->id' data-parent='program.$product->program'"; $trClass .= ' is-nest-child table-nest'; $trAttrs .= " data-nest-parent='program.$product->program' data-nest-path='program.$product->program,$product->id'"; } else { $trAttrs = "data-id='$product->id' data-parent='0'"; $trClass .= ' no-nest'; } $trAttrs .= " class='$trClass'"; ?> > config->URAndSR):?> " . $this->loadModel('flow')->getFieldValue($extendField, $product) . "";?>
lang->selectAll}'>";?> product->name);?> story->requirement;?> story->story;?> bug->common;?> product->plan;?> product->release;?> {$extendField->name}actions;?>
story->draft;?> story->activate;?> story->change;?> story->statusList['reviewing'];?>
story->completeRate;?>
story->draft;?> story->activate;?> story->change;?> story->statusList['reviewing'];?>
story->completeRate;?>
bug->activate;?> close;?> bug->fixedRate;?>
% % %
% % %
id => ''));?> createLink('product', 'browse', 'productID=' . $product->id), $product->name); echo "" . $productLink; ?> requirements['draft'];?> requirements['active'];?> requirements['changing'];?> requirements['reviewing'];?> requirements['closed'] / $totalRequirements, 3) * 100;?>% stories['draft'];?> stories['active'];?> stories['changing'];?> stories['reviewing'];?> stories['closed'] / $totalStories, 3) * 100;?>% unResolved;?> closedBugs;?> unResolved + $product->fixedBugs) == 0 ? 0 : round($product->fixedBugs / ($product->unResolved + $product->fixedBugs), 3) * 100;?>% plans;?> releases;?> product->buildOperateMenu($product, 'browse');?>
product->checkedProducts);?> app->getClientLang());?>