Files
Wishlist/wishlist/Data/DB/Migrations/20240630_2015_InitialTables.cs
Arne Moerman ab68df2184 open changes
2024-12-15 19:08:25 +01:00

95 lines
4.8 KiB
C#

using FluentMigrator;
namespace Wishlist.Data.DB.Migrations
{
[Migration(2024_06_30__20_15)]
public class _20240630_2015_InitialTables : Migration
{
public override void Up()
{
Create.Table("Users")
.WithColumn("Id").AsInt32().PrimaryKey().Identity()
.WithColumn("Username").AsString(50).NotNullable()
.WithColumn("Name").AsString(255).NotNullable()
.WithColumn("GivenName").AsString(255).NotNullable()
.WithColumn("Surname").AsString(255).NotNullable()
.WithColumn("Email").AsString(255).NotNullable()
.WithColumn("Password").AsString().NotNullable()
.WithColumn("ProjectRolesName").AsString(50).NotNullable()
.WithColumn("LoginType").AsInt32().NotNullable();
Create.Table("Wishlists")
.WithColumn("Id").AsInt32().PrimaryKey().Identity()
.WithColumn("Name").AsString(50).NotNullable()
.WithColumn("Description").AsString().NotNullable()
.WithColumn("UserId").AsInt32().NotNullable()
.WithColumn("IsPublic").AsBoolean().NotNullable();
Create.ForeignKey("FK_Wishlists_Users_UserId")
.FromTable("Wishlists").ForeignColumn("UserId")
.ToTable("Users").PrimaryColumn("Id");
Create.Table("WishlistItems")
.WithColumn("Id").AsInt32().PrimaryKey().Identity()
.WithColumn("WishlistId").AsInt32().NotNullable()
.WithColumn("Name").AsString(50).NotNullable()
.WithColumn("Description").AsString().Nullable()
.WithColumn("Price").AsDecimal().NotNullable()
.WithColumn("Link").AsString().Nullable();
Create.ForeignKey("FK_WishlistItems_Wishlists_WishlistId")
.FromTable("WishlistItems").ForeignColumn("WishlistId")
.ToTable("Wishlists").PrimaryColumn("Id");
Create.Table("UserMayViewWishList")
.WithColumn("Id").AsInt32().PrimaryKey().Identity()
.WithColumn("UserId").AsInt32().NotNullable()
.WithColumn("WishlistId").AsInt32().NotNullable();
Create.ForeignKey("FK_UserMayViewWishList_Users_UserId")
.FromTable("UserMayViewWishList").ForeignColumn("UserId")
.ToTable("Users").PrimaryColumn("Id");
Create.ForeignKey("FK_UserMayViewWishList_Wishlists_WishlistId")
.FromTable("UserMayViewWishList").ForeignColumn("WishlistId")
.ToTable("Wishlists").PrimaryColumn("Id");
Create.Table("UserMarkedAsGettingItem")
.WithColumn("Id").AsInt32().PrimaryKey().Identity()
.WithColumn("UserId").AsInt32().NotNullable()
.WithColumn("WishlistItemId").AsInt32().NotNullable();
Create.ForeignKey("FK_UserMarkedAsGettingItem_Users_UserId")
.FromTable("UserMarkedAsGettingItem").ForeignColumn("UserId")
.ToTable("Users").PrimaryColumn("Id");
Create.ForeignKey("FK_UserMarkedAsGettingItem_WishlistItems_WishlistItemId")
.FromTable("UserMarkedAsGettingItem").ForeignColumn("WishlistItemId")
.ToTable("WishlistItems").PrimaryColumn("Id");
Create.Table("Friends")
.WithColumn("Id").AsInt32().PrimaryKey().Identity()
.WithColumn("UserId").AsInt32().NotNullable()
.WithColumn("FriendUserId").AsInt32().NotNullable();
Create.ForeignKey("FK_Friends_Users_UserId")
.FromTable("Friends").ForeignColumn("UserId")
.ToTable("Users").PrimaryColumn("Id");
Create.ForeignKey("FK_Friends_Users_FriendUserId")
.FromTable("Friends").ForeignColumn("FriendUserId")
.ToTable("Users").PrimaryColumn("Id");
}
public override void Down()
{
Delete.ForeignKey("FK_Friends_Users_FriendUserId");
Delete.ForeignKey("FK_Friends_Users_UserId");
Delete.Table("Friends");
Delete.ForeignKey("FK_UserMarkedAsGettingItem_WishlistItems_WishlistItemId");
Delete.ForeignKey("FK_UserMarkedAsGettingItem_Users_UserId");
Delete.Table("UserMarkedAsGettingItem");
Delete.ForeignKey("FK_UserMayViewWishList_Wishlists_WishlistId");
Delete.ForeignKey("FK_UserMayViewWishList_Users_UserId");
Delete.Table("UserMayViewWishList");
Delete.ForeignKey("FK_WishlistItems_Wishlists_WishlistId");
Delete.Table("WishlistItems");
Delete.ForeignKey("FK_Wishlists_Users_UserId");
Delete.Table("Wishlists");
Delete.Table("Users");
}
}
}