* testcaseModel: fix error of batch scene of cases.

This commit is contained in:
liugang
2023-08-15 16:38:02 +08:00
parent f744092503
commit 80d0d16175
+7 -6
View File
@@ -3019,20 +3019,21 @@ class testcaseModel extends model
*/
public function batchChangeScene($caseIDList, $sceneID)
{
$caseIDList = $this->filterIdList($caseIDList);
$caseIDList = array_filter($caseIDList);
if(!$caseIDList) return false;
$oldCases = $this->getByList($caseIDList, "scene != {$sceneID}");
$this->dao->update(TABLE_CASE)->set('scene')->eq($sceneID)->where('scene')->ne($sceneID)->andWhere('id')->in($caseIDList)->exec();
if(dao::isError()) return false;
$this->loadModel('action');
$oldCases = $this->getByList($caseIDList, "scene != '{$sceneID}'");
$case = new stdclass();
$case->scene = $sceneID;
$case->lastEditedBy = $this->app->user->account;
$case->lastEditedDate = helper::now();
$this->dao->update(TABLE_CASE)->data($case)->where('scene')->ne($sceneID)->andWhere('id')->in($caseIDList)->exec();
if(dao::isError()) return false;
$this->loadModel('action');
foreach($oldCases as $oldCase)
{
$changes = common::createChanges($oldCase, $case);