feat(Trades): refactor trades MQTT client and DTOs

This commit is contained in:
2026-08-09 21:01:42 +02:00
parent c74a4456af
commit e7427b7464
21 changed files with 3363 additions and 0 deletions
@@ -0,0 +1,35 @@
using FinlyticTrades.Entities;
using Microsoft.EntityFrameworkCore;
namespace FinlyticTrades.Database;
public class TradesDbContext : DbContext
{
public TradesDbContext(DbContextOptions<TradesDbContext> options) : base(options) { }
public DbSet<TradeEntity> Trades => Set<TradeEntity>();
public DbSet<TradeHourlyUpdateEntity> TradeHourlyUpdates => Set<TradeHourlyUpdateEntity>();
public DbSet<TradesSettingsEntity> Settings => Set<TradesSettingsEntity>();
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<TradeEntity>(entity =>
{
entity.HasIndex(e => e.TradeId).IsUnique();
entity.HasIndex(e => e.AnalysisId);
entity.HasIndex(e => e.EventId);
entity.HasIndex(e => e.Status);
entity.HasIndex(e => e.Sector);
entity.HasIndex(e => e.Isin);
entity.HasIndex(e => e.CreatedAt);
});
modelBuilder.Entity<TradeHourlyUpdateEntity>(entity =>
{
entity.HasIndex(e => e.TradeId);
entity.HasIndex(e => e.Timestamp);
});
}
}