public function afterSave($insert, $changed) { if ($insert) { foreach (WorkflowTask::findAll(['workflow_id' => $this->workflow_id]) as $orig) { $task = new Task(); $skips = ['workflow_task_id', 'workflow_id', 'regist_date', 'update_date']; foreach (Task::getTableSchema()->columnNames as $cols) { if (in_array($cols, $skips)) { continue; } $task->{$cols} = $orig->{$cols}; } $task->user_id = Yii::$app->user->id; $task->project_id = $this->project_id; $task->save(); } } parent::afterSave($insert, $changed); }
/** * Lists all Workflow models. * @return mixed */ public function actionIndex() { $searchModel = new WorkflowSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'relationalDataProvider' => new ActiveDataProvider(['query' => WorkflowTask::find()])]); }
/** * @return \yii\db\ActiveQuery */ public function getWorkflowTasks() { return $this->hasMany(WorkflowTask::className(), ['workflow_id' => 'workflow_id']); }