|
|
|
@ -23,19 +23,21 @@ namespace IoT.Shared
|
|
|
|
|
modelBuilder.Entity<Permission>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
modelBuilder.Entity<UserRole>().HasIndex(o => new { o.UserId, o.RoleId }).IsUnique();
|
|
|
|
|
modelBuilder.Entity<RolePermission>().HasIndex(o => new { o.RoleId, o.PermissionId }).IsUnique();
|
|
|
|
|
//////
|
|
|
|
|
modelBuilder.Entity<Node>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
//
|
|
|
|
|
modelBuilder.Entity<Category>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
modelBuilder.Entity<Product>().HasOne(o => o.Category).WithMany(o => o.Products).HasForeignKey(o => o.CategoryId);
|
|
|
|
|
modelBuilder.Entity<Product>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
modelBuilder.Entity<Api>().HasOne(o => o.Product).WithMany(o => o.Apis).HasForeignKey(o => o.ProductId);
|
|
|
|
|
modelBuilder.Entity<Api>().HasIndex(o => new { o.ProductId, o.Name }).IsUnique();
|
|
|
|
|
modelBuilder.Entity<Node>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
modelBuilder.Entity<Parameter>().HasOne(o => o.Api).WithMany(o => o.Parameters).HasForeignKey(o => o.ApiId);
|
|
|
|
|
//
|
|
|
|
|
modelBuilder.Entity<Device>().HasOne(o => o.Product).WithMany(o => o.Devices).HasForeignKey(o => o.ProductId);
|
|
|
|
|
modelBuilder.Entity<Device>().HasOne(o => o.Node).WithMany(o => o.Devices).HasForeignKey(o => o.NodeId);
|
|
|
|
|
modelBuilder.Entity<Device>().HasIndex(o => o.Number).IsUnique();
|
|
|
|
|
modelBuilder.Entity<Data>().HasOne(o => o.Device).WithMany(o => o.Data).HasForeignKey(o => o.DeviceId);
|
|
|
|
|
modelBuilder.Entity<Parameter>().HasOne(o => o.Api).WithMany(o => o.Parameters).HasForeignKey(o => o.ApiId);
|
|
|
|
|
modelBuilder.Entity<LiveRecord>().Property(o => o.DeviceNumber).IsRequired();
|
|
|
|
|
//
|
|
|
|
|
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<SceneCommand>().HasOne(o => o.Scene).WithMany(o => o.SceneCommands).HasForeignKey(o => o.SceneId);
|
|
|
|
@ -43,10 +45,6 @@ namespace IoT.Shared
|
|
|
|
|
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(o => o.CategoryNodes).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();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static void Seed(DbContext db)
|
|
|
|
@ -76,8 +74,6 @@ namespace IoT.Shared
|
|
|
|
|
db.Set<Category>().Add(new Category { Id = "productcatgoryid-40".ToGuid(), Number = "40", Name = "监测", Image = "/images/monitor.png" });
|
|
|
|
|
|
|
|
|
|
db.SaveChanges();
|
|
|
|
|
db.Set<NodeCategory>().Add(new NodeCategory { Name = "智慧教室", Template = "node" });
|
|
|
|
|
db.SaveChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|