diff --git a/module/block/control.php b/module/block/control.php index 9bfa0ef78d..e39b917f10 100644 --- a/module/block/control.php +++ b/module/block/control.php @@ -1598,7 +1598,7 @@ class block extends control ->leftJoin(TABLE_PROJECT)->alias('t4')->on('t1.project=t4.id') ->leftJoin(TABLE_PROJECTPRODUCT)->alias('t5')->on('t1.project=t5.project') ->where('t1.deleted')->eq('0') - ->andWhere('t1.product')->eq($this->session->program)->fi() + ->andWhere('t1.program')->eq($this->session->program)->fi() ->andWhere('t1.product = t5.product') ->beginIF($this->params->type != 'all')->andWhere('t1.status')->eq($this->params->type)->fi() ->orderBy('t1.id desc') @@ -1625,7 +1625,7 @@ class block extends control */ public function printScrumprojectBlock() { - $this->view->projectOverview = $this->dao->select('count(*) total, count(if(status="doing", id, null)) as doing, count(if(status="closed", id, null)) as finish')->from(TABLE_PROJECT) + $this->view->summary = $this->dao->select('count(*) as total, count(if(status="doing", id, null)) as doing, count(if(status="closed", id, null)) as finish')->from(TABLE_PROJECT) ->where('program')->eq($this->session->program) ->fetch(); } @@ -1638,13 +1638,27 @@ class block extends control */ public function printScrumdynamicBlock() { - $projects = $this->loadModel('project')->getPairs(); - $actions = $this->dao->select('*')->from(TABLE_ACTION) - ->where('project')->in(array_keys($projects)) - ->orderBy('id_desc') - ->fetchAll(); + $projects = $this->loadModel('project')->getPairs(); + $products = $this->loadModel('product')->getPairs(); + $productID = array(); + foreach($products as $id => $name) $productID[] = ',' . $id . ','; - $this->view->actions = $this->loadModel('action')->transformActions($actions); + if(empty($projects) && empty($products)) + { + $actions = array(); + } + else + { + $actions = $this->dao->select('*')->from(TABLE_ACTION) + ->beginIF($projects && $products)->where('project')->in(array_keys($projects))->orWhere('product')->in($productID)->fi() + ->beginIF($projects && empty($products))->where('project')->in(array_keys($projects))->fi() + ->beginIF(empty($projects) && $products)->where('product')->in($productID)->fi() + ->orderBy('id_desc') + ->limit(30) + ->fetchAll(); + } + + $this->view->actions = empty($actions) ? array() : $this->loadModel('action')->transformActions($actions); $this->view->users = $this->loadModel('user')->getPairs('noletter'); - } + } } diff --git a/module/block/lang/zh-cn.php b/module/block/lang/zh-cn.php index e12e723698..3a0400909d 100644 --- a/module/block/lang/zh-cn.php +++ b/module/block/lang/zh-cn.php @@ -53,6 +53,9 @@ $lang->block->resolvedBugs = '解决Bug数'; $lang->block->openedTestcases = '创建用例数'; $lang->block->cmmi = 'CMMI 3'; $lang->block->scrum = 'Scrum+'; +$lang->block->allProject = '所有' . $lang->projectCommon; +$lang->block->doingProject = '进行中的' . $lang->projectCommon; +$lang->block->finishProject = '累积' . $lang->projectCommon; $lang->block->params = new stdclass(); $lang->block->params->name = '参数名称'; @@ -109,15 +112,15 @@ $lang->block->default['cmmi']['program']['7']['params']['type'] = 'all'; $lang->block->default['cmmi']['program']['7']['params']['num'] = '15'; $lang->block->default['cmmi']['program']['7']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['program']['1']['title'] = '项目整体情况'; +$lang->block->default['scrum']['program']['1']['title'] = '项目整体情况'; $lang->block->default['scrum']['program']['1']['block'] = 'scrumoverall'; $lang->block->default['scrum']['program']['1']['grid'] = 8; -$lang->block->default['scrum']['program']['2']['title'] = '进行中的迭代'; +$lang->block->default['scrum']['program']['2']['title'] = '进行中的' . $lang->projectCommon; $lang->block->default['scrum']['program']['2']['block'] = 'scrumprogress'; $lang->block->default['scrum']['program']['2']['grid'] = 8; -$lang->block->default['scrum']['program']['3']['title'] = '产品路线图'; +$lang->block->default['scrum']['program']['3']['title'] = $lang->productCommon . '路线图'; $lang->block->default['scrum']['program']['3']['block'] = 'scrumroadmap'; $lang->block->default['scrum']['program']['3']['grid'] = 8; @@ -129,11 +132,11 @@ $lang->block->default['scrum']['program']['4']['params']['type'] = 'all'; $lang->block->default['scrum']['program']['4']['params']['num'] = '15'; $lang->block->default['scrum']['program']['4']['params']['orderBy'] = 'id_desc'; -$lang->block->default['scrum']['program']['5']['title'] = '产品总览'; +$lang->block->default['scrum']['program']['5']['title'] = $lang->productCommon . '总览'; $lang->block->default['scrum']['program']['5']['block'] = 'scrumproduct'; $lang->block->default['scrum']['program']['5']['grid'] = 4; -$lang->block->default['scrum']['program']['6']['title'] = '迭代总览'; +$lang->block->default['scrum']['program']['6']['title'] = $lang->projectCommon . '总览'; $lang->block->default['scrum']['program']['6']['block'] = 'scrumproject'; $lang->block->default['scrum']['program']['6']['grid'] = 4; @@ -310,11 +313,11 @@ $lang->block->modules['program']->availableBlocks->list = '项目列表 $lang->block->modules['scrum']['index'] = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks = new stdclass(); $lang->block->modules['scrum']['index']->availableBlocks->scrumoverall = '项目整体情况'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumprogress = '进行中的迭代'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumproject = '迭代总览'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumproduct = '产品总览'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumprogress = '进行中的' . $lang->projectCommon; +$lang->block->modules['scrum']['index']->availableBlocks->scrumproject = $lang->projectCommon . '总览'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumproduct = $lang->productCommon . '总览'; $lang->block->modules['scrum']['index']->availableBlocks->scrumtest = '待测版本'; -$lang->block->modules['scrum']['index']->availableBlocks->scrumroadmap = '产品路线图'; +$lang->block->modules['scrum']['index']->availableBlocks->scrumroadmap = $lang->productCommon . '路线图'; $lang->block->modules['cmmi']['index'] = new stdclass(); $lang->block->modules['cmmi']['index']->availableBlocks = new stdclass(); diff --git a/module/block/view/scrumdynamicblock.html.php b/module/block/view/scrumdynamicblock.html.php index 05b98b0f15..e89f1118ce 100644 --- a/module/block/view/scrumdynamicblock.html.php +++ b/module/block/view/scrumdynamicblock.html.php @@ -1,10 +1,6 @@