// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using MyOffice.DbContext; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace MyOffice.Migrations.Postgres.Migrations { [DbContext(typeof(AppDbContext))] [Migration("20230601121013_AccountCategories")] partial class AccountCategories { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("Npgsql:CollationDefinition:my_ci_collation", "en-u-ks-primary,en-u-ks-primary,icu,False") .HasAnnotation("ProductVersion", "7.0.0") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("MyOffice.Data.Models.Accounts.Account", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CurrencyGlobalId") .IsRequired() .HasColumnType("text"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.HasIndex("CurrencyGlobalId"); b.ToTable("Accounts"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountAccess", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("uuid"); b.Property("IsAllowManage") .HasColumnType("boolean"); b.Property("IsAllowRead") .HasColumnType("boolean"); b.Property("IsAllowWrite") .HasColumnType("boolean"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("UserId"); b.ToTable("AccountAccesses"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountAccountCategory", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("uuid"); b.Property("CategoryId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("CategoryId"); b.ToTable("AccountAccountCategories"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountCategory", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("AccountCategories"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountMotion", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("uuid"); b.Property("AmountIn") .HasColumnType("numeric"); b.Property("AmountOut") .HasColumnType("numeric"); b.Property("CreatedOn") .HasColumnType("timestamp with time zone"); b.Property("DateTime") .HasColumnType("timestamp with time zone"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("UserId"); b.ToTable("AccountMotions"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.Currency", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CurrencyGlobalId") .IsRequired() .HasColumnType("text"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.Property("ShortName") .IsRequired() .HasColumnType("text"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("CurrencyGlobalId"); b.HasIndex("UserId"); b.ToTable("Currencies"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.CurrencyGlobal", b => { b.Property("Id") .HasColumnType("text"); b.Property("DefaultQuantity") .HasColumnType("integer"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.Property("Symbol") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.ToTable("CurrencyGlobals"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.CurrencyRate", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CurrencyId") .HasColumnType("uuid"); b.Property("DateTime") .HasColumnType("timestamp with time zone"); b.Property("Quantity") .HasColumnType("integer"); b.Property("Rate") .HasColumnType("numeric"); b.HasKey("Id"); b.HasIndex("CurrencyId"); b.ToTable("CurrencyRates"); }); modelBuilder.Entity("MyOffice.Data.Models.Users.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CurrencyId") .IsRequired() .HasColumnType("text"); b.Property("Email") .IsRequired() .HasColumnType("text") .UseCollation("my_ci_collation"); b.Property("FirstName") .HasColumnType("text"); b.Property("FullName") .HasColumnType("text"); b.Property("IsEmailConfirmed") .HasColumnType("boolean"); b.Property("LastName") .HasColumnType("text"); b.Property("PasswordHash") .IsRequired() .HasColumnType("text"); b.Property("Phone") .HasColumnType("text"); b.Property("UserName") .IsRequired() .HasColumnType("text") .UseCollation("my_ci_collation"); b.HasKey("Id"); b.HasIndex("CurrencyId"); b.ToTable("Users"); }); modelBuilder.Entity("MyOffice.Data.Models.Users.UserExternal", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CreatedOn") .HasColumnType("timestamp with time zone"); b.Property("Email") .IsRequired() .HasColumnType("text") .UseCollation("my_ci_collation"); b.Property("ExternalId") .IsRequired() .HasColumnType("text"); b.Property("Provider") .IsRequired() .HasColumnType("text") .UseCollation("my_ci_collation"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("UserClaims"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.Account", b => { b.HasOne("MyOffice.Data.Models.Currency.CurrencyGlobal", "CurrencyGlobal") .WithMany("Accounts") .HasForeignKey("CurrencyGlobalId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("CurrencyGlobal"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountAccess", b => { b.HasOne("MyOffice.Data.Models.Accounts.Account", "Account") .WithMany("AccessRights") .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("MyOffice.Data.Models.Users.User", "User") .WithMany("AccountAccess") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Account"); b.Navigation("User"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountAccountCategory", b => { b.HasOne("MyOffice.Data.Models.Accounts.AccountCategory", "Category") .WithMany("Accounts") .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("MyOffice.Data.Models.Accounts.Account", "Account") .WithMany("Categories") .HasForeignKey("CategoryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Account"); b.Navigation("Category"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountCategory", b => { b.HasOne("MyOffice.Data.Models.Users.User", "User") .WithMany("AccountCategories") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountMotion", b => { b.HasOne("MyOffice.Data.Models.Accounts.Account", "Account") .WithMany("Motions") .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("MyOffice.Data.Models.Users.User", "User") .WithMany("AccountMotions") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Account"); b.Navigation("User"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.Currency", b => { b.HasOne("MyOffice.Data.Models.Currency.CurrencyGlobal", "CurrencyGlobal") .WithMany("Currencies") .HasForeignKey("CurrencyGlobalId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("MyOffice.Data.Models.Users.User", "User") .WithMany("Currencies") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("CurrencyGlobal"); b.Navigation("User"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.CurrencyRate", b => { b.HasOne("MyOffice.Data.Models.Currency.Currency", "Currency") .WithMany("Rates") .HasForeignKey("CurrencyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Currency"); }); modelBuilder.Entity("MyOffice.Data.Models.Users.User", b => { b.HasOne("MyOffice.Data.Models.Currency.CurrencyGlobal", "Currency") .WithMany() .HasForeignKey("CurrencyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Currency"); }); modelBuilder.Entity("MyOffice.Data.Models.Users.UserExternal", b => { b.HasOne("MyOffice.Data.Models.Users.User", "User") .WithMany("UserClaims") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.Account", b => { b.Navigation("AccessRights"); b.Navigation("Categories"); b.Navigation("Motions"); }); modelBuilder.Entity("MyOffice.Data.Models.Accounts.AccountCategory", b => { b.Navigation("Accounts"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.Currency", b => { b.Navigation("Rates"); }); modelBuilder.Entity("MyOffice.Data.Models.Currency.CurrencyGlobal", b => { b.Navigation("Accounts"); b.Navigation("Currencies"); }); modelBuilder.Entity("MyOffice.Data.Models.Users.User", b => { b.Navigation("AccountAccess"); b.Navigation("AccountCategories"); b.Navigation("AccountMotions"); b.Navigation("Currencies"); b.Navigation("UserClaims"); }); #pragma warning restore 612, 618 } } }