From 70e100410265fc72b8dfc9a7b57a86d17e8652ad Mon Sep 17 00:00:00 2001 From: Catouse Date: Mon, 11 May 2015 17:05:14 +0800 Subject: [PATCH] * change burn report UI. --- module/project/control.php | 32 +++++++++++++++---------------- module/project/css/burn.css | 2 +- module/project/js/burn.js | 4 +++- module/project/lang/en.php | 2 ++ module/project/lang/zh-cn.php | 2 ++ module/project/model.php | 4 ++-- module/project/view/burn.html.php | 29 +++++++++++++++++++++++++++- 7 files changed, 53 insertions(+), 22 deletions(-) diff --git a/module/project/control.php b/module/project/control.php index afe76cb27d..2f6547d6db 100644 --- a/module/project/control.php +++ b/module/project/control.php @@ -729,7 +729,7 @@ class project extends control $position[] = $this->lang->project->burn; /* Get date list. */ - list($dateList, $interval) = $this->project->getDateList($projectInfo->begin, $projectInfo->end, $type, $interval); + list($dateList, $interval) = $this->project->getDateList($projectInfo->begin, $projectInfo->end, $type, $interval, 'j/n'); $sets = $this->project->getBurnDataFlot($project->id); $limitJSON = '[]'; @@ -740,16 +740,12 @@ class project extends control $days = count($dateList) - 1; $rate = $firstTime / $days; $baselineJSON = '['; - foreach($dateList as $i => $date) $baselineJSON .='[' . $i . ',' . ($days - $i) * $rate . '],'; + foreach($dateList as $i => $date) $baselineJSON .= ($days - $i) * $rate . ','; $baselineJSON = rtrim($baselineJSON, ',') . ']'; - $flotJSON['data'] = $this->report->createSingleJSON($sets, $dateList); - $flotJSON['limit'] = $limitJSON; - $flotJSON['baseline'] = $baselineJSON; - $flotJSON['dateList'] = json_encode($dateList); - $flotJSON['ticks'] = json_encode(array_keys($dateList)); - - $charts = $this->report->createJSChartFlot($project->name, $flotJSON, 900, 400); + $chartData['labels'] = $dateList; + $chartData['burnLine'] = $this->report->createSingleJSON($sets, $dateList); + $chartData['baseLine'] = $baselineJSON; /* Set a space when assemble the string for english. */ $space = $this->app->getClientLang() == 'en' ? ' ' : ''; @@ -757,14 +753,16 @@ class project extends control foreach($dayList as $key => $val) $dayList[$key] = $this->lang->project->interval . $space . ($key + 1) . $space . $this->lang->day; /* Assign. */ - $this->view->title = $title; - $this->view->position = $position; - $this->view->tabID = 'burn'; - $this->view->charts = $charts; - $this->view->projectID = $projectID; - $this->view->type = $type; - $this->view->interval = $interval; - $this->view->dayList = array('full' => $this->lang->project->interval . $space . 1 . $space . $this->lang->day) + $dayList; + $this->view->title = $title; + $this->view->position = $position; + $this->view->tabID = 'burn'; + $this->view->charts = $charts; + $this->view->projectID = $projectID; + $this->view->projectName = $project->name; + $this->view->type = $type; + $this->view->interval = $interval; + $this->view->chartData = $chartData; + $this->view->dayList = array('full' => $this->lang->project->interval . $space . 1 . $space . $this->lang->day) + $dayList; $this->display(); } diff --git a/module/project/css/burn.css b/module/project/css/burn.css index a2e7cb3847..65c8e155b5 100644 --- a/module/project/css/burn.css +++ b/module/project/css/burn.css @@ -1,5 +1,5 @@ .container {max-width: 950px!important;} -.container .actions {margin-bottom: 10px; padding: 0 25px} +.container .actions {margin-bottom: 10px; padding: 0} .container .actions > .text {padding: 5px 5px 5px 15px; line-height: 20px} .mw-220px {max-width: 220px!important} #wrap h1{font-size:14px;} diff --git a/module/project/js/burn.js b/module/project/js/burn.js index 630354c2b4..346943a368 100644 --- a/module/project/js/burn.js +++ b/module/project/js/burn.js @@ -1,9 +1,11 @@ $(function() { + initBurnChar(); + $('#burnTab').addClass('active'); $('#interval').change(function() { location.href = createLink('project', 'burn', 'projectID=' + projectID + '&type=' + type + '&interval=' + $(this).val()); - }) + }); }) diff --git a/module/project/lang/en.php b/module/project/lang/en.php index dd953a7d2e..14a8fc4a98 100644 --- a/module/project/lang/en.php +++ b/module/project/lang/en.php @@ -49,6 +49,7 @@ $lang->project->whitelist = 'Whitelist'; $lang->project->totalEstimate = 'Est'; $lang->project->totalConsumed = 'Done'; $lang->project->totalLeft = 'Left'; +$lang->project->Left = 'Left'; $lang->project->progess = 'Progess'; $lang->project->viewBug = 'View bug'; $lang->project->noProduct = 'No product'; @@ -111,6 +112,7 @@ $lang->project->dynamic = 'Dynamic'; $lang->project->build = 'Build'; $lang->project->testtask = 'Testtask'; $lang->project->burn = 'Burndown'; +$lang->project->baseline = 'Base Line'; $lang->project->computeBurn = 'Update'; $lang->project->burnData = 'Burndown data'; $lang->project->team = 'Team'; diff --git a/module/project/lang/zh-cn.php b/module/project/lang/zh-cn.php index 132a93d46d..9856e42f35 100644 --- a/module/project/lang/zh-cn.php +++ b/module/project/lang/zh-cn.php @@ -49,6 +49,7 @@ $lang->project->whitelist = '分组白名单'; $lang->project->totalEstimate = '总预计'; $lang->project->totalConsumed = '总消耗'; $lang->project->totalLeft = '总剩余'; +$lang->project->Left = '剩余'; $lang->project->progess = '进度'; $lang->project->viewBug = '查看bug'; $lang->project->noProduct = '无产品项目'; @@ -111,6 +112,7 @@ $lang->project->dynamic = '动态'; $lang->project->build = '版本列表'; $lang->project->testtask = '测试任务'; $lang->project->burn = '燃尽图'; +$lang->project->baseline = '基准线'; $lang->project->computeBurn = '更新'; $lang->project->burnData = '燃尽图数据'; $lang->project->team = '团队成员'; diff --git a/module/project/model.php b/module/project/model.php index e64985b8ea..c7a3f49e21 100644 --- a/module/project/model.php +++ b/module/project/model.php @@ -1535,7 +1535,7 @@ class projectModel extends model * @access public * @return array */ - public function getDateList($begin, $end, $type, $interval = '') + public function getDateList($begin, $end, $type, $interval = '', $format = 'm/d/Y') { $begin = strtotime($begin); $end = strtotime($end); @@ -1575,7 +1575,7 @@ class projectModel extends model } $counter = 0; - $dateList[] = date('m/d/Y', $date); + $dateList[] = date($format, $date); $date += 24 * 3600; } diff --git a/module/project/view/burn.html.php b/module/project/view/burn.html.php index cc3d945f72..203810c725 100644 --- a/module/project/view/burn.html.php +++ b/module/project/view/burn.html.php @@ -11,6 +11,7 @@ */ ?> + @@ -36,6 +37,32 @@
project->howToUpdateBurn;?>
- + +

lang->project->burn;?>

+ +