Skip to content

[Backend] 질문 복사 API #475

Description

@won005

개요

설문 내 질문을 복사하여 같은 설문에 추가하는 API를 구현합니다.

상위 에픽: #406
의존성: #428 (설문 CRUD API)

API 엔드포인트

  • POST /api/v1/surveys/{surveyId}/questions/{questionId}/copy - 질문 복사 (OPERATOR 이상)

비즈니스 규칙 (검증 기준서 기반)

INV-23: 복사 시 soft delete된 요소 제외

  • deleted = true인 선택지·행은 복사 대상에서 제외

INV-24: 질문 복사 시 질문 수 제한 검증

  • 복사 전 현재 질문 수 + 1 <= 50 검증
  • 초과 시 SURVEY_QUESTION_LIMIT_EXCEEDED 에러 반환

INV-25: 복사된 엔티티는 새로운 ID 부여

  • 복사된 질문·선택지·행 모두 새로운 ID 부여

기타

  • 복사된 질문의 displayOrder는 맨 뒤에 배치
  • 질문 title, description, required, questionType 등 모든 속성 복사

테스트 시나리오

  • F19: 같은 설문 내 질문 복사 기본 동작
  • F20: 질문 수 상한(50개) 도달 시 복사 실패
  • SEC-11: 비운영진(MEMBER) 질문 복사 시도 → 403

참조

  • 검증 기준서: docs/criteria/survey/survey-criteria-v1.md (INV-23, INV-24, INV-25)

Metadata

Metadata

Assignees

Labels

backend백엔드 작업

Type

No type
No fields configured for issues without a type.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions