From 834aee0f273626babbbe5c27cc61f22d5dcbca8f Mon Sep 17 00:00:00 2001 From: chenfeiCF Date: Tue, 3 Nov 2015 16:58:32 +0800 Subject: [PATCH] * adjust the code. --- module/bug/control.php | 12 ++++++------ module/product/model.php | 15 ++++++--------- module/report/control.php | 8 +++++--- 3 files changed, 17 insertions(+), 18 deletions(-) diff --git a/module/bug/control.php b/module/bug/control.php index 31235a9572..4f30e9046f 100644 --- a/module/bug/control.php +++ b/module/bug/control.php @@ -330,10 +330,10 @@ class bug extends control } /* Set team members of the latest project as assignedTo list. */ - $latestProjectID = $this->product->getLatestProject($productID); - if(!empty($latestProjectID)) + $latestProject = $this->product->getLatestProject($productID); + if(!empty($latestProject)) { - $projectMembers = $this->loadModel('project')->getTeamMemberPairs($latestProjectID, 'nodeleted'); + $projectMembers = $this->loadModel('project')->getTeamMemberPairs($latestProject->id, 'nodeleted'); } else { @@ -1102,10 +1102,10 @@ class bug extends control */ public function ajaxLoadProjectTeamMembers($productID, $selectedUser = '') { - $latestProjectID = $this->product->getLatestProject($productID); - if(!empty($latestProjectID)) + $latestProject = $this->product->getLatestProject($productID); + if(!empty($latestProject)) { - $projectMembers = $this->loadModel('project')->getTeamMemberPairs($latestProjectID, 'nodeleted'); + $projectMembers = $this->loadModel('project')->getTeamMemberPairs($latestProject->id, 'nodeleted'); } else { diff --git a/module/product/model.php b/module/product/model.php index 72385a407d..29dd68ed6d 100644 --- a/module/product/model.php +++ b/module/product/model.php @@ -742,19 +742,16 @@ class productModel extends model * * @param int $productID * @access public - * @return int + * @return object */ public function getLatestProject($productID) { - $projectList = array_keys($this->loadModel('project')->getPairs('noclosed')); - $projects = $this->dao->select('t2.id, t2.name, t2.begin') - ->from(TABLE_PROJECTPRODUCT)->alias('t1')->leftJoin(TABLE_PROJECT)->alias('t2') - ->on('t1.project = t2.id') + return $this->dao->select('t2.id, t2.name')->from(TABLE_PROJECTPRODUCT)->alias('t1') + ->leftJoin(TABLE_PROJECT)->alias('t2')->on('t1.project = t2.id') ->where('t1.product')->eq((int)$productID) - ->andWhere('t2.id')->in($projectList) + ->andWhere('t2.status')->ne('done') ->orderBy('t2.begin desc') - ->fetchAll('id'); - - return key($projects); + ->limit(1) + ->fetch(); } } diff --git a/module/report/control.php b/module/report/control.php index c5281caf05..5eb3deeee2 100644 --- a/module/report/control.php +++ b/module/report/control.php @@ -128,9 +128,11 @@ class report extends control $begin = $begin ? date('Y-m-d', strtotime($begin)) : date('Y-m-d', strtotime('now')); $end = $end ? date('Y-m-d', strtotime($end)) : date('Y-m-d', strtotime('+1 week')); - $diffDays = helper::diffDate($end, $begin); - $diffDays = round($diffDays - ($diffDays / 7 * 2)); - $days = $days ? $days : $diffDays; + if(!$days) + { + $diffDays = helper::diffDate($end, $begin); + $days = round($diffDays - ($diffDays / 7 * 2)); + } $this->view->title = $this->lang->report->workload; $this->view->position[] = $this->lang->report->workload;