* finish task #49013.

This commit is contained in:
tanghucheng
2022-02-14 13:17:56 +08:00
parent c7fab53ed1
commit 41e0b66473
5 changed files with 39 additions and 6 deletions

View File

@@ -26,6 +26,7 @@ $lang->task->exportAction = "导出卡片";
$lang->task->copy = '复制卡片';
$lang->task->waitTask = '未开始的卡片';
$lang->task->module = '所属目录';
$lang->task->common = '卡片';
$lang->task->name = '卡片名称';
$lang->task->type = '卡片类型';

View File

@@ -99,6 +99,7 @@ $lang->block->productName = $lang->productCommon . ' Name';
$lang->block->totalStory = 'The Total ' . $lang->SRCommon;
$lang->block->totalBug = 'The Total Bug';
$lang->block->totalRelease = 'Release The Number';
$lang->block->totalTask = 'The Total ' . $lang->task->common;
$lang->block->totalInvestment = 'Total investment';
$lang->block->totalPeople = 'Total number';

View File

@@ -99,6 +99,7 @@ $lang->block->productName = $lang->productCommon . '名称';
$lang->block->totalStory = '总' . $lang->SRCommon;
$lang->block->totalBug = '总Bug';
$lang->block->totalRelease = '发布次数';
$lang->block->totalTask = '总' . $lang->task->common;
$lang->block->totalInvestment = '总投入';
$lang->block->totalPeople = '总人数';

View File

@@ -10,6 +10,7 @@
* @link http://www.zentao.net
*/
?>
<?php $vision = $this->config->vision;?>
<?php if(empty($totalData)): ?>
<div class='empty-tip'><?php common::printLink('project', 'create', '', "<i class='icon-plus'></i> " . $lang->project->create, '', "class='btn btn-primary'")?></div>
<?php else:?>
@@ -22,7 +23,11 @@
<th></th>
<th><?php echo $lang->workingHour;?></th>
<th></th>
<?php if($vision == 'lite'): ?>
<th><?php echo $lang->block->taskCount;?></th>
<?php else:?>
<th><?php echo $lang->block->bugCount;?></th>
<?php endif;?>
<th></th>
</tr>
</thead>
@@ -34,8 +39,8 @@
<td><?php echo $totalData[$projectID]->teamCount ? html::a($this->createLink('project', 'team', 'projectID=' . $projectID), $totalData[$projectID]->teamCount) : 0;?></td>
<th><?php echo $lang->block->estimatedHours . ':';?></th>
<td><?php echo $totalData[$projectID]->estimate . $lang->execution->workHour;?></td>
<th><?php echo $lang->block->totalBug. ':';?></th>
<td><?php echo $totalData[$projectID]->allBugs;?></td>
<th><?php echo ($vision == 'lite' ? $lang->block->totalTask : $lang->block->totalBug) . ':';?></th>
<td><?php echo $vision == 'lite' ? $totalData[$projectID]->allTasks : $totalData[$projectID]->allBugs;?></td>
</tr>
<tr>
<th><?php echo $lang->block->done . ':';?></th>
@@ -44,8 +49,8 @@
<td></td>
<th><?php echo $lang->block->consumedHours . ':';?></th>
<td><?php echo $totalData[$projectID]->consumed . $lang->execution->workHour;?></td>
<th><?php echo $lang->bug->statusList['resolved'] . ':';?></th>
<td><?php echo $totalData[$projectID]->doneBugs;?></td>
<th><?php echo ($vision == 'lite' ? $lang->block->done : $lang->bug->statusList['resolved']) . ':';?></th>
<td><?php echo $vision == 'lite' ? $totalData[$projectID]->doneTasks : $totalData[$projectID]->doneBugs;?></td>
</tr>
<tr>
<th><?php echo $lang->block->left . ':';?></th>
@@ -54,8 +59,8 @@
<td></td>
<th></th>
<td></td>
<th><?php echo $lang->bug->unResolved . ':';?></th>
<td><?php echo $totalData[$projectID]->leftBugs;?></td>
<th><?php echo ($vision == 'lite' ? $lang->block->undone : $lang->bug->unResolved) . ':';?></th>
<td><?php echo $vision == 'lite' ? $totalData[$projectID]->leftTasks : $totalData[$projectID]->leftBugs;?></td>
</tr>
</tbody>

View File

@@ -310,6 +310,10 @@ class projectModel extends model
$allBugs = $this->getTotalBugByProject($projectIdList, 'all');
$doneBugs = $this->getTotalBugByProject($projectIdList, 'resolved');
$leftTasks = $this->getTotalTaskByProject($projectIdList, 'doing');
$allTasks = $this->getTotalTaskByProject($projectIdList, 'all');
$doneTasks = $this->getTotalTaskByProject($projectIdList, 'done');
foreach($projects as $projectID => $project)
{
$project->consumed = isset($hours[$projectID]) ? (float)$hours[$projectID]->consumed : 0;
@@ -322,6 +326,9 @@ class projectModel extends model
$project->allStories = $allStories[$projectID];
$project->doneStories = $doneStories[$projectID];
$project->leftStories = $leftStories[$projectID];
$project->leftTasks = isset($leftTasks[$projectID]) ? $leftTasks[$projectID] : 0;
$project->allTasks = isset($allTasks[$projectID]) ? $allTasks[$projectID] : 0;
$project->doneTasks = isset($doneTasks[$projectID]) ? $doneTasks[$projectID] : 0;
if(is_float($project->consumed)) $project->consumed = round($project->consumed, 1);
if(is_float($project->estimate)) $project->estimate = round($project->estimate, 1);
@@ -551,6 +558,24 @@ class projectModel extends model
->fetchPairs('project');
}
/**
* Get associated tasks by project.
*
* @param array $projectIdList
* @param string $status
* @access public
* @return array
*/
public function getTotalTaskByProject($projectIdList, $status)
{
return $this->dao->select('project, count(*) as tasks')->from(TABLE_TASK)
->where('project')->in($projectIdList)
->andWhere('deleted')->eq(0)
->beginIF($status != 'all')->andWhere('status')->eq($status)->fi()
->groupBy('project')
->fetchPairs('project');
}
/**
* Get branches by project id.
*