diff --git a/module/task/test/model/processtask.php b/module/task/test/model/processtask.php index bab1b91587..4bb599bd5a 100755 --- a/module/task/test/model/processtask.php +++ b/module/task/test/model/processtask.php @@ -7,88 +7,83 @@ su('admin'); /** title=taskModel->processTask(); +timeout=0 cid=1 -pid=1 -根据taskID计算wait 未延迟的任务进度 >> ,,normal,75 -根据taskID计算wait 延迟的任务进度 >> 1,,normal,75 -根据taskID计算doing 延迟的任务进度 >> 1,,normal,80 -根据taskID计算doing 未延迟的任务进度 >> ,,normal,80 -根据taskID计算done 延迟的任务进度 >> ,,normal,100 -根据taskID计算算done 未延迟的任务进度 >> ,,normal,100 +- 计算一个不存在的任务进度 @任务未找到 + +- 根据taskID计算wait的任务进度 + - 属性productType @normal + - 属性progress @75 + +- 根据taskID计算wait的任务进度及任务团队 + - 属性productType @branch + - 属性progress @80 + - 属性teamMembers @用户1,用户2,用户3,用户4,用户5 + +- 根据taskID计算doing的任务进度 + - 属性productType @platform + - 属性progress @83 + +- 根据taskID计算done的任务进度 + - 属性productType @normal + - 属性progress @100 + +- 根据taskID计算pause的任务进度 + - 属性productType @branch + - 属性progress @88 */ -$task1 = new stdclass(); -$task1->status = 'wait'; -$task1->deadline = '+1day'; -$task1->storyStatus = 'draft'; -$task1->latestStoryVersion = '1'; -$task1->storyVersion = '1'; -$task1->product = '1'; -$task1->assignedTo = 'po82'; -$task1->consumed = '3'; -$task1->left = '1'; +$task = zdTable('task'); +$task->id->range('1-7'); +$task->execution->range('1-7'); +$task->name->prefix("任务")->range('1-7'); +$task->left->range('1,1,1,0,1,0,0'); +$task->story->range('1-5'); +$task->storyVersion->range('1,2,4,4,5'); +$task->mode->range(" , multi, , , , ,"); +$task->estStarted->range('2022\-01\-01'); +$task->deadline->range('2022\-01\-01'); +$task->assignedTo->prefix("user")->range('1-7'); +$task->status->range("wait,wait,doing,done,pause,cancel,closed"); +$task->gen(5); -$task2 = new stdclass(); -$task2->status = 'doing'; -$task2->deadline = '-1day'; -$task2->storyStatus = 'draft'; -$task2->latestStoryVersion = '1'; -$task2->storyVersion = '1'; -$task2->product = '9'; -$task2->assignedTo = ''; -$task2->consumed = '3'; -$task2->left = '1'; +$story = zdTable('story'); +$story->id->range('1-5'); +$story->product->range('1-5'); +$story->title->prefix('需求')->range('1-5'); +$story->status->range('active'); +$story->version->range('1-5'); +$story->gen(5); -$task3 = new stdclass(); -$task3->status = 'doing'; -$task3->deadline = '-1day'; -$task3->storyStatus = 'draft'; -$task3->latestStoryVersion = '1'; -$task3->storyVersion = '1'; -$task3->product = '2'; -$task3->assignedTo = ''; -$task3->consumed = '4'; -$task3->left = '1'; +$product = zdTable('product'); +$product->id->range('1-5'); +$product->name->prefix('产品')->range('1-5'); +$product->type->range('normal,branch,platform'); +$product->status->range('normal,closed'); +$product->gen(5); -$task4 = new stdclass(); -$task4->status = 'doing'; -$task4->deadline = '+1day'; -$task4->storyStatus = 'draft'; -$task4->latestStoryVersion = '1'; -$task4->storyVersion = '1'; -$task4->product = '2'; -$task4->assignedTo = ''; -$task4->consumed = '4'; -$task4->left = '1'; +$taskteam = zdTable('taskteam'); +$taskteam->id->range('1-5'); +$taskteam->task->range('2'); +$taskteam->account->prefix("user")->range('1-5'); +$taskteam->estimate->range('5'); +$taskteam->consumed->range('0'); +$taskteam->left->range('5'); +$taskteam->status->range("wait"); +$taskteam->gen(5); -$task5 = new stdclass(); -$task5->status = 'done'; -$task5->deadline = '-1day'; -$task5->storyStatus = 'draft'; -$task5->latestStoryVersion = '1'; -$task5->storyVersion = '1'; -$task5->product = '9'; -$task5->assignedTo = ''; -$task5->consumed = '11'; -$task5->left = '0'; +$effort = zdTable('effort'); +$effort->gen(1); -$task6 = new stdclass(); -$task6->status = 'done'; -$task6->deadline = '+1day'; -$task6->storyStatus = 'draft'; -$task6->latestStoryVersion = '1'; -$task6->storyVersion = '1'; -$task6->product = '9'; -$task6->assignedTo = ''; -$task6->consumed = '11'; -$task6->left = '0'; +$user = zdTable('user'); +$user->gen(20); $task = new taskTest(); -r($task->processTaskTest($task1)) && p('delay,needConfirm,productType,progress') && e(',,normal,75'); //根据taskID计算wait 未延迟的任务进度 -r($task->processTaskTest($task2)) && p('delay,needConfirm,productType,progress') && e('1,,normal,75'); //根据taskID计算wait 延迟的任务进度 -r($task->processTaskTest($task3)) && p('delay,needConfirm,productType,progress') && e('1,,normal,80'); //根据taskID计算doing 延迟的任务进度 -r($task->processTaskTest($task4)) && p('delay,needConfirm,productType,progress') && e(',,normal,80'); //根据taskID计算doing 未延迟的任务进度 -r($task->processTaskTest($task5)) && p('delay,needConfirm,productType,progress') && e(',,normal,100'); //根据taskID计算done 延迟的任务进度 -r($task->processTaskTest($task6)) && p('delay,needConfirm,productType,progress') && e(',,normal,100'); //根据taskID计算算done 未延迟的任务进度 \ No newline at end of file +r($task->processTaskTest(0)) && p() && e('任务未找到'); //计算一个不存在的任务进度 +r($task->processTaskTest(1)) && p('productType,progress') && e('normal,75'); //根据taskID计算wait的任务进度 +r($task->processTaskTest(2)) && p('productType|progress|teamMembers', '|') && e('branch|80|用户1,用户2,用户3,用户4,用户5'); //根据taskID计算wait的任务进度及任务团队 +r($task->processTaskTest(3)) && p('productType,progress') && e('platform,83'); //根据taskID计算doing的任务进度 +r($task->processTaskTest(4)) && p('productType,progress') && e('normal,100'); //根据taskID计算done的任务进度 +r($task->processTaskTest(5)) && p('productType,progress') && e('branch,88'); //根据taskID计算pause的任务进度 \ No newline at end of file diff --git a/module/task/test/task.class.php b/module/task/test/task.class.php index 3916e37222..7a10f14de8 100755 --- a/module/task/test/task.class.php +++ b/module/task/test/task.class.php @@ -819,13 +819,16 @@ class taskTest /** * Test process a task, judge it's status. * - * @param object $task + * @param int $task * @access public - * @return object + * @return string|object|array */ - public function processTaskTest($task) + public function processTaskTest(int $taskID): string|object|array { - $task->deadline = $task->deadline == '-1day' ? date('Y-m-d',strtotime('-1 day')) : date('Y-m-d',strtotime('+1 day')); + $task = $this->objectModel->getByID($taskID); + if(!$task) return '任务未找到'; + + $task->product = $task->id; $object = $this->objectModel->processTask($task); if(dao::isError())