diff options
| author | ivarlovlie <git@ivarlovlie.no> | 2022-06-01 21:13:43 +0200 |
|---|---|---|
| committer | ivarlovlie <git@ivarlovlie.no> | 2022-06-01 21:13:43 +0200 |
| commit | 9383a2fb09ffb60cfe63683106945bd688affa59 (patch) | |
| tree | 65b3f4b48841583e355887db5de5a16e7005fc87 /src/Migrations | |
| download | vinjesvingenhandel.no-9383a2fb09ffb60cfe63683106945bd688affa59.tar.xz vinjesvingenhandel.no-9383a2fb09ffb60cfe63683106945bd688affa59.zip | |
feat: Initial commit after clean slate
Diffstat (limited to 'src/Migrations')
| -rw-r--r-- | src/Migrations/20210305140605_CleanSlate.Designer.cs | 315 | ||||
| -rw-r--r-- | src/Migrations/20210305140605_CleanSlate.cs | 166 | ||||
| -rw-r--r-- | src/Migrations/20210308201742_VippsResponsesAsStrings.Designer.cs | 314 | ||||
| -rw-r--r-- | src/Migrations/20210308201742_VippsResponsesAsStrings.cs | 17 | ||||
| -rw-r--r-- | src/Migrations/20210309193123_RemoveVippsResponses.Designer.cs | 255 | ||||
| -rw-r--r-- | src/Migrations/20210309193123_RemoveVippsResponses.cs | 81 | ||||
| -rw-r--r-- | src/Migrations/MainDbContextModelSnapshot.cs | 253 |
7 files changed, 1401 insertions, 0 deletions
diff --git a/src/Migrations/20210305140605_CleanSlate.Designer.cs b/src/Migrations/20210305140605_CleanSlate.Designer.cs new file mode 100644 index 0000000..7065863 --- /dev/null +++ b/src/Migrations/20210305140605_CleanSlate.Designer.cs @@ -0,0 +1,315 @@ +// <auto-generated /> +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using VSH.Data; +using VSH.Data.Database; +// using VSH.Data.Vipps; + +namespace VSH.Migrations +{ + [DbContext(typeof(MainDbContext))] + [Migration("20210305140605_CleanSlate")] + partial class CleanSlate + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("Relational:MaxIdentifierLength", 63) + .HasAnnotation("ProductVersion", "5.0.3") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_categories"); + + b.ToTable("Categories"); + }); + + modelBuilder.Entity("VSH.Data.Database.Document", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Content") + .HasColumnType("text") + .HasColumnName("content"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<int>("Type") + .HasColumnType("integer") + .HasColumnName("type"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_documents"); + + b.ToTable("Documents"); + }); + + modelBuilder.Entity("VSH.Data.Database.Order", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Comment") + .HasColumnType("text") + .HasColumnName("comment"); + + b.Property<Order.ContactInformation>("ContactInfo") + .HasColumnType("jsonb") + .HasColumnName("contact_info"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("OrderReference") + .HasColumnType("text") + .HasColumnName("order_reference"); + + b.Property<int>("PaymentType") + .HasColumnType("integer") + .HasColumnName("payment_type"); + + b.Property<List<OrderProduct>>("Products") + .HasColumnType("jsonb") + .HasColumnName("products"); + + b.Property<int>("Status") + .HasColumnType("integer") + .HasColumnName("status"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_orders"); + + b.ToTable("Orders"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<Guid?>("CategoryId") + .HasColumnType("uuid") + .HasColumnName("category_id"); + + b.Property<int>("Count") + .HasColumnType("integer") + .HasColumnName("count"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Description") + .HasColumnType("text") + .HasColumnName("description"); + + b.Property<List<ProductImage>>("Images") + .HasColumnType("jsonb") + .HasColumnName("images"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<decimal>("Price") + .HasColumnType("numeric") + .HasColumnName("price"); + + b.Property<int>("PriceSuffix") + .HasColumnType("integer") + .HasColumnName("price_suffix"); + + b.Property<bool>("ShowOnFrontpage") + .HasColumnType("boolean") + .HasColumnName("show_on_frontpage"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_products"); + + b.HasIndex("CategoryId") + .HasDatabaseName("ix_products_category_id"); + + b.ToTable("Products"); + }); + + modelBuilder.Entity("VSH.Data.Database.User", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Password") + .HasColumnType("text") + .HasColumnName("password"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<string>("Username") + .HasColumnType("text") + .HasColumnName("username"); + + b.HasKey("Id") + .HasName("pk_users"); + + b.ToTable("Users"); + }); + // + // modelBuilder.Entity("VSH.Data.Database.VippsResponse", b => + // { + // b.Property<Guid>("Id") + // .ValueGeneratedOnAdd() + // .HasColumnType("uuid") + // .HasColumnName("id"); + // + // b.Property<VippsPaymentActionResponse>("CancellationResponse") + // .HasColumnType("jsonb") + // .HasColumnName("cancellation_response"); + // + // b.Property<VippsPaymentActionResponse>("CaptureResponse") + // .HasColumnType("jsonb") + // .HasColumnName("capture_response"); + // + // b.Property<DateTime>("Created") + // .HasColumnType("timestamp without time zone") + // .HasColumnName("created"); + // + // b.Property<VippsErrorResponse>("ErrorResponse") + // .HasColumnType("jsonb") + // .HasColumnName("error_response"); + // + // b.Property<VippsPaymentInitiationCallbackResponse>("InitiationResponse") + // .HasColumnType("jsonb") + // .HasColumnName("initiation_response"); + // + // b.Property<Guid>("OrderId") + // .HasColumnType("uuid") + // .HasColumnName("order_id"); + // + // b.Property<VippsGetPaymentDetailsResponse>("PaymentDetailResponse") + // .HasColumnType("jsonb") + // .HasColumnName("payment_detail_response"); + // + // b.Property<VippsPaymentActionResponse>("RefundResponse") + // .HasColumnType("jsonb") + // .HasColumnName("refund_response"); + // + // b.Property<int>("StatusCode") + // .HasColumnType("integer") + // .HasColumnName("status_code"); + // + // b.Property<DateTime?>("Updated") + // .HasColumnType("timestamp without time zone") + // .HasColumnName("updated"); + // + // b.HasKey("Id") + // .HasName("pk_vipps_responses"); + // + // b.HasIndex("OrderId") + // .HasDatabaseName("ix_vipps_responses_order_id"); + // + // b.ToTable("VippsResponses"); + // }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.HasOne("VSH.Data.Database.Category", "Category") + .WithMany("Products") + .HasForeignKey("CategoryId") + .HasConstraintName("fk_products_categories_category_id"); + + b.Navigation("Category"); + }); + + modelBuilder.Entity("VSH.Data.Database.VippsResponse", b => + { + b.HasOne("VSH.Data.Database.Order", null) + .WithMany("VippsResponses") + .HasForeignKey("OrderId") + .HasConstraintName("fk_vipps_responses_orders_order_id") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Navigation("Products"); + }); + + modelBuilder.Entity("VSH.Data.Database.Order", b => + { + b.Navigation("VippsResponses"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/src/Migrations/20210305140605_CleanSlate.cs b/src/Migrations/20210305140605_CleanSlate.cs new file mode 100644 index 0000000..bde6c16 --- /dev/null +++ b/src/Migrations/20210305140605_CleanSlate.cs @@ -0,0 +1,166 @@ +using System; +using System.Collections.Generic; +using IOL.VippsEcommerce.Models.Api; +using Microsoft.EntityFrameworkCore.Migrations; +using VSH.Data.Database; + +namespace VSH.Migrations +{ + public partial class CleanSlate : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "Categories", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + name = table.Column<string>(type: "text", nullable: true), + slug = table.Column<string>(type: "text", nullable: true), + visibility_state = table.Column<int>(type: "integer", nullable: false), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_categories", x => x.id); + }); + + migrationBuilder.CreateTable( + name: "Documents", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + type = table.Column<int>(type: "integer", nullable: false), + content = table.Column<string>(type: "text", nullable: true), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_documents", x => x.id); + }); + + migrationBuilder.CreateTable( + name: "Orders", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + comment = table.Column<string>(type: "text", nullable: true), + order_reference = table.Column<string>(type: "text", nullable: true), + status = table.Column<int>(type: "integer", nullable: false), + payment_type = table.Column<int>(type: "integer", nullable: false), + contact_info = table.Column<Order.ContactInformation>(type: "jsonb", nullable: true), + products = table.Column<List<OrderProduct>>(type: "jsonb", nullable: true), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_orders", x => x.id); + }); + + migrationBuilder.CreateTable( + name: "Users", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + username = table.Column<string>(type: "text", nullable: true), + password = table.Column<string>(type: "text", nullable: true), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_users", x => x.id); + }); + + migrationBuilder.CreateTable( + name: "Products", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + name = table.Column<string>(type: "text", nullable: true), + description = table.Column<string>(type: "text", nullable: true), + price = table.Column<decimal>(type: "numeric", nullable: false), + price_suffix = table.Column<int>(type: "integer", nullable: false), + visibility_state = table.Column<int>(type: "integer", nullable: false), + category_id = table.Column<Guid>(type: "uuid", nullable: true), + images = table.Column<List<ProductImage>>(type: "jsonb", nullable: true), + count = table.Column<int>(type: "integer", nullable: false), + slug = table.Column<string>(type: "text", nullable: true), + show_on_frontpage = table.Column<bool>(type: "boolean", nullable: false), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_products", x => x.id); + table.ForeignKey( + name: "fk_products_categories_category_id", + column: x => x.category_id, + principalTable: "Categories", + principalColumn: "id", + onDelete: ReferentialAction.Restrict); + }); + + migrationBuilder.CreateTable( + name: "VippsResponses", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + order_id = table.Column<Guid>(type: "uuid", nullable: false), + status_code = table.Column<int>(type: "integer", nullable: false), + initiation_response = table.Column<VippsPaymentInitiationCallbackResponse>(type: "jsonb", nullable: true), + payment_detail_response = table.Column<VippsGetPaymentDetailsResponse>(type: "jsonb", nullable: true), + cancellation_response = table.Column<VippsPaymentActionResponse>(type: "jsonb", nullable: true), + refund_response = table.Column<VippsPaymentActionResponse>(type: "jsonb", nullable: true), + capture_response = table.Column<VippsPaymentActionResponse>(type: "jsonb", nullable: true), + error_response = table.Column<VippsErrorResponse>(type: "jsonb", nullable: true), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_vipps_responses", x => x.id); + table.ForeignKey( + name: "fk_vipps_responses_orders_order_id", + column: x => x.order_id, + principalTable: "Orders", + principalColumn: "id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "ix_products_category_id", + table: "Products", + column: "category_id"); + + migrationBuilder.CreateIndex( + name: "ix_vipps_responses_order_id", + table: "VippsResponses", + column: "order_id"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "Documents"); + + migrationBuilder.DropTable( + name: "Products"); + + migrationBuilder.DropTable( + name: "Users"); + + migrationBuilder.DropTable( + name: "VippsResponses"); + + migrationBuilder.DropTable( + name: "Categories"); + + migrationBuilder.DropTable( + name: "Orders"); + } + } +} diff --git a/src/Migrations/20210308201742_VippsResponsesAsStrings.Designer.cs b/src/Migrations/20210308201742_VippsResponsesAsStrings.Designer.cs new file mode 100644 index 0000000..5a332a5 --- /dev/null +++ b/src/Migrations/20210308201742_VippsResponsesAsStrings.Designer.cs @@ -0,0 +1,314 @@ +// <auto-generated /> +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using VSH.Data; +using VSH.Data.Database; + +namespace VSH.Migrations +{ + [DbContext(typeof(MainDbContext))] + [Migration("20210308201742_VippsResponsesAsStrings")] + partial class VippsResponsesAsStrings + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("Relational:MaxIdentifierLength", 63) + .HasAnnotation("ProductVersion", "5.0.3") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_categories"); + + b.ToTable("Categories"); + }); + + modelBuilder.Entity("VSH.Data.Database.Document", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Content") + .HasColumnType("text") + .HasColumnName("content"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<int>("Type") + .HasColumnType("integer") + .HasColumnName("type"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_documents"); + + b.ToTable("Documents"); + }); + + modelBuilder.Entity("VSH.Data.Database.Order", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Comment") + .HasColumnType("text") + .HasColumnName("comment"); + + b.Property<Order.ContactInformation>("ContactInfo") + .HasColumnType("jsonb") + .HasColumnName("contact_info"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("OrderReference") + .HasColumnType("text") + .HasColumnName("order_reference"); + + b.Property<int>("PaymentType") + .HasColumnType("integer") + .HasColumnName("payment_type"); + + b.Property<List<OrderProduct>>("Products") + .HasColumnType("jsonb") + .HasColumnName("products"); + + b.Property<int>("Status") + .HasColumnType("integer") + .HasColumnName("status"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_orders"); + + b.ToTable("Orders"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<Guid?>("CategoryId") + .HasColumnType("uuid") + .HasColumnName("category_id"); + + b.Property<int>("Count") + .HasColumnType("integer") + .HasColumnName("count"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Description") + .HasColumnType("text") + .HasColumnName("description"); + + b.Property<List<ProductImage>>("Images") + .HasColumnType("jsonb") + .HasColumnName("images"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<decimal>("Price") + .HasColumnType("numeric") + .HasColumnName("price"); + + b.Property<int>("PriceSuffix") + .HasColumnType("integer") + .HasColumnName("price_suffix"); + + b.Property<bool>("ShowOnFrontpage") + .HasColumnType("boolean") + .HasColumnName("show_on_frontpage"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_products"); + + b.HasIndex("CategoryId") + .HasDatabaseName("ix_products_category_id"); + + b.ToTable("Products"); + }); + + modelBuilder.Entity("VSH.Data.Database.User", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Password") + .HasColumnType("text") + .HasColumnName("password"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<string>("Username") + .HasColumnType("text") + .HasColumnName("username"); + + b.HasKey("Id") + .HasName("pk_users"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("VSH.Data.Database.VippsResponse", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("CancellationResponse") + .HasColumnType("jsonb") + .HasColumnName("cancellation_response"); + + b.Property<string>("CaptureResponse") + .HasColumnType("jsonb") + .HasColumnName("capture_response"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("ErrorResponse") + .HasColumnType("jsonb") + .HasColumnName("error_response"); + + b.Property<string>("InitiationResponse") + .HasColumnType("jsonb") + .HasColumnName("initiation_response"); + + b.Property<Guid>("OrderId") + .HasColumnType("uuid") + .HasColumnName("order_id"); + + b.Property<string>("PaymentDetailResponse") + .HasColumnType("jsonb") + .HasColumnName("payment_detail_response"); + + b.Property<string>("RefundResponse") + .HasColumnType("jsonb") + .HasColumnName("refund_response"); + + b.Property<int>("StatusCode") + .HasColumnType("integer") + .HasColumnName("status_code"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_vipps_responses"); + + b.HasIndex("OrderId") + .HasDatabaseName("ix_vipps_responses_order_id"); + + b.ToTable("VippsResponses"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.HasOne("VSH.Data.Database.Category", "Category") + .WithMany("Products") + .HasForeignKey("CategoryId") + .HasConstraintName("fk_products_categories_category_id"); + + b.Navigation("Category"); + }); + + modelBuilder.Entity("VSH.Data.Database.VippsResponse", b => + { + b.HasOne("VSH.Data.Database.Order", null) + .WithMany("VippsResponses") + .HasForeignKey("OrderId") + .HasConstraintName("fk_vipps_responses_orders_order_id") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Navigation("Products"); + }); + + modelBuilder.Entity("VSH.Data.Database.Order", b => + { + b.Navigation("VippsResponses"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/src/Migrations/20210308201742_VippsResponsesAsStrings.cs b/src/Migrations/20210308201742_VippsResponsesAsStrings.cs new file mode 100644 index 0000000..c0de79a --- /dev/null +++ b/src/Migrations/20210308201742_VippsResponsesAsStrings.cs @@ -0,0 +1,17 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +namespace VSH.Migrations +{ + public partial class VippsResponsesAsStrings : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + + } + } +} diff --git a/src/Migrations/20210309193123_RemoveVippsResponses.Designer.cs b/src/Migrations/20210309193123_RemoveVippsResponses.Designer.cs new file mode 100644 index 0000000..81db0a1 --- /dev/null +++ b/src/Migrations/20210309193123_RemoveVippsResponses.Designer.cs @@ -0,0 +1,255 @@ +// <auto-generated /> +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using VSH.Data; +using VSH.Data.Database; + +namespace VSH.Migrations +{ + [DbContext(typeof(MainDbContext))] + [Migration("20210309193123_RemoveVippsResponses")] + partial class RemoveVippsResponses + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("Relational:MaxIdentifierLength", 63) + .HasAnnotation("ProductVersion", "5.0.3") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_categories"); + + b.ToTable("Categories"); + }); + + modelBuilder.Entity("VSH.Data.Database.Document", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Content") + .HasColumnType("text") + .HasColumnName("content"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<int>("Type") + .HasColumnType("integer") + .HasColumnName("type"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_documents"); + + b.ToTable("Documents"); + }); + + modelBuilder.Entity("VSH.Data.Database.Order", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Comment") + .HasColumnType("text") + .HasColumnName("comment"); + + b.Property<Order.ContactInformation>("ContactInfo") + .HasColumnType("jsonb") + .HasColumnName("contact_info"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("OrderReference") + .HasColumnType("text") + .HasColumnName("order_reference"); + + b.Property<int>("PaymentType") + .HasColumnType("integer") + .HasColumnName("payment_type"); + + b.Property<List<OrderProduct>>("Products") + .HasColumnType("jsonb") + .HasColumnName("products"); + + b.Property<int>("Status") + .HasColumnType("integer") + .HasColumnName("status"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VippsStatus") + .HasColumnType("integer") + .HasColumnName("vipps_status"); + + b.Property<string>("VippsTransactionId") + .HasColumnType("text") + .HasColumnName("vipps_transaction_id"); + + b.Property<int>("VippsTransactionStatus") + .HasColumnType("integer") + .HasColumnName("vipps_transaction_status"); + + b.HasKey("Id") + .HasName("pk_orders"); + + b.ToTable("Orders"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<Guid?>("CategoryId") + .HasColumnType("uuid") + .HasColumnName("category_id"); + + b.Property<int>("Count") + .HasColumnType("integer") + .HasColumnName("count"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Description") + .HasColumnType("text") + .HasColumnName("description"); + + b.Property<List<ProductImage>>("Images") + .HasColumnType("jsonb") + .HasColumnName("images"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<decimal>("Price") + .HasColumnType("numeric") + .HasColumnName("price"); + + b.Property<int>("PriceSuffix") + .HasColumnType("integer") + .HasColumnName("price_suffix"); + + b.Property<bool>("ShowOnFrontpage") + .HasColumnType("boolean") + .HasColumnName("show_on_frontpage"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_products"); + + b.HasIndex("CategoryId") + .HasDatabaseName("ix_products_category_id"); + + b.ToTable("Products"); + }); + + modelBuilder.Entity("VSH.Data.Database.User", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Password") + .HasColumnType("text") + .HasColumnName("password"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<string>("Username") + .HasColumnType("text") + .HasColumnName("username"); + + b.HasKey("Id") + .HasName("pk_users"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.HasOne("VSH.Data.Database.Category", "Category") + .WithMany("Products") + .HasForeignKey("CategoryId") + .HasConstraintName("fk_products_categories_category_id"); + + b.Navigation("Category"); + }); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Navigation("Products"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/src/Migrations/20210309193123_RemoveVippsResponses.cs b/src/Migrations/20210309193123_RemoveVippsResponses.cs new file mode 100644 index 0000000..8fdd4f0 --- /dev/null +++ b/src/Migrations/20210309193123_RemoveVippsResponses.cs @@ -0,0 +1,81 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +namespace VSH.Migrations +{ + public partial class RemoveVippsResponses : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "VippsResponses"); + + migrationBuilder.AddColumn<int>( + name: "vipps_status", + table: "Orders", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.AddColumn<string>( + name: "vipps_transaction_id", + table: "Orders", + type: "text", + nullable: true); + + migrationBuilder.AddColumn<int>( + name: "vipps_transaction_status", + table: "Orders", + type: "integer", + nullable: false, + defaultValue: 0); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "vipps_status", + table: "Orders"); + + migrationBuilder.DropColumn( + name: "vipps_transaction_id", + table: "Orders"); + + migrationBuilder.DropColumn( + name: "vipps_transaction_status", + table: "Orders"); + + migrationBuilder.CreateTable( + name: "VippsResponses", + columns: table => new + { + id = table.Column<Guid>(type: "uuid", nullable: false), + cancellation_response = table.Column<string>(type: "jsonb", nullable: true), + capture_response = table.Column<string>(type: "jsonb", nullable: true), + created = table.Column<DateTime>(type: "timestamp without time zone", nullable: false), + error_response = table.Column<string>(type: "jsonb", nullable: true), + initiation_response = table.Column<string>(type: "jsonb", nullable: true), + order_id = table.Column<Guid>(type: "uuid", nullable: false), + payment_detail_response = table.Column<string>(type: "jsonb", nullable: true), + refund_response = table.Column<string>(type: "jsonb", nullable: true), + status_code = table.Column<int>(type: "integer", nullable: false), + updated = table.Column<DateTime>(type: "timestamp without time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("pk_vipps_responses", x => x.id); + table.ForeignKey( + name: "fk_vipps_responses_orders_order_id", + column: x => x.order_id, + principalTable: "Orders", + principalColumn: "id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "ix_vipps_responses_order_id", + table: "VippsResponses", + column: "order_id"); + } + } +} diff --git a/src/Migrations/MainDbContextModelSnapshot.cs b/src/Migrations/MainDbContextModelSnapshot.cs new file mode 100644 index 0000000..34b688e --- /dev/null +++ b/src/Migrations/MainDbContextModelSnapshot.cs @@ -0,0 +1,253 @@ +// <auto-generated /> +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using VSH.Data; +using VSH.Data.Database; + +namespace VSH.Migrations +{ + [DbContext(typeof(MainDbContext))] + partial class MainDbContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("Relational:MaxIdentifierLength", 63) + .HasAnnotation("ProductVersion", "5.0.3") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_categories"); + + b.ToTable("Categories"); + }); + + modelBuilder.Entity("VSH.Data.Database.Document", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Content") + .HasColumnType("text") + .HasColumnName("content"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<int>("Type") + .HasColumnType("integer") + .HasColumnName("type"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.HasKey("Id") + .HasName("pk_documents"); + + b.ToTable("Documents"); + }); + + modelBuilder.Entity("VSH.Data.Database.Order", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<string>("Comment") + .HasColumnType("text") + .HasColumnName("comment"); + + b.Property<Order.ContactInformation>("ContactInfo") + .HasColumnType("jsonb") + .HasColumnName("contact_info"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("OrderReference") + .HasColumnType("text") + .HasColumnName("order_reference"); + + b.Property<int>("PaymentType") + .HasColumnType("integer") + .HasColumnName("payment_type"); + + b.Property<List<OrderProduct>>("Products") + .HasColumnType("jsonb") + .HasColumnName("products"); + + b.Property<int>("Status") + .HasColumnType("integer") + .HasColumnName("status"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VippsStatus") + .HasColumnType("integer") + .HasColumnName("vipps_status"); + + b.Property<string>("VippsTransactionId") + .HasColumnType("text") + .HasColumnName("vipps_transaction_id"); + + b.Property<int>("VippsTransactionStatus") + .HasColumnType("integer") + .HasColumnName("vipps_transaction_status"); + + b.HasKey("Id") + .HasName("pk_orders"); + + b.ToTable("Orders"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<Guid?>("CategoryId") + .HasColumnType("uuid") + .HasColumnName("category_id"); + + b.Property<int>("Count") + .HasColumnType("integer") + .HasColumnName("count"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Description") + .HasColumnType("text") + .HasColumnName("description"); + + b.Property<List<ProductImage>>("Images") + .HasColumnType("jsonb") + .HasColumnName("images"); + + b.Property<string>("Name") + .HasColumnType("text") + .HasColumnName("name"); + + b.Property<decimal>("Price") + .HasColumnType("numeric") + .HasColumnName("price"); + + b.Property<int>("PriceSuffix") + .HasColumnType("integer") + .HasColumnName("price_suffix"); + + b.Property<bool>("ShowOnFrontpage") + .HasColumnType("boolean") + .HasColumnName("show_on_frontpage"); + + b.Property<string>("Slug") + .HasColumnType("text") + .HasColumnName("slug"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<int>("VisibilityState") + .HasColumnType("integer") + .HasColumnName("visibility_state"); + + b.HasKey("Id") + .HasName("pk_products"); + + b.HasIndex("CategoryId") + .HasDatabaseName("ix_products_category_id"); + + b.ToTable("Products"); + }); + + modelBuilder.Entity("VSH.Data.Database.User", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid") + .HasColumnName("id"); + + b.Property<DateTime>("Created") + .HasColumnType("timestamp without time zone") + .HasColumnName("created"); + + b.Property<string>("Password") + .HasColumnType("text") + .HasColumnName("password"); + + b.Property<DateTime?>("Updated") + .HasColumnType("timestamp without time zone") + .HasColumnName("updated"); + + b.Property<string>("Username") + .HasColumnType("text") + .HasColumnName("username"); + + b.HasKey("Id") + .HasName("pk_users"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("VSH.Data.Database.Product", b => + { + b.HasOne("VSH.Data.Database.Category", "Category") + .WithMany("Products") + .HasForeignKey("CategoryId") + .HasConstraintName("fk_products_categories_category_id"); + + b.Navigation("Category"); + }); + + modelBuilder.Entity("VSH.Data.Database.Category", b => + { + b.Navigation("Products"); + }); +#pragma warning restore 612, 618 + } + } +} |
