scope 파라미터로 사용ALL, CREATED, ASSIGNED)@GetMapping
public ResponseEntity<PageResponse<TaskResponse>> list(
@RequestParam(name = "scope", required = false, defaultValue = "ALL") TaskScope scope,
@AuthenticationPrincipal UserDetails principal
) {
Long userId = Long.parseLong(principal.getUsername());
Page<TaskResponse> result = taskQueryService.list(scope, userId);
return ResponseEntity.ok(PageResponse.from(result));
}
scope=CREATED → 자신이 생성한 업무만 조회scope=ASSIGNED → 자신이 담당자로 배정된 업무만 조회scope=ALL → 전체 업무 조회<aside> 💡
포인트
TaskScope는 조회 필터 역할@RequestParam Enum 변환 지원)switch(scope)로 조건 분기 → DB 쿼리 최적화 가능
</aside>