* Optimize code.

This commit is contained in:
wangyuting
2025-05-27 05:42:17 +00:00
parent 8e94ea9efe
commit abbe30163f
2 changed files with 9 additions and 3 deletions
+3 -3
View File
@@ -873,7 +873,7 @@ class baseDAO
{
$alias = preg_match("/`$table`\s+as\s+(\w+)/i", $sql, $matches) ? $matches[1] : '';
$replace = $alias ? "wHeRe ($alias.`isTpl` = '0' OR $alias.`isTpl` IS NULL) AND" : "wHeRe `isTpl` = '0' AND";
$replace = $alias ? "wHeRe $alias.`isTpl` = '0' AND" : "wHeRe `isTpl` = '0' AND";
$sql = str_ireplace("wHeRe", $replace, $sql);
}
else
@@ -886,7 +886,7 @@ class baseDAO
if(strpos($sql, "`$table`") !== false)
{
$alias = preg_match("/`$table`\s+as\s+(\w+)/i", $sql, $mainMatches) ? $mainMatches[1] : '';
$replace = $alias ? "wHeRe ($alias.`isTpl` = '0' OR $alias.`isTpl` IS NULL) AND" : "wHeRe `isTpl` = '0' AND";
$replace = $alias ? "wHeRe $alias.`isTpl` = '0' AND" : "wHeRe `isTpl` = '0' AND";
$sql = str_ireplace("wHeRe", $replace, $sql);
}
@@ -895,7 +895,7 @@ class baseDAO
if(strpos($sql, "`$table`") !== false && !preg_match("/`isTpl`\s*=\s*('1'|1)/", $subSQL))
{
$alias = preg_match("/`$table`\s+as\s+(\w+)/i", $subSQL, $subMatches) ? $subMatches[1] : '';
$replace = $alias ? "wHeRe ($alias.`isTpl` = '0' OR $alias.`isTpl` IS NULL) AND" : "wHeRe `isTpl` = '0' AND";
$replace = $alias ? "wHeRe $alias.`isTpl` = '0' AND" : "wHeRe `isTpl` = '0' AND";
$subSQL = str_ireplace("wHeRe", $replace, $subSQL);
}
$sql = str_ireplace("$$index", $subSQL, $sql);
+6
View File
@@ -1633,6 +1633,12 @@ class productModel extends model
->beginIF($status == 'involved')->leftJoin(TABLE_PROJECTPRODUCT)->alias('t3')->on('t3.product = t1.id')->fi()
->beginIF($status == 'involved')->leftJoin(TABLE_TEAM)->alias('t4')->on("t4.root = t3.project and t4.type='project'")->fi()
->where('t1.deleted')->eq(0)
->beginIF(!$programID)
->andWhere('(t2.`isTpl`')->eq('0')
->orWhere('t2.`isTpl`')->eq('1')
->orWhere('t2.`isTpl`')->isNULL()
->markRight(1)
->fi()
->beginIF($shadow !== 'all')->andWhere('t1.shadow')->eq((int)$shadow)->fi()
->beginIF($programID)->andWhere('t1.program')->eq($programID)->fi()
->beginIF($line > 0)->andWhere('t1.line')->eq($line)->fi()