status !== 'transit') { throw new ApiException(40902, '仅配送中的任务允许此操作', 409); } return $this->handle($task, $input, $user); } abstract protected function handle(WaterDelivery $task, array $input, int $user): array; }