getParsedBody(); $userId = $data['userId'] ?? null; $textId = $data['textId'] ?? null; $name = $data['name'] ?? null; $dateStart = $data['dateStart'] ?? null; $dateEnd = $data['dateEnd'] ?? null; try { $plan = $createPlanUseCase->execute(new CreatePlanRequest( userId: $userId, textId: $textId, name: $name, dateStart: $dateStart, dateEnd: $dateEnd, )); } catch (BadRequestException $exception) { $response->getBody()->write( json_encode(['error' => $exception->getMessage()]) ); return $response->withStatus(400) ->withHeader('Content-Type', 'application/json'); } catch (DomainException $exception) { $response->getBody()->write( json_encode(['error' => $exception->getMessage()]) ); return $response->withStatus(404) ->withHeader('Content-Type', 'application/json'); } $response->getBody()->write(json_encode([ 'id' => $plan->getId(), 'name' => $plan->getName(), ])); return $response->withStatus(201) ->withHeader('Content-Type', 'application/json'); } }