* Finish task #43909.
This commit is contained in:
+19
-18
@@ -296,25 +296,25 @@ class reportModel extends model
|
||||
->andWhere("t1.account NOT IN(SELECT `assignedTo` FROM " . TABLE_TASK . " WHERE `execution` = t1.`root` AND `status` NOT IN('cancel, closed, done, pause') AND assignedTo != '' GROUP BY assignedTo)")
|
||||
->fetchGroup('account', 'name');
|
||||
|
||||
$workload = array();
|
||||
$workload = array();
|
||||
if(!empty($members))
|
||||
{
|
||||
foreach($members as $member => $executions)
|
||||
{
|
||||
$project = array();
|
||||
if(!empty($executions))
|
||||
{
|
||||
foreach($executions as $name => $execution)
|
||||
{
|
||||
$workload[$member]['task']['project'][$execution->projectname]['project'] = $execution->projectname;
|
||||
$workload[$member]['task']['project'][$execution->projectname]['projectID'] = $execution->project;
|
||||
$workload[$member]['task']['project'][$execution->projectname]['execution'][$name]['name'] = $name;
|
||||
$workload[$member]['task']['project'][$execution->projectname]['execution'][$name]['executionID'] = $execution->root;
|
||||
$workload[$member]['task']['project'][$execution->projectname]['execution'][$name]['count'] = 0;
|
||||
$workload[$member]['task']['project'][$execution->projectname]['execution'][$name]['manhour'] = 0;
|
||||
$workload[$member]['total']['count'] = 0;
|
||||
$workload[$member]['total']['manhour'] = 0;
|
||||
$project[$execution->projectname]['projectID'] = $execution->project;
|
||||
$project[$execution->projectname]['execution'][$name]['executionID'] = $execution->root;
|
||||
$project[$execution->projectname]['execution'][$name]['count'] = 0;
|
||||
$project[$execution->projectname]['execution'][$name]['manhour'] = 0;
|
||||
$workload[$member]['total']['count'] = 0;
|
||||
$workload[$member]['total']['manhour'] = 0;
|
||||
}
|
||||
}
|
||||
$workload[$member]['task']['project'] = $project;
|
||||
}
|
||||
}
|
||||
return $workload;
|
||||
@@ -376,20 +376,21 @@ class reportModel extends model
|
||||
{
|
||||
if($user)
|
||||
{
|
||||
$project = array();
|
||||
foreach($userTasks as $task)
|
||||
{
|
||||
if(isset($parents[$task->id])) continue;
|
||||
$workload[$user]['task']['project'][$task->projectname]['projectID'] = isset($workload[$user]['task']['project'][$task->projectname]['projectID']) ? $workload[$user]['task']['project'][$task->projectname]['projectID'] : $task->project;
|
||||
$workload[$user]['task']['project'][$task->projectname]['project'] = isset($workload[$user]['task']['project'][$task->projectname]['project']) ? $workload[$user]['task']['project'][$task->projectname]['project'] : $task->projectname;
|
||||
$workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['count'] = isset($workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['count']) ? $workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['count'] + 1 : 1;
|
||||
$workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['manhour'] = isset($workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['manhour']) ? $workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['manhour'] + $task->left : $task->left;
|
||||
$workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['executionID'] = $task->execution;
|
||||
$workload[$user]['task']['project'][$task->projectname]['execution'][$task->executionName]['name'] = $task->executionName;
|
||||
$workload[$user]['total']['count'] = isset($workload[$user]['total']['count']) ? $workload[$user]['total']['count'] + 1 : 1;
|
||||
$workload[$user]['total']['manhour'] = isset($workload[$user]['total']['manhour']) ? $workload[$user]['total']['manhour'] + $task->left : $task->left;
|
||||
|
||||
$project[$task->projectname]['projectID'] = isset($project[$task->projectname]['projectID']) ? $project[$task->projectname]['projectID'] : $task->project;
|
||||
$project[$task->projectname]['execution'][$task->executionName]['executionID'] = isset($project[$task->projectname]['execution'][$task->executionName]['executionID']) ? $project[$task->projectname]['execution'][$task->executionName]['executionID'] : $task->execution;
|
||||
$project[$task->projectname]['execution'][$task->executionName]['count'] = isset($project[$task->projectname]['execution'][$task->executionName]['count']) ? $project[$task->projectname]['execution'][$task->executionName]['count'] + 1 : 1;
|
||||
$project[$task->projectname]['execution'][$task->executionName]['manhour'] = isset($project[$task->projectname]['execution'][$task->executionName]['manhour']) ? $project[$task->projectname]['execution'][$task->executionName]['manhour'] + $task->left : $task->left;
|
||||
$workload[$user]['total']['count'] = isset($workload[$user]['total']['count']) ? $workload[$user]['total']['count'] + 1 : 1;
|
||||
$workload[$user]['total']['manhour'] = isset($workload[$user]['total']['manhour']) ? $workload[$user]['total']['manhour'] + $task->left : $task->left;
|
||||
}
|
||||
$workload[$user]['task']['project'] = $project;
|
||||
}
|
||||
}
|
||||
}
|
||||
unset($workload['closed']);
|
||||
return $workload;
|
||||
}
|
||||
|
||||
@@ -82,38 +82,32 @@
|
||||
<tbody>
|
||||
<?php $color = false;?>
|
||||
<?php foreach($workload as $account => $load):?>
|
||||
<?php if(!isset($users[$account])) continue;?>
|
||||
<tr class="text-center">
|
||||
<?php $idusername = 1; $countusername = 0;?>
|
||||
<?php foreach($load['task']['project'] as $project => $info):?>
|
||||
<?php foreach($info['execution'] as $exec => $execinfo):?>
|
||||
<?php $countusername ++ ;?>
|
||||
<?php endforeach;?>
|
||||
<?php endforeach;?>
|
||||
<td class="<?php echo $class;?>" rowspan="<?php echo $countusername;?>"><?php echo $users[$account];?></td>
|
||||
<?php foreach($load['task']['project'] as $project => $info):?>
|
||||
<?php $idprojectname = 1; $countprojectname = 0;?>
|
||||
<?php foreach($info['execution'] as $exec):?>
|
||||
<?php $countprojectname ++ ;?>
|
||||
<?php endforeach;?>
|
||||
<?php foreach($info['execution'] as $exec => $execinfo):?>
|
||||
<?php if($idprojectname != 1 || $idusername != 1) echo "<tr>";?>
|
||||
<?php if($idprojectname == 1):?>
|
||||
<td class="text-center" rowspan="<?php echo $countprojectname;?>"><?php echo html::a($this->createLink('project', 'view', "projectID={$info['projectID']}"), $info['project']);?></td>
|
||||
<?php endif;?>
|
||||
<td class="text-center"><?php echo html::a($this->createLink('execution', 'view', "executionID={$execinfo['executionID']}"), $execinfo['name']);?></td>
|
||||
<td class="text-center"><?php echo $execinfo['count'];?></td>
|
||||
<td class="text-center"><?php echo $execinfo['manhour'];?></td>
|
||||
<?php if($idusername == 1):?>
|
||||
<td rowspan="<?php echo $countusername;?>"><?php echo $load['total']['count'];?></td>
|
||||
<td rowspan="<?php echo $countusername;?>"><?php echo $load['total']['manhour'];?></td>
|
||||
<td rowspan="<?php echo $countusername;?>"><?php echo round($load['total']['manhour'] / $allHour * 100, 2) . '%';?></td>
|
||||
<?php endif;?>
|
||||
<?php if($idprojectname != 1 || $idusername != 1) echo "</tr>"; $idprojectname ++; $idusername ++;?>
|
||||
<?php $color = !$color;?>
|
||||
<?php endforeach;?>
|
||||
<?php endforeach;?>
|
||||
</tr>
|
||||
<?php if(!isset($users[$account])) continue;?>
|
||||
<tr class="text-center">
|
||||
<?php $idusername = 1; $countusername = 0;?>
|
||||
<?php foreach($load['task']['project'] as $project => $info) foreach($info['execution'] as $exec => $execinfo) $countusername ++;?>
|
||||
<td class="<?php echo $class;?>" rowspan="<?php echo $countusername;?>"><?php echo $users[$account];?></td>
|
||||
<?php foreach($load['task']['project'] as $project => $info):?>
|
||||
<?php $idprojectname = 1; $countprojectname = 0;?>
|
||||
<?php foreach($info['execution'] as $exec) $countprojectname ++ ;?>
|
||||
<?php foreach($info['execution'] as $exec => $execinfo):?>
|
||||
<?php if($idprojectname != 1 || $idusername != 1) echo "<tr>";?>
|
||||
<?php if($idprojectname == 1):?>
|
||||
<td class="text-center" rowspan="<?php echo $countprojectname;?>"><?php echo html::a($this->createLink('project', 'view', "projectID={$info['projectID']}"), $project);?></td>
|
||||
<?php endif;?>
|
||||
<td class="text-center"><?php echo html::a($this->createLink('execution', 'view', "executionID={$execinfo['executionID']}"), $exec);?></td>
|
||||
<td class="text-center"><?php echo $execinfo['count'];?></td>
|
||||
<td class="text-center"><?php echo $execinfo['manhour'];?></td>
|
||||
<?php if($idusername == 1):?>
|
||||
<td rowspan="<?php echo $countusername;?>"><?php echo $load['total']['count'];?></td>
|
||||
<td rowspan="<?php echo $countusername;?>"><?php echo $load['total']['manhour'];?></td>
|
||||
<td rowspan="<?php echo $countusername;?>"><?php echo round($load['total']['manhour'] / $allHour * 100, 2) . '%';?></td>
|
||||
<?php endif;?>
|
||||
<?php if($idprojectname != 1 || $idusername != 1) echo "</tr>"; $idprojectname ++; $idusername ++;?>
|
||||
<?php $color = !$color;?>
|
||||
<?php endforeach;?>
|
||||
<?php endforeach;?>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
Reference in New Issue
Block a user