From 9c24b069d60930596e00da9d392008c16185ff48 Mon Sep 17 00:00:00 2001 From: Yagami <976204163@qq.com> Date: Fri, 21 Aug 2020 10:56:19 +0800 Subject: [PATCH] * Add new block. --- db/update20.0.sql | 2 + module/block/control.php | 23 ++++++++++++ module/block/lang/zh-cn.php | 17 ++++++--- module/block/view/programblock.html.php | 49 +++++++++++++++++++++++++ module/program/lang/zh-cn.php | 4 ++ module/program/model.php | 14 +++++++ 6 files changed, 104 insertions(+), 5 deletions(-) create mode 100644 module/block/view/programblock.html.php diff --git a/db/update20.0.sql b/db/update20.0.sql index db8621b521..34f3049c5c 100644 --- a/db/update20.0.sql +++ b/db/update20.0.sql @@ -288,3 +288,5 @@ CREATE TABLE `zt_weeklyreport`( ALTER TABLE `zt_project` ADD `path` varchar(255) NOT NULL AFTER `parent`; ALTER TABLE `zt_project` ADD `grade` tinyint unsigned NOT NULL AFTER `path`; + +INSERT INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system','custom','','URAndSR','1'),('system','custom','','URSRName','{\"urCommon\":{\"zh-cn\":\"\\u7528\\u6237\\u9700\\u6c42\"},\"srCommon\":{\"zh-cn\":\"\\u8f6f\\u4ef6\\u9700\\u6c42\"}}'),('system','custom','','storyPoint','1'); diff --git a/module/block/control.php b/module/block/control.php index b8f6bb7c34..8f6d3db45c 100644 --- a/module/block/control.php +++ b/module/block/control.php @@ -699,6 +699,29 @@ class block extends control ->fetchAll(); } + public function printProgramBlock() + { + $this->loadModel('project'); + $programs = $this->loadModel('program')->getUserPrograms('all', $this->params->orderBy, $this->params->num); + foreach($programs as $programID => $program) + { + $members = $this->project->getTeamMemberPairs($programID); + $consumed = $this->dao->select('sum(consumed) as consumed')->from(TABLE_TASK)->where('program')->eq($programID)->andWhere('deleted')->eq(0)->andWhere('status')->ne('cancel')->fetch('consumed'); + $leftTasks = $this->dao->select('count(*) as leftTasks')->from(TABLE_TASK)->where('program')->eq($programID)->andWhere('deleted')->eq(0)->andWhere('status')->in('wait,doing,pause')->fetch('leftTasks'); + $leftStories = $this->dao->select('count(*) as leftStories')->from(TABLE_STORY)->where('program')->eq($programID)->andWhere('deleted')->eq(0)->andWhere('status')->eq('active')->fetch('leftStories'); + $leftBugs = $this->dao->select('count(*) as leftBugs')->from(TABLE_BUG)->where('program')->eq($programID)->andWhere('deleted')->eq(0)->andWhere('status')->eq('active')->fetch('leftBugs'); + + $program->countMembers = count($members) ? count($members) : 0; + $program->consumed = $consumed ? $consumed : 0; + $program->leftTasks = $leftTasks ? $leftTasks : 0; + $program->leftStories = $leftStories ? $leftStories : 0; + $program->leftBugs = $leftBugs ? $leftBugs : 0; + } + + $this->view->programs = $programs; + $this->view->users = $this->loadModel('user')->getPairs('noletter'); + } + /** * Print product block. * diff --git a/module/block/lang/zh-cn.php b/module/block/lang/zh-cn.php index 248f032da5..236fd4280a 100644 --- a/module/block/lang/zh-cn.php +++ b/module/block/lang/zh-cn.php @@ -256,9 +256,16 @@ $lang->block->default['full']['my']['7']['params']['orderBy'] = 'id_desc'; $lang->block->default['full']['my']['7']['params']['num'] = '15'; $lang->block->default['full']['my']['7']['params']['type'] = 'assignedTo'; -$lang->block->default['full']['my']['8']['title'] = '项目人力投入'; -$lang->block->default['full']['my']['8']['block'] = 'programteam'; -$lang->block->default['full']['my']['8']['grid'] = 8; +$lang->block->default['full']['my']['8']['title'] = '项目人力投入'; +$lang->block->default['full']['my']['8']['block'] = 'programteam'; +$lang->block->default['full']['my']['8']['grid'] = 8; + +$lang->block->default['full']['my']['8']['title'] = '项目列表'; +$lang->block->default['full']['my']['8']['block'] = 'program'; +$lang->block->default['full']['my']['8']['grid'] = 8; + +$lang->block->default['full']['my']['8']['params']['orderBy'] = 'id_desc'; +$lang->block->default['full']['my']['8']['params']['num'] = '15'; $lang->block->num = '数量'; $lang->block->type = '类型'; @@ -278,15 +285,15 @@ $lang->block->availableBlocks->release = '发布列表'; $lang->block->availableBlocks->build = '版本列表'; $lang->block->availableBlocks->testtask = '测试版本列表'; +$lang->block->moduleList['program'] = '项目'; $lang->block->moduleList['product'] = $lang->productCommon; $lang->block->moduleList['project'] = $lang->projectCommon; $lang->block->moduleList['qa'] = '测试'; $lang->block->moduleList['todo'] = '待办'; -$lang->block->moduleList['program'] = '项目'; - $lang->block->modules['program'] = new stdclass(); $lang->block->modules['program']->availableBlocks = new stdclass(); +$lang->block->modules['program']->availableBlocks->list = '项目列表'; $lang->block->modules['program']->availableBlocks->scrumoverall = '项目整体情况'; $lang->block->modules['program']->availableBlocks->scrumprogress = '进行中的迭代'; $lang->block->modules['program']->availableBlocks->scrumproject = '迭代总览'; diff --git a/module/block/view/programblock.html.php b/module/block/view/programblock.html.php new file mode 100644 index 0000000000..7d741e602e --- /dev/null +++ b/module/block/view/programblock.html.php @@ -0,0 +1,49 @@ + +