| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261 |
- using Application.Abstractions.Data;
- using Domain.Entities.Common;
- using Domain.Entities.Members;
- using Domain.Entities.Members.Logs;
- using Domain.Entities.Page;
- using Domain.Entities.Page.Banner;
- using Domain.Entities.Page.Faq;
- using Domain.Entities.Wallets;
- using Domain.Entities.Forum.Boards;
- using Domain.Entities.Forum.Briefings;
- using Domain.Entities.Forum.Posts;
- using Domain.Entities.Forum.Comments;
- using Domain.Entities.Director;
- using Domain.Entities.EmailVerification;
- using Domain.Entities.Forum.Logs;
- using Domain.Entities.Page.Popup;
- using Domain.Entities.Notes;
- using Domain.Entities.Notifications;
- using Domain.Entities.Payments;
- using Domain.Entities.Payments.Toss;
- using Domain.Entities.Feed;
- using Domain.Entities.Store;
- using Domain.Entities.Stocks;
- using Domain.Entities.Chat;
- using Microsoft.EntityFrameworkCore;
- namespace Infrastructure.Persistence;
- public sealed class AppDbContext : DbContext, IAppDbContext
- {
- public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { }
- // Admin
- public DbSet<AdminLoginLog> AdminLoginLog { get; set; }
- public DbSet<AdminAccessLog> AdminAccessLog { get; set; }
- // Config
- public DbSet<Config> Config { get; set; }
- public DbSet<EmailLog> EmailLog { get; set; }
- // Page
- public DbSet<Document> Document { get; set; }
- public DbSet<PopupPosition> PopupPosition { get; set; }
- public DbSet<Popup> Popup { get; set; }
- public DbSet<FaqCategory> FaqCategory { get; set; }
- public DbSet<FaqItem> FaqItem { get; set; }
- public DbSet<BannerPosition> BannerPosition { get; set; }
- public DbSet<BannerItem> BannerItem { get; set; }
- public DbSet<NavMenuItem> NavMenuItem { get; set; }
- // Member
- public DbSet<Member> Member { get; set; }
- public DbSet<MemberStats> MemberStats { get; set; }
- public DbSet<MemberGrade> MemberGrade { get; set; }
- public DbSet<MemberApprove> MemberApprove { get; set; }
- public DbSet<MemberLoginLog> MemberLoginLog { get; set; }
- public DbSet<MemberEmailChangeLog> MemberEmailChangeLog { get; set; }
- public DbSet<MemberNameChangeLog> MemberNameChangeLog { get; set; }
- public DbSet<MemberSummaryChangeLog> MemberSummaryChangeLog { get; set; }
- public DbSet<MemberIntroChangeLog> MemberIntroChangeLog { get; set; }
- public DbSet<MemberThumbChangeLog> MemberThumbChangeLog { get; set; }
- public DbSet<MemberItemUsageLog> MemberItemUsageLog { get; set; }
- public DbSet<MemberExpLog> MemberExpLog { get; set; }
- public DbSet<MemberDailyRewardCounter> MemberDailyRewardCounter { get; set; }
- public DbSet<Attendance> Attendance { get; set; }
- public DbSet<MemberFollow> MemberFollow { get; set; }
- public DbSet<MemberTrackRecord> MemberTrackRecord { get; set; }
- public DbSet<MemberItem> MemberItem { get; set; }
- public DbSet<Channel> Channel { get; set; }
- public DbSet<ChannelHandleHistory> ChannelHandleHistory { get; set; }
- public DbSet<BroadcastSession> BroadcastSession { get; set; }
- public DbSet<ChannelBroadcastStats> ChannelBroadcastStats { get; set; }
- public DbSet<RefreshToken> RefreshToken { get; set; }
- public DbSet<MemberOAuthToken> MemberOAuthToken { get; set; }
- // EmailVerification
- public DbSet<EmailVerifyToken> EmailVerifyToken { get; set; }
- public DbSet<EmailVerifyNumber> EmailVerifyNumber { get; set; }
- // Wallet
- public DbSet<Wallet> Wallet { get; set; }
- public DbSet<WalletTransaction> WalletTransaction { get; set; }
- // 게시판
- public DbSet<BoardGroup> BoardGroup { get; set; }
- public DbSet<Board> Board { get; set; }
- public DbSet<BoardMeta> BoardMeta { get; set; }
- public DbSet<BoardManager> BoardManager { get; set; }
- public DbSet<BoardPrefix> BoardPrefix { get; set; }
- // 게시글
- public DbSet<Post> Post { get; set; }
- public DbSet<PostImage> PostImage { get; set; }
- public DbSet<PostMedia> PostMedia { get; set; }
- public DbSet<PostFile> PostFile { get; set; }
- public DbSet<PostLink> PostLink { get; set; }
- public DbSet<PostReaction> PostReaction { get; set; }
- public DbSet<PostBookmark> PostBookmark { get; set; }
- public DbSet<PostReport> PostReport { get; set; }
- public DbSet<PostTag> PostTag { get; set; }
- public DbSet<Tag> Tag { get; set; }
- public DbSet<PostCheer> PostCheer { get; set; }
- public DbSet<PostStockTag> PostStockTag { get; set; }
- public DbSet<PostPrediction> PostPrediction { get; set; }
- // 댓글
- public DbSet<Comment> Comment { get; set; }
- public DbSet<CommentFile> CommentFile { get; set; }
- public DbSet<CommentImage> CommentImage { get; set; }
- public DbSet<CommentMedia> CommentMedia { get; set; }
- public DbSet<CommentLink> CommentLink { get; set; }
- public DbSet<CommentReaction> CommentReaction { get; set; }
- public DbSet<CommentReport> CommentReport { get; set; }
- public DbSet<CommentMention> CommentMention { get; set; }
- // 게시글/댓글 로그
- public DbSet<PostUpdateLog> PostUpdateLog { get; set; }
- public DbSet<PostFileDownLog> PostFileDownLog { get; set; }
- public DbSet<PostLinkClickLog> PostLinkClickLog { get; set; }
- public DbSet<PostViewLog> PostViewLog { get; set; }
- public DbSet<CommentUpdateLog> CommentUpdateLog { get; set; }
- public DbSet<CommentFileDownLog> CommentFileDownLog { get; set; }
- public DbSet<CommentLinkClickLog> CommentLinkClickLog { get; set; }
- // 피드 (X/Twitter + Reddit 스타일 — Forum과 완전 분리)
- public DbSet<FeedPost> FeedPost { get; set; }
- public DbSet<FeedComment> FeedComment { get; set; }
- public DbSet<FeedLike> FeedLike { get; set; }
- public DbSet<FeedCommentLike> FeedCommentLike { get; set; }
- public DbSet<FeedBookmark> FeedBookmark { get; set; }
- public DbSet<FeedTag> FeedTag { get; set; }
- public DbSet<FeedPostTag> FeedPostTag { get; set; }
- public DbSet<FeedPostImage> FeedPostImage { get; set; }
- public DbSet<FeedPostMedia> FeedPostMedia { get; set; }
- public DbSet<FeedPostMention> FeedPostMention { get; set; }
- // 장전 브리핑 발행 기록 (d2 M3)
- public DbSet<DailyBriefing> DailyBriefing { get; set; }
- // 쪽지
- public DbSet<Note> Note { get; set; }
- // 알림
- public DbSet<Domain.Entities.Notifications.Notification> Notification { get; set; }
- // 결제
- public DbSet<PaymentOrder> PaymentOrder { get; set; }
- public DbSet<TossConfirm> TossConfirm { get; set; }
- public DbSet<TossCancel> TossCancel { get; set; }
- public DbSet<TossLog> TossLog { get; set; }
- public DbSet<PaymentReconcileLog> PaymentReconcileLog { get; set; }
- // 상점 (Store)
- public DbSet<Game> Game { get; set; }
- public DbSet<GameGenre> GameGenre { get; set; }
- public DbSet<GameCategory> GameCategory { get; set; }
- public DbSet<GameGenreMap> GameGenreMap { get; set; }
- public DbSet<GameCategoryMap> GameCategoryMap { get; set; }
- public DbSet<GameImage> GameImage { get; set; }
- public DbSet<GameLanguage> GameLanguage { get; set; }
- public DbSet<GameLanguageSupport> GameLanguageSupport { get; set; }
- public DbSet<Product> Product { get; set; }
- public DbSet<Coupon> Coupon { get; set; }
- public DbSet<CouponCode> CouponCode { get; set; }
- public DbSet<Order> Order { get; set; }
- public DbSet<OrderItem> OrderItem { get; set; }
- public DbSet<OrderRefund> OrderRefund { get; set; }
- public DbSet<OrderRefundItem> OrderRefundItem { get; set; }
- public DbSet<MemberInventory> MemberInventory { get; set; }
- public DbSet<MemberAddress> MemberAddress { get; set; }
- public DbSet<Shipment> Shipment { get; set; }
- public DbSet<GameSettlement> GameSettlement { get; set; }
- public DbSet<ProductLimitConfig> ProductLimitConfig { get; set; }
- // 주식 (Stocks — 개미투자 D1)
- public DbSet<Stock> Stock { get; set; }
- public DbSet<StockWatch> StockWatch { get; set; }
- public DbSet<StockDailyPrice> StockDailyPrice { get; set; }
- public DbSet<IndexDailyPrice> IndexDailyPrice { get; set; }
- public DbSet<WorldIndexSnapshot> WorldIndexSnapshot { get; set; }
- public DbSet<MarketQuoteSnapshot> MarketQuoteSnapshot { get; set; }
- public DbSet<BondIndexDailyPrice> BondIndexDailyPrice { get; set; }
- public DbSet<EtpDailyTrade> EtpDailyTrade { get; set; }
- public DbSet<WarrantDailyTrade> WarrantDailyTrade { get; set; }
- public DbSet<BondDailyTrade> BondDailyTrade { get; set; }
- public DbSet<FuturesDailyTrade> FuturesDailyTrade { get; set; }
- public DbSet<OptionsDailyTrade> OptionsDailyTrade { get; set; }
- public DbSet<CommodityDailyTrade> CommodityDailyTrade { get; set; }
- public DbSet<EsgSecurity> EsgSecurity { get; set; }
- public DbSet<EsgIndexDailyPrice> EsgIndexDailyPrice { get; set; }
- public DbSet<SriBond> SriBond { get; set; }
- public DbSet<Disclosure> Disclosure { get; set; }
- public DbSet<ExchangeRate> ExchangeRate { get; set; }
- public DbSet<InterestRate> InterestRate { get; set; }
- public DbSet<MacroIndicator> MacroIndicator { get; set; }
- public DbSet<MarketHoliday> MarketHoliday { get; set; }
- public DbSet<StockBoardStats> StockBoardStats { get; set; }
- public DbSet<SeibroIssuerCode> SeibroIssuerCode { get; set; }
- public DbSet<DividendSchedule> DividendSchedule { get; set; }
- public DbSet<Dividend> Dividend { get; set; }
- public DbSet<RightsBaseDate> RightsBaseDate { get; set; }
- public DbSet<SecuritiesLending> SecuritiesLending { get; set; }
- public DbSet<LockupEvent> LockupEvent { get; set; }
- public DbSet<StockIssuanceChange> StockIssuanceChange { get; set; }
- public DbSet<ListingChangeEvent> ListingChangeEvent { get; set; }
- public DbSet<UnlistedCirculation> UnlistedCirculation { get; set; }
- public DbSet<GeneralMeeting> GeneralMeeting { get; set; }
- public DbSet<MeetingAgenda> MeetingAgenda { get; set; }
- public DbSet<CorpNameChange> CorpNameChange { get; set; }
- public DbSet<PaymentSchedule> PaymentSchedule { get; set; }
- public DbSet<OddLotPayment> OddLotPayment { get; set; }
- public DbSet<ConvertibleBondTarget> ConvertibleBondTarget { get; set; }
- public DbSet<ConvertibleExercise> ConvertibleExercise { get; set; }
- // 채권·단기금융 (SEIBro Wave 4)
- public DbSet<BondIssuance> BondIssuance { get; set; }
- public DbSet<BondMaster> BondMaster { get; set; }
- public DbSet<BondInterestPayment> BondInterestPayment { get; set; }
- public DbSet<BondEarlyRedemption> BondEarlyRedemption { get; set; }
- public DbSet<ShortTermIssuance> ShortTermIssuance { get; set; }
- public DbSet<CdMaster> CdMaster { get; set; }
- public DbSet<CpMaster> CpMaster { get; set; }
- public DbSet<EstbMaster> EstbMaster { get; set; }
- // 파생결합증권 ELS/DLS (SEIBro Wave 5)
- public DbSet<DerivIssuance> DerivIssuance { get; set; }
- public DbSet<DerivMaster> DerivMaster { get; set; }
- public DbSet<DerivAsset> DerivAsset { get; set; }
- public DbSet<DerivAssetExercise> DerivAssetExercise { get; set; }
- public DbSet<DerivRedemptionCondition> DerivRedemptionCondition { get; set; }
- public DbSet<DerivRedemption> DerivRedemption { get; set; }
- public DbSet<ElsUnredeemedScale> ElsUnredeemedScale { get; set; }
- // 외화증권 (SEIBro Wave 6)
- public DbSet<ForeignCustodyNation> ForeignCustodyNation { get; set; }
- public DbSet<ForeignSettlementNation> ForeignSettlementNation { get; set; }
- public DbSet<ForeignCustodySecurity> ForeignCustodySecurity { get; set; }
- public DbSet<ForeignSettlementSecurity> ForeignSettlementSecurity { get; set; }
- // SEIBro 수집 마커 (리뷰 결함 #1 — 정상 0행 재수집·starvation 해소)
- public DbSet<SeibroFetchMarker> SeibroFetchMarker { get; set; }
- public DbSet<SeibroSweptDate> SeibroSweptDate { get; set; }
- // 채팅 (Chat — 개미투자 D2)
- public DbSet<ChatRoomConfig> ChatRoomConfig { get; set; }
- public DbSet<ChatBan> ChatBan { get; set; }
- // 모의투자 (Paper — 개미투자 D4)
- public DbSet<Domain.Entities.Paper.PaperAccount> PaperAccount { get; set; }
- public DbSet<Domain.Entities.Paper.PaperPosition> PaperPosition { get; set; }
- public DbSet<Domain.Entities.Paper.PaperOrder> PaperOrder { get; set; }
- public DbSet<Domain.Entities.Paper.PaperFill> PaperFill { get; set; }
- public DbSet<Domain.Entities.Paper.PaperLedger> PaperLedger { get; set; }
- public DbSet<Domain.Entities.Paper.PaperDailySnapshot> PaperDailySnapshot { get; set; }
- protected override void OnModelCreating(ModelBuilder modelBuilder)
- {
- // Apply all configurations from the current assembly
- modelBuilder.ApplyConfigurationsFromAssembly(typeof(AppDbContext).Assembly);
- }
- }
|