From 8e2dee9fb610b0da867a60847156f232a899b7a1 Mon Sep 17 00:00:00 2001 From: wangyidong Date: Thu, 1 Feb 2018 14:23:19 +0800 Subject: [PATCH] * adjust for case block. --- module/block/control.php | 58 +++++++++++++++++++++------- module/block/lang/en.php | 18 ++++++--- module/block/lang/zh-cn.php | 6 +++ module/block/model.php | 25 ++++++++++++ module/block/view/caseblock.html.php | 52 +++++++++++++++---------- module/block/view/set.html.php | 2 +- module/common/lang/en.php | 19 +++++---- module/common/lang/zh-cn.php | 2 +- www/theme/zui/css/min.css | 13 ++++++- 9 files changed, 143 insertions(+), 52 deletions(-) diff --git a/module/block/control.php b/module/block/control.php index 30d6d87727..4dd3789dca 100644 --- a/module/block/control.php +++ b/module/block/control.php @@ -105,6 +105,11 @@ class block extends control $params = $this->block->$func($source); $this->view->params = json_decode($params, true); } + elseif($type == 'assigntome') + { + $params = $this->block->getAssignToMeParams(); + $this->view->params = json_decode($params, true); + } $this->view->source = $source; $this->view->type = $type; @@ -337,6 +342,7 @@ class block extends control } elseif($block->block == 'assigntome') { + $this->get->set('param', base64_encode(json_encode($block->params))); $html = $this->fetch('block', 'printAssignToMeBlock', 'longBlock=' . $this->block->isLongBlock($block)); } elseif($block->block == 'welcome') @@ -703,21 +709,26 @@ class block extends control */ public function printAssignToMeBlock($longBlock = true) { - if(common::hasPriv('todo', 'view')) $hasViewPriv['todo'] = true; - if(common::hasPriv('story', 'view')) $hasViewPriv['story'] = true; - if(common::hasPriv('task', 'view')) $hasViewPriv['task'] = true; - if(common::hasPriv('bug', 'view')) $hasViewPriv['bug'] = true; - if(common::hasPriv('testcase', 'view')) $hasViewPriv['case'] = true; + if(common::hasPriv('todo', 'view')) $hasViewPriv['todo'] = true; + if(common::hasPriv('story', 'view')) $hasViewPriv['story'] = true; + if(common::hasPriv('task', 'view')) $hasViewPriv['task'] = true; + if(common::hasPriv('bug', 'view')) $hasViewPriv['bug'] = true; + if(common::hasPriv('testcase', 'view')) $hasViewPriv['case'] = true; + + $params = $this->get->param; + $params = json_decode(base64_decode($params)); if(isset($hasViewPriv['todo'])) { $this->app->loadClass('date'); $this->app->loadLang('todo'); - $todos = $this->dao->select('*')->from(TABLE_TODO) + $stmt = $this->dao->select('*')->from(TABLE_TODO) ->where("(assignedTo = '{$this->app->user->account}' or (assignedTo = '' and account='{$this->app->user->account}'))") + ->andWhere('status')->ne('done') ->andWhere('cycle')->eq(0) - ->orderBy('`date`') - ->fetchAll(); + ->orderBy('`date`'); + if(isset($params->todoNum)) $stmt->limit($params->todoNum); + $todos = $stmt->fetchAll(); foreach($todos as $todo) { @@ -730,7 +741,13 @@ class block extends control if(isset($hasViewPriv['story'])) { $this->app->loadLang('story'); - $stories = $this->dao->select('*')->from(TABLE_STORY)->where('assignedTo')->eq($this->app->user->account)->andWhere('deleted')->eq('0')->orderBy('id_desc')->fetchAll(); + $stmt = $this->dao->select('*')->from(TABLE_STORY) + ->where('assignedTo')->eq($this->app->user->account) + ->andWhere('deleted')->eq('0') + ->andWhere('status')->ne('closed') + ->orderBy('id_desc'); + if(isset($params->storyNum)) $stmt->limit($params->storyNum); + $stories = $stmt->fetchAll(); if(empty($stories)) unset($hasViewPriv['story']); $this->view->stories = $stories; @@ -738,7 +755,13 @@ class block extends control if(isset($hasViewPriv['task'])) { $this->app->loadLang('task'); - $tasks = $this->dao->select('*')->from(TABLE_TASK)->where('assignedTo')->eq($this->app->user->account)->andWhere('deleted')->eq('0')->orderBy('id_desc')->fetchAll(); + $stmt = $this->dao->select('*')->from(TABLE_TASK) + ->where('assignedTo')->eq($this->app->user->account) + ->andWhere('deleted')->eq('0') + ->andWhere('status')->ne('closed') + ->orderBy('id_desc'); + if(isset($params->taskNum)) $stmt->limit($params->taskNum); + $tasks = $stmt->fetchAll(); if(empty($tasks)) unset($hasViewPriv['task']); $this->view->tasks = $tasks; @@ -746,7 +769,13 @@ class block extends control if(isset($hasViewPriv['bug'])) { $this->app->loadLang('bug'); - $bugs = $this->dao->select('*')->from(TABLE_BUG)->where('assignedTo')->eq($this->app->user->account)->andWhere('deleted')->eq('0')->orderBy('id_desc')->fetchAll(); + $stmt = $this->dao->select('*')->from(TABLE_BUG) + ->where('assignedTo')->eq($this->app->user->account) + ->andWhere('deleted')->eq('0') + ->andWhere('status')->ne('closed') + ->orderBy('id_desc'); + if(isset($params->bugNum)) $stmt->limit($params->bugNum); + $bugs = $stmt->fetchAll(); if(empty($bugs)) unset($hasViewPriv['bug']); $this->view->bugs = $bugs; @@ -755,7 +784,7 @@ class block extends control { $this->app->loadLang('testcase'); $this->app->loadLang('testtask'); - $cases = $this->dao->select('t1.assignedTo AS assignedTo, t2.*')->from(TABLE_TESTRUN)->alias('t1') + $stmt = $this->dao->select('t1.assignedTo AS assignedTo, t2.*')->from(TABLE_TESTRUN)->alias('t1') ->leftJoin(TABLE_CASE)->alias('t2')->on('t1.case = t2.id') ->leftJoin(TABLE_TESTTASK)->alias('t3')->on('t1.task = t3.id') ->Where('t1.assignedTo')->eq($this->app->user->account) @@ -763,8 +792,9 @@ class block extends control ->andWhere('t3.status')->ne('done') ->andWhere('t3.deleted')->eq(0) ->andWhere('t2.deleted')->eq(0) - ->orderBy('id_desc') - ->fetchAll(); + ->orderBy('id_desc'); + if(isset($params->testcaseNum)) $stmt->limit($params->testcaseNum); + $cases = $stmt->fetchAll(); if(empty($cases)) unset($hasViewPriv['case']); $this->view->cases = $cases; diff --git a/module/block/lang/en.php b/module/block/lang/en.php index 8f86bb1002..6a25508cd8 100644 --- a/module/block/lang/en.php +++ b/module/block/lang/en.php @@ -33,11 +33,13 @@ $lang->block->assignToMe = 'Assign To Me'; $lang->block->lblFlowchart = 'Workflow'; $lang->block->welcome = 'Welcome'; -$lang->block->assignToMeList['todo'] = 'Todo'; -$lang->block->assignToMeList['story'] = 'Story'; -$lang->block->assignToMeList['task'] = 'Task'; -$lang->block->assignToMeList['bug'] = 'Bug'; -$lang->block->assignToMeList['case'] = 'Case'; +$lang->block->leftToday = 'The rest of the work today'; +$lang->block->myTask = 'My Task'; +$lang->block->myStory = 'My Story'; +$lang->block->myBug = 'My Bug'; +$lang->block->myProject = 'My ' . $lang->projectCommon; +$lang->block->myProduct = 'My ' . $lang->productCommon; +$lang->block->delayed = 'Delayed'; $lang->block->params = new stdclass(); $lang->block->params->name = 'Name'; @@ -266,6 +268,12 @@ $lang->block->orderByList->story['status_desc'] = 'Status Descending'; $lang->block->orderByList->story['stage_asc'] = 'Stage Ascending'; $lang->block->orderByList->story['stage_desc'] = 'Stage Descending'; +$lang->block->todoNum = 'Todo Number'; +$lang->block->storyNum = 'Story Number'; +$lang->block->taskNum = 'Task Number'; +$lang->block->bugNum = 'Bug Number'; +$lang->block->testcaseNum = 'Case Number'; + $lang->block->typeList = new stdclass(); $lang->block->typeList->task['assignedTo'] = 'Assigned to Me'; diff --git a/module/block/lang/zh-cn.php b/module/block/lang/zh-cn.php index 86233e5c59..b14ea7d225 100644 --- a/module/block/lang/zh-cn.php +++ b/module/block/lang/zh-cn.php @@ -268,6 +268,12 @@ $lang->block->orderByList->story['status_desc'] = '状态倒序'; $lang->block->orderByList->story['stage_asc'] = '阶段正序'; $lang->block->orderByList->story['stage_desc'] = '阶段倒序'; +$lang->block->todoNum = '待办数'; +$lang->block->storyNum = '需求数'; +$lang->block->taskNum = '任务数'; +$lang->block->bugNum = 'Bug数'; +$lang->block->testcaseNum = '用例数'; + $lang->block->typeList = new stdclass(); $lang->block->typeList->task['assignedTo'] = '指派给我'; diff --git a/module/block/model.php b/module/block/model.php index c14690725a..d7cd2d5fd7 100644 --- a/module/block/model.php +++ b/module/block/model.php @@ -408,6 +408,31 @@ class blockModel extends model return json_encode($this->onlyNumParams($module, $params)); } + public function getAssignToMeParams() + { + $params->todoNum['name'] = $this->lang->block->todoNum; + $params->todoNum['default'] = 20; + $params->todoNum['control'] = 'input'; + + $params->storyNum['name'] = $this->lang->block->storyNum; + $params->storyNum['default'] = 20; + $params->storyNum['control'] = 'input'; + + $params->taskNum['name'] = $this->lang->block->taskNum; + $params->taskNum['default'] = 20; + $params->taskNum['control'] = 'input'; + + $params->bugNum['name'] = $this->lang->block->bugNum; + $params->bugNum['default'] = 20; + $params->bugNum['control'] = 'input'; + + $params->testcaseNum['name'] = $this->lang->block->testcaseNum; + $params->testcaseNum['default'] = 20; + $params->testcaseNum['control'] = 'input'; + + return json_encode($params); + } + /** * Get closed block pairs. * diff --git a/module/block/view/caseblock.html.php b/module/block/view/caseblock.html.php index 91d08dd9a2..4bf398a9d2 100644 --- a/module/block/view/caseblock.html.php +++ b/module/block/view/caseblock.html.php @@ -11,20 +11,30 @@ */ ?>
- + +
'> - - - - - - - - - - - - + + + + + + + + + + + + > - + - - + + - - + + - diff --git a/module/block/view/set.html.php b/module/block/view/set.html.php index ca3295ec99..07bae15920 100644 --- a/module/block/view/set.html.php +++ b/module/block/view/set.html.php @@ -11,7 +11,7 @@ */ ?> block->moduleList[$source])) +if(!empty($params)) { include 'setmodule.html.php'; die(); diff --git a/module/common/lang/en.php b/module/common/lang/en.php index 27247b0015..f8a0106792 100644 --- a/module/common/lang/en.php +++ b/module/common/lang/en.php @@ -102,14 +102,17 @@ $lang->common->common = 'Common Module'; /* 主导航菜单。*/ $lang->menu = new stdclass(); -$lang->menu->my = 'Dashboard|my|index'; -$lang->menu->product = $lang->productCommon . '|product|index'; -$lang->menu->project = $lang->projectCommon . '|project|index'; -$lang->menu->qa = 'QA|qa|index'; -$lang->menu->doc = 'Doc|doc|index'; -$lang->menu->report = 'Report|report|index'; -$lang->menu->company = 'Company|company|index'; -$lang->menu->admin = 'Admin|admin|index'; +$lang->menu->my = 'Dashboard|my|index'; +$lang->menu->product = $lang->productCommon . '|product|index'; +$lang->menu->project = $lang->projectCommon . '|project|index'; +$lang->menu->qa = 'QA|qa|index'; +$lang->menu->doc = 'Doc|doc|index'; +$lang->menu->report = 'Report|report|index'; +$lang->menu->company = 'Company|company|index'; + +$lang->adminMenu = 'Admin|admin|index'; + +$lang->dividerMenu = ',qa,'; /* 查询条中可以选择的对象列表。*/ $lang->searchObjects['bug'] = 'Bug'; diff --git a/module/common/lang/zh-cn.php b/module/common/lang/zh-cn.php index 3997643d7b..4cb1c6b231 100644 --- a/module/common/lang/zh-cn.php +++ b/module/common/lang/zh-cn.php @@ -102,7 +102,7 @@ $lang->common->common = '公有模块'; /* 主导航菜单。*/ $lang->menu = new stdclass(); -$lang->menu->my = ' 我的地盘|my|index'; +$lang->menu->my = ' 我的地盘|my|index'; $lang->menu->product = $lang->productCommon . '|product|index'; $lang->menu->project = $lang->projectCommon . '|project|index'; $lang->menu->qa = '测试|qa|index'; diff --git a/www/theme/zui/css/min.css b/www/theme/zui/css/min.css index edaa57fe9a..f731418a5c 100644 --- a/www/theme/zui/css/min.css +++ b/www/theme/zui/css/min.css @@ -1,5 +1,5 @@ /*! - * ZUI: Zentao template - v1.8.1 - 2018-01-31 + * ZUI: Zentao template - v1.8.1 - 2018-02-01 * http://zui.sexy * GitHub: https://github.com/easysoft/zui.git * Copyright (c) 2018 cnezsoft.com; Licensed MIT @@ -7524,6 +7524,15 @@ a .icon-spin { .timeline > li.active > a { color: #3c4353; } +.timeline-tag { + position: absolute; + top: 5px; + left: -115px; + font-size: 12px; + } +.timeline-tag-left { + padding-left: 115px; + } .timeline-sm { font-size: 12px; } @@ -8178,7 +8187,7 @@ form label { top: -51px; right: 0; left: 0; - z-index: 10; + z-index: 15; padding: 20px; visibility: hidden; background: #fff;
idAB?>priAB?> case->title;?> testtask->lastRunTime;?> testtask->lastRunResult;?>statusAB;?>
idAB?>priAB?>case->title;?> testtask->lastRunTime;?> testtask->lastRunResult;?>statusAB;?>
id;?>id;?> case->priList, $case->pri, $case->pri)?>title?>case->priList, $case->pri, $case->pri)?>title?> lastRunDate)) echo date(DT_MONTHTIME1, strtotime($case->lastRunDate));?>lastRunResult) echo $lang->testcase->resultList[$case->lastRunResult];?>lastRunDate)) echo date(DT_MONTHTIME1, strtotime($case->lastRunDate));?>lastRunResult) echo $lang->testcase->resultList[$case->lastRunResult];?> - + + - testcase->statusList, $case->status);?> + testcase->statusList, $case->status);?>