* Added Lot table and service

* Changed behaviour of scanning to scan first PartNumber, select specific record and then scan MeylePartNumber
This commit is contained in:
2025-06-17 08:30:10 +02:00
parent e96bcc95ba
commit a8e3a8be66
15 changed files with 374 additions and 25 deletions

View File

@@ -27,6 +27,8 @@ namespace SytelineSaAppEfDataModel
public DbSet<WzRowMeyle> WzRowsMeyle { get; set; }
public DbSet<ItemCust> ItemCusts { get; set; }
public DbSet<Lot> Lots { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
var configuration = new ConfigurationBuilder()
@@ -1000,7 +1002,17 @@ namespace SytelineSaAppEfDataModel
.HasColumnName("trans_num")
.HasColumnType("int")
.IsRequired(false);
entity.Property(e => e.FaIndex)
.HasColumnName("fa_index")
.HasMaxLength(100)
.IsRequired(false);
entity.Property(e => e.PartNumberSl)
.HasColumnName("part_number_sl")
.HasMaxLength(100)
.IsRequired(false);
// Relationship
entity.HasOne(e => e.Header)
.WithMany()
@@ -1150,6 +1162,150 @@ namespace SytelineSaAppEfDataModel
.HasDatabaseName("IX_itemcust_RowPointer")
.IsUnique();
});
modelBuilder.Entity<Lot>(entity =>
{
entity.ToTable("lot");
entity.HasKey(e => new { e.Item, e.LotNumber });
entity.Property(e => e.Item)
.HasColumnName("item")
.HasMaxLength(60)
.IsRequired();
entity.Property(e => e.LotNumber)
.HasColumnName("lot")
.HasMaxLength(15)
.IsRequired();
entity.Property(e => e.RcvdQty)
.HasColumnName("rcvd_qty")
.HasDefaultValueSql("0")
.IsRequired(false);
entity.Property(e => e.CreateDate)
.HasColumnName("create_date")
.IsRequired(false);
entity.Property(e => e.ExpDate)
.HasColumnName("exp_date")
.IsRequired(false);
entity.Property(e => e.PurgeDate)
.HasColumnName("purge_date")
.IsRequired(false);
entity.Property(e => e.VendLot)
.HasColumnName("vend_lot")
.HasMaxLength(30)
.IsRequired(false);
entity.Property(e => e.CertNum)
.HasColumnName("cert_num")
.HasMaxLength(20)
.IsRequired(false);
entity.Property(e => e.Charfld1)
.HasColumnName("charfld1")
.HasMaxLength(40)
.IsRequired(false);
entity.Property(e => e.Charfld2)
.HasColumnName("charfld2")
.HasMaxLength(40)
.IsRequired(false);
entity.Property(e => e.Charfld3)
.HasColumnName("charfld3")
.HasMaxLength(40)
.IsRequired(false);
entity.Property(e => e.Datefld)
.HasColumnName("datefld")
.IsRequired(false);
entity.Property(e => e.Decifld1)
.HasColumnName("decifld1")
.HasDefaultValueSql("0")
.IsRequired(false);
entity.Property(e => e.Decifld2)
.HasColumnName("decifld2")
.HasDefaultValueSql("0")
.IsRequired(false);
entity.Property(e => e.Decifld3)
.HasColumnName("decifld3")
.HasDefaultValueSql("0")
.IsRequired(false);
entity.Property(e => e.Logifld)
.HasColumnName("logifld")
.HasColumnType("tinyint")
.HasDefaultValueSql("0");
entity.Property(e => e.NoteExistsFlag)
.HasColumnName("NoteExistsFlag")
.HasColumnType("tinyint")
.HasDefaultValueSql("0");
entity.Property(e => e.RecordDate)
.HasColumnName("RecordDate")
.HasDefaultValueSql("getdate()");
entity.Property(e => e.RowPointer)
.HasColumnName("RowPointer")
.HasColumnType("uniqueidentifier")
.HasDefaultValueSql("newid()");
entity.Property(e => e.CreatedBy)
.HasColumnName("CreatedBy")
.HasMaxLength(60)
.HasDefaultValueSql("suser_sname()");
entity.Property(e => e.UpdatedBy)
.HasColumnName("UpdatedBy")
.HasMaxLength(60)
.HasDefaultValueSql("suser_sname()");
entity.Property(e => e.CreateDateField)
.HasColumnName("CreateDate")
.HasDefaultValueSql("getdate()");
entity.Property(e => e.InWorkflow)
.HasColumnName("InWorkflow")
.HasColumnType("tinyint")
.HasDefaultValueSql("0");
entity.Property(e => e.ContainsTaxFreeMatl)
.HasColumnName("contains_tax_free_matl")
.HasColumnType("tinyint")
.HasDefaultValueSql("0");
entity.Property(e => e.AttrGroup)
.HasColumnName("attr_group")
.HasMaxLength(20)
.IsRequired(false);
entity.Property(e => e.ManufacturerId)
.HasColumnName("manufacturer_id")
.HasMaxLength(14)
.IsRequired(false);
entity.Property(e => e.ManufacturerItem)
.HasColumnName("manufacturer_item")
.HasMaxLength(60)
.IsRequired(false);
// Indexes
entity.HasIndex(e => e.LotNumber)
.HasDatabaseName("IX_lot");
entity.HasIndex(e => e.RowPointer)
.HasDatabaseName("IX_lot_RowPointer")
.IsUnique();
});
}
}
}