diff --git a/module/task/tao.php b/module/task/tao.php index e69db214b8..f9d877d77c 100644 --- a/module/task/tao.php +++ b/module/task/tao.php @@ -404,38 +404,35 @@ class taskTao extends taskModel } /** - * 更新父任务状态时记录修改日志。 - * Create action record when update parent task. + * 更新自动更新任务状态时记录修改日志。 + * Create action record when auto update task. * - * @param object $oldParentTask + * @param object $oldTask * @access protected * @return void */ - protected function createUpdateParentTaskAction(object $oldParentTask) :void + protected function createAutoUpdateTaskAction(object $oldTask) :void { - $newParentTask = $this->dao->select('*')->from(TABLE_TASK)->where('id')->eq($oldParentTask->id)->fetch(); + $newTask = $this->dao->select('*')->from(TABLE_TASK)->where('id')->eq($oldTask->id)->fetch(); - unset($oldParentTask->subStatus); - unset($newParentTask->subStatus); + unset($oldTask->subStatus); + unset($newTask->subStatus); - $status = $newParentTask->status; - $changes = common::createChanges($oldParentTask, $newParentTask); + $changes = common::createChanges($oldTask, $newTask); $action = ''; - if($status == 'done' && $oldParentTask->status != 'done') $action = 'Finished'; - if($status == 'closed' && $oldParentTask->status != 'closed') $action = 'Closed'; - if($status == 'pause' && $oldParentTask->status != 'paused') $action = 'Paused'; - if($status == 'cancel' && $oldParentTask->status != 'cancel') $action = 'Canceled'; - if($status == 'doing' && $oldParentTask->status == 'wait') $action = 'Started'; - if($status == 'doing' && $oldParentTask->status == 'pause') $action = 'Restarted'; - - if($status == 'doing' && $oldParentTask->status != 'wait' && $oldParentTask->status != 'pause') $action = 'Activated'; - - if($status == 'wait' && $oldParentTask->status != 'wait') $action = 'Adjusttasktowait'; + if($newTask->status == 'done' && $oldTask->status != 'done') $action = 'Finished'; + if($newTask->status == 'closed' && $oldTask->status != 'closed') $action = 'Closed'; + if($newTask->status == 'pause' && $oldTask->status != 'pause') $action = 'Paused'; + if($newTask->status == 'cancel' && $oldTask->status != 'cancel') $action = 'Canceled'; + if($newTask->status == 'doing' && $oldTask->status == 'wait') $action = 'Started'; + if($newTask->status == 'doing' && $oldTask->status == 'pause') $action = 'Restarted'; + if($newTask->status == 'wait' && $oldTask->status != 'wait') $action = 'Adjusttasktowait'; + if($newTask->status == 'doing' && $oldTask->status != 'wait' && $oldTask->status != 'pause') $action = 'Activated'; if(!$action) return; - $actionID = $this->loadModel('action')->create('task', $oldParentTask->id, $action, '', '', '', false); + $actionID = $this->loadModel('action')->create('task', $oldTask->id, $action, '', 'auto', '', false); $this->action->logHistory($actionID, $changes); } @@ -996,64 +993,65 @@ class taskTao extends taskModel * 根据子任务以及父任务的状态更新父任务。 * Update parent task status by child and parent status. * - * @param object $parentTask + * @param object $task * @param object $childTask * @param string $status * @access protected - * @return string + * @return void */ - protected function updateTaskByChildAndStatus(object $parentTask, object $childTask, string $status) :void + protected function autoUpdateTaskByStatus(object $task, object $childTask, string $status) :void { - $now = helper::now(); - $task = new stdclass(); - $task->status = $status; + $now = helper::now(); + $account = $this->app->user->account; + $data = new stdclass(); + $data->status = $status; if($status == 'done') { - $task->assignedTo = $parentTask->openedBy; - $task->assignedDate = $now; - $task->finishedBy = $this->app->user->account; - $task->finishedDate = $now; + $data->assignedTo = $task->openedBy; + $data->assignedDate = $now; + $data->finishedBy = $account; + $data->finishedDate = $now; } if($status == 'cancel') { - $task->assignedTo = $parentTask->openedBy; - $task->assignedDate = $now; - $task->finishedBy = ''; - $task->finishedDate = null; - $task->canceledBy = $this->app->user->account; - $task->canceledDate = $now; + $data->assignedTo = $task->openedBy; + $data->assignedDate = $now; + $data->finishedBy = ''; + $data->finishedDate = null; + $data->canceledBy = $account; + $data->canceledDate = $now; } if($status == 'closed') { - $task->assignedTo = 'closed'; - $task->assignedDate = $now; - $task->closedBy = $this->app->user->account; - $task->closedDate = $now; - $task->closedReason = 'done'; + $data->assignedTo = 'closed'; + $data->assignedDate = $now; + $data->closedBy = $account; + $data->closedDate = $now; + $data->closedReason = $task->status == 'cancel' ? 'cancel' : 'done'; } if($status == 'doing' || $status == 'wait') { - if($parentTask->assignedTo == 'closed') + if($task->assignedTo == 'closed') { - $task->assignedTo = $childTask->assignedTo; - $task->assignedDate = $now; + $data->assignedTo = $childTask->assignedTo; + $data->assignedDate = $now; } - $task->finishedBy = ''; - $task->finishedDate = null; - $task->closedBy = ''; - $task->closedDate = null; - $task->closedReason = ''; + $data->finishedBy = ''; + $data->finishedDate = null; + $data->closedBy = ''; + $data->closedDate = null; + $data->closedReason = ''; } - $task->lastEditedBy = $this->app->user->account; - $task->lastEditedDate = $now; + $data->lastEditedBy = $account; + $data->lastEditedDate = $now; - $this->dao->update(TABLE_TASK)->data($task)->where('id')->eq($parentTask->id)->exec(); + $this->dao->update(TABLE_TASK)->data($data)->where('id')->eq($task->id)->exec(); } /** diff --git a/module/task/test/lib/task.unittest.class.php b/module/task/test/lib/task.unittest.class.php index 4fe5c53407..3830330882 100755 --- a/module/task/test/lib/task.unittest.class.php +++ b/module/task/test/lib/task.unittest.class.php @@ -1891,11 +1891,11 @@ class taskTest * @access public * @return object */ - public function updateTaskByChildAndStatusTest(object $parentTask, object $childTask, string $status) + public function autoUpdateTaskByStatusTest(object $parentTask, object $childTask, string $status) { $now = time(); - $this->objectModel->updateTaskByChildAndStatus($parentTask, $childTask, $status); + $this->objectModel->autoUpdateTaskByStatus($parentTask, $childTask, $status); $task = $this->objectModel->getByID(intval($parentTask->id)); @@ -1922,9 +1922,9 @@ class taskTest * @access public * @return object */ - public function createUpdateParentTaskActionTest(object $oldParentTask) + public function createAutoUpdateTaskActionTest(object $oldParentTask) { - $this->objectModel->createUpdateParentTaskAction($oldParentTask); + $this->objectModel->createAutoUpdateTaskAction($oldParentTask); return $this->objectModel->dao->select('action')->from(TABLE_ACTION)->where('objectType')->eq('task')->andWhere('objectID')->eq($oldParentTask->id)->orderBy('`id` desc')->fetch();; } diff --git a/module/task/test/tao/autoupdatetaskbystatus.php b/module/task/test/tao/autoupdatetaskbystatus.php new file mode 100644 index 0000000000..5baa54987d --- /dev/null +++ b/module/task/test/tao/autoupdatetaskbystatus.php @@ -0,0 +1,90 @@ +#!/usr/bin/env php +autoUpdateTaskByStatus(); +cid=0 + +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'done' + - 属性status @done + - 属性assignedTo @user1 + - 属性assignedDate @~c:<3~ + - 属性finishedBy @user4 + - 属性finishedDate @~c:<3~ +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'cancel' + - 属性status @cancel + - 属性assignedTo @user1 + - 属性assignedDate @~c:<3~ + - 属性canceledBy @user4 + - 属性canceledDate @~c:<3~ +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'cancel' + - 属性status @cancel + - 属性assignedTo @user1 + - 属性assignedDate @~c:<3~ + - 属性canceledBy @user4 + - 属性canceledDate @~c:<3~ +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'closed' + - 属性status @closed + - 属性assignedTo @closed + - 属性assignedDate @~c:<3~ + - 属性closedBy @user4 + - 属性closedDate @~c:<3~ + - 属性closedReason @done +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'doing' + - 属性status @doing + - 属性finishedBy @~~ + - 属性finishedDate @~c:>100~ + - 属性closedBy @~~ + - 属性closedDate @~c:>100~ +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'wait' + - 属性status @wait + - 属性finishedBy @~~ + - 属性finishedDate @~c:>100~ + - 属性closedBy @~~ + - 属性closedDate @~c:>100~ +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'doing' + - 属性status @doing + - 属性finishedBy @~~ + - 属性finishedDate @~c:>100~ + - 属性closedBy @~~ + - 属性closedDate @~c:>100~ + - 属性assignedTo @user3 + - 属性assignedDate @~c:<3~ +- 执行task模块的autoUpdateTaskByStatusTest方法,参数是$parentTask, $childTask, 'doing' + - 属性lastEditedBy @user4 + - 属性lastEditedDate @~c:<3~ + +*/ + +zenData('user')->loadYaml('user')->gen(5); +su('user4'); + +$task = new taskTest(); + +zenData('task')->gen(10); + +$parentTask = new stdclass(); +$parentTask->id = 1; +$parentTask->openedBy = 'user1'; +$parentTask->assignedTo = 'user2'; +$parentTask->status = 'doing'; + +$childTask = new stdclass(); +$childTask->assignedTo = 'user3'; + +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'done')) && p('status,assignedTo,assignedDate,finishedBy,finishedDate') && e('done,user1,~c:<3~,user4,~c:<3~'); +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'cancel')) && p('status,assignedTo,assignedDate,canceledBy,canceledDate') && e('cancel,user1,~c:<3~,user4,~c:<3~'); +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'cancel')) && p('status,assignedTo,assignedDate,canceledBy,canceledDate') && e('cancel,user1,~c:<3~,user4,~c:<3~'); + +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'closed')) && p('status,assignedTo,assignedDate,closedBy,closedDate,closedReason') && e('closed,closed,~c:<3~,user4,~c:<3~,done'); + +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'doing')) && p('status,finishedBy,finishedDate,closedBy,closedDate') && e('doing,~~,~c:>100~,~~,~c:>100~'); +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'wait')) && p('status,finishedBy,finishedDate,closedBy,closedDate') && e('wait,~~,~c:>100~,~~,~c:>100~'); + +$parentTask->assignedTo = 'closed'; +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'doing')) && p('status,finishedBy,finishedDate,closedBy,closedDate,assignedTo,assignedDate') && e('doing,~~,~c:>100~,~~,~c:>100~,user3,~c:<3~'); + +r($task->autoUpdateTaskByStatusTest($parentTask, $childTask, 'doing')) && p('lastEditedBy,lastEditedDate') && e('user4,~c:<3~'); diff --git a/module/task/test/tao/createautoupdatetaskaction.php b/module/task/test/tao/createautoupdatetaskaction.php new file mode 100644 index 0000000000..38cc34ad28 --- /dev/null +++ b/module/task/test/tao/createautoupdatetaskaction.php @@ -0,0 +1,124 @@ +#!/usr/bin/env php +createAutoUpdateTaskAction(); +cid=0 + +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @activated +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @restarted +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @activated +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @started +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @activated +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @finished +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @finished +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @finished +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @finished +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @finished +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @canceled +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @canceled +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @canceled +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @canceled +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @canceled +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @closed +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @closed +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @closed +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @closed +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @closed +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait +- 执行task模块的createAutoUpdateTaskActionTest方法,参数是$oldParentTask 属性action @adjusttasktowait + +*/ + +zenData('user')->loadYaml('user')->gen(5); +zenData('project')->loadYaml('project')->gen(3); +su('user4'); + +$task = new taskTest(); + +zenData('task')->loadYaml('task')->gen(6); + +$oldParentTask = new stdclass(); + +$oldParentTask->id = 1; +$oldParentTask->status = 'closed'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'pause'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'cancel'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'wait'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'doing'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); + +$oldParentTask->id = 2; +$oldParentTask->status = 'done'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('activated'); +$oldParentTask->status = 'pause'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('restarted'); +$oldParentTask->status = 'cancel'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('activated'); +$oldParentTask->status = 'wait'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('started'); +$oldParentTask->status = 'doing'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('activated'); + +$oldParentTask->id = 3; +$oldParentTask->status = 'done'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('finished'); +$oldParentTask->status = 'cancel'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('finished'); +$oldParentTask->status = 'wait'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('finished'); +$oldParentTask->status = 'doing'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('finished'); +$oldParentTask->status = 'closed'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('finished'); + +$oldParentTask->id = 4; +$oldParentTask->status = 'done'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('canceled'); +$oldParentTask->status = 'wait'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('canceled'); +$oldParentTask->status = 'doing'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('canceled'); +$oldParentTask->status = 'closed'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('canceled'); +$oldParentTask->status = 'pause'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('canceled'); + +$oldParentTask->id = 5; +$oldParentTask->status = 'wait'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('closed'); +$oldParentTask->status = 'pause'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('closed'); +$oldParentTask->status = 'done'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('closed'); +$oldParentTask->status = 'closed'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('closed'); +$oldParentTask->status = 'cancel'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('closed'); + +$oldParentTask->id = 6; +$oldParentTask->status = 'done'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'pause'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'cancel'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'closed'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); +$oldParentTask->status = 'cancel'; +r($task->createAutoUpdateTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); diff --git a/module/task/test/tao/createupdateparenttaskaction.php b/module/task/test/tao/createupdateparenttaskaction.php deleted file mode 100644 index e0a6156421..0000000000 --- a/module/task/test/tao/createupdateparenttaskaction.php +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/env php -createUpdateParentTaskAction(); -cid=1 -pid=1 -*/ - -zenData('user')->loadYaml('user')->gen(5); -zenData('project')->loadYaml('project')->gen(1); -su('user4'); - -$task = new taskTest(); - -zenData('task')->loadYaml('task')->gen(6); - -$oldParentTask = new stdclass(); - -$oldParentTask->id = 1; -$oldParentTask->status = 'closed'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('finished'); -$oldParentTask->status = 'pause'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('finished'); -$oldParentTask->status = 'cancel'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('finished'); -$oldParentTask->status = 'wait'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('finished'); -$oldParentTask->status = 'doing'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('finished'); - -$oldParentTask->id = 2; -$oldParentTask->status = 'done'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('closed'); -$oldParentTask->status = 'pause'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('closed'); -$oldParentTask->status = 'cancel'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('closed'); -$oldParentTask->status = 'wait'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('closed'); -$oldParentTask->status = 'doing'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('closed'); - -$oldParentTask->id = 3; -$oldParentTask->status = 'done'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('paused'); -$oldParentTask->status = 'cancel'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('paused'); -$oldParentTask->status = 'wait'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('paused'); -$oldParentTask->status = 'doing'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('paused'); -$oldParentTask->status = 'closed'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('paused'); - -$oldParentTask->id = 4; -$oldParentTask->status = 'done'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('canceled'); -$oldParentTask->status = 'wait'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('canceled'); -$oldParentTask->status = 'doing'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('canceled'); -$oldParentTask->status = 'closed'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('canceled'); -$oldParentTask->status = 'pause'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('canceled'); - -$oldParentTask->id = 5; -$oldParentTask->status = 'wait'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('started'); -$oldParentTask->status = 'pause'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('restarted'); -$oldParentTask->status = 'done'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('activated'); -$oldParentTask->status = 'closed'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('activated'); -$oldParentTask->status = 'cancel'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('activated'); - -$oldParentTask->id = 6; -$oldParentTask->status = 'done'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); -$oldParentTask->status = 'pause'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); -$oldParentTask->status = 'cancel'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); -$oldParentTask->status = 'closed'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); -$oldParentTask->status = 'cancel'; -r($task->createUpdateParentTaskActionTest($oldParentTask)) && p('action') && e('adjusttasktowait'); diff --git a/module/task/test/tao/updatetaskbychildandstatus.php b/module/task/test/tao/updatetaskbychildandstatus.php deleted file mode 100644 index 83733eabeb..0000000000 --- a/module/task/test/tao/updatetaskbychildandstatus.php +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env php -getParentStatusById(); -cid=1 -pid=1 -*/ - -zenData('user')->loadYaml('user')->gen(5); -su('user4'); - -$task = new taskTest(); - -zenData('task')->gen(10); - -$parentTask = new stdclass(); -$parentTask->id = 1; -$parentTask->openedBy = 'user1'; -$parentTask->assignedTo = 'user2'; - -$childTask = new stdclass(); -$childTask->assignedTo = 'user3'; - -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'done')) && p('status,assignedTo,assignedDate,finishedBy,finishedDate') && e('done,user1,~c:<3~,user4,~c:<3~'); -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'cancel')) && p('status,assignedTo,assignedDate,canceledBy,canceledDate') && e('cancel,user1,~c:<3~,user4,~c:<3~'); -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'cancel')) && p('status,assignedTo,assignedDate,canceledBy,canceledDate') && e('cancel,user1,~c:<3~,user4,~c:<3~'); - -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'closed')) && p('status,assignedTo,assignedDate,closedBy,closedDate,closedReason') && e('closed,closed,~c:<3~,user4,~c:<3~,done'); - -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'doing')) && p('status,finishedBy,finishedDate,closedBy,closedDate') && e('doing,~~,~c:>100~,~~,~c:>100~'); -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'wait')) && p('status,finishedBy,finishedDate,closedBy,closedDate') && e('wait,~~,~c:>100~,~~,~c:>100~'); - -$parentTask->assignedTo = 'closed'; -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'doing')) && p('status,finishedBy,finishedDate,closedBy,closedDate,assignedTo,assignedDate') && e('doing,~~,~c:>100~,~~,~c:>100~,user3,~c:<3~'); - -r($task->updateTaskByChildAndStatusTest($parentTask, $childTask, 'doing')) && p('lastEditedBy,lastEditedDate,parent') && e('user4,~c:<3~,-1'); - -