chore: Stats Controller Swagger 응답 스키마 추가 (#265)
- StatsController 10개 메서드에 [ProducesResponseType] 어노테이션 추가 - Swagger 문서에서 Stats API 응답 스키마(DashboardResponseDto 등) 노출 Closes #265
This commit is contained in:
parent
e0af7cd604
commit
cb4cf01c4f
|
|
@ -22,6 +22,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("daily")]
|
[HttpPost("daily")]
|
||||||
[SwaggerOperation(Summary = "일별 통계 조회", Description = "기간별 일별 발송/성공/실패/열람 통계를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "일별 통계 조회", Description = "기간별 일별 발송/성공/실패/열람 통계를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<DailyStatResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetDailyAsync([FromBody] DailyStatRequestDto request)
|
public async Task<IActionResult> GetDailyAsync([FromBody] DailyStatRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -31,6 +32,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("summary")]
|
[HttpPost("summary")]
|
||||||
[SwaggerOperation(Summary = "요약 통계 조회", Description = "대시보드 요약 통계를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "요약 통계 조회", Description = "대시보드 요약 통계를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<SummaryStatResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetSummaryAsync()
|
public async Task<IActionResult> GetSummaryAsync()
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -40,6 +42,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("message")]
|
[HttpPost("message")]
|
||||||
[SwaggerOperation(Summary = "메시지별 통계 조회", Description = "특정 메시지의 발송 통계를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "메시지별 통계 조회", Description = "특정 메시지의 발송 통계를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<MessageStatResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetMessageStatAsync([FromBody] MessageStatRequestDto request)
|
public async Task<IActionResult> GetMessageStatAsync([FromBody] MessageStatRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -49,6 +52,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("hourly")]
|
[HttpPost("hourly")]
|
||||||
[SwaggerOperation(Summary = "시간대별 통계 조회", Description = "시간대별 발송 추이를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "시간대별 통계 조회", Description = "시간대별 발송 추이를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<HourlyStatResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetHourlyAsync([FromBody] HourlyStatRequestDto request)
|
public async Task<IActionResult> GetHourlyAsync([FromBody] HourlyStatRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -58,6 +62,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("device")]
|
[HttpPost("device")]
|
||||||
[SwaggerOperation(Summary = "디바이스 통계 조회", Description = "플랫폼/모델별 디바이스 분포를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "디바이스 통계 조회", Description = "플랫폼/모델별 디바이스 분포를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<DeviceStatResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetDeviceStatAsync()
|
public async Task<IActionResult> GetDeviceStatAsync()
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -77,6 +82,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("failure")]
|
[HttpPost("failure")]
|
||||||
[SwaggerOperation(Summary = "실패원인 통계 조회", Description = "실패 원인별 집계를 상위 N개로 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "실패원인 통계 조회", Description = "실패 원인별 집계를 상위 N개로 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<FailureStatResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetFailureStatAsync([FromBody] FailureStatRequestDto request)
|
public async Task<IActionResult> GetFailureStatAsync([FromBody] FailureStatRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -86,6 +92,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("dashboard")]
|
[HttpPost("dashboard")]
|
||||||
[SwaggerOperation(Summary = "대시보드 통합 조회", Description = "KPI, 일별 추이, 시간대별 분포, 플랫폼 비율, 상위 메시지를 한번에 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "대시보드 통합 조회", Description = "KPI, 일별 추이, 시간대별 분포, 플랫폼 비율, 상위 메시지를 한번에 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<DashboardResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetDashboardAsync([FromBody] DashboardRequestDto request)
|
public async Task<IActionResult> GetDashboardAsync([FromBody] DashboardRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -95,6 +102,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("history/list")]
|
[HttpPost("history/list")]
|
||||||
[SwaggerOperation(Summary = "이력 목록 조회", Description = "메시지별 발송 이력 목록을 조회합니다. keyword/status/date 필터를 지원합니다. X-Service-Code 헤더 미지정 시 전체 서비스 이력을 조회합니다.")]
|
[SwaggerOperation(Summary = "이력 목록 조회", Description = "메시지별 발송 이력 목록을 조회합니다. keyword/status/date 필터를 지원합니다. X-Service-Code 헤더 미지정 시 전체 서비스 이력을 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<HistoryListResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetHistoryListAsync([FromBody] HistoryListRequestDto request)
|
public async Task<IActionResult> GetHistoryListAsync([FromBody] HistoryListRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -104,6 +112,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("history/detail")]
|
[HttpPost("history/detail")]
|
||||||
[SwaggerOperation(Summary = "이력 상세 조회", Description = "특정 메시지의 발송 이력 상세(기본정보+집계+실패사유+본문)를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스에서 검색합니다.")]
|
[SwaggerOperation(Summary = "이력 상세 조회", Description = "특정 메시지의 발송 이력 상세(기본정보+집계+실패사유+본문)를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스에서 검색합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<HistoryDetailResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetHistoryDetailAsync([FromBody] HistoryDetailRequestDto request)
|
public async Task<IActionResult> GetHistoryDetailAsync([FromBody] HistoryDetailRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
@ -123,6 +132,7 @@ public class StatsController : ControllerBase
|
||||||
|
|
||||||
[HttpPost("send-log")]
|
[HttpPost("send-log")]
|
||||||
[SwaggerOperation(Summary = "발송 상세 로그 조회", Description = "특정 메시지의 개별 디바이스별 발송 상세 로그를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
[SwaggerOperation(Summary = "발송 상세 로그 조회", Description = "특정 메시지의 개별 디바이스별 발송 상세 로그를 조회합니다. X-Service-Code 헤더 미지정 시 전체 서비스 통계를 조회합니다.")]
|
||||||
|
[ProducesResponseType(typeof(ApiResponse<SendLogDetailResponseDto>), 200)]
|
||||||
public async Task<IActionResult> GetSendLogDetailAsync([FromBody] SendLogDetailRequestDto request)
|
public async Task<IActionResult> GetSendLogDetailAsync([FromBody] SendLogDetailRequestDto request)
|
||||||
{
|
{
|
||||||
var serviceId = GetOptionalServiceId();
|
var serviceId = GetOptionalServiceId();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user