2026-07-02 18:13:56 +08:00
|
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
2026-07-03 10:47:27 +08:00
|
|
|
using WCTDataMiner.Core.Models;
|
2026-07-02 18:13:56 +08:00
|
|
|
|
2026-07-03 10:47:27 +08:00
|
|
|
namespace WCTDataMiner.Core.Data.Configurations;
|
2026-07-02 18:13:56 +08:00
|
|
|
|
|
|
|
|
public class TxHardwareConfiguration : IEntityTypeConfiguration<TxHardware>
|
|
|
|
|
{
|
|
|
|
|
public void Configure(EntityTypeBuilder<TxHardware> builder)
|
|
|
|
|
{
|
|
|
|
|
builder.ToTable("tx_hardware");
|
|
|
|
|
|
|
|
|
|
builder.HasKey(e => e.Id);
|
|
|
|
|
builder.Property(e => e.Id).HasColumnName("id");
|
|
|
|
|
|
|
|
|
|
builder.Property(e => e.Version)
|
|
|
|
|
.IsRequired()
|
|
|
|
|
.HasMaxLength(50)
|
|
|
|
|
.HasColumnName("version");
|
|
|
|
|
|
|
|
|
|
builder.Property(e => e.IsDeleted)
|
|
|
|
|
.IsRequired()
|
|
|
|
|
.HasDefaultValue(false)
|
|
|
|
|
.HasColumnName("is_deleted");
|
|
|
|
|
|
|
|
|
|
builder.Property(e => e.CreatedAt)
|
|
|
|
|
.IsRequired()
|
|
|
|
|
.HasDefaultValueSql("datetime('now')")
|
|
|
|
|
.HasColumnName("created_at");
|
|
|
|
|
|
|
|
|
|
builder.HasIndex(e => e.Version).IsUnique();
|
|
|
|
|
|
|
|
|
|
// 全局查询过滤器
|
|
|
|
|
builder.HasQueryFilter(e => !e.IsDeleted);
|
|
|
|
|
}
|
|
|
|
|
}
|