Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

@Tag(name = "로그인 / 로그아웃 / 토큰 재발급")
@Tag(name = "로그인 / 로그아웃")
@WebAdapter
@RequiredArgsConstructor
@RequestMapping("/api/auths")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
import jakarta.validation.constraints.Pattern;

public record RegisterMemberRequest(
@NotBlank @Schema(description = "회원 이름")
@NotBlank @Schema(description = "회원 이름", example = "서주원")
String name,
@NotBlank
@Pattern(regexp = "^[a-zA-Z0-9_+&*-]+(?:\\.[a-zA-Z0-9_+&*-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,7}$",
message = "올바른 이메일 형식이 아닙니다.")
@Schema(description = "회원 이메일")
@Schema(description = "회원 이메일", example = "siena@gmail.com")
String email,
@NotBlank @Schema(description = "회원 닉네임, 로그인할 때 쓰입니다.")
@NotBlank @Schema(description = "회원 닉네임, 로그인할 때 쓰입니다.", example = "siena.it")
@Pattern(regexp = "^[a-z]{3,10}\\.[a-z]{1,5}$",
message = "올바른 닉네임 형식이 아닙니다.")
String nickname,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,37 +5,41 @@
import clap.server.application.port.inbound.statistics.FindPeriodTaskRequestUsecase;
import clap.server.application.port.inbound.statistics.FindSubCategoryTaskRequestUsecase;
import clap.server.common.annotation.architecture.WebAdapter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.Map;

@Tag(name = "작업 관련 통계")
@WebAdapter
@RequiredArgsConstructor
@RequestMapping("/api/tasks/statistics")
public class FindStatisticsController {
private final FindPeriodTaskRequestUsecase findPeriodTaskRequestUsecase;
private final FindPeriodTaskProcessUsecase findPeriodTaskProcessUsecase;
private final FindCategoryTaskRequestUsecase findCategoryTaskRequestUsecase;
private final FindSubCategoryTaskRequestUsecase findSubCategoryTaskRequestUsecase;
// private final ManagerTaskProcessUsecase managerTaskProcessUsecase;

@GetMapping(value = "/task/statistics/task-requests-by-period")
@GetMapping(value = "/task-requests-by-period")
public ResponseEntity<Map<String, Long>> aggregatePeriodTaskRequest(@RequestParam String period) {
return ResponseEntity.ok(findPeriodTaskRequestUsecase.aggregatePeriodTaskRequest(period));
}

@GetMapping("/task/statistics/task-processed-by-period")
@GetMapping("/task-processed-by-period")
public ResponseEntity<Map<String, Long>> aggregatePeriodTaskProcess(@RequestParam String period) {
return ResponseEntity.ok(findPeriodTaskProcessUsecase.aggregatePeriodTaskProcess(period));
}
@GetMapping("/task/statistics/task-requests-by-category")
@GetMapping("/task-requests-by-category")
public ResponseEntity<Map<String, Long>> aggregateCategoryTaskRequest(@RequestParam String period) {
return ResponseEntity.ok(findCategoryTaskRequestUsecase.aggregateCategoryTaskRequest(period));
}

@GetMapping("/task/statistics/task-requests-by-subcategory")
@GetMapping("/task-requests-by-subcategory")
public ResponseEntity<Map<String, Long>> aggregateSubCategoryTaskRequest(@RequestParam String period, @RequestParam String mainCategory) {
return ResponseEntity.ok(findSubCategoryTaskRequestUsecase.aggregateSubCategoryTaskRequest(period, mainCategory));
}
Expand Down
Loading