SPMS_API/SPMS.Domain/Entities/Service.cs
SEAN 8b6fd84b98 feat: Domain Enum 및 에러 코드 상수 정의 (#10)
- 12개 Enum 추가 (Platform, ServiceStatus, SubTier, AdminRole, DeviceStatus, MessageStatus, PushResult, PaymentStatus, TargetType, LinkType, WebhookEvent, WebhookStatus)
- ErrorCodes 상수 클래스 추가 (Error_Codes.md 기반 3자리 코드)
- Entity byte 필드를 Enum 타입으로 변경 (Service, Admin, Device, PushSendLog, WebhookLog, Payment)
- WebhookLog.EventType 컬럼 타입 변경 (varchar→tinyint) 마이그레이션 적용
2026-02-09 13:31:50 +09:00

34 lines
1.3 KiB
C#

using SPMS.Domain.Enums;
namespace SPMS.Domain.Entities;
public class Service : BaseEntity
{
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? ApnsPrivateKey { get; set; }
public string? FcmCredentials { get; set; }
public string? WebhookUrl { get; set; }
public string? Tags { get; set; }
public SubTier SubTier { get; set; }
public DateTime? SubStartedAt { get; set; }
public ServiceStatus Status { get; set; }
public DateTime CreatedAt { get; set; }
public long CreatedBy { get; set; }
public DateTime? UpdatedAt { get; set; }
public bool IsDeleted { get; set; }
public DateTime? DeletedAt { get; set; }
// Navigation
public Admin CreatedByAdmin { get; set; } = null!;
public ICollection<ServiceIp> ServiceIps { get; set; } = new List<ServiceIp>();
public ICollection<Device> Devices { get; set; } = new List<Device>();
public ICollection<Message> Messages { get; set; } = new List<Message>();
}