From 653f817e83bd543293d5f8fc24841ed1ae374c74 Mon Sep 17 00:00:00 2001 From: holan20180123 <56391770@qq.com> Date: Tue, 8 Dec 2020 10:28:35 +0800 Subject: [PATCH] * Fix bug #3642. --- module/testtask/model.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/module/testtask/model.php b/module/testtask/model.php index fd5c26bf1f..7109d8f257 100644 --- a/module/testtask/model.php +++ b/module/testtask/model.php @@ -551,12 +551,15 @@ class testtaskModel extends model */ public function getLinkableCasesByTestTask($testTask, $linkedCases, $query, $pager) { - $caseList = $this->dao->select("`case`")->from(TABLE_TESTRUN)->where('task')->eq($testTask)->andWhere('`case`')->notin($linkedCases)->fetchPairs('case'); + $query = preg_replace('/`(\w+)`/', 't1.`$1`', $query); - return $this->dao->select("*")->from(TABLE_CASE)->where($query) - ->andWhere('id')->in($caseList) - ->andWhere('PRJ')->eq($this->session->PRJ) - ->andWhere('status')->ne('wait') + return $this->dao->select("t1.*,t2.lastRunner,t2.lastRunDate,t2.lastRunResult")->from(TABLE_CASE)->alias('t1') + ->leftJoin(TABLE_TESTRUN)->alias('t2')->on('t1.id = t2.case') + ->where($query) + ->andWhere('t1.id')->notin($linkedCases) + ->andWhere('t2.task')->eq($testTask) + ->andWhere('t1.PRJ')->eq($this->session->PRJ) + ->andWhere('t1.status')->ne('wait') ->page($pager) ->fetchAll(); }