belongsTo(Task::class, 'task_id', 'id'); } /** * 获取用户任务进度 * * @return HasMany */ public function progress(): HasMany { return $this->hasMany(TaskUserProgress::class, 'task_id', 'task_id') ->where('user_id', $this->user_id); } /** * 获取任务完成日志 * * @return HasMany */ public function completionLogs(): HasMany { return $this->hasMany(TaskCompletionLog::class, 'user_id', 'user_id') ->where('task_id', $this->task_id); } /** * 获取任务奖励日志 * * @return HasMany */ public function rewardLogs(): HasMany { return $this->hasMany(TaskRewardLog::class, 'user_task_id', 'id'); } /** * 获取任务消耗日志 * * @return HasMany */ public function costLogs(): HasMany { return $this->hasMany(TaskCostLog::class, 'user_id', 'user_id') ->where('task_id', $this->task_id); } }