Skip to content

[FE 연동]: 어드민 순서형 리소스 bulk reorder API 적용 #260

Description

@Whale0928

배경

어드민 순서형 리소스 bulk reorder API가 개발 서버에 배포되었습니다.

대상 원 이슈: #258
API PR:

연동 대상

어드민에서 드래그 앤 드롭 또는 순서 변경 UI를 사용하는 리소스에 bulk reorder API를 적용합니다.

[Admin UI]
   |
   | drag & drop 결과 ids 배열 생성
   v
[FE]
   |
   | PATCH /bulk/reorder
   v
[Admin API]
   |
   | ids 순서대로 1..N 재번호 부여
   v
[DB]
   |
   | 목록 재조회
   v
[Admin UI]

대상 API:

PATCH /admin/api/v1/banners/bulk/reorder
PATCH /admin/api/v1/curations/bulk/reorder
PATCH /admin/api/v1/distilleries/bulk/reorder
PATCH /admin/api/v1/regions/bulk/reorder
PATCH /admin/api/v1/regions/{parentId}/children/bulk/reorder

공통 요청:

{
  "ids": [5, 17, 1, 29]
}

기대 동작

요청한 ids 배열 순서가 최종 정렬 순서가 됩니다.

요청: [5, 17, 1, 29]

저장 결과:
5  -> order 1
17 -> order 2
1  -> order 3
29 -> order 4

미포함 항목:
기존 상대 순서를 유지하며 뒤로 밀림

주의사항

  • API 호출 후에는 목록을 재조회해서 서버 기준 정렬값을 다시 반영해야 합니다.
  • distilleriesid=0 기본값 항목은 reorder 대상에서 제외해야 합니다.
  • regions/{parentId}/children/bulk/reorder는 해당 부모의 직접 자식 region만 요청할 수 있습니다.
  • 중복 ID, 존재하지 않는 ID, scope가 다른 ID는 실패 응답이 내려옵니다.
Region children reorder

parentId = 19

허용:
[child A, child B, child C]

불가:
[child A, 다른 parent의 child]

완료 기준

  • 배너 순서 변경 UI가 bulk reorder API를 사용합니다.
  • 큐레이션 순서 변경 UI가 bulk reorder API를 사용합니다.
  • 증류소 순서 변경 UI가 id=0을 제외하고 bulk reorder API를 사용합니다.
  • 지역 전체/자식 지역 순서 변경 UI가 scope에 맞는 bulk reorder API를 사용합니다.
  • 순서 변경 후 목록 재조회로 화면 순서가 서버 상태와 일치합니다.

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions