Files
Backend-Api/CompanyManagment.EFCore/Mapping/ClassificationGroupMapping.cs
2025-09-18 05:16:00 +03:30

35 lines
1.1 KiB
C#

using Company.Domain.ClassificationSchemeAgg;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace CompanyManagment.EFCore.Mapping;
public class ClassificationGroupMapping : IEntityTypeConfiguration<ClassificationGroup>
{
public void Configure(EntityTypeBuilder<ClassificationGroup> builder)
{
builder.ToTable("ClassificationGroups");
builder.HasKey(x => x.id);
builder.Property(x => x.GroupNo).HasMaxLength(2);
builder.HasOne(x => x.ClassificationScheme)
.WithMany(x => x.ClassificationGroups)
.HasForeignKey(x => x.ClassificationSchemeId);
builder.HasMany(x => x.ClassificationGroupJobs)
.WithOne(x => x.ClassificationGroup)
.HasForeignKey(x => x.ClassificationGroupId);
builder.HasMany(x => x.ClassificationEmployees)
.WithOne(x => x.ClassificationGroup)
.HasForeignKey(x => x.ClassificationGroupId);
builder.HasMany(x => x.ClassificationGroupSalaries)
.WithOne(x => x.ClassificationGroup)
.HasForeignKey(x => x.ClassificationGroupId);
}
}