| 
5 | 5 | import ddingdong.ddingdongBE.domain.form.controller.dto.request.UpdateFormRequest;  | 
6 | 6 | import ddingdong.ddingdongBE.domain.form.controller.dto.response.FormListResponse;  | 
7 | 7 | import ddingdong.ddingdongBE.domain.form.controller.dto.response.FormResponse;  | 
 | 8 | +import ddingdong.ddingdongBE.domain.form.controller.dto.response.FormStatisticsResponse;  | 
8 | 9 | import io.swagger.v3.oas.annotations.Operation;  | 
9 | 10 | import io.swagger.v3.oas.annotations.media.ArraySchema;  | 
10 | 11 | import io.swagger.v3.oas.annotations.media.Content;  | 
 | 
29 | 30 | @RequestMapping("/server/central")  | 
30 | 31 | public interface CentralFormApi {  | 
31 | 32 | 
 
  | 
32 |  | -  @Operation(summary = "동아리 지원 폼지 생성 API")  | 
33 |  | -  @ApiResponse(responseCode = "201", description = "동아리 지원 폼지 생성 성공")  | 
34 |  | -  @ResponseStatus(HttpStatus.CREATED)  | 
35 |  | -  @SecurityRequirement(name = "AccessToken")  | 
36 |  | -  @PostMapping("/my/forms")  | 
37 |  | -  void createForm(  | 
38 |  | -      @Valid @RequestBody CreateFormRequest createFormRequest,  | 
39 |  | -      @AuthenticationPrincipal PrincipalDetails principalDetails  | 
40 |  | -  );  | 
 | 33 | +    @Operation(summary = "동아리 지원 폼지 생성 API")  | 
 | 34 | +    @ApiResponse(responseCode = "201", description = "동아리 지원 폼지 생성 성공")  | 
 | 35 | +    @ResponseStatus(HttpStatus.CREATED)  | 
 | 36 | +    @SecurityRequirement(name = "AccessToken")  | 
 | 37 | +    @PostMapping("/my/forms")  | 
 | 38 | +    void createForm(  | 
 | 39 | +            @Valid @RequestBody CreateFormRequest createFormRequest,  | 
 | 40 | +            @AuthenticationPrincipal PrincipalDetails principalDetails  | 
 | 41 | +    );  | 
41 | 42 | 
 
  | 
42 |  | -  @Operation(summary = "동아리 지원 폼지 수정 API")  | 
43 |  | -  @ApiResponse(responseCode = "204", description = "동아리 지원 폼지 수정 성공")  | 
44 |  | -  @ResponseStatus(HttpStatus.NO_CONTENT)  | 
45 |  | -  @SecurityRequirement(name = "AccessToken")  | 
46 |  | -  @PutMapping("/my/forms/{formId}")  | 
47 |  | -  void updateForm(  | 
48 |  | -      @Valid @RequestBody UpdateFormRequest updateFormRequest,  | 
49 |  | -      @PathVariable("formId") Long formId,  | 
50 |  | -      @AuthenticationPrincipal PrincipalDetails principalDetails  | 
51 |  | -  );  | 
 | 43 | +    @Operation(summary = "동아리 지원 폼지 수정 API")  | 
 | 44 | +    @ApiResponse(responseCode = "204", description = "동아리 지원 폼지 수정 성공")  | 
 | 45 | +    @ResponseStatus(HttpStatus.NO_CONTENT)  | 
 | 46 | +    @SecurityRequirement(name = "AccessToken")  | 
 | 47 | +    @PutMapping("/my/forms/{formId}")  | 
 | 48 | +    void updateForm(  | 
 | 49 | +            @Valid @RequestBody UpdateFormRequest updateFormRequest,  | 
 | 50 | +            @PathVariable("formId") Long formId,  | 
 | 51 | +            @AuthenticationPrincipal PrincipalDetails principalDetails  | 
 | 52 | +    );  | 
52 | 53 | 
 
  | 
53 |  | -  @Operation(summary = "동아리 지원 폼지 삭제 API")  | 
54 |  | -  @ApiResponse(responseCode = "204", description = "동아리 지원 폼지 삭제 성공")  | 
55 |  | -  @ResponseStatus(HttpStatus.NO_CONTENT)  | 
56 |  | -  @SecurityRequirement(name = "AccessToken")  | 
57 |  | -  @DeleteMapping("/my/forms/{formId}")  | 
58 |  | -  void deleteForm(  | 
59 |  | -      @PathVariable("formId") Long formId,  | 
60 |  | -      @AuthenticationPrincipal PrincipalDetails principalDetails  | 
61 |  | -  );  | 
 | 54 | +    @Operation(summary = "동아리 지원 폼지 삭제 API")  | 
 | 55 | +    @ApiResponse(responseCode = "204", description = "동아리 지원 폼지 삭제 성공")  | 
 | 56 | +    @ResponseStatus(HttpStatus.NO_CONTENT)  | 
 | 57 | +    @SecurityRequirement(name = "AccessToken")  | 
 | 58 | +    @DeleteMapping("/my/forms/{formId}")  | 
 | 59 | +    void deleteForm(  | 
 | 60 | +            @PathVariable("formId") Long formId,  | 
 | 61 | +            @AuthenticationPrincipal PrincipalDetails principalDetails  | 
 | 62 | +    );  | 
62 | 63 | 
 
  | 
63 |  | -  @Operation(summary = "동아리 지원 폼지 전체조회 API")  | 
64 |  | -  @ApiResponse(responseCode = "200", description = "동아리 지원 폼지 전체조회 성공",  | 
65 |  | -      content = @Content(  | 
66 |  | -          array = @ArraySchema(schema = @Schema(implementation = FormListResponse.class))  | 
67 |  | -      ))  | 
68 |  | -  @ResponseStatus(HttpStatus.OK)  | 
69 |  | -  @SecurityRequirement(name = "AccessToken")  | 
70 |  | -  @GetMapping("/my/forms")  | 
71 |  | -  List<FormListResponse> getAllMyForm(  | 
72 |  | -      @AuthenticationPrincipal PrincipalDetails principalDetails  | 
73 |  | -  );  | 
 | 64 | +    @Operation(summary = "동아리 지원 폼지 전체조회 API")  | 
 | 65 | +    @ApiResponse(responseCode = "200", description = "동아리 지원 폼지 전체조회 성공",  | 
 | 66 | +            content = @Content(  | 
 | 67 | +                    array = @ArraySchema(schema = @Schema(implementation = FormListResponse.class))  | 
 | 68 | +            ))  | 
 | 69 | +    @ResponseStatus(HttpStatus.OK)  | 
 | 70 | +    @SecurityRequirement(name = "AccessToken")  | 
 | 71 | +    @GetMapping("/my/forms")  | 
 | 72 | +    List<FormListResponse> getAllMyForm(@AuthenticationPrincipal PrincipalDetails principalDetails);  | 
74 | 73 | 
 
  | 
75 |  | -  @Operation(summary = "동아리 지원 폼지 상세조회 API")  | 
76 |  | -  @ApiResponse(responseCode = "200", description = "동아리 지원 폼지 상세조회 성공",  | 
77 |  | -      content = @Content(schema = @Schema(implementation = FormResponse.class)))  | 
78 |  | -  @ResponseStatus(HttpStatus.OK)  | 
79 |  | -  @SecurityRequirement(name = "AccessToken")  | 
80 |  | -  @GetMapping("/my/forms/{formId}")  | 
81 |  | -  FormResponse getForm(  | 
82 |  | -      @PathVariable("formId") Long formId  | 
83 |  | -  );  | 
 | 74 | +    @Operation(summary = "동아리 지원 폼지 상세조회 API")  | 
 | 75 | +    @ApiResponse(responseCode = "200", description = "동아리 지원 폼지 상세조회 성공",  | 
 | 76 | +            content = @Content(schema = @Schema(implementation = FormResponse.class)))  | 
 | 77 | +    @ResponseStatus(HttpStatus.OK)  | 
 | 78 | +    @SecurityRequirement(name = "AccessToken")  | 
 | 79 | +    @GetMapping("/my/forms/{formId}")  | 
 | 80 | +    FormResponse getForm(@PathVariable("formId") Long formId);  | 
 | 81 | + | 
 | 82 | +    @Operation(summary = "동아리 지원 폼지 통계 전체조회 API")  | 
 | 83 | +    @ApiResponse(responseCode = "200", description = "동아리 지원 폼지 통계 전체조회 성공",  | 
 | 84 | +            content = @Content(schema = @Schema(implementation = FormStatisticsResponse.class)))  | 
 | 85 | +    @ResponseStatus(HttpStatus.OK)  | 
 | 86 | +    @SecurityRequirement(name = "AccessToken")  | 
 | 87 | +    @GetMapping("/my/forms/{formId}/statistics")  | 
 | 88 | +    FormStatisticsResponse getFormStatistics(  | 
 | 89 | +            @PathVariable("formId") Long formId,  | 
 | 90 | +            @AuthenticationPrincipal PrincipalDetails principalDetails  | 
 | 91 | +    );  | 
84 | 92 | }  | 
0 commit comments