SPMS_API/SPMS.Application/DTOs/Service/ServiceResponseDto.cs
SEAN e3ed3d4267 improvement: 서비스 목록/상세 응답에 플랫폼 상태 판정 추가 (#216)
- PlatformSummaryDto / PlatformCredentialSummaryDto 신규 생성
- ServiceSummaryDto에 Platforms 필드 추가 (목록 응답)
- ServiceResponseDto에 ApnsAuthType + Platforms 필드 추가 (상세 응답)
- BuildPlatformSummary 메서드로 Android/iOS 상태 판정
  - Android: FcmCredentials 유무 → ok/none
  - iOS p8: → ok
  - iOS p12: 만료됨→error, 30일 이내→warn, 그 외→ok
- Swagger Description 업데이트

Closes #216
2026-02-25 13:21:30 +09:00

28 lines
1.1 KiB
C#

namespace SPMS.Application.DTOs.Service;
public class ServiceResponseDto
{
public string ServiceCode { get; set; } = string.Empty;
public string ServiceName { get; set; } = string.Empty;
public string? Description { get; set; }
public string ApiKey { get; set; } = string.Empty;
public DateTime ApiKeyCreatedAt { get; set; }
public string? ApnsBundleId { get; set; }
public string? ApnsKeyId { get; set; }
public string? ApnsTeamId { get; set; }
public string? ApnsAuthType { get; set; }
public bool HasApnsKey { get; set; }
public bool HasFcmCredentials { get; set; }
public PlatformSummaryDto? Platforms { get; set; }
public string? WebhookUrl { get; set; }
public string? Tags { get; set; }
public string SubTier { get; set; } = string.Empty;
public DateTime? SubStartedAt { get; set; }
public string Status { get; set; } = string.Empty;
public DateTime CreatedAt { get; set; }
public string CreatedByName { get; set; } = string.Empty;
public DateTime? UpdatedAt { get; set; }
public int DeviceCount { get; set; }
public List<string> AllowedIps { get; set; } = new();
}