* [perf] IF the search function has been cached get search fields and parameters from configuration items instead of session.

This commit is contained in:
liugang
2025-08-18 11:09:22 +08:00
parent cf956eaacd
commit 3ef2691fd4
2 changed files with 11 additions and 13 deletions
+6 -10
View File
@@ -34,11 +34,9 @@ class search extends control
$module = empty($module) ? $this->session->searchParams['module'] : $module;
$searchParams = $module . 'searchParams';
$searchForm = $module . 'Form';
$this->searchZen->processSearchParams($module);
$fields = empty($fields) ? json_decode($_SESSION[$searchParams]['searchFields'], true) : $fields;
$params = empty($params) ? json_decode($_SESSION[$searchParams]['fieldParams'], true) : $params;
$searchConfig = $this->search->processSearchParams($module);
$fields = $searchConfig['fields'] ?? $fields;
$params = $searchConfig['params'] ?? $params;
$_SESSION['searchParams']['module'] = $module;
if(empty($_SESSION[$searchForm])) $this->search->initSession($module, $fields, $params);
@@ -84,11 +82,9 @@ class search extends control
$module = empty($module) ? $this->session->searchParams['module'] : $module;
$searchParams = $module . 'searchParams';
$searchForm = $module . 'Form';
$this->searchZen->processSearchParams($module);
$fields = empty($fields) ? json_decode($_SESSION[$searchParams]['searchFields'], true) : $fields;
$params = empty($params) ? json_decode($_SESSION[$searchParams]['fieldParams'], true) : $params;
$searchConfig = $this->search->processSearchParams($module);
$fields = $searchConfig['fields'] ?? $fields;
$params = $searchConfig['fields'] ?? $params;
$_SESSION['searchParams']['module'] = $module;
if(empty($_SESSION[$searchForm])) $this->search->initOldSession($module, $fields, $params);
+5 -3
View File
@@ -120,8 +120,9 @@ class searchModel extends model
/* Init vars. */
$module = $this->post->module;
$searchParams = $module . 'searchParams';
$searchFields = json_decode($_SESSION[$searchParams]['searchFields']);
$fieldParams = json_decode($_SESSION[$searchParams]['fieldParams']);
$searchConfig = $this->processSearchParams($module);
$searchFields = $searchConfig['fields'];
$fieldParams = $searchConfig['params'];
$groupItems = $this->config->search->groupItems;
$groupAndOr = strtoupper($this->post->groupAndOr);
if($groupAndOr != 'AND' && $groupAndOr != 'OR') $groupAndOr = 'AND';
@@ -193,7 +194,8 @@ class searchModel extends model
$groupAndOr = strtoupper($this->post->groupAndOr);
$module = $this->post->module;
$searchParams = $module . 'searchParams';
$fieldParams = json_decode($_SESSION[$searchParams]['fieldParams']);
$searchConfig = $this->processSearchParams($module);
$fieldParams = $searchConfig['params'];
$scoreNum = 0;
if($groupAndOr != 'AND' and $groupAndOr != 'OR') $groupAndOr = 'AND';