Skip to content

Commit 6745a44

Browse files
authored
Merge pull request #351 from MT-TEAM-Org/epic/staticapifix
epic/staticapifix: start
2 parents 7455b52 + 9c10c08 commit 6745a44

10 files changed

Lines changed: 604 additions & 585 deletions

File tree

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,23 @@
11
package org.myteam.server.admin.controller;
22

33
import io.swagger.v3.oas.annotations.Operation;
4+
import io.swagger.v3.oas.annotations.Parameter;
45
import io.swagger.v3.oas.annotations.media.Content;
56
import io.swagger.v3.oas.annotations.media.Schema;
67
import io.swagger.v3.oas.annotations.responses.ApiResponse;
78
import io.swagger.v3.oas.annotations.responses.ApiResponses;
89
import io.swagger.v3.oas.annotations.tags.Tag;
9-
import jakarta.validation.Valid;
1010
import lombok.RequiredArgsConstructor;
1111
import org.myteam.server.admin.service.AdminDashBoardService;
12+
import org.myteam.server.admin.utill.DateType;
13+
import org.myteam.server.admin.utill.StaticDataType;
1214
import org.myteam.server.global.exception.ErrorResponse;
1315
import org.myteam.server.global.web.response.ResponseDto;
1416
import org.myteam.server.global.web.response.ResponseStatus;
1517
import org.springframework.http.ResponseEntity;
16-
import org.springframework.validation.BindingResult;
17-
import org.springframework.web.bind.annotation.PostMapping;
18-
import org.springframework.web.bind.annotation.RequestBody;
19-
import org.springframework.web.bind.annotation.RequestMapping;
20-
import org.springframework.web.bind.annotation.RestController;
21-
18+
import org.springframework.web.bind.annotation.*;
2219
import java.util.List;
23-
24-
import static org.myteam.server.admin.dto.request.AdminDashBoardRequestDto.RequestLatestData;
25-
import static org.myteam.server.admin.dto.request.AdminDashBoardRequestDto.RequestStatic;
20+
import java.util.Map;
2621
import static org.myteam.server.admin.dto.response.AdminDashBoardResponseDto.ResponseLatestData;
2722
import static org.myteam.server.admin.dto.response.AdminDashBoardResponseDto.ResponseStatic;
2823

@@ -41,12 +36,14 @@ public class AdminDashBoardController {
4136
@ApiResponse(responseCode = "200", description = "조회 성공", useReturnTypeSchema = true),
4237
@ApiResponse(responseCode = "400", description = "잘못된 요청 형식", content = @Content(schema = @Schema(implementation = ErrorResponse.class)))
4338
})
44-
@PostMapping("/static")
45-
public ResponseEntity<ResponseDto<ResponseStatic>>
46-
getStaticData(@RequestBody @Valid RequestStatic requestStatic, BindingResult bindingResult) {
39+
@GetMapping("/static")
40+
public ResponseEntity<ResponseDto<List<ResponseStatic>>>
41+
getStaticData(@Parameter(description = "통계를 불러올 탭과 일치해서 사용하는 쿼리 스트링입니다.",example = "DashBoard,MemberBoard,ContentBoard,Inquiry,Improvement 중택1")
42+
@RequestParam(name ="staticType",required = true) StaticDataType staticDataType,
43+
@Parameter(description = "쿼리 스트링값입니다.",example ="Day,WeekEnd,OneMonth,ThreeMonth,SixMonth,Year 중택1" )@RequestParam(name="dateType",required = true) DateType dateType) {
4744
return ResponseEntity.ok(
4845
new ResponseDto<>(ResponseStatus.SUCCESS.name(), "조회 성공",
49-
adminDashBoardService.getStaticData(requestStatic))
46+
adminDashBoardService.getStaticData(staticDataType,dateType))
5047
);
5148
}
5249

@@ -58,13 +55,13 @@ public class AdminDashBoardController {
5855
@ApiResponse(responseCode = "400", description = "잘못된 요청 형식", content = @Content(schema = @Schema(implementation = ErrorResponse.class)))
5956
})
6057

61-
@PostMapping("/latest")
62-
public ResponseEntity<ResponseDto<List<ResponseLatestData>>>
63-
getLatestData(@RequestBody @Valid RequestLatestData requestLatestData, BindingResult bindingResult) {
58+
@GetMapping("/latest")
59+
public ResponseEntity<ResponseDto<Map<String,List<ResponseLatestData>>>>
60+
getLatestData() {
6461

6562
return ResponseEntity.ok(
6663
new ResponseDto<>(ResponseStatus.SUCCESS.name(), "조회 성공",
67-
adminDashBoardService.getLatestData(requestLatestData)));
64+
adminDashBoardService.getLatestData()));
6865

6966
}
7067
}

‎src/main/java/org/myteam/server/admin/dto/request/AdminDashBoardRequestDto.java‎

Lines changed: 0 additions & 63 deletions
This file was deleted.

‎src/main/java/org/myteam/server/admin/dto/response/AdminDashBoardResponseDto.java‎

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,22 @@ public static class ResponseStatic {
1515
@Schema(description = "기간에 따른 데이터의 양을 보여줍니다.",
1616
example = "{2025.02.06 : 1}")
1717
private Map<String, Long> currentStaticData;
18+
@Schema(description = "기간에 따른 데이터의 양을 보여줍니다.",
19+
example = "{2025.02.06 : 1}")
20+
private Map<String, Long> pastStaticData;
1821
private Long currentCount;
1922
private Long pastCount;
2023
private Long totCount;
2124
@Schema(examples = "-100,100")
2225
private int percent;
26+
private String staticDataName;
2327
}
2428

2529
@Getter
2630
public static class ResponseLatestData {
2731

2832
@Schema(description = "불러온 데이터 타입이 신고일때 어떤 콘텐츠에대한 신고인지를 나타냅니다.")
2933
private String reportType;
30-
private StaticDataType staticDataType;
3134
@Schema(description = "최신 데이터를 관리자단의 우측 하단에서 표시할때 가장 왼쪽에오는 상태값입니다.")
3235
private String mainStatus;
3336
@Schema(description = "최신 데이터를 관리자단의 우측 하단에서 표시할때 왼쪽에서 두번째에 해당하는 상태값입니다.")
@@ -37,20 +40,23 @@ public static class ResponseLatestData {
3740
private String content;
3841
@Schema(example = "2025.06.06")
3942
private String createAt;
43+
@Schema(description = "어떤 종류의 최신데이터인지 보여줍니다")
44+
private StaticDataType staticDataType;
4045
@Schema(description = "이값이 true이면 이미 읽은것,아니면은 읽지않은것입니다.")
4146
private boolean checkRead;
4247

43-
public ResponseLatestData(String reportType, StaticDataType staticDataType,
48+
public ResponseLatestData(String reportType,
4449
String mainStatus, String subStatus, Long contentId,
45-
String name, String content, String createAt) {
50+
String name, String content, String createAt,
51+
StaticDataType staticDateType) {
4652
this.reportType = reportType;
47-
this.staticDataType = staticDataType;
4853
this.mainStatus = mainStatus;
4954
this.subStatus = subStatus;
5055
this.contentId = contentId;
5156
this.name = name;
5257
this.content = content;
5358
this.createAt = createAt;
59+
this.staticDataType=staticDateType;
5460
}
5561

5662
public void updateCreateAt(String createAt) {

0 commit comments

Comments
 (0)