| 123456789101112131415161718192021222324 |
- using Domain.Entities.Stocks;
- using Microsoft.EntityFrameworkCore;
- using Microsoft.EntityFrameworkCore.Metadata.Builders;
- namespace Infrastructure.Persistence.Configurations.Stocks;
- public sealed class ForeignSettlementSecurityConfiguration : IEntityTypeConfiguration<ForeignSettlementSecurity>
- {
- public void Configure(EntityTypeBuilder<ForeignSettlementSecurity> builder)
- {
- builder.ToTable(nameof(ForeignSettlementSecurity), t => t.HasComment("SEIBro 종목별 외화증권 결제현황 (getSecnFrsecSetlInfo) — 특정 외화종목(ISIN) 매수/매도 결제신청수량·금액(USD). PROC_DT=T+1 반영"));
- builder.HasKey(x => x.ID);
- builder.HasIndex(x => new { x.ProcDt, x.Isin, x.IntlBizCacd }).IsUnique();
- builder.HasIndex(x => new { x.Isin, x.ProcDt });
- builder.Property(x => x.ProcDt).IsRequired().HasComment("결제처리일 (PROC_DT, 스탬핑, 한국시간) — 미국시간 T일 결제는 T+1 반영");
- builder.Property(x => x.Isin).HasMaxLength(12).IsRequired().HasComment("종목코드 (ISIN, 스탬핑)");
- builder.Property(x => x.IntlBizCacd).HasMaxLength(4).IsRequired().HasComment("국제업무분류코드 (INTL_BIZ_CACD) — 1110매수 1120매도");
- builder.Property(x => x.NationCd).HasMaxLength(2).HasComment("국가코드 (NATION_CD)");
- builder.Property(x => x.SecnTpcd).HasMaxLength(2).HasComment("종목구분코드 (SECN_TPCD) — 71외화주식~78외화수익증권");
- builder.Property(x => x.SetlAskQty).HasColumnType("decimal(28,6)").HasComment("결제신청수량 (SETL_ASK_QTY) — 주식:주, 채권:액면금액");
- builder.Property(x => x.SetlAmt).HasColumnType("decimal(24,2)").HasComment("결제금액 (SETL_AMT) — USD");
- }
- }
|