diff --git a/module/design/test/design.class.php b/module/design/test/design.class.php index 91ea05884a..a23f8e2467 100644 --- a/module/design/test/design.class.php +++ b/module/design/test/design.class.php @@ -293,4 +293,21 @@ class designTest if(dao::isError()) return dao::getError(); return $designs; } + + /** + * 获取设计变更后受影响的任务。 + * Get affected tasks after design changed. + * + * @param int $designID + * @access public + * @return array + */ + public function getAffectedScopeTest(int $designID = 0): array + { + $design = $this->objectModel->getByID($designID); + if(!$design) $design = new stdclass(); + + $design = $this->objectModel->getAffectedScope($design); + return isset($design->tasks) ? $design->tasks : array(); + } } diff --git a/module/design/test/model/getaffectedscope.php b/module/design/test/model/getaffectedscope.php new file mode 100755 index 0000000000..16b28453c5 --- /dev/null +++ b/module/design/test/model/getaffectedscope.php @@ -0,0 +1,30 @@ +#!/usr/bin/env php +getAffectedScope(); +cid=1 + +- 测试设计ID为0时,受影响的任务信息 @0 +- 测试设计ID为1时,受影响的任务信息 + - 第1条的id属性 @4 + - 第1条的name属性 @关联设计的任务4 + - 第1条的design属性 @1 +- 测试设计ID为2时,受影响的任务信息 @0 +- 测试设计ID不存在时,受影响的任务信息 @0 + +*/ + +include dirname(__FILE__, 5) . '/test/lib/init.php'; +include dirname(__FILE__, 2) . '/design.class.php'; + +zdTable('design')->config('design')->gen(2); +zdTable('task')->config('task')->gen(5); + +$idList = array(0, 1, 2, 3); + +$designTester = new designTest(); +r($designTester->getAffectedScopeTest($idList[0])) && p() && e('0'); // 测试设计ID为0时,受影响的任务信息 +r($designTester->getAffectedScopeTest($idList[1])) && p('1:id,name,design') && e('4,关联设计的任务4,1'); // 测试设计ID为1时,受影响的任务信息 +r($designTester->getAffectedScopeTest($idList[2])) && p() && e('0'); // 测试设计ID为2时,受影响的任务信息 +r($designTester->getAffectedScopeTest($idList[3])) && p() && e('0'); // 测试设计ID不存在时,受影响的任务信息 diff --git a/module/design/test/yaml/task.yaml b/module/design/test/yaml/task.yaml new file mode 100644 index 0000000000..f12dcdda5b --- /dev/null +++ b/module/design/test/yaml/task.yaml @@ -0,0 +1,11 @@ +title: zt_task +author: Shujie Tian +version: 1.0.0 +fields: + - field: id + range: 1-100 + - field: name + range: 1-100 + prefix: '关联设计的任务' + - field: design + range: 1