137 lines
6.0 KiB
C#
137 lines
6.0 KiB
C#
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
namespace UserService.DatabaseLayer.Migrations
|
|
{
|
|
public partial class initial : Migration
|
|
{
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.CreateTable(
|
|
name: "Node",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
CommonName = table.Column<string>(nullable: false),
|
|
Description = table.Column<string>(nullable: true),
|
|
ParentId = table.Column<int>(nullable: true),
|
|
Discriminator = table.Column<string>(nullable: false),
|
|
EMail = table.Column<string>(nullable: true),
|
|
FirstName = table.Column<string>(nullable: true),
|
|
LastName = table.Column<string>(nullable: true),
|
|
IsActive = table.Column<bool>(nullable: true),
|
|
ManagerId = table.Column<int>(nullable: true)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Node", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Node_Node_ParentId",
|
|
column: x => x.ParentId,
|
|
principalTable: "Node",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Restrict);
|
|
table.ForeignKey(
|
|
name: "FK_Node_Node_ManagerId",
|
|
column: x => x.ManagerId,
|
|
principalTable: "Node",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Restrict);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "UserMembers",
|
|
columns: table => new
|
|
{
|
|
MemberId = table.Column<int>(nullable: false),
|
|
UserId = table.Column<int>(nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_UserMembers", x => new { x.MemberId, x.UserId });
|
|
table.ForeignKey(
|
|
name: "FK_UserMembers_Node_MemberId",
|
|
column: x => x.MemberId,
|
|
principalTable: "Node",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_UserMembers_Node_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Node",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "ManagerId" },
|
|
values: new object[] { -2, "Users", null, "OrganizationUnit", null, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "ManagerId" },
|
|
values: new object[] { -1, "Groups", null, "OrganizationUnit", null, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "ManagerId" },
|
|
values: new object[] { -6, "Germany", null, "OrganizationUnit", -2, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "ManagerId" },
|
|
values: new object[] { -5, "USA", null, "OrganizationUnit", -2, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "ManagerId" },
|
|
values: new object[] { -3, "France", null, "OrganizationUnit", -2, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "EMail" },
|
|
values: new object[] { -8, "Global Admin", null, "SecurityGroup", -1, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "EMail", "FirstName", "IsActive", "LastName" },
|
|
values: new object[] { -7, "holger", null, "User", -6, null, null, true, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "Node",
|
|
columns: new[] { "Id", "CommonName", "Description", "Discriminator", "ParentId", "ManagerId" },
|
|
values: new object[] { -4, "Arizona", null, "OrganizationUnit", -5, null });
|
|
|
|
migrationBuilder.InsertData(
|
|
table: "UserMembers",
|
|
columns: new[] { "MemberId", "UserId" },
|
|
values: new object[] { -8, -7 });
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Node_ParentId",
|
|
table: "Node",
|
|
column: "ParentId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Node_ManagerId",
|
|
table: "Node",
|
|
column: "ManagerId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_UserMembers_UserId",
|
|
table: "UserMembers",
|
|
column: "UserId");
|
|
}
|
|
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.DropTable(
|
|
name: "UserMembers");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Node");
|
|
}
|
|
}
|
|
}
|