From 80bd2c745ce704701ee5c1c05797b421ec1e67d5 Mon Sep 17 00:00:00 2001 From: liuyongkai Date: Thu, 1 Dec 2022 14:25:21 +0800 Subject: [PATCH] * Resolve feedback #1461. --- module/product/control.php | 2 +- module/program/model.php | 20 ++++++++++++++++++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/module/product/control.php b/module/product/control.php index e2e4757e2b..5f9a78b411 100755 --- a/module/product/control.php +++ b/module/product/control.php @@ -1368,7 +1368,7 @@ class product extends control $this->view->title = $this->lang->product->line; $this->view->position[] = $this->lang->product->line; - $this->view->programs = array('') + $this->loadModel('program')->getTopPairs(); + $this->view->programs = array('') + $this->loadModel('program')->getTopPairs('', 'withDeleted'); $this->view->lines = $this->product->getLines(); $this->display(); } diff --git a/module/program/model.php b/module/program/model.php index f53edac0b6..4ea12f895f 100644 --- a/module/program/model.php +++ b/module/program/model.php @@ -1031,15 +1031,31 @@ class programModel extends model */ public function getTopPairs($model = '', $mode = '', $isQueryAll = false) { - return $this->dao->select('id,name')->from(TABLE_PROGRAM) + $topPairs = $this->dao->select('id,name')->from(TABLE_PROGRAM) ->where('type')->eq('program') ->andWhere('grade')->eq(1) ->beginIF(strpos($mode, 'noclosed') !== false)->andWhere('status')->ne('closed')->fi() ->beginIF(!$isQueryAll)->andWhere('id')->in($this->app->user->view->programs)->fi() - ->andWhere('deleted')->eq(0) + ->beginIF(strpos($mode, 'withDeleted') === false)->andWhere('deleted')->eq(0)->fi() ->beginIF($model)->andWhere('model')->eq($model)->fi() ->orderBy('`order` asc') ->fetchPairs(); + + if(strpos($mode, 'withDeleted') !== false) + { + $deletedTopPairs = $this->dao->select('id, name')->from(TABLE_PROGRAM) + ->where('type')->eq('program') + ->andWhere('grade')->eq(1) + ->andWhere('deleted')->eq(1) + ->fetchPairs(); + + foreach($topPairs as $id => $name) + { + if(isset($deletedTopPairs[$id])) $topPairs[$id] .= ' (' . $this->lang->program->deleted . ')'; + } + } + + return $topPairs; } /**