diff --git a/module/project/model.php b/module/project/model.php index 5553451523..688437b3a8 100755 --- a/module/project/model.php +++ b/module/project/model.php @@ -632,7 +632,7 @@ class projectModel extends model return $this->dao->select('id')->from(TABLE_PROJECT) ->where('type')->eq('project') ->andWhere('deleted')->eq(0) - ->andWhere('path')->like("{$parentProgram->path}%") + ->andWhere("CONCAT(',', path, ',')")->like("%,{$parentProgram->id},%") ->fetchPairs('id'); } diff --git a/module/project/test/model/getbrotherprojects.php b/module/project/test/model/getbrotherprojects.php index d3ac1f4b3d..dd42a73478 100755 --- a/module/project/test/model/getbrotherprojects.php +++ b/module/project/test/model/getbrotherprojects.php @@ -1,28 +1,38 @@ #!/usr/bin/env php gen(100); /** title=测试 projectModel->getBrotherProjects(); +timeout=0 cid=1 -pid=1 -获取项目id为11同一个项目集下的所有项目个数 >> 9 -获取id为731的顶级项目兄弟项目个数 >> 1 +- 获取项目id为79同一个项目集下的所有项目个数 @9 + +- 获取项目id为100同一个项目集下的所有项目个数 @9 + +- 获取项目id为79同一个项目集下的兄弟项目id + - 属性19 @19 + - 属性29 @29 + - 属性39 @39 + +- 获取项目id为100同一个项目集下的兄弟项目id + - 属性20 @20 + - 属性30 @30 + - 属性40 @40 */ global $tester; -$tester->app->loadConfig('execution'); -$project = new Project(); +$tester->loadModel('project'); -$projectInst = $project->project->getById(11); -$programProjects = $project->getBrotherProjectsTest($projectInst); -$projectInst = $project->project->getById(731); -$depProjects = $project->getBrotherProjectsTest($projectInst); +$project79 = $tester->project->getById(79); +$project100 = $tester->project->getById(100); -r(count($programProjects)) && p() && e('9'); // 获取项目id为11同一个项目集下的所有项目个数 -r(count($depProjects)) && p() && e('1'); // 获取id为731的顶级项目兄弟项目个数 \ No newline at end of file +r(count($tester->project->getBrotherProjects($project79))) && p() && e('9'); // 获取项目id为79同一个项目集下的所有项目个数 +r(count($tester->project->getBrotherProjects($project100))) && p() && e('9'); // 获取项目id为100同一个项目集下的所有项目个数 +r($tester->project->getBrotherProjects($project79)) && p('19,29,39') && e('19,29,39'); // 获取项目id为79同一个项目集下的兄弟项目id +r($tester->project->getBrotherProjects($project100)) && p('20,30,40') && e('20,30,40'); // 获取项目id为100同一个项目集下的兄弟项目id \ No newline at end of file