using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; using Shentun.Peis.EntityFrameworkCore; using Shentun.Peis.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Shentun.Peis.DbMapping { internal class RoomDbMapping : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder entity) { entity.HasComment("房间设置"); entity.Property(t => t.ItemTypeId).HasComment("项目类别编号").IsRequired().IsFixedLength(); entity.Property(t => t.MedicalCenterId).HasComment("体检中心"); entity.Property(t=>t.RoomNo).HasComment("房间号").IsRequired().IsFixedLength(); entity.Property(e => e.Id).IsFixedLength(); //entity.Property(e => e.CreationTime).HasDefaultValueSql("(date(timezone('UTC-8'::text, now())) - 1)"); entity.Property(e => e.MedicalCenterId).IsFixedLength().IsRequired(); entity.Property(e => e.ForSexId).HasDefaultValueSql("'A'::bpchar").IsRequired(); entity.Property(e => e.RoomTypeFlag).HasDefaultValueSql("0").IsRequired(); entity.HasOne(d => d.ItemType) .WithMany(p => p.Rooms) .HasForeignKey(d => d.ItemTypeId) .HasConstraintName("fk_room_item_type"); //entity.HasMany(d => d.Asbitems) // .WithMany(p => p.Rooms) // .UsingEntity>( // "RoomAsbitem", // l => l.HasOne().WithMany().HasForeignKey("AsbitemId").HasConstraintName("fk_room_asbitem_asbitem"), // r => r.HasOne().WithMany().HasForeignKey("RoomId").HasConstraintName("fk_room_asbitem_room"), // j => // { // j.HasKey("RoomId", "AsbitemId").HasName("pk_room_asbitem"); // j.ToTable("room_asbitem").HasComment("房间包含组合项目设置"); // j.IndexerProperty("RoomId").HasMaxLength(5).HasColumnName("room_id").IsFixedLength(); // j.IndexerProperty("AsbitemId").HasMaxLength(6).HasColumnName("asbitem_id").IsFixedLength(); // }); entity.ConfigureByConvention(); } } }