ElsUnredeemedScaleConfiguration.cs 1.5 KB

1234567891011121314151617181920212223
  1. using Domain.Entities.Stocks;
  2. using Microsoft.EntityFrameworkCore;
  3. using Microsoft.EntityFrameworkCore.Metadata.Builders;
  4. namespace Infrastructure.Persistence.Configurations.Stocks;
  5. public sealed class ElsUnredeemedScaleConfiguration : IEntityTypeConfiguration<ElsUnredeemedScale>
  6. {
  7. public void Configure(EntityTypeBuilder<ElsUnredeemedScale> builder)
  8. {
  9. builder.ToTable(nameof(ElsUnredeemedScale), t => t.HasComment("SEIBro 기초자산별 미상환규모 (getBassetUnredScale) — ELS 지수 하락 리스크 지표. 일별 13기초자산×{41,43}"));
  10. builder.HasKey(x => x.ID);
  11. builder.HasIndex(x => new { x.StdDt, x.StndBassetCd, x.SecnTpcd }).IsUnique();
  12. builder.HasIndex(x => new { x.StndBassetCd, x.StdDt });
  13. builder.Property(x => x.StdDt).IsRequired().HasComment("기준일자 (STD_DT, 스탬핑)");
  14. builder.Property(x => x.StndBassetCd).HasMaxLength(12).IsRequired().HasComment("표준기초자산코드 (STND_BASSET_CD, 스탬핑) — 입력 13종 KSD02* 원문");
  15. builder.Property(x => x.SecnTpcd).HasMaxLength(2).IsRequired().HasComment("종목구분코드 (SECN_TPCD, 스탬핑) — 41ELS 43DLS");
  16. builder.Property(x => x.BassetContent).HasMaxLength(500).HasComment("기초자산내용 (BASSET_CONTENT)");
  17. builder.Property(x => x.UnredSecncnt).HasComment("미상환종목수 (UNRED_SECNCNT)");
  18. builder.Property(x => x.UnredRema).HasColumnType("decimal(20,2)").HasComment("미상환잔액 (UNRED_REMA) — 원화 환산 합계");
  19. }
  20. }