From 79f6c655b7ff06f0fc65892eb48005ffa99a5c3a Mon Sep 17 00:00:00 2001 From: Yagami <976204163@qq.com> Date: Thu, 21 Jan 2021 09:52:57 +0800 Subject: [PATCH] * Fix details. --- module/program/control.php | 6 ++ module/program/css/prjview.css | 3 +- module/program/lang/zh-cn.php | 2 +- module/program/view/prjview.html.php | 126 +++++++++++++++++++++------ module/story/model.php | 4 +- 5 files changed, 109 insertions(+), 32 deletions(-) diff --git a/module/program/control.php b/module/program/control.php index 31e1966319..4f3245daaa 100644 --- a/module/program/control.php +++ b/module/program/control.php @@ -1062,6 +1062,10 @@ class program extends control if($product->branch) $linkedBranches[$product->branch] = $product->branch; } + /* Load pager. */ + $this->app->loadClass('pager', $static = true); + $pager = new pager(0, 30, 1); + $this->view->title = $this->lang->program->PRJView; $this->view->position = $this->lang->program->PRJView; $this->view->projectID = $projectID; @@ -1069,10 +1073,12 @@ class program extends control $this->view->products = $products; $this->view->actions = $this->loadModel('action')->getList('project', $projectID); $this->view->users = $this->loadModel('user')->getPairs('noletter'); + $this->view->teamMembers = $this->project->getTeamMembers($projectID); $this->view->statData = $this->program->getPRJStatData($projectID); $this->view->workhour = $this->program->getPRJWorkhour($projectID); $this->view->planGroup = $this->loadModel('project')->getPlans($products);; $this->view->branchGroups = $this->loadModel('branch')->getByProducts(array_keys($products), '', $linkedBranches); + $this->view->dynamics = $this->loadModel('action')->getDynamic('all', 'all', 'date_desc', $pager, 'all', $projectID); $this->display(); } diff --git a/module/program/css/prjview.css b/module/program/css/prjview.css index 7f83fa80fa..07ffe891c0 100644 --- a/module/program/css/prjview.css +++ b/module/program/css/prjview.css @@ -1 +1,2 @@ -.row > .col-sm-12:first-child {padding-bottom: 20px;} +.block-dynamic .panel-body {height: 230px; overflow: auto; position: relative;} +.block-team div.col-xs-6{white-space: nowrap; overflow: hidden;} diff --git a/module/program/lang/zh-cn.php b/module/program/lang/zh-cn.php index 8f2e4a9990..efce12d30f 100644 --- a/module/program/lang/zh-cn.php +++ b/module/program/lang/zh-cn.php @@ -170,7 +170,7 @@ $lang->program->noPRJ = '暂时没有项目'; $lang->program->accessDenied = '您无权访问该项目!'; $lang->program->chooseProgramType = '选中项目管理模型'; $lang->program->nextStep = '下一步'; -$lang->program->hoursUnit = "%s $lang->hourCommon"; +$lang->program->hoursUnit = "%s 工时"; $lang->program->membersUnit = '%s人'; $lang->program->lastIteration = '近期迭代'; $lang->program->ongoingStage = '进行中的阶段'; diff --git a/module/program/view/prjview.html.php b/module/program/view/prjview.html.php index 56d44b0134..8458f98998 100644 --- a/module/program/view/prjview.html.php +++ b/module/program/view/prjview.html.php @@ -13,7 +13,104 @@
-
+
+
+
+
+
+
project->latestDynamic;?>
+ +
+
+
    + +
  • major) echo "class='active'";?>> +
    + date;?> + actor) . ' ' . "{$action->actionLabel}" . $action->objectLabel . ' ' . html::a($action->objectLink, $action->objectName, '', "title='$action->objectName'");?> +
    +
  • + +
+
+
+
+
+
+
+
project->relatedMember;?>
+ +
+
+
+ + PM):?> + + PM]);?> +
PM);?> project->PM;?>)
+ + PO):?> + + PO]);?> +
PO);?> project->PO;?>)
+ + QD):?> + + QD]);?> +
QD);?> project->QD;?>)
+ + RD):?> + + RD]);?> +
RD);?> project->RD;?>)
+ + + + $i) break;?> +
account);?>
+ + +
+ id", "  " . $lang->project->manageMembers, '', "class='text-muted'");?> +
+
+
+
+
+
+ + createLink('action', 'comment', "objectType=project&objectID=$project->id");?> + +
+
+
+
+ id"; + common::printBack(inlink('prjbrowse')); + if(!$project->deleted) + { + echo "
"; + common::printIcon('program', 'PRJStart', "projectID=$project->id", $project, 'button', 'play', '', 'iframe', true, '', $lang->project->start); + common::printIcon('program', 'PRJActivate', "projectID=$project->id", $project, 'button', 'magic', '', 'iframe', true, '', $lang->project->activate); + common::printIcon('program', 'PRJSuspend', "projectID=$project->id", $project, 'button', 'pause', '', 'iframe', true, '', $lang->project->suspend); + common::printIcon('program', 'PRJClose', "projectID=$project->id", $project, 'button', 'off', '', 'iframe', true, '', $lang->close); + + echo $this->buildOperateMenu($project, 'view'); + + echo "
"; + common::printIcon('program', 'PRJEdit', $params, $project, 'button', 'edit', '', '', '', '', $lang->close); + common::printIcon('program', 'PRJDelete', $params, $project, 'button', 'trash', 'hiddenwin', '', '', '', $lang->delete); + } + ?> +
+
+
+
@@ -129,33 +226,6 @@ printExtendFields($project, 'div', "position=right&inForm=0&inCell=1");?>
-
- - createLink('action', 'comment', "objectType=project&objectID=$project->id");?> - -
-
-
-
- id"; - common::printBack(inlink('prjbrowse')); - if(!$project->deleted) - { - echo "
"; - common::printIcon('program', 'PRJStart', "projectID=$project->id", $project, 'button', 'play', '', 'iframe', true, '', $lang->project->start); - common::printIcon('program', 'PRJActivate', "projectID=$project->id", $project, 'button', 'magic', '', 'iframe', true, '', $lang->project->activate); - common::printIcon('program', 'PRJSuspend', "projectID=$project->id", $project, 'button', 'pause', '', 'iframe', true, '', $lang->project->suspend); - common::printIcon('program', 'PRJClose', "projectID=$project->id", $project, 'button', 'off', '', 'iframe', true, '', $lang->close); - - echo $this->buildOperateMenu($project, 'view'); - - echo "
"; - common::printIcon('program', 'PRJEdit', $params, $project, 'button', 'edit', '', '', '', '', $lang->close); - common::printIcon('program', 'PRJDelete', $params, $project, 'button', 'trash', 'hiddenwin', '', '', '', $lang->delete); - } - ?> -
diff --git a/module/story/model.php b/module/story/model.php index eb4bd85079..5690f710f5 100644 --- a/module/story/model.php +++ b/module/story/model.php @@ -2740,11 +2740,11 @@ class storyModel extends model { if($type == 'short') { - $property = '[p' . (!empty($this->lang->story->priList[$story->pri]) ? $this->lang->story->priList[$story->pri] : 0) . ', ' . $story->estimate . 'h]'; + $property = '[p' . (!empty($this->lang->story->priList[$story->pri]) ? $this->lang->story->priList[$story->pri] : 0) . ', ' . $story->estimate . "{$this->config->hourUnit}]"; } elseif($type == 'full') { - $property = '(' . $this->lang->story->pri . ':' . (!empty($this->lang->story->priList[$story->pri]) ? $this->lang->story->priList[$story->pri] : 0) . ',' . $this->lang->story->estimate . ':' . $story->estimate . ')'; + $property = '(' . $this->lang->story->pri . ':' . (!empty($this->lang->story->priList[$story->pri]) ? $this->lang->story->priList[$story->pri] : 0) . ',' . $this->lang->story->estimate . ':' . $this->lang->hourCommon . ')'; } else {