diff --git a/module/product/control.php b/module/product/control.php index ee3d3e1427..87631bc5cc 100644 --- a/module/product/control.php +++ b/module/product/control.php @@ -1286,6 +1286,9 @@ class product extends control $this->view->productStructure = $productStructure; $this->view->productLines = $productLines; $this->view->programLines = $programLines; + $this->view->users = $this->user->getPairs('noletter'); + $this->view->userIdPairs = $this->user->getPairs('noletter|showid'); + $this->view->usersAvatar = $this->user->getAvatarPairs(''); $this->view->orderBy = $orderBy; $this->view->browseType = $browseType; $this->view->pager = $pager; diff --git a/module/product/css/all.css b/module/product/css/all.css index 17899e5f52..e4bac9340f 100644 --- a/module/product/css/all.css +++ b/module/product/css/all.css @@ -38,6 +38,7 @@ #sidebar>.cell {width: 100%;} th.c-name {width: 400px;} +th.c-PO {width: 100px;} th.c-story {width: 290px;} th.c-bug {width: 200px;} th.c-plan {width: 45px;} @@ -89,3 +90,5 @@ th.c-actions {width: 50px;} #productTableList > tr.row-line.no-nest > td.text-left.table-nest-title > span.table-nest-icon.icon:before{content: '\e6f2'; background-color: white; display: inline;} .statistic {margin-left: 10px; color: #838a9d; float: left; position: relative; line-height: 28px;} .table-footer.fixed-footer .statistic {color: #fff;} +#productTableList .c-manager {padding-left: 20px;} +#productTableList .c-manager a {top: 7px; left: 28px;} diff --git a/module/product/model.php b/module/product/model.php index 6d7da2880a..1999ef3c02 100644 --- a/module/product/model.php +++ b/module/product/model.php @@ -1817,11 +1817,15 @@ class productModel extends model { $programKeys = array(0 => 0); foreach($products as $product) $programKeys[] = $product->program; - $programs = $this->dao->select('id,name')->from(TABLE_PROGRAM) + $programs = $this->dao->select('id,name,PM')->from(TABLE_PROGRAM) ->where('id')->in(array_unique($programKeys)) - ->fetchPairs(); + ->fetchAll('id'); - foreach($products as $product) $product->programName = isset($programs[$product->program]) ? $programs[$product->program] : ''; + foreach($products as $product) + { + $product->programName = isset($programs[$product->program]) ? $programs[$product->program]->name : ''; + $product->programPM = isset($programs[$product->program]) ? $programs[$product->program]->PM : ''; + } } $stats = array(); @@ -2045,6 +2049,7 @@ class productModel extends model /* Init vars. */ /* Program name. */ $productStructure[$product->program]['programName'] = $product->programName; + $productStructure[$product->program]['programPM'] = $product->programPM; $productStructure[$product->program] = $this->statisticData('program', $productStructure, $product); } } diff --git a/module/product/view/all.html.php b/module/product/view/all.html.php index d9421b1875..4ef7660583 100644 --- a/module/product/view/all.html.php +++ b/module/product/view/all.html.php @@ -50,6 +50,9 @@ product->name);?> + + product->manager);?> + story->story;?> bug->common;?> product->plan;?> @@ -102,6 +105,19 @@ + + $usersAvatar[$programPM], 'account' => $programPM, 'name' => $userName), 'avatar-circle avatar-top avatar-' . zget($userIdPairs, $programPM)); + + $userID = isset($userIdPairs[$programPM]) ? $userIdPairs[$programPM] : ''; + echo html::a($this->createLink('user', 'profile', "userID=$userID", '', true), $userName, '', "title='{$userName}' data-toggle='modal' data-type='iframe' data-width='600'"); + } + ?> + @@ -142,6 +158,7 @@ + @@ -195,6 +212,18 @@ echo "" . $productLink; ?> + + PO)) + { + $userName = zget($users, $product->PO); + echo html::smallAvatar(array('avatar' => $usersAvatar[$product->PO], 'account' => $product->PO, 'name' => $userName), 'avatar-circle avatar-' . zget($userIdPairs, $product->PO)); + + $userID = isset($userIdPairs[$product->PO]) ? $userIdPairs[$product->PO] : ''; + echo html::a($this->createLink('user', 'profile', "userID=$userID", '', true), $userName, '', "title='{$userName}' data-toggle='modal' data-type='iframe' data-width='600'"); + } + ?> + stories['draft'];?> stories['active'];?> stories['changing'];?>