hasMany(projectTask::class, 'column_id', 'id')->whereNull('archived_at')->orderBy('sort')->orderBy('id'); } /** * 删除列表 * @return bool */ public function deleteColumn() { $result = AbstractModel::transaction(function () { $tasks = ProjectTask::whereColumnId($this->id)->get(); foreach ($tasks as $task) { $task->deleteTask(); } if ($this->delete()) { $this->addLog("删除列表:" . $this->name); return Base::retSuccess('删除成功', $this->toArray()); } else { return Base::retError('删除失败', $this->toArray()); } }); return Base::isSuccess($result); } /** * 添加项目日志 * @param string $detail * @param int $userid * @return ProjectLog */ public function addLog($detail, $userid = 0) { $log = ProjectLog::createInstance([ 'project_id' => $this->project_id, 'column_id' => $this->id, 'task_id' => 0, 'userid' => $userid ?: User::token2userid(), 'detail' => $detail, ]); $log->save(); return $log; } }