* Further improvements to generate Packing List

This commit is contained in:
2025-05-16 21:48:43 +02:00
parent da1eae8ca9
commit 55f7ed76fd
25 changed files with 474 additions and 198 deletions

View File

@@ -6,4 +6,5 @@ public class WzClientDto
public string CustomerNumber { get; set; }
public int? CustomerSequence { get; set; }
public DateTime CreatedDate { get; set; }
public string Name { get; set; }
}

View File

@@ -0,0 +1,13 @@
namespace SytelineSaAppEfDataModel.Dtos;
public class WzRowMeyleDto
{
public Guid ID { get; set; }
public Guid? FK_Header { get; set; }
public string OrderNumber { get; set; }
public string ItemNumber { get; set; }
public int? Quantity { get; set; }
public int? PalletNumber { get; set; }
public string WzNumber { get; set; }
public string PartNumber { get; set; }
}

View File

@@ -6,4 +6,5 @@ public class WzClient
public string CustomerNumber { get; set; }
public int? CustomerSequence { get; set; }
public DateTime CreatedDate { get; set; }
public string Name { get; set; }
}

View File

@@ -0,0 +1,16 @@
namespace SytelineSaAppEfDataModel.Entities;
public class WzRowMeyle
{
public Guid ID { get; set; }
public Guid? FK_Header { get; set; }
public string OrderNumber { get; set; }
public string ItemNumber { get; set; }
public int? Quantity { get; set; }
public int? PalletNumber { get; set; }
public string WzNumber { get; set; }
public string PartNumber { get; set; }
// Navigation property
public WzHeader Header { get; set; }
}

View File

@@ -21,6 +21,8 @@ namespace SytelineSaAppEfDataModel
CreateMap<EdiUser, EdiUserDto>().ReverseMap();
CreateMap<MaterialTransaction, MaterialTransactionDto>().ReverseMap();
CreateMap<WzClient, WzClientDto>().ReverseMap();
CreateMap<WzHeader, WzHeaderDto>().ReverseMap();
CreateMap<WzRowMeyle, WzRowMeyleDto>().ReverseMap();
}
}
}

View File

@@ -5,4 +5,5 @@ namespace SytelineSaAppEfDataModel.Services;
public interface IWzHeaderService
{
Task<IEnumerable<WzHeaderDto>> GetAll();
Task CreateHeader(WzHeaderDto wzHeader);
}

View File

@@ -0,0 +1,9 @@
using SytelineSaAppEfDataModel.Dtos;
namespace SytelineSaAppEfDataModel.Services;
public interface IWzRowMeyleService
{
Task<IEnumerable<WzRowMeyleDto>> GetAll();
Task CreateRows(IEnumerable<WzRowMeyleDto> rows);
}

View File

@@ -1,6 +1,7 @@
using AutoMapper;
using Microsoft.EntityFrameworkCore;
using SytelineSaAppEfDataModel.Dtos;
using SytelineSaAppEfDataModel.Entities;
namespace SytelineSaAppEfDataModel.Services;
@@ -10,4 +11,11 @@ public class WzHeaderService(SytelineSaAppDbContext context, IMapper mapper) : I
{
return await context.WzHeaders.Select(x => mapper.Map<WzHeaderDto>(x)).ToListAsync();
}
public async Task CreateHeader(WzHeaderDto wzHeader)
{
var entity = mapper.Map<WzHeader>(wzHeader);
await context.WzHeaders.AddAsync(entity);
await context.SaveChangesAsync();
}
}

View File

@@ -0,0 +1,21 @@
using AutoMapper;
using Microsoft.EntityFrameworkCore;
using SytelineSaAppEfDataModel.Dtos;
using SytelineSaAppEfDataModel.Entities;
namespace SytelineSaAppEfDataModel.Services;
public class WzRowMeyleService(SytelineSaAppDbContext context, IMapper mapper) : IWzRowMeyleService
{
public async Task<IEnumerable<WzRowMeyleDto>> GetAll()
{
return await context.WzRowsMeyle.Select(x => mapper.Map<WzRowMeyleDto>(x)).ToListAsync();
}
public async Task CreateRows(IEnumerable<WzRowMeyleDto> rows)
{
var entities = mapper.Map<IEnumerable<WzRowMeyle>>(rows);
await context.WzRowsMeyle.AddRangeAsync(entities);
await context.SaveChangesAsync();
}
}

View File

@@ -24,6 +24,7 @@ namespace SytelineSaAppEfDataModel
public DbSet<WzClient> WzClients { get; set; }
public DbSet<WzHeader> WzHeaders { get; set; }
public DbSet<WzRowMeyle> WzRowsMeyle { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
var configuration = new ConfigurationBuilder()
@@ -799,7 +800,7 @@ namespace SytelineSaAppEfDataModel
entity.Property(e => e.WhseSplit)
.HasColumnName("WhseSplit")
.HasColumnType("tinyint")
.IsRequired(false);;
.IsRequired(false);
entity.Property(e => e.VariableId)
.HasColumnName("VariableId")
@@ -930,6 +931,64 @@ namespace SytelineSaAppEfDataModel
.HasColumnName("CreatedDate")
.HasColumnType("timestamp")
.IsRowVersion();
entity.Property(e => e.Name)
.HasColumnName("Name")
.HasMaxLength(255)
.IsRequired(false);
});
modelBuilder.Entity<WzRowMeyle>(entity =>
{
entity.ToTable("wz_row_meyle");
entity.HasKey(e => e.ID);
entity.Property(e => e.ID)
.HasColumnName("ID")
.HasColumnType("uniqueidentifier")
.HasDefaultValueSql("newid()");
entity.Property(e => e.FK_Header)
.HasColumnName("FK_Header")
.HasColumnType("uniqueidentifier")
.IsRequired(false);
entity.Property(e => e.OrderNumber)
.HasColumnName("order_number")
.HasMaxLength(100)
.IsRequired(false);
entity.Property(e => e.ItemNumber)
.HasColumnName("item_number")
.HasMaxLength(100)
.IsRequired(false);
entity.Property(e => e.Quantity)
.HasColumnName("quantity")
.HasColumnType("int")
.IsRequired(false);
entity.Property(e => e.PalletNumber)
.HasColumnName("pallet_number")
.HasColumnType("int")
.IsRequired(false);
entity.Property(e => e.WzNumber)
.HasColumnName("wz_number")
.HasMaxLength(100)
.IsRequired(false);
entity.Property(e => e.PartNumber)
.HasColumnName("part_number")
.HasMaxLength(100)
.IsRequired(false);
// Relationship
entity.HasOne(e => e.Header)
.WithMany()
.HasForeignKey(e => e.FK_Header)
.HasConstraintName("wz_rows_meyle_wz_header_ID_fk");
});
}
}