From dba7a2acdd087630edffd94bca750c0c2246406f Mon Sep 17 00:00:00 2001 From: tianshujie98 Date: Mon, 29 Mar 2021 16:21:14 +0800 Subject: [PATCH] * Finish task #37107. --- module/report/model.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/module/report/model.php b/module/report/model.php index ee531d0526..a5b5f4860f 100644 --- a/module/report/model.php +++ b/module/report/model.php @@ -138,12 +138,15 @@ class reportModel extends model */ public function getProducts($conditions, $storyType = 'story') { - $products = $this->dao->select('id, code, name, PO')->from(TABLE_PRODUCT) - ->where('deleted')->eq(0) - ->beginIF(strpos($conditions, 'closedProduct') === false)->andWhere('status')->ne('closed')->fi() - ->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->products)->fi() + $products = $this->dao->select('t1.id as id, t1.code, t1.name, t1.PO')->from(TABLE_PRODUCT)->alias('t1') + ->leftJoin(TABLE_PROGRAM)->alias('t2')->on('t1.program = t2.id') + ->where('t1.deleted')->eq(0) + ->beginIF(strpos($conditions, 'closedProduct') === false)->andWhere('t1.status')->ne('closed')->fi() + ->beginIF(!$this->app->user->admin)->andWhere('t1.id')->in($this->app->user->view->products)->fi() + ->orderBy('t2.order_asc, t1.line_desc, t1.order_asc') ->fetchAll('id'); - $plans = $this->dao->select('*')->from(TABLE_PRODUCTPLAN)->where('deleted')->eq(0)->andWhere('product')->in(array_keys($products)) + + $plans = $this->dao->select('*')->from(TABLE_PRODUCTPLAN)->where('deleted')->eq(0)->andWhere('product')->in(array_keys($products)) ->beginIF(strpos($conditions, 'overduePlan') === false)->andWhere('end')->gt(date('Y-m-d'))->fi() ->orderBy('product,parent_desc,begin') ->fetchAll('id');