From f86d2bb8ebe058fd488d415a33cc35d45d2d7384 Mon Sep 17 00:00:00 2001 From: wangchunsheng Date: Tue, 29 Nov 2011 13:24:10 +0000 Subject: [PATCH] * task#622. --- module/project/control.php | 9 +++++---- module/project/css/grouptask.css | 1 + module/project/lang/en.php | 7 ++++--- module/project/lang/zh-cn.php | 3 ++- module/project/model.php | 5 +++-- module/project/view/grouptask.html.php | 7 ++++++- module/project/view/view.html.php | 2 +- 7 files changed, 22 insertions(+), 12 deletions(-) create mode 100644 module/project/css/grouptask.css diff --git a/module/project/control.php b/module/project/control.php index 54fe93f370..dad9ed438a 100644 --- a/module/project/control.php +++ b/module/project/control.php @@ -214,13 +214,13 @@ class project extends control $users = $this->loadModel('user')->getPairs('noletter'); foreach($tasks as $task) { - if($groupBy == 'story') - { + if($groupBy == '') + { $groupTasks[$task->story][] = $task; $groupByList[$task->story] = $task->storyTitle; } - elseif($groupBy == '') - { + elseif($groupBy == 'story') + { $groupTasks[$task->story][] = $task; $groupByList[$task->story] = $task->storyTitle; } @@ -255,6 +255,7 @@ class project extends control } /* Assign. */ + $this->view->members = $this->project->getTeamMembers($projectID); $this->view->tasks = $groupTasks; $this->view->tabID = 'task'; $this->view->groupByList = $groupByList; diff --git a/module/project/css/grouptask.css b/module/project/css/grouptask.css new file mode 100644 index 0000000000..9988dddd2f --- /dev/null +++ b/module/project/css/grouptask.css @@ -0,0 +1 @@ +.groupdivider{border-bottom:1px solid black} diff --git a/module/project/lang/en.php b/module/project/lang/en.php index 8fedd00fb6..e3e7545fab 100644 --- a/module/project/lang/en.php +++ b/module/project/lang/en.php @@ -103,7 +103,7 @@ $lang->project->statusDoing = 'Doing'; $lang->project->statusDone = 'Done'; $lang->project->statusClosed = 'Closed'; $lang->project->delayed = 'Delayed'; -$lang->project->groups[''] = 'Group by view'; +$lang->project->groups[''] = 'Group View'; $lang->project->groups['story'] = 'Group by story'; $lang->project->groups['status'] = 'Group by status'; $lang->project->groups['pri'] = 'Group by priority'; @@ -126,10 +126,11 @@ $lang->project->allProject = 'All projects'; $lang->project->selectProject = "Select project"; $lang->project->beginAndEnd = 'Begin and end'; $lang->project->lblStats = 'Stats'; -$lang->project->stats = 'Total estimate is『%s』hours,
confused『%s』hours
left『%s』hours'; +$lang->project->stats = 'Total work hours is 『%s』hours,
Total estimate is『%s』hours,
Total confused is『%s』hours
Total left is『%s』hours'; $lang->project->oneLineStats = "Project『%s』, code is『%s』, products is『%s』,begin from『%s』to 『%s』,total estimate『%s』hours,consumed『%s』hours,left『%s』hours."; $lang->project->taskSummary = "%s tasks this page, wait:%s, doing:%s, estimate %s, consumed %s, left %s hours."; -$lang->project->groupSummary = "%s tasks this group, wait:%s, doing:%s, estimate %s, consumed %s, left %s hours."; +$lang->project->groupSummary = "%s tasks in this group, wait:%s, doing:%s, estimate %s, consumed %s, left %s hours."; +$lang->project->memberHours = "%s has %s workhours, "; $lang->project->wbs = "WBS"; $lang->project->largeBurnChart = 'View large'; $lang->project->howToUpdateBurn = "How?"; diff --git a/module/project/lang/zh-cn.php b/module/project/lang/zh-cn.php index 20d367a7f2..30f81d2f73 100644 --- a/module/project/lang/zh-cn.php +++ b/module/project/lang/zh-cn.php @@ -126,9 +126,10 @@ $lang->project->allProject = '所有项目'; $lang->project->selectProject = "请选择项目"; $lang->project->beginAndEnd = '起止时间'; $lang->project->lblStats = '工时统计'; -$lang->project->stats = '总共预计%s工时
已经消耗%s工时
预计剩余%s工时'; +$lang->project->stats = '可用工时%s工时
总共预计%s工时
已经消耗%s工时
预计剩余%s工时'; $lang->project->oneLineStats = "项目%s, 代号为%s, 相关产品为%s%s开始,%s结束,总预计%s工时,已消耗%s工时,预计剩余%s工时。"; $lang->project->taskSummary = "本页共 %s 个任务,未开始%s,进行中%s,总预计%s工时,已消耗%s工时,剩余%s工时。"; +$lang->project->memberHours = "%s共有 %s 个可用工时,"; $lang->project->groupSummary = "本组共 %s 个任务,未开始%s,进行中%s,总预计%s工时,已消耗%s工时,剩余%s工时。"; $lang->project->wbs = "分解任务"; $lang->project->largeBurnChart = '点击查看大图'; diff --git a/module/project/model.php b/module/project/model.php index cf6c27c94c..1f97e79cd1 100644 --- a/module/project/model.php +++ b/module/project/model.php @@ -423,6 +423,7 @@ class projectModel extends model ->andWhere('deleted')->eq(0) ->fetch(); $project->days = $project->days ? $project->days : ''; + $project->totalHours = $this->dao->select('sum(days * hours) AS totalHours')->from(TABLE_TEAM)->where('project')->eq($project->id)->fetch('totalHours'); $project->totalEstimate = round($total->totalEstimate, 1); $project->totalConsumed = round($total->totalConsumed, 1); $project->totalLeft = round($total->totalLeft, 1); @@ -735,11 +736,11 @@ class projectModel extends model */ public function getTeamMembers($projectID) { - return $this->dao->select('t1.*, t2.realname')->from(TABLE_TEAM)->alias('t1') + return $this->dao->select('t1.*, t1.hours * t1.days AS totalHours, t2.realname')->from(TABLE_TEAM)->alias('t1') ->leftJoin(TABLE_USER)->alias('t2')->on('t1.account = t2.account') ->where('t1.project')->eq((int)$projectID) ->andWHere('t2.company')->eq($this->app->company->id) - ->fetchAll(); + ->fetchAll('account'); } /** diff --git a/module/project/view/grouptask.html.php b/module/project/view/grouptask.html.php index 970aaf9079..491460f313 100644 --- a/module/project/view/grouptask.html.php +++ b/module/project/view/grouptask.html.php @@ -106,7 +106,12 @@ - project->groupSummary, $groupSum, $groupWait, $groupDoing, $groupEstimate, $groupConsumed, $groupLeft);?> + + + assignedTo])) printf($lang->project->memberHours, $users[$task->assignedTo], $members[$task->assignedTo]->totalHours);?> + project->groupSummary, $groupSum, $groupWait, $groupDoing, $groupEstimate, $groupConsumed, $groupLeft);?> + + diff --git a/module/project/view/view.html.php b/module/project/view/view.html.php index 2e9f2a05b8..e5067cf665 100644 --- a/module/project/view/view.html.php +++ b/module/project/view/view.html.php @@ -59,7 +59,7 @@ project->lblStats;?> - project->stats, $project->totalEstimate, $project->totalConsumed, $project->totalLeft, 10)?> + project->stats, $project->totalHours, $project->totalEstimate, $project->totalConsumed, $project->totalLeft, 10)?> project->products;?>