You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
2.3 KiB

2 years ago
1 year ago
2 years ago
1 year ago
2 years ago
2 years ago
2 years ago
1 year ago
2 years ago
1 year ago
2 years ago
  1. using Microsoft.EntityFrameworkCore;
  2. using Microsoft.EntityFrameworkCore.Metadata.Builders;
  3. using Shentun.Peis.EntityFrameworkCore;
  4. using Shentun.Peis.Models;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace Shentun.Peis.DbMapping
  11. {
  12. internal class RoomDbMapping : IEntityTypeConfiguration<Room>
  13. {
  14. public void Configure(EntityTypeBuilder<Room> entity)
  15. {
  16. entity.HasComment("房间设置");
  17. entity.Property(t => t.ItemTypeId).HasComment("项目类别编号").IsRequired().IsFixedLength();
  18. entity.Property(t => t.MedicalCenterId).HasComment("体检中心");
  19. entity.Property(e => e.Id).IsFixedLength();
  20. //entity.Property(e => e.CreationTime).HasDefaultValueSql("(date(timezone('UTC-8'::text, now())) - 1)");
  21. entity.Property(e => e.MedicalCenterId).IsFixedLength().IsRequired();
  22. entity.Property(e => e.ForSexId).HasDefaultValueSql("'A'::bpchar").IsRequired();
  23. entity.Property(e => e.RoomTypeFlag).HasDefaultValueSql("0").IsRequired();
  24. entity.HasOne(d => d.ItemType)
  25. .WithMany(p => p.Rooms)
  26. .HasForeignKey(d => d.ItemTypeId)
  27. .HasConstraintName("fk_room_item_type");
  28. //entity.HasMany(d => d.Asbitems)
  29. // .WithMany(p => p.Rooms)
  30. // .UsingEntity<Dictionary<string, object>>(
  31. // "RoomAsbitem",
  32. // l => l.HasOne<Asbitem>().WithMany().HasForeignKey("AsbitemId").HasConstraintName("fk_room_asbitem_asbitem"),
  33. // r => r.HasOne<Room>().WithMany().HasForeignKey("RoomId").HasConstraintName("fk_room_asbitem_room"),
  34. // j =>
  35. // {
  36. // j.HasKey("RoomId", "AsbitemId").HasName("pk_room_asbitem");
  37. // j.ToTable("room_asbitem").HasComment("房间包含组合项目设置");
  38. // j.IndexerProperty<Guid>("RoomId").HasMaxLength(5).HasColumnName("room_id").IsFixedLength();
  39. // j.IndexerProperty<Guid>("AsbitemId").HasMaxLength(6).HasColumnName("asbitem_id").IsFixedLength();
  40. // });
  41. entity.ConfigureByConvention();
  42. }
  43. }
  44. }