From f53bcf7dff1ee53ac5683df437cad8b22f9fbac5 Mon Sep 17 00:00:00 2001 From: HombreLaser Date: Fri, 25 Nov 2022 16:42:40 -0600 Subject: Añadido modelo de ganador de rifa MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20221125223610_AddRaffleWinner.Designer.cs | 463 +++++++++++++++++++++ Migrations/20221125223610_AddRaffleWinner.cs | 70 ++++ Migrations/ApplicationDbContextModelSnapshot.cs | 56 +++ 3 files changed, 589 insertions(+) create mode 100644 Migrations/20221125223610_AddRaffleWinner.Designer.cs create mode 100644 Migrations/20221125223610_AddRaffleWinner.cs (limited to 'Migrations') diff --git a/Migrations/20221125223610_AddRaffleWinner.Designer.cs b/Migrations/20221125223610_AddRaffleWinner.Designer.cs new file mode 100644 index 0000000..afeaa3a --- /dev/null +++ b/Migrations/20221125223610_AddRaffleWinner.Designer.cs @@ -0,0 +1,463 @@ +// +using System; +using BackendPIA.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace BackendPIA.Migrations +{ + [DbContext(typeof(ApplicationDbContext))] + [Migration("20221125223610_AddRaffleWinner")] + partial class AddRaffleWinner + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.0") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("BackendPIA.Models.Prize", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("RaffleId") + .HasColumnType("bigint"); + + b.Property("Tier") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RaffleId"); + + b.ToTable("Prizes"); + }); + + modelBuilder.Entity("BackendPIA.Models.Raffle", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IsClosed") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("character varying(128)"); + + b.Property("Winners") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("Raffles"); + }); + + modelBuilder.Entity("BackendPIA.Models.RaffleWinner", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("PrizeId") + .HasColumnType("bigint"); + + b.Property("RaffleId") + .HasColumnType("bigint"); + + b.Property("UserAccountId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("PrizeId"); + + b.HasIndex("RaffleId"); + + b.HasIndex("UserAccountId"); + + b.ToTable("RaffleWinners"); + }); + + modelBuilder.Entity("BackendPIA.Models.Ticket", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IsWinner") + .HasColumnType("boolean"); + + b.Property("Number") + .HasColumnType("integer"); + + b.Property("RaffleId") + .HasColumnType("bigint"); + + b.Property("UserAccountId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("RaffleId"); + + b.HasIndex("UserAccountId"); + + b.ToTable("Tickets"); + }); + + modelBuilder.Entity("BackendPIA.Models.UserAccount", b => + { + b.Property("Id") + .HasColumnType("text"); + + b.Property("AccessFailedCount") + .HasColumnType("integer"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("text"); + + b.Property("Email") + .HasMaxLength(256) + .HasColumnType("character varying(256)"); + + b.Property("EmailConfirmed") + .HasColumnType("boolean"); + + b.Property("LockoutEnabled") + .HasColumnType("boolean"); + + b.Property("LockoutEnd") + .HasColumnType("timestamp with time zone"); + + b.Property("NormalizedEmail") + .HasMaxLength(256) + .HasColumnType("character varying(256)"); + + b.Property("NormalizedUserName") + .HasMaxLength(256) + .HasColumnType("character varying(256)"); + + b.Property("PasswordHash") + .HasColumnType("text"); + + b.Property("PhoneNumber") + .HasColumnType("text"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("boolean"); + + b.Property("SecurityStamp") + .HasColumnType("text"); + + b.Property("SessionToken") + .HasMaxLength(64) + .HasColumnType("character varying(64)"); + + b.Property("SessionTokenExpiryTime") + .HasColumnType("timestamp with time zone"); + + b.Property("TwoFactorEnabled") + .HasColumnType("boolean"); + + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("character varying(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail") + .HasDatabaseName("EmailIndex"); + + b.HasIndex("NormalizedUserName") + .IsUnique() + .HasDatabaseName("UserNameIndex"); + + b.ToTable("AspNetUsers", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => + { + b.Property("Id") + .HasColumnType("text"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("text"); + + b.Property("Name") + .HasMaxLength(256) + .HasColumnType("character varying(256)"); + + b.Property("NormalizedName") + .HasMaxLength(256) + .HasColumnType("character varying(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName") + .IsUnique() + .HasDatabaseName("RoleNameIndex"); + + b.ToTable("AspNetRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("text"); + + b.Property("ClaimValue") + .HasColumnType("text"); + + b.Property("RoleId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetRoleClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("text"); + + b.Property("ClaimValue") + .HasColumnType("text"); + + b.Property("UserId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.Property("LoginProvider") + .HasColumnType("text"); + + b.Property("ProviderKey") + .HasColumnType("text"); + + b.Property("ProviderDisplayName") + .HasColumnType("text"); + + b.Property("UserId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("LoginProvider", "ProviderKey"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserLogins", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.Property("UserId") + .HasColumnType("text"); + + b.Property("RoleId") + .HasColumnType("text"); + + b.HasKey("UserId", "RoleId"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetUserRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.Property("UserId") + .HasColumnType("text"); + + b.Property("LoginProvider") + .HasColumnType("text"); + + b.Property("Name") + .HasColumnType("text"); + + b.Property("Value") + .HasColumnType("text"); + + b.HasKey("UserId", "LoginProvider", "Name"); + + b.ToTable("AspNetUserTokens", (string)null); + }); + + modelBuilder.Entity("BackendPIA.Models.Prize", b => + { + b.HasOne("BackendPIA.Models.Raffle", "Raffle") + .WithMany() + .HasForeignKey("RaffleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Raffle"); + }); + + modelBuilder.Entity("BackendPIA.Models.RaffleWinner", b => + { + b.HasOne("BackendPIA.Models.Prize", "Prize") + .WithMany() + .HasForeignKey("PrizeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("BackendPIA.Models.Raffle", "Raffle") + .WithMany() + .HasForeignKey("RaffleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("BackendPIA.Models.UserAccount", "UserAccount") + .WithMany() + .HasForeignKey("UserAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Prize"); + + b.Navigation("Raffle"); + + b.Navigation("UserAccount"); + }); + + modelBuilder.Entity("BackendPIA.Models.Ticket", b => + { + b.HasOne("BackendPIA.Models.Raffle", "Raffle") + .WithMany("Tickets") + .HasForeignKey("RaffleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("BackendPIA.Models.UserAccount", "Owner") + .WithMany("Tickets") + .HasForeignKey("UserAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Owner"); + + b.Navigation("Raffle"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.HasOne("BackendPIA.Models.UserAccount", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.HasOne("BackendPIA.Models.UserAccount", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("BackendPIA.Models.UserAccount", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.HasOne("BackendPIA.Models.UserAccount", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("BackendPIA.Models.Raffle", b => + { + b.Navigation("Tickets"); + }); + + modelBuilder.Entity("BackendPIA.Models.UserAccount", b => + { + b.Navigation("Tickets"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20221125223610_AddRaffleWinner.cs b/Migrations/20221125223610_AddRaffleWinner.cs new file mode 100644 index 0000000..68a66af --- /dev/null +++ b/Migrations/20221125223610_AddRaffleWinner.cs @@ -0,0 +1,70 @@ +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace BackendPIA.Migrations +{ + /// + public partial class AddRaffleWinner : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "RaffleWinners", + columns: table => new + { + Id = table.Column(type: "bigint", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + UserAccountId = table.Column(type: "text", nullable: false), + PrizeId = table.Column(type: "bigint", nullable: false), + RaffleId = table.Column(type: "bigint", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_RaffleWinners", x => x.Id); + table.ForeignKey( + name: "FK_RaffleWinners_AspNetUsers_UserAccountId", + column: x => x.UserAccountId, + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_RaffleWinners_Prizes_PrizeId", + column: x => x.PrizeId, + principalTable: "Prizes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_RaffleWinners_Raffles_RaffleId", + column: x => x.RaffleId, + principalTable: "Raffles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_RaffleWinners_PrizeId", + table: "RaffleWinners", + column: "PrizeId"); + + migrationBuilder.CreateIndex( + name: "IX_RaffleWinners_RaffleId", + table: "RaffleWinners", + column: "RaffleId"); + + migrationBuilder.CreateIndex( + name: "IX_RaffleWinners_UserAccountId", + table: "RaffleWinners", + column: "UserAccountId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "RaffleWinners"); + } + } +} diff --git a/Migrations/ApplicationDbContextModelSnapshot.cs b/Migrations/ApplicationDbContextModelSnapshot.cs index e11a6ec..917cafd 100644 --- a/Migrations/ApplicationDbContextModelSnapshot.cs +++ b/Migrations/ApplicationDbContextModelSnapshot.cs @@ -75,6 +75,35 @@ namespace BackendPIA.Migrations b.ToTable("Raffles"); }); + modelBuilder.Entity("BackendPIA.Models.RaffleWinner", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("PrizeId") + .HasColumnType("bigint"); + + b.Property("RaffleId") + .HasColumnType("bigint"); + + b.Property("UserAccountId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("PrizeId"); + + b.HasIndex("RaffleId"); + + b.HasIndex("UserAccountId"); + + b.ToTable("RaffleWinners"); + }); + modelBuilder.Entity("BackendPIA.Models.Ticket", b => { b.Property("Id") @@ -319,6 +348,33 @@ namespace BackendPIA.Migrations b.Navigation("Raffle"); }); + modelBuilder.Entity("BackendPIA.Models.RaffleWinner", b => + { + b.HasOne("BackendPIA.Models.Prize", "Prize") + .WithMany() + .HasForeignKey("PrizeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("BackendPIA.Models.Raffle", "Raffle") + .WithMany() + .HasForeignKey("RaffleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("BackendPIA.Models.UserAccount", "UserAccount") + .WithMany() + .HasForeignKey("UserAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Prize"); + + b.Navigation("Raffle"); + + b.Navigation("UserAccount"); + }); + modelBuilder.Entity("BackendPIA.Models.Ticket", b => { b.HasOne("BackendPIA.Models.Raffle", "Raffle") -- cgit v1.2.3