|
|
|
@ -42,12 +42,26 @@ namespace IoT.Shared
|
|
|
|
|
modelBuilder.Entity<Data>().HasOne(o => o.Device).WithMany(o => o.Data).HasForeignKey(o => o.DeviceId);
|
|
|
|
|
//
|
|
|
|
|
modelBuilder.Entity<Command>().HasOne(o => o.Api).WithMany(o => o.Commands).HasForeignKey(o => o.ApiId);
|
|
|
|
|
modelBuilder.Entity<Scene>().HasOne(o => o.Node).WithMany(o => o.Scenes).HasForeignKey(o => o.NodeId);
|
|
|
|
|
modelBuilder.Entity<Scene>().HasOne(o => o.Node).WithMany(o => o.Scenes).HasForeignKey(o => o.NodeId).OnDelete(DeleteBehavior.Cascade);
|
|
|
|
|
modelBuilder.Entity<SceneCommand>().HasOne(o => o.Scene).WithMany(o => o.SceneCommands).HasForeignKey(o => o.SceneId);
|
|
|
|
|
modelBuilder.Entity<SceneCommand>().HasOne(o => o.Command).WithMany(o => o.SceneCommands).HasForeignKey(o => o.CommandId);
|
|
|
|
|
modelBuilder.Entity<SceneTimer>().HasOne(o => o.Scene).WithMany(o => o.SceneTimers).HasForeignKey(o => o.SceneId);
|
|
|
|
|
modelBuilder.Entity<SceneTigger>().HasOne(o => o.Scene).WithMany(o => o.SceneTiggers).HasForeignKey(o => o.SceneId);
|
|
|
|
|
modelBuilder.Entity<SceneTigger>().HasOne(o => o.Data).WithMany(o => o.Tiggers).HasForeignKey(o => o.DataId);
|
|
|
|
|
//
|
|
|
|
|
modelBuilder.Entity<NodeCategory>().HasIndex(o => o.Name).IsUnique();
|
|
|
|
|
modelBuilder.Entity<NodeCategoryNode>().HasOne(o => o.Node).WithMany().HasForeignKey(o => o.NodeId);
|
|
|
|
|
modelBuilder.Entity<NodeCategoryNode>().HasOne(o => o.Category).WithMany(o => o.CategoryNodes).HasForeignKey(o => o.CategoryId);
|
|
|
|
|
modelBuilder.Entity<NodeCategoryNode>().HasIndex(o => new { o.CategoryId, o.NodeId }).IsUnique();
|
|
|
|
|
modelBuilder.Entity<Organ>().Property(o => o.Number).IsRequired();
|
|
|
|
|
modelBuilder.Entity<Organ>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
modelBuilder.Entity<OrganUser>().HasOne(o => o.Organ).WithMany(o => o.OrganUsers).HasForeignKey(o => o.OrganId);
|
|
|
|
|
modelBuilder.Entity<OrganUser>().HasOne(o => o.User).WithMany(o => o.OrganUsers).HasForeignKey(o => o.UserId);
|
|
|
|
|
modelBuilder.Entity<OrganUser>().HasIndex(o => new { o.OrganId, o.UserId }).IsUnique();
|
|
|
|
|
modelBuilder.Entity<OrganNode>().HasOne(o => o.Organ).WithMany(o => o.OrganNodes).HasForeignKey(o => o.OrganId);
|
|
|
|
|
modelBuilder.Entity<OrganNode>().HasOne(o => o.Organ).WithMany(o => o.OrganNodes).HasForeignKey(o => o.OrganId);
|
|
|
|
|
modelBuilder.Entity<OrganNode>().HasOne(o => o.Node).WithMany(o => o.OrganNodes).HasForeignKey(o => o.NodeId);
|
|
|
|
|
modelBuilder.Entity<OrganNode>().HasIndex(o => new { o.OrganId, o.NodeId }).IsUnique();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static void Seed(DbContext db)
|
|
|
|
|