using Domain.Entities.Payments; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace Infrastructure.Persistence.Configurations.Payments; public sealed class PaymentReconcileLogConfiguration : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder builder) { builder.ToTable("PaymentReconcileLog", x => x.HasComment("PG 성공 후 저장 실패 대사 로그 (Phase 1.5)")); builder.HasKey(x => x.ID); builder.HasIndex(x => x.PaymentOrderID); builder.HasIndex(x => x.CreatedAt); builder.Property(x => x.PaymentOrderID).IsRequired(); builder.Property(x => x.Kind).IsRequired(); builder.Property(x => x.TransactionID).HasMaxLength(200); builder.Property(x => x.Amount).IsRequired(); builder.Property(x => x.Reason).HasMaxLength(1000).IsRequired(); builder.Property(x => x.CreatedAt).IsRequired(); } }